上一篇:相对静止:机器学习第1.5篇——线性回归(基础概念) 介绍了相关的关键概念
本篇主要介绍简单线性回归的公式推导和编程实践
1.简单线性回归及最小二乘法的公式推导
一元线性回归方程:
损失函数:使用几何上欧式距离的平方和——方差和
求解两个参数:最小化损失SE
求解过程:
在损失函数中分别对两个参求偏导,并让偏导等于0(凸函数最优解)
会得到包含2个参数的2个方程(方程组对应矩阵为正定矩阵?),可以求得唯一解,综合以上两式可得(偏导等于0):
2.多元回归方程
目标函数为:
将参数也用矩阵形式表示:
所以原式可表示为:
损失可表示为(根据矩阵运算规则):
啥运算规则,还需要补课
对参数求偏导可得:
令偏导为0,可求出参数值:
然而,现实任务中然而,现实任务中 xTx 往往不是满秩矩阵.例如在许多任务中我们会遇到大量的变量,其数目甚至超过样例数,导致 X 的列数多于行数, xTx 显然不满秩。此时可解出多个解,它们都能使均方误差最小化。选择哪一个解作为输出 ,将由学习算法的归纳偏好决定,常见的做法是引入正则化 (regularization)项. ——《机器学习》周志华 P56
3.线性回归代码实现
略过手撕代码
4.线性回归实践
# 数据集下载:参考资料5
5.进阶探讨的问题
- 正则化的作用
- 尝试其它模型(岭回归、决策树、随机森林等)
参考资料:
- 《机器学习》.周志华 第三章
- 机器学习(1)-西瓜书-线性回归
- 线性回归损失函数求解
- sklearn官方文档:LinearRegression
- 数据集及其相关字段说明