您的位置:首页 > 其它

梯度下降法、牛顿法、拟牛顿法

2018-03-04 19:54 295 查看
梯度下降法
梯度下降法的优化思想是用当前负梯度方向作为搜索方向,因为该方向为当前位置的最快下降方向,所以也被称为“最速下降法”。最速下降法越接近目标值,步长越小,前进越慢。
批量梯度下降法
得到的是全局最优解,但是每迭代一步,都要用到训练集所有的数据,如果训练集的数据很大,那么可想而知这种方法的迭代速度会相当的慢。于是出现了随机梯度下降法
随机梯度下降
通过每个样本来迭代更新一次,如果样本量很大的情况(例如几十万),那么可能只用其中几万条或者几千条样本
最小化每条样本的损失函数,虽然不是每次迭代得到的损失函数都向着全局最优方向,但是大的整体方向是向全局最优解的,最终结果往往是在全局最优解附近,适用于大规模训练样本情况
牛顿法
首先,我们对函数在xk点处进行二阶泰勒展开


这样我们就得到了一个不断更新x迭代求得最优解的方法。这个也很好理解,假设我们上面的第一张图的曲线表示的是函数f(x)一阶导数的曲线,那么其二阶导数就是一阶导数对应函数在某点的斜率,也就是那条切线的斜率,那么该公式就和上面求根的公式本质是一样的。 


拟牛顿法

因为我们要选择一个矩阵来代替海森矩阵的逆,那么我们首先要研究一下海森矩阵需要具有什么样的特征才能保证牛顿法成功的应用。通过上面的描述我们知道f′(xk+1)=f′(xk)+Hk(xk+1−xk)⇒H−1K(f′(xk+1)−f′(xk))=xk+1−xk
上式我们称之为拟牛顿条件。 
因此,对于我们所选择的替代矩阵Gk,需要满足两个条件:拟牛顿条件,即Gk(f′(xk+1)−f′(xk))=xk+1−xk;
要保证Gk为正定矩阵,这是因为只有正定才能保证牛顿法的搜索方向是向下搜索的
假设yk=f′(xk+1)−f′(xk),δk=xk+1−xk,因为每次迭代我们都需要更新替代矩阵Gk,下面介绍一种常用的迭代算法DFP(Davidon-Fletcher-Powell)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: