ML学习笔记:Gradient Descent

Review

回顾在线性回归中函数最优化计算的过程中,需要对梯度进行计算,然后一步一步微调参数w和b,最后得到一个使loss最小的最优解。


ML学习笔记:Gradient Descent_第1张图片

每次都是沿着法线的方向对结果进行微调修改参数


ML学习笔记:Gradient Descent_第2张图片

Tip 1: Tuning your learning rates

如果学习率过大,就会在最低点上面来回动荡,永远都到不了最低点;
如果学习率过小,就会使收敛过慢,需要训练很久才能到达最优结果。


ML学习笔记:Gradient Descent_第3张图片

可以对学习率实时进行调整,一开始很大,然后逐渐减少。这个就是常规的方法,也称Vanilla Gradient dedcent


ML学习笔记:Gradient Descent_第4张图片

更好的解决方案:Adagrad。
用前一次的学习率乘以vanilla参数然后再除以前面所有梯度的均方根。
ML学习笔记:Gradient Descent_第5张图片

ML学习笔记:Gradient Descent_第6张图片

对Adagrag进行简化


ML学习笔记:Gradient Descent_第7张图片

问题:在Adagrag中,分子和分母的变化方向是一样的,是否造成矛盾?
ML学习笔记:Gradient Descent_第8张图片

直观的理由是造成一种反差的效果:
  • 当前面几步比较慢的时候,后面会根据前面的梯度下降的值计算出一个比较小的均方根,导致下一步比较大;
  • 当前面几步比较快的时候,后面会根据前面的梯度下降的值计算出一个比较大的均方根,导致下一步比较小;


    ML学习笔记:Gradient Descent_第9张图片

    最优的梯度下降方法应该是接近最低点的时候梯度下降速度减慢,而不是一直保持一个线性的值。


    ML学习笔记:Gradient Descent_第10张图片

    ML学习笔记:Gradient Descent_第11张图片

    ML学习笔记:Gradient Descent_第12张图片

    ML学习笔记:Gradient Descent_第13张图片

    ML学习笔记:Gradient Descent_第14张图片

Tip 2: Stochastic Gradient Descent

思想:只对一个随机的样品进行梯度下降——加快训练速度


ML学习笔记:Gradient Descent_第15张图片

传统的梯度下降:一步要计算20个;随机梯度下降:一步计算一个,20步计算20个。


ML学习笔记:Gradient Descent_第16张图片

Tip 3: Feature Scaling

特征缩放:使不同的特征拥有一样的规模大小


ML学习笔记:Gradient Descent_第17张图片

原因:使梯度线偏向于一个圆形,更好的进行梯度下降


ML学习笔记:Gradient Descent_第18张图片

缩放方法:使数据的平均值为0,方差为1
ML学习笔记:Gradient Descent_第19张图片

为什么梯度下降方法有效?

梯度下降的目标:给定一个点,找到一个最“陡峭”的方向前进一步。如何找到这一个陡峭的方向?


ML学习笔记:Gradient Descent_第20张图片

泰勒公式:


ML学习笔记:Gradient Descent_第21张图片

ML学习笔记:Gradient Descent_第22张图片

ML学习笔记:Gradient Descent_第23张图片

圆圈的半径足够小,即学习率足够小,每次沿着梯度下降最快的方向走一步,就会找到圆圈内最小值


ML学习笔记:Gradient Descent_第24张图片

ML学习笔记:Gradient Descent_第25张图片

两个参数的情况:
ML学习笔记:Gradient Descent_第26张图片

ML学习笔记:Gradient Descent_第27张图片

虽然Gradient Descent方法有效找到一个“最低点”,但是还是会存在很多的问题,我们会在以后的学习中去解决它们。
ML学习笔记:Gradient Descent_第28张图片

胶片来自于台湾大学李宏毅教授的《机器学习课程》,侵删!

你可能感兴趣的:(ML学习笔记:Gradient Descent)