梯度下降算法Gradient descent

梯度下降法的基本思想可以类比为一个下山的过程。
假设这样一个场景:一个人被困在山上,需要从山上下来(找到山的最低点,也就是山谷)。但此时山上的浓雾很大,导致可视度很低;因此,下山的路径就无法确定,必须利用自己周围的信息一步一步地找到下山的路。这个时候,便可利用梯度下降算法来帮助自己下山。怎么做呢,首先以他当前的所处的位置为基准,寻找这个位置最陡峭的地方,然后朝着下降方向走一步,然后又继续以当前位置为基准,再找最陡峭的地方,再走直到最后到达最低处;同理上山也是如此,只是这时候就变成梯度上升算法了

简易梯度下降法:  θj:=θjαθjJ(θj) \ θ_j:=θ_j-α\frac{\partial}{\partialθ_j}J(θ_j)
梯度下降算法Gradient descent

适用与线性回归的梯度的梯度下降法公式(为实现同步更新θ0和θ1,运算顺序由上往下) temp0:=θ0αθ0J(θ0,θ1) \ temp0:=θ_0-α\frac{\partial}{\partialθ_0}J(θ_0,θ_1)
 temp1:=θ1αθ1J(θ0,θ1) \ temp1:=θ_1-α\frac{\partial}{\partialθ_1}J(θ_0,θ_1)
 θ0:=temp0\ θ_0:=temp0
 θ1:=temp1\ θ_1:=temp1
其中: J(θ0,θ1)=1mi=1m(hθ(xi)yi)2\ J(θ_0,θ_1)=\frac{1}{m}\sum_{i=1}^m(h_θ(x_i)-y_i)^2 hθ(x)=θ0+θix\ h_θ(x)=θ_0+θ_i x,α是下降速率(步长)

梯度下降算法Gradient descent
注:引用「Arrow and Bullet」部分原文

相关文章: