梯度之上—Hessian矩阵:利用二阶导数的 “牛顿法” 突破梯度下降法的局限性

发布于 2025-7-7 06:44
浏览
0收藏

梯度下降法是仅使用梯度信息的一阶优化算法,忽略了曲率信息,计算简单且可能收敛慢。因此,牛顿法使用Hessian矩阵结合了局部曲率信息,自适应地调整更新步长,进一步加速收敛。本文将从梯度下降法的局限性出发,详细介绍牛顿法的数学推导过程。(全文1300余字,感兴趣可点赞、推荐、转发、关注,将持续更新!!!)

1、梯度下降法的局限性

(1) 梯度下降法沿参数空间中某一点处的​​​负梯度方向​​​进行参数更新。同时,​​​梯度下降法的本质是基于一阶泰勒展开的局部线性近似。​​​理想情况下,当每一次参数更新的步长无限小时,函数值的下降路径无限逼近于原函数。但是,实际应用中,步长越小,计算量越大,故每一次参数更新必有确定的步长,这也导致了函数值的实际下降路径必然与最优下降路径存在差异,从而为梯度下降法的优化带来了可能性。

梯度之上—Hessian矩阵:利用二阶导数的 “牛顿法” 突破梯度下降法的局限性-AI.x社区


梯度之上—Hessian矩阵:利用二阶导数的 “牛顿法” 突破梯度下降法的局限性-AI.x社区

(b) 总之,期望找到一种方法,既能保证一定的学习步长,又能更好地贴近最优下降路径。

2、牛顿法

梯度之上—Hessian矩阵:利用二阶导数的 “牛顿法” 突破梯度下降法的局限性-AI.x社区


梯度之上—Hessian矩阵:利用二阶导数的 “牛顿法” 突破梯度下降法的局限性-AI.x社区

(2) 与基于一阶泰勒展开实现局部线性逼近的梯度下降法类似,若要找到一个二次曲线去逼近目标函数,常用的方法是对目标函数在当前参数点处进行二阶泰勒展开(理论上越高阶越好,但是计算量也越大)。

梯度之上—Hessian矩阵:利用二阶导数的 “牛顿法” 突破梯度下降法的局限性-AI.x社区

3、牛顿法的有效性和局限性

(1) 相比于标准的梯度下降法,牛顿法利用了二阶导数(即矩阵),来描述目标函数的局部曲率,自适应地调整更新步长,加速收敛。

(a) 众所周知,函数在某点的一阶导数为切线的斜率。那么,二阶导数为一阶导数的导数,量化了函数切线斜率随自变量变化的速率,便可反映函数局部的曲率。

(b) 二阶导数越大,表示斜率变化越快(如急转弯),曲率大;反之越小。

(2) 牛顿法每次参数更新都要计算一个矩阵,计算量太大,故其实用性较差。

梯度之上—Hessian矩阵:利用二阶导数的 “牛顿法” 突破梯度下降法的局限性-AI.x社区

参考资料

[1] 高等数学第八版,同济大学数学科学院

[2] https://www.bilibili.com/video/BV1r64y1s7fU?spm_id_from=333.788.videopod.sections&vd_source=4cb33b31ca5b5cd06b5f94aee649ca78​

本文转载自​​​南夏的算法驿站​​​,作者:赵南夏

收藏
回复
举报
回复
相关推荐