本文最后更新于:2024年9月20日 下午
故名思意,线性回归是一种线性模型,线性模型形式简单、易于建模。许多功能更为强大的非线性模型可在线性模型的基础上通过引入层级结构或者高维映射而得。本文记录最基本的线性回归方法。
问题描述
考虑一个线性模型 ${y}=f({\bf{x}})$
其中$y$是模型的输出值,是标量,$\bf{x}$为$d$维实数空间的向量
- 线性模型可以表示为:
$$
f(\bf{x})=\bf{w} ^Tx,w\in \mathbb{R}
$$
- 线性回归的任务是利用$n$个训练样本:
- 和样本对应的标签:
$$
Y = [ y _ { 1 } \cdots \quad y _ { n } ] ^ { T } \quad y \in \mathbb{R}
$$
- 来预测线性模型中的参数 $\bf{\omega}$,使得模型尽可能准确输出预测值
线性回归 / 最小二乘法
- 定义损失函数:
- 推导损失函数:
- 优化方程:
- 求导并令倒数为 0:
$$
\frac{\partial L(w)}{\partial w}=2 X^{T} X w-2 X^{T} Y=0
$$
- 得到:
$$
X^{T} X w=X^{T} Y \Rightarrow \hat{w}=\left(X^{T} X\right)^{-1} X^{T} Y
$$
numpy 实现
假设需要用 5 个点,用 python 的 numpy 实现最小二乘法拟合一个三维二次曲面:
$$
z = ax2+by2+cxy+dx+ey+f
$$
1 |
|
通常,为了得到更可靠的拟合结果,可以使用更多的数据点。
参考资料
文章链接:
https://www.zywvvd.com/notes/study/math/regression/linear-regression/linear-regression/
“觉得不错的话,给点打赏吧 ୧(๑•̀⌄•́๑)૭”
微信支付
支付宝支付