首页 首页 >  文章资讯

腾讯AI Lab误差补偿式量化SGD:显著降低分布式机器学习通信成本

发布者:科普院    发布时间:2018-07-03 15:40:55    浏览次数:197次

  在量子在分布式机器学习应用中,各个节点之间的通信效率往往会成为整体性能的关键制约因素,目前的常见解决方法是对节点之间的通信信息进行压缩,但这会引入量化误差。为了解决这一问题,腾讯 AI Lab 提出了一种误差补偿式量化随机梯度下降(ECQ-SGD)方法。该论文已被将于当地时间 7 月 10-15 日在瑞典斯德哥尔摩举办的 ICML 2018 接收,此次实验室共有 16 篇论文被收录。


  在 ICML 2018 与 IJCAI 2018 大会期间(今年都在斯德哥尔摩),腾讯将举办 Tencent Academic and Industrial Conference (TAIC),诚邀全球顶尖 AI 学者、青年研究员与腾讯七大事业群专家团队探讨最前沿 AI 研究与应用。


  由于数据近年来的爆炸式增长,很多不同领域都已经越来越关注大规模机器学习了,比如计算机视觉和语音识别领域。在这些应用中,训练数据的量往往过于庞大,以至于难以通过单个计算节点实现有效的处理,所以分布式优化方法是这些应用中的一个核心构建模块。


  数据并行化是一种常用的分布式学习框架,其中整个数据集会被分割和存储在一个集群中的多个节点上。每个节点都会计算各自的局部梯度并与其它节点交流梯度以更新模型参数。对于这样的学习系统,消耗的时间可大致归类为计算时间和通信时间。其中通信往往会成为性能的瓶颈,尤其是对于具有大量参数的大型集群和/或模型。


  目前已有一些试图通过降低通信成本来提升分布式学习的效率的研究工作。某些方法关注的是将梯度量化为定点数(Zhou et al., 2016; Alistarh et al., 2017),这样需要传输的比特数就会少很多。还有一些研究探索过更为激进的量化方法,比如二元或三元表征(Seide et al., 2014; Strom, 2015; Wen et al., 2017)。还有方法是在通信过程中在梯度上施加稀疏性,这样每轮迭代中就仅有一小部分梯度在节点之间交换(Wangni et al., 2017; Lin et al., 2018)。


  这些方法的基本思想基本都是将梯度压缩成某种特定的形式,让其中每一项都能使用远少于原来的 32 位浮点数的比特数表示。这样的压缩会在优化过程中引入额外的随机噪声,即量化误差,这会减缓收敛速度,甚至导致发散。1Bit-SGD(Seide et al., 2014)采用了误差反馈方案,即使用上一轮迭代的量化误差来补偿当前的局部梯度,之后再将其输入量化函数。尽管该方法的提出者表示这有助于改善收敛行为,但却没有给出理论分析来证明其有效性。


  在本论文中,我们提出了误差补偿式量化随机梯度下降(ECQ-SGD)方法。我们的算法也使用了误差反馈方案,但我们会累积所有之前的量化误差,而不是像 1Bit-SGD 一样只使用上一轮迭代的量化误差。尽管实验评估表明这种修改能实现比很多基准方法更快更稳定的收敛,但为这种现象提供理论保证却并不简单。


  Alistarh et al., 2017 已经证明,对于他们提出的 QSGD 算法,达到特定次优间隙(sub-optimality gap)所需的迭代数量正比于随机量化梯度的方差界限。但是,这不能解释我们的方法的收敛行为,因为我们的量化梯度是对原始梯度的有偏估计,这与 QSGD 的情况不同。实际上,由于使用的是累积的量化误差,我们的量化梯度的方差界限甚至比 QSGD 的还大。为了解决这一问题,我们从另一个角度给出了收敛性分析,并且证明了在合适的超参选择下,我们的算法比 QSGD 具有更紧致的最坏情况误差界限(worst-case error bound)。事实证明,我们提出的误差反馈方案可以很好地抑制量化误差对误差界限的贡献;正如我们在实验中观察到的那样,这能实现比 QSGD 更小的次优间隙。太原东方男健医院


【版权与免责声明】如发现内容存在版权问题,烦请提供相关信息发邮件至 335760480@qq.com ,我们将及时沟通删除处理。 以上内容均为网友发布,转载仅代表网友个人观点,不代表平台观点,涉及言论、版权与本站无关。