Py学习  »  机器学习算法

机器学习基础——从头开始带大家实现线性回归!

人工智能学习指南 • 3 天前 • 13 次点击  

未命名(6).gif


什么是线性回归?
线性回归是一种简单的方法,它试图在众多点中绘制出一条直线。这条直线能帮助我们根据某种模式进行预测。

例如,如果你知道一个学生的学习时长,你可能想预测他们的成绩,学习时间越长成绩往往越好,线性回归就能找出这种模式。

这条直线的形式如下:



其中:

  • X 是输入(比如学习时长)

  • y 是输出(比如成绩)

  • w 是斜率(表示直线的倾斜程度)

  • b 是截距(直线与 y 轴的交点)


线性回归应用于哪些场景?

  • 预测房价

  • 销售预测

  • 预测学生成绩

  • 分析健康趋势

  • 股票市场预测


手动数学示例——线性回归逐步解析
下面我们手动通过一个简单示例,仅使用两个变量和三个数据点来进行说明。

给定数据点



我们想要拟合一条直线:



步骤 1:计算均值



步骤 2:计算斜率(w)



步骤 3:计算截距(b)



最终方程



这就是回归直线,现在我们可以用它来预测任意学习时长对应的成绩。


步骤 4:预测



Python 代码(从零开始)

下面展示如何在不使用任何机器学习库的情况下,在 Python 中逐步实现相同的功能。

# Our data
X = [124]
y = [235]

# Step 1: Find the means
mean_x = sum(X) / len(X)
mean_y = sum(y) / len(y)

# Step 2: Calculate slope (w)
numerator = 0
denominator = 0
for i inrange(len(X)):
    numerator += (X[i] - mean_x) * (y[i] - mean_y)
    denominator += (X[i] - mean_x) ** 2

w = numerator / denominator

# Step 3: Calculate intercept (b)
b = mean_y - w * mean_x

# Final model
print("The equation of the line is: y = {:.2f}x + {:.2f}".format(w, b))

# Step 4: Make predictions
print("\nPredictions:")
for i inrange(len(X)):
    y_pred = w * X[i] + b
print (f"When X = {X[i]}, y_actual = {y[i]}, y_predicted = {y_pred:.2f}")
The equation of the line is: y = 1.00x + 1.00

Predictions:
When X = 1, y_actual = 2, y_predicted = 2.00
When X = 2, y_actual = 3, y_predicted = 3.00
When X = 4, y_actual = 5, y_predicted = 5.00


在此情况下,预测值与实际值完全匹配,这表明对于这三个点,我们的直线与数据完美拟合。



图表还展示了:

  • 蓝色圆点:实际数据点(学习时长与成绩)

  • 红色直线:基于我们公式的预测直线

这条直线展示了随着学习时间的增加,成绩是如何提

高的。

所以,如果有人学习 3 个小时,我们可以使用方程:



来预测他们将获得 4 分。

未命名(6).gif

另外我们精心打磨了一套基于数据与模型方法的AI科研入门学习方案(已经迭代第6次),对于人工智能来说,任何专业,要处理的都只是实验数据,所以我们根据实验数据将课程分为了三种方向的针对性课程,包含时序、影像、AI+实验室,我们会根据你的数据类型来帮助你选择合适的实验室,根据规划好的路线学习 只需3-5个月左右(很多同学通过学习已经发表了 sci 一区及以下、和同等级别的会议论文)学习形式为直播+录播,多位老师为你的论文保驾护航。

适合人群:

  • 导师放养,自学无头绪

  • 时间紧任务重有延毕风险

  • 想提前完成大小论文为之后读博或工作做准备的

  • 想通过发表sci论文、提升科研能力bao研、考研的本科同学

大家感兴趣可以直接添加小助手微信:ai0808q通过后回复“咨询”既可。


图片

第6期课程大纲

图片


大家想自学的我还给大家准备了一些机器学习、深度学习、神经网络资料大家可以看看以下文章(文章中提到的资料都打包好了,都可以直接添加小助手获取)


人工智能资料分享

图片


零基础学习路线(点击图片即可跳转)









图片


时间序列学习资料(点击图片即可跳转)

图片


神经网络学习资料(点击图片即可跳转)


大家觉得这篇文章有帮助的话记得分享给你的死党闺蜜、同学、朋友、老师、敌蜜!

B站:AI秃秃学长小墨


图片


关注小墨

获取最新AI技能+最肝AI干货

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/187274
 
13 次点击