线性回归的梯度下降法与训练集关系
代价函数定义:
代价函数j(θ0,θ1)=2m1m=1∑m(hθ(x(i))−y(i))2 即所有样本x(i)通过模型hθ(x(i))计算出来预测值,与实际值y(i)的方差,方差越小,说明模型hθ(x)=θ0+θ1x对样本拟合度越高
假设代价函数j(θ0,θ1)与θ0,θ1的关系如下

- 注意:线性回归的代价函数是一个凸函数,有唯一全局最小值,有兴趣的朋友自行查阅资料推导
当j(θ0,θ1)的值为全局最小值,如何求θ0,θ1呢?
梯度下降定义:

梯度下降法的核心是,首先随机找一个点(即随机给θ0,θ1 赋值),每次在原来点的基础上,在θ0方向上移动−α∂θ0∂j(θ0,θ1)距离,在θ1方向上移动−α∂θ1∂j(θ0,θ1)距离,不断重复以上步骤,即可让θ0,θ1不断向最小值的点θ0min,θ1min靠拢。
- 为何要移动−α∂θ0∂j(θ0,θ1)
∂θ0∂j(θ0,θ1)是目标函数j(θ0,θ1)在θ0方向上的斜率,当斜率小于0时,此时θ0小于θ0min,即θ0:=θ0−α∂θ0∂j(θ0,θ1)会让θ0变大,往θ0min靠近,同样道理当斜率大于0时,θ0会变小,往θ0min靠近。当θ0越靠近θ0min,斜率变化越来越小,θ0min斜率等于0,θ0靠近θ0min速度越来越慢,直到θ0≈θ0min重复计算,θ0的值几乎不变,同样道理可以求出θ1
- ∂θ0∂j(θ0,θ1),∂θ1∂j(θ0,θ1)计算
分别将j(θ0,θ1)=2m1m=1∑m(hθ(x(i))−y(i))2代入,得到

在将hθ(x)=θ0+θ1x代入,最后发现,每次循环我们计算偏导数,就是计算整个训练样本的总和。