您的位置:首页 > 其它

梯度下降法与牛顿法

2016-07-19 15:06 302 查看
梯度下降法,是迭代算法。

在求最值时,常常用到。

BP网络中,最小化 误差cost function,求解对应网络中的weights,即可用梯度下降法来更新weights.

梯度下降法基本思想

给定一个函数 f ,假设求 f 最大值(最小值)。初始化函数上的一个点,对该点求导,该点往导数的方向(反方向)移动。直到梯度向量的幅值接近0。迭代公式:



其中,

是梯度的方向,

表示梯度方向上搜索步长。步长太大可能造成结果发散不收敛,步长小的话,收敛速度可能会很慢。一般确定步长的方法是由线性搜索算法来确定,即把下一个点的坐标看做是ak+1的函数,然后求满足f(ak+1)的最小值的
即可。

函数凹凸性:

当目标函数f 是凸函数时,梯度下降法能求出全局最优解

当f 不是凸函数时,可以将f 近似转化为凸函数

牛顿法,比梯度下降法在求解中需要迭代的次数更少。

牛顿法是二阶收敛,而梯度下降法是一阶收敛。

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