二阶优化算法比一阶的优化算法比有什么优缺点?
二阶一定收敛更快吗?
2个回答
1牛顿法收敛速度为二阶,对于正定二次函数一步迭代即达最优解。
2牛顿法是局部收敛的,当初始点选择不当时,往往导致不收敛
3牛顿法不是下降算法,当二阶海塞矩阵非正定时,不能保证产生方向是下降方向。
4二阶海塞矩阵必须可逆,否则算法进行困难。
5对函数要求苛刻(二阶连续可微,海塞矩阵可逆),而且运算量大。
一阶算法就是用了一阶导数的算法。对于多元函数,一阶导数就是梯度(一维张量)。
二阶算法就是用了二阶导数的算法。对于多元函数,二阶导数就是海森矩阵(二维张量)。
n阶算法就需要计算n维张量。
这么看很显然阶数越高,需要计算的张量维度越高,计算量越大。
虽然高阶算法收敛快,但是考虑到计算导数本身的代价,二阶算法不一定总是比一阶算法实用。所以在神经网络里,经常是使用一阶优化算法。
SofaSofa数据科学社区DS面试题库 DS面经