Skip to main content
QUICK REVIEW

[论文解读] Second Order Optimization Made Practical.

Rohan Anil, Vineet Gupta|arXiv (Cornell University)|Feb 20, 2020
Stochastic Gradient Optimization Techniques参考文献 7被引用 20
一句话总结

本文提出了一种实用的、分布式的二阶优化方法,基于全矩阵Adagrad变体,并通过算法和数值改进显著降低了计算和内存开销。该方法在大规模深度学习任务中,特别是在神经机器翻译任务中,通过高效利用异构CPU-GPU架构,实现了比一阶方法更快的收敛速度和更短的运行时间。

ABSTRACT

Optimization in machine learning, both theoretical and applied, is presently dominated by first-order gradient methods such as stochastic gradient descent. Second-order optimization methods that involve second-order derivatives and/or second-order statistics of the data have become far less prevalent despite strong theoretical properties, due to their prohibitive computation, memory and communication costs. In an attempt to bridge this gap between theoretical and practical optimization, we present a proof-of-concept distributed system implementation of a second-order preconditioned method (specifically, a variant of full-matrix Adagrad), that along with a few yet critical algorithmic and numerical improvements, provides significant practical gains in convergence on state-of-the-art deep models and gives rise to actual wall-time improvements in practice compared to conventional first-order methods. Our design effectively utilizes the prevalent heterogeneous hardware architecture for training deep models which consists of a multicore CPU coupled with multiple accelerator units. We demonstrate superior performance on very large learning problems in machine translation where our distributed implementation runs considerably faster than existing gradient-based methods.

研究动机与目标

  • 弥合二阶优化在理论上强大的性能与其实用性受限之间的差距,后者受限于高昂的计算和内存成本。
  • 设计一种可扩展的、适用于现代异构硬件(CPU + 多个加速器)的分布式二阶预处理方法的实现。
  • 证明二阶优化相比一阶方法(如随机梯度下降)可在训练收敛速度和运行时间上实现更快的性能。
  • 在大规模深度学习工作负载上验证该方法,特别是在神经机器翻译任务中。

提出的方法

  • 该方法采用全矩阵Adagrad的变体,通过维护和更新完整的海森矩阵近似来预处理梯度。
  • 引入关键的算法和数值改进,以降低二阶方法的计算和内存开销。
  • 系统设计用于在多个加速器上进行分布式训练,高效地将计算任务卸载到GPU,同时控制通信成本。
  • 通过算法与系统协同设计,充分利用异构硬件堆栈(多核CPU和多个加速器单元),实现负载均衡和数据移动的优化。
  • 采用预处理技术,基于损失曲面的历史二阶统计信息自适应地缩放梯度。

实验结果

研究问题

  • RQ1尽管存在高昂的计算和内存成本,二阶优化能否在大规模深度学习模型中实现实用化?
  • RQ2与一阶方法相比,分布式二阶方法在收敛速度和实际运行时间上的表现如何?
  • RQ3在多CPU和多个加速器的异构硬件环境下,多大程度上可以实现二阶优化的可扩展性?
  • RQ4为使二阶方法在实践中可行,需要哪些算法和数值改进?

主要发现

  • 所提出的分布式二阶方法在最先进深度学习模型上实现了显著快于一阶方法的收敛速度。
  • 尽管二阶方法结构复杂,但该实现仍能在大规模训练中实际提升运行时间,优于传统的一阶优化方法。
  • 该系统有效利用了异构硬件,通过在CPU和多个加速器之间均衡计算负载,显著减少了训练时间。
  • 该方法在大规模神经机器翻译任务中表现出色,相比现有基于梯度的方法,在收敛速度和运行时间上均表现更优。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。