二阶迭代法

二阶迭代法

  该优化方法基于牛顿法" "其迭代方式如下:
  x←x−[Hf(x)]−1∇f(x)

  这里Hf(x)是Hessian矩阵,它是函数的二阶偏导数的平方矩阵。∇f(x)是梯度向量,这和梯度下降中一样。
  直观理解上,Hessian矩阵描述了损失函数的局部曲率,从而使得可以进行更高效的参数更新。具体来说,就是乘以Hessian转置矩阵可以让最优化过程在曲率小的时候大步前进,在曲率大的时候小步前进。这个公式中没有学习率这个超参数,因此比一阶方法好得多。

缺点

  不使用该方法,原因有二:
  1)在实际深度学习应用中,上述更新方法很难运用,这是因为计算(以及求逆)Hessian矩阵操作非常耗费时间和空间。
  例如,假设一个有一百万个参数的神经网络,其Hessian矩阵大小就是[1,000,000 x 1,000,000],将占用将近3725GB的内存。
  好消息是,各种各样的拟-牛顿法就被发明出来用于近似转置Hessian矩阵。最流行的是L-BFGS,该方法使用随时间的梯度中的信息来隐式地近似(不是将整个矩阵进行计算)。
  2)然而,即使解决了存储空间的问题,L-BFGS应用的一个巨大劣势是需要对整个训练集进行计算,而整个训练集一般包含几百万的样本。和小批量随机梯度下降(mini-batch SGD)不同,让L-BFGS在小批量上运行起来是很需要技巧,同时也是研究热点。
  在实践中,使用L-BFGS之类的二阶方法并不常见。基于(Nesterov的)动量更新的各种随机梯度下降方法更加常用,因为它们更加简单且容易扩展。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值