一元线性回归——最小二乘法详细介绍
创作时间:
作者:
@小白创作中心
一元线性回归——最小二乘法详细介绍
引用
CSDN
1.
https://blog.csdn.net/m0_74383359/article/details/139634992
最小二乘法是机器学习中一个非常重要且基础的算法,它不是回归分析本身,而是一种用于执行回归分析的技术。通过最小化预测值与实际值之间的误差平方和来估计回归模型的参数,从而帮助我们找到描述因变量和自变量之间关系的最佳拟合线或曲线。
最小二乘法介绍
形如:y=k*x+b的图像。我们可以根据点到直线的距离计算出距离,使得距离最小。得到一个关于k与b的一元线性方程。为了使得距离最小,在高等数学里面一般就是求导、当倒数等于零时取最小。所以说我们要对这个一元线性方程对k,b分别进行求导。最后算出两个关于k和b的式子到这一步基本上我们回归方程基本构建完成。
使用Python实现步骤
1. 引入库
import numpy as np
import matplotlib.pyplot as plt
2. 读入数据
编写一个读取csv的函数,提取出数据以及标签
def reed_csv():
data = np.genfromtxt("太阳镜销售数据集.csv", delimiter=',')
x = data[:, 1]
y = data[:, 0]
print(data)
return x, y
# 运行结果:
[[ 75. 2.]
[ 90. 5.]
[148. 6.]
[183. 7.]
[242. 22.]
[263. 25.]
[278. 28.]
[318. 30.]
[256. 22.]
[200. 18.]
[140. 10.]
[ 80. 2.]]
3. 逻辑实现
3.1 这里用三个自定义函数搞定
第一个函数(kbcost)用于计算斜率以及截距和损失值
def kbcost(x, y):
L = len(x)
# 获取当前数据的长度
x_sum = np.sum(x) # 计算和
y_sum = np.sum(y)
x_avg = x_sum/L # 平均值计算
y_avg = y_sum/L
tmp1 = 0
tmp2 = 0
for i in range(L): # 在L里面经行循环遍历i
tmp1 += (x[i]-x_avg)*(y[i]-y_avg)
tmp2 += (x[i]-x_avg)**2
k = tmp1 / tmp2
b = y_avg - k * x_avg
cost = 0
for i in range(L):
cost += (y[i]-k*x[i]-b)**2
cost = cost/L
return k, b, cost
第二个函数用于画图,将我们求的k,和b值绘制成线性方程
def darw_L(x, y, k, b):
plt.scatter(x, y)
plt.plot(x, k*x+b, 'r')
plt.show()
最后一个主函数
调用read_csv()函数将变量保存在x,y里面无需参数,
调用kbcost(x,y)函数用于计算k,b,cost传入参数为x,y,\
在进行可视化,画出一元线性回归方程
最后用户随机输入一个值经行预测,并且计算损失值
if __name__ == "__main__":
x, y = reed_csv()
k, b, cost = kbcost(x, y)
print(cost)
darw_L(x, y, k, b)
x_in = int(input())
print(x_in*k+b)
总结
最小二乘法是机器学习最重要最基础的一个算法,最小二乘法不是回归分析本身,而是一种用于执行回归分析的技术。它通过最小化预测值与实际值之间的误差平方和来估计回归模型的参数,从而帮助我们找到描述因变量和自变量之间关系的最佳拟合线或曲线。
完整项目参考GitHub(Gitee)ZMCpythonProject: 人工智能机器学习代码 (gitee.com)
热门推荐
黑中介传销骗局:新型诈骗手段的法律规制与防范
电子驾照实习期可以办理吗?
冰箱风扇电机故障怎么办?维修指南来了
十款克苏鲁游戏盘点:从卡牌到生存,带你领略不一样的恐怖世界
古代攻城与守城的智慧较量:为何不直接推倒攻城梯?
中考英语阅读刷题用什么书 买什么刷题书好
八大菩萨之文殊菩萨
校园招聘是什么意思?流程及方法全解析
如何分析汇率的波动规律?这种波动规律如何预测?
多措并举 推动“反向开票”政策落地落细
签约前是否能将合同带回家审阅?法律视角下的思考与建议
肺气不足的最佳锻炼方法
蓝楹花的花语与美丽传说
Unlock和新概念英语的选择:如何根据学习目标选择最适合的教材
房屋清洁打扫小妙招 简单还原“新”房子
上诉证据不足导致案件被判败诉:如何应对及改进证据收集策略
什么叫红眼病
关于吃姜,一定要知道的三个真相!
广州网上车管所预约难及网约车从业资格证办理流程
医圣精神薪火相传 后裔齐聚南阳医圣祠
吃甜菜根有什么好处和坏处
伤口结痂有点痛正常吗
大便太粗怎么改善
网络安全报警指南:全面解析报警流程与注意事项
软路由的使用场景有哪些
人民日报:优秀的孩子,都是“陪”出来的,这4个黄金法则,父母拿来就能用!
家庭和睦是什么?从定义到实践的全方位解读
生姜片的功效与使用注意事项
修复Windows 10中的INACCESSIBLE_BOOT_DEVICE错误
契丹人是现在的什么人?探讨契丹人与现代民族的关系