IBM新型深度学习系统解析,当真能实现最优性能?
近日,IBM 发布了一种结合软件和硬件的新型分布式系统 PowerAI DDL,该系统不仅在 Imagenet 22K 任务上实现了当前最佳的性能,同时还只需要 7 小时就能完成训练。该软件库现已集成到 TensorFlow、Caffe 和 Torch 中。
IBM Research 在 arXiv 发表文章,称使用新型分布式深度学习软件可达到几乎完美的扩展效果,该系统在 64 位 IBM Power system 的 256 个英伟达 GPU 上使用 Caffe 深度学习框架获得了破纪录的通信成本,扩展效率高达 95%。之前的最佳扩展效率是 Facebook AI Research 发布的 89%,其在 Caffe2 上训练运行,通信成本相对较高。IBM Research 还以 50 分钟的模型训练时间在时间方面优于 Facebook 的模型。使用该系统,IBM Research 在大型数据集(7.5M 图像)上利用神经网络达到新的图像识别准确率--33.8%。微软之前发布的记录是 29.8%。
IBM Research 分布式深度学习代码的技术预览内容今天即可在该网址查看:https://www.ibm.com/us-en/marketplace/deep-learning-platform。
深度学习是一种广泛使用的人工智能方法,它帮助计算机理解人类用来感知世界的图像和声音,并从中抽取意义。该方法有望帮助从消费者手机 app 体验到医疗影像诊断的所有领域中实现突破。但是大规模部署深度学习的准确率和可行性受到技术因素的限制,如训练基于大型复杂深度学习的 AI 模型,该过程的训练时间需要用天或周来衡量。
我在 IBM Research 的团队一直致力于减少在大数据集上训练大型模型的时间。我们的目标是将深度学习训练的等待时间从数天或数小时缩减至几分钟甚至几秒,并改善这些 AI 模型的准确率。为了达到该目标,我们在大量服务器和多个英伟达 GPU 的分布式深度学习中解决了扩展问题这一巨大挑战。
最流行的深度学习框架可以在一个服务器的多个 GPU 上扩展,但是无法在具备多个 GPU 的多个服务器上扩展。具体来说,我们的团队(Minsik Cho、Uli Finkler、David Kung 以及他们的合作伙伴)写出的软件和算法,能够在数十个服务器上的数百个 GPU 加速器之间自动执行和优化大型复杂计算任务的并行化。
IBM 研究员 Hillery Hunter 用前所未有的 GPU 处理速度开发新软件。
我们的软件可以完全同步地进行深度学习训练,并且这种训练只有非常少的通信成本。因此,当我们将该系统扩展到有 100 多个英伟达 GPU 的大型计算机集群时,它在 ImageNet-22K 数据集上的 7.5M 图片上识别精度达到了 33.8%,而前面最好的结果是微软实现的 29.8%,4% 的性能提升已经是十分巨大的进步了,因为以前的精度提升基本上都在 1% 以内。我们所提出的分布式深度学习(DDL)方法不仅能提升性能,还能在 7 小时内训练一个 101 层的残差网络,因为它能利用 10 个配备 100 块英伟达 GPU 的服务器的计算力。相比之下,微软可能需要十天的时间来训练相同的模型。这个成就进一步要求我们创建 DDL 代码和算法,以克服扩展到其他强力深度学习框架所遇到的固有问题。
这些结果都是在为测试深度学习算法和系统而构建的基准上完成的,所以 33.8% 的验证精度可能看起来不高,但是它要显著地高于以前的最优结果。给定任意一张图片,该系统将会在 22000 个选项中给出最佳的选择(Top-1 accuracy),并且精度还能达到 33.8%。我们的技术将帮助其它 AI 模型在具体的任务上训练,例如医疗影像中的癌细胞检测就能变得更加精确,并且训练或再训练都只需要数小时。
FAIR(Facebook AI Research)六月份发表的研究论文中描述了这个问题,该论文使用较小的数据集(ImageNet 1k)和较小的神经网络(ResNet 50)解释了他们杰出的研究成果:
深度学习的兴起得益于大型神经网络和数据集。但是,大型网络和数据集导致了较长的训练时间,这阻碍了研发的前进步伐。
讽刺的是,这个在多服务器上策划和优化深度学习的问题随着 GPU 不断变快,也变得越发困难了。这一问题在深度学习系统中造成了一种功能差距,驱使着我们创建新型的 DDL 软件,以使在高性能和高精确度的大规模神经网络和数据集上运行流行的开源代码(比如 Tensorflow、Caffe、Torch 和 Chainer)成为可能。
「盲人摸象」的说法有助于描述我们正在解决的问题和已经取得的早期成果的背景。根据维基百科:
……每一个盲人只能感受到大象的一部分,比如大象身体的一侧或者象牙。然后他们基于这一片面经验描述大象,这些描述和大象完全不同。
现在,尽管存在初始化差异(initial disagreement),但如果这些人有足够的时间,他们能够共享信息,并将其组合成相当准确的大象的定义。
相似地,如果你使用多个 GPU 处理深度学习在数天或数周中的并行训练问题,这也是当前的常见情形,你可以相对轻松地将这些学习结果同步化。
但是当 GPU 变得更快,它们的学习也更快;并且它们不得不以一种传统软件无法实现的速率与其他 GPU 共享学习。这就为系统网络增加了压力,并且是一个棘手的技术问题。基本来讲,更智能更快的 GPU 需要更好的通信方式,否则它们就无法同步,并花费绝大多数时间等待彼此的结果。因此,你不会从学习更快的 GPU 中获得加速。
当你查看扩展效率,或者当你添加 GPU 看到如何接近于完美的系统性能扩展时,我们使用(DDL)软件解决这个功能性差距的能力是显而易见的。这些测量提供了一个视角来观察 256 块 GPU 如何很好地「讨论」彼此的知识。
之前,256 块 GPU 的最佳扩展来自 Facebook 人工智能研究院(FAIR)的一个团队。FAIR 使用了一个较小的深度学习模型 ResNet-50,和一个较小的大约 130 万张图像的数据集 ImageNet-1K;二者降低了计算复杂度,并使用较大的 8192 的批量大小;最终,通过 Caffe2 在 256 块英伟达 P100 GPU 加速集群上取得了 89% 的扩展效率。对于一个 ResNet-50 模型和一个与 Facebook 相同的数据集,IBM Research DDL 通过 Caffe 实现了 95% 的效率,如下表所示。这是在 64 台「Minsky」Power S822LC 系统的集群上运行的,每个系统有 4 块英伟达 P100 GPU。
- 全球IC代工版图生变 代工版图的基因分析(03-05)
- IBM芯片业务:GlobalFoundries愿买 美国愿卖么?(08-03)
- 采用铜锌锡研制光伏电池 IBM打破世界纪录(08-22)
- 自毁芯片可避免战场情资外泄(02-07)
- 传IBM欲出售芯片业务 将为20年来最大战略调整(02-10)
- Semico研究认为2010年全球IC业将强劲增长(09-26)