TensorFlow2_200729系列---2、梯度下降求简单线性回归原理
一、总结
一句话总结:
就是根据loss函数,对w和b求梯度(偏导),也就是w'=w-lr*∂ loss/∂ w ,b'=b-lr*∂ loss/∂ b
1、为什么求梯度是对loss函数求的梯度(w'=w-lr*∂ loss/∂ w ,b'=b-lr*∂ loss/∂ b )?
因为我们是要要loss函数的最小值,loss最小,说明线拟合点最合适
2、梯度下降法拟合曲线步骤?
1、找到损失函数,比如最小二乘法 loss=(f(x)-y)^2,比如f(x)=wx+b,loss=(wx+b-y)^2
2、现在需要找到损失函数的最小值(损失函数最小拟合才最成功),那么就可以用梯度下降法来找损失函数最小值
3、对所有的参数求偏导,这里是w和b,而不是x,w'=w-lr*∂ loss/∂ w ,b'=b-lr*∂ loss/∂ b
4、沿梯度的负方向运动,每次运动学习率*梯度,到最小值点处梯度为0(比如 lr*∂ loss/∂ w 为0),自然就收敛
3、(求和公式中求偏导)如果损失函数loss=Σi(w*xi+b-yi)^2(其中的i都是下标),那么如何求∂ loss/∂ w 和 ∂ loss/∂ b?
1、其实可以取简单情况,比如两个点,loss=(w*x1+b-y1)^2 + (w*x2+b-y2)^2
2、对loss求∂loss/∂w偏导:∂loss/∂w=2(w*x1+b-y1)*x1+2(w*x2+b-y2)*x2,
3、推导到一般情况,即为∂loss/∂w=2*Σi(w*xi+b-yi)^xi
二、内容在总结中
转自或参考: