选自unite.ai
作者:Martin Anderson
机器之心编译
编辑:杜伟、陈萍

这一研究可能促使人们重新审视 GPU 在深度神经网络训练中扮演的角色。
最近,有学者发现在 GPU 而不是 CPU 上训练的机器学习系统在训练过程中可能包含更少的误差,并产生更好的结果。这一发现与一般的理解相矛盾,即 GPU 只具有加速功能,而不是使训练结果更好。
来自波兹南密茨凯维奇大学、大阪大学、索尼等机构的研究者在一篇论文中得出了这一结论。
论文地址:https://arxiv.org/pdf/2109.01451.pdf
该研究表明,深度神经网络在面对各种硬件和软件配置时表现出的「不确定性」有利于更昂贵 GPU,并在测试中发现,专门在 CPU 上训练的深度神经网络在相同的 epoch 上产生更高的误差。
在论文的补充示例中,我们看到(底部两行)从各种 GPU 获得的结果质量相似,而在第一行中得出,从一系列其他功能非常强大的 CPU 获得结果较差。
奇怪的现象
但是,该研究发现这一现象并不适用于目前流行的机器学习算法,比如简单的自编码器(autoencoder),这种现象就不会出现。
尽管如此,这项工作还是暗示了复杂神经网络训练的有效性可能存在逃逸速度(escape velocity),在这种情况下以较低的速度和较长的训练时间覆盖相同的操作,并不能获得人们期望的数学迭代例程的同等性能。
研究人员认为,这种性能差异可能是某些神经网络所特有的,GPU 专门处理的一些不确定方面,这些方面经常被视为最终要克服的障碍,GPU 不仅能提供显著的益处,而且最终可能被有意地纳入系统。这项研究发现可以为与大脑相关的计算处理提供更深入的见解。
在 GPU 上以这种方式识别提升效率和结果质量的奇特性质,有可能更深入地了解「黑箱」AI 架构,甚至提升 CPU 性能。遗憾的是,目前这一现象的根本原因尚不清楚。
自编码器 VS PredNet
在研究异常时,研究人员使用一个基本自编码器(autoencoder)和哈佛大学提出的 PredNet(Predictive Neural Network)进行研究。其实,这项研究可追溯到 2016 年,旨在探索和尝试复制人类大脑皮层的行为。
自编码器和 PredNet 都是基于深度神经网络的,它们旨在通过无监督学习合成图像。自编码器对每批次图像进行线性处理,产生输出,并将输出作为循环 pipeline 的下一个图像输入。此外,自编码器是在 MNIST 手写数据集上训练的。
在 MNIST 数据库上训练自编码器,该数据库包含 60,000 张 28×28 像素的训练图像,以及 10,000 张测试图像。
与自编码器相比,PredNet 可以用来评估复杂的视频输入,并且在 FPSI 数据集上进行了训练。
FPSI 的图像序列,以第一人称视角展示了在迪士尼世界的一天。
此外,这两种架构在复杂度上非常不同。自编码器在设计上用于重建图像而不是预测目标值。相比之下,PredNet 是 4 层结构,每层包含使用卷积 LSTM 的表征神经元。这些层输出上下文预测,然后与目标进行比较,从而生成在网络中传播的误差项。
自编码器与 PredNet 的相同点是都使用无监督学习。
下图左为具有简单、线性架构的自编码器,图右为具有更复杂和循环网络的 PredNet。
研究者在一系列硬件和软件配置下对这两种架构进行了测试,包括以下两种配置方式:
有 CPU 无 GPU(Intel i5-4590、i7-6800K、i5-7600K 或 AMD Ryzen-5-3600)
既有 CPU 又有 GPU(Intel i5-7600K + NVIDIA GTX-750Ti、i5-7600K + GTX-970、i7-6700K + GTX-1080 等)
他们使用交互式进程查看器 htop 来确保所有训练保持在单线程(Intel i7-6800K)、四线程(Intel i5-4590 和 i5-7600K)或六线程(AMD Ryzen-5-3600)上。
鞍点
在自编码器上,所有配置的平均差在有无 cuDNN 的情况下都不明显。对于 PredNet,结果更令人意外,CPU 和 GPU 训练在损失评估与质量之间存在显著差异。
PredNet 在 4 块 CPU 和 8 块 GPU 上训练的平均损失结果。cuDNN 处于关闭状态。
研究者总结表示:「尽管运行机制不清楚,但 GPU 硬件看起来具有提升 DNN 训练的能力。」结果表明,GPU 在避免鞍点时表现更好(鞍点是梯度下降中描述斜坡底部的区域)。
梯度下降中斜坡的最低点是「鞍点」。图源:https://www.pinterest.com.au/pin/436849232581124086/
鞍点虽然是一个障碍,但在最近关于随机梯度下降(SGD)的思考中,它被认为很大程度上容易解决。但本论文表明,不仅 CPU 需要独特的配置来避免鞍点,而且鞍点的影响或许应该予以重新审视。
原文链接:https://www.unite.ai/gpus-may-be-better-not-just-faster-at-training-deep-neural-networks/
机器之心 · 机动组
机动组是机器之心发起的人工智能技术社区,聚焦于学术研究与技术实践主题内容,为社区用户带来技术线上公开课、学术分享、技术实践、走近顶尖实验室等系列内容。机动组也将不定期举办线下学术交流会与组织人才服务、产业技术对接等活动欢迎所有 AI 领域技术从业者加入
  • 点击阅读原文,访问机动组官网,观看全部视频内容:
  • 关注机动组服务号,获取每周直播预告
© THE END 
转载请联系本公众号获得授权
投稿或寻求报道:[email protected]
继续阅读
阅读原文