您的位置:首页 > 其它

机器学习--梯度下降法

2015-12-14 10:13 411 查看
一、梯度的概念

梯度与方向导数的关系为:梯度的方向与取得最大方向导数值的方向一致,而梯度的模就是函数在该点的方向导数的最大值。

二、梯度下降法的流程

1、初始化:随机选取取值范围内的任意数

2、循环操作:

       计算梯度;

       修改新的变量;

       判断是否达到终止:如果前后两次的函数值差的绝对值小于阈值,则跳出循环;否则继续;

3、输出最终结果


  其中

为学习率,可以取固定常数。如取

,则

,对应的

,类似的

,对应的

。算法终止的判断准则是:

,其中

是一个指定的阈值。
三、matlab代码实现

四、梯度下降法和牛顿法比较

1、梯度下降法是为了求目标函数最小值f(X)对应的X,只用到了梯度信息,即目标函数的一阶导数信息

 牛顿法顿法则用到了二阶导数信息。

梯度下降法(绿色)总是沿着当前点最快下降的方向(几乎垂直于等高线),相当于贪心算法。

牛顿法利用了曲面本身的信息,能够更直接,更快的收敛。

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: