中文

高精度低精度训练

机器学习 2018-03-12 v1 机器学习

摘要

低精度计算常用于降低机器学习的时间和能耗,近来已开发出支持该计算的硬件加速器。然而,它主要被用于推理而非训练。先前的低精度训练算法受到一个基本权衡的制约:随着精度位数的降低,量化噪声被引入模型,从而限制了统计精度。为解决此问题,我们描述了一种称为 HALP 的简单低精度随机梯度下降变体。尽管在整个执行过程中使用低精度引入了噪声,HALP 仍以与全精度算法相同的理论速率收敛。其关键思想是利用 SVRG 降低梯度方差,并将其与一种称为比特居中(bit centering)的新技术结合以减少量化误差。我们展示了在 CPU 上 HALP 可比全精度 SVRG 快至多 4×4 \times,并能匹配其收敛轨迹。我们在 TensorQuant 中实现了 HALP,并表明在两个深度学习任务上其验证性能超过了普通低精度 SGD。

关键词

引用

@article{arxiv.1803.03383,
  title  = {High-Accuracy Low-Precision Training},
  author = {Christopher De Sa and Megan Leszczynski and Jian Zhang and Alana Marzoev and Christopher R. Aberger and Kunle Olukotun and Christopher Ré},
  journal= {arXiv preprint arXiv:1803.03383},
  year   = {2018}
}