美文网首页
1.2梯度下降算法

1.2梯度下降算法

作者: Yuanshuo | 来源:发表于2019-08-05 10:08 被阅读0次
    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

    相关文章

      网友评论

          本文标题:1.2梯度下降算法

          本文链接:https://www.haomeiwen.com/subject/segudctx.html