线性回归:是机器学习中的回归问题
y = w.T * X + b
该模型的主要目的:就是要学习一个最优的w来表示输入和输出的关系。
怎样学习:就是希望模型输出的结果与真实结果无限逼近,就是确定一个w使得输出结果和真实的结果差值越小越好,最好为0。
用一个公式计算输出值和真实值之间的误差:
loss =( f(x)- y)^2
当有很多数据时,就采用均方误差
这样使得均方误差最小的w就是最优的w。
有什么方法可以获得最优的w呢,显然是有的梯度下降法。
最小二乘:
对于样本只有一个特征时,损失函数就是一个二元函数有最小值,可以用导数为0将最优值求解出来,但是当样本具有多个特征,对损失函数求导得到:
w = (X.T*X)^-1*X.T*Y
但是往往X.T*X不满秩,即不可逆,最小二乘法就不能帮我们求得最优w。
梯度下降法:
晚上下山法,找到一个最陡峭的方向一步一步逐渐下山。
损失函数为可微的,可微函数中的微分就是这个函数的梯度,而梯度是一个向量,梯度的方向就是函数上升最快的方向,梯度的反方向就是函数下降最快的方向。
在利用梯度下降法求解的时候,梯度更新的步伐不能太大 ,也不能太小,一般常用的为0.01或者0.001。
w = w -a*dW