AutoAssist:一种加速深度神经网络训练的框架
机器学习
2019-05-10 v1 人工智能
机器学习
摘要
深度神经网络在许多应用中取得了优越的性能;然而,即便借助现代 GPU/TPU 硬件加速,在拥有数百万样本的深度模型中进行梯度计算仍导致漫长的训练过程。在本文中,我们提出 AutoAssist,一种加速深度神经网络训练的简单框架。通常,随着训练过程推进,每个样本上随机梯度更新对当前模型的改进量动态变化。在 AutoAssist 中,我们利用这一事实设计了一个简单的样本收缩操作,用于过滤掉对当前模型边际改进相对较低的样本;从而尽可能在信息量大的样本上执行计算密集的梯度计算。我们证明,对于线性 SVM 问题,所提技术优于朴素 SGD 与现有重要性采样方法,并为强凸问题建立了 O(1/k) 收敛性。为了将所提技术应用于加速深度模型训练,我们提出除原深度网络(称为 Boss)外联合训练一个非常轻量的辅助网络(Assistant)。辅助网络旨在衡量给定样本相对于当前 Boss 的重要性,从而在批生成器中应用收缩操作。通过精心设计,我们以非阻塞和异步方式训练 Boss 与 Assistant,使开销最小。我们证明,在图像分类数据集上训练 ResNet 达到相同测试精度时,AutoAssist 将训练轮数减少 40%;在翻译数据集上使 transformer 模型达到相同 BLEU 分数所需的训练时间节省 30%。
引用
@article{arxiv.1905.03381,
title = {AutoAssist: A Framework to Accelerate Training of Deep Neural Networks},
author = {Jiong Zhang and Hsiang-fu Yu and Inderjit S. Dhillon},
journal= {arXiv preprint arXiv:1905.03381},
year = {2019}
}