1.2梯度下降算法

The core values of Chinese socialism

梯度下降算法

梯度下降算法可将代价函数J最小化。

image
思路构想

在梯度下降算法在不停地一点点改变θ_{0}θ_{1},试图通过这种改变使得J(θ_{0}, θ_{1})变小,直到找到J的最小值,或局部最小值。

原理
局部最优解
定义

同步反复迭代直到收敛。α是一个数字,被称为学习速率控制以多大的幅度更新θ_{j}

同步更新

深入研究梯度下降算法

探究导数的意义。控制斜率。

image

θ_{1}变量的J(θ_{1})图像。

image

θ_{1} := θ_{1} - α(positive num)θ_{1}减去一个正数,相当于使θ_{1}变小,θ_{1}向左移。

image

θ_{1} := θ_{1} - α(negative num)θ_{1}减去一个负数,相当于使θ_{1}变大,θ_{1}向右移。

线性回归中的梯度下降

image

为了达到梯度下降,需要的关键是这个微分项:

\frac{∂}{∂θ_{j}}J(θ_{0},θ_{1})

带入公式可以得出:

\begin{align*} \frac{∂}{∂θ_{j}}J(θ_{0},θ_{1}) &= \frac{∂}{∂θ_{j}} \frac{1}{2m} \sum_{i=1}^{m} (h_{θ}(x^{(i)}) - y^{(i)})^{2}\\ &= \frac{∂}{∂θ_{j}} \frac{1}{2m} \sum_{i=1}^{m} (θ_{0} + θ_{1}(x^{(i)}) - y^{(i)})^{2}\\ \end{align*}

需要弄清两个偏导数项是什么:

j = 0 时: \frac{∂}{∂θ_{0}}J(θ_{0},θ_{1}) = ? \\ j = 1 时: \frac{∂}{∂θ_{1}}J(θ_{0},θ_{1}) = ?

得到:

\begin{align*} j = 0 时: \frac{∂}{∂θ_{0}}J(θ_{0},θ_{1}) &= \frac{∂}{∂θ_{0}} \frac{1}{2m} \sum_{i=1}^{m} (h_{θ}(x^{(i)}) - y^{(i)})^{2}\\ &= \frac{1}{m} \sum_{i=1}^{m} (h_{θ}(x^{(i)}) - y^{(i)})\end{align*}

\begin{align*}j = 1 时: \frac{∂}{∂θ_{1}}J(θ_{0},θ_{1}) &= \frac{∂}{∂θ_{1}} \frac{1}{2m} \sum_{i=1}^{m} (h_{θ}(x^{(i)}) - y^{(i)})^{2}\\ &= \frac{1}{m} \sum_{i=1}^{m} (h_{θ}(x^{(i)}) - y^{(i)})·x^{i} \end{align*}

image

这就是用于线性回归的梯度下降,反复迭代直到收敛。

image
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容