【导读】深度学习和硬件怎样结合?计算机界神级人物、谷歌人工智能主管Jeff Dean发表了独自署名论文《The Deep Learning Revolution and Its Implications for Computer Architecture and Chip Design》,17页pdf论文,长文介绍了后摩尔定律时代的机器学习研究进展,以及他对未来发展趋势的预测判断。
摘要
在过去的十年里,机器学习,特别是基于人工神经网络的深度学习方法取得了一系列显著的进步,从而提高了我们在更广泛的领域建立更精确系统的能力,包括计算机视觉、语音识别、语言翻译和自然语言理解任务。这篇论文是2020年国际固态电路会议(ISSCC)的主题演讲的配套论文,讨论了机器学习的一些进展,以及这些进展对我们需要构建的计算设备的影响,特别是在后摩尔定律时代。它还讨论了一些方法,机器学习也可以帮助电路设计过程的某些方面。最后,它提供了至少一个有趣方向的草图,朝向更大规模的多任务模型,这些模型是稀疏激活的,并且使用了比今天的机器学习模型更动态的、基于实例和任务的路由。
引言
图1:ImageNet 分类竞赛获胜者随时间的准确性
这些在计算机视觉、语音识别、语言理解和大规模强化学习等基础领域的进步,对许多领域都产生了巨大的影响。我们已经在许多不同的领域和医学领域看到了一系列稳定的成果,将过去十年中产生的基础研究成果应用于这些问题领域。例如,医学成像诊断任务的前景领域包括糖尿病视网膜病变(Gulshan et al. 2016, Krause et al. 2018)、乳腺癌病理学(Liu et,2017年)、肺癌CT扫描解释(Ardila et,2019年)和皮肤病学(Esteva et,2017年)。对语言翻译有用的顺序预测方法也有助于对电子病历中各种不同的与医学相关的任务进行准确预测[Rajkomar et al. 2018]。这些早期迹象为机器学习在卫生和医疗保健的许多领域产生重大影响指明了道路[Rajkomar等人2019年,Esteva等人2019年]。
其他通过使用基于深度学习的方法而得到改善的领域包括量子化学(Gilmer et,2017年)、地震预测(DeVries et,2018年)、洪水预测(Nevo et,2019年)、基因组学(Poplin et,2018年)、蛋白质折叠(Evans et,2018年)、高能物理(Baldi et,2014年)和农业(Ramcharan et,2017年)。
有了这些重大的进展,很明显ML改变许多不同领域的潜力是巨大的。
摩尔定律,后摩尔定律,以及机器学习的计算需求
图2:摩尔定律和后摩尔定律时期的计算性能
图3:一些重要的人工智能进展及其计算需求
图4:2009年以来与机器学习相关的Arxiv论文
机器学习专用硬件
为什么专门的硬件对深度学习模型有意义?
对于推断(在对一个模型进行了训练之后,我们希望将已经训练好的模型应用到新的输入中,以便进行预测),8位整型计算已经被证明对于许多重要的模型来说是足够的[Jouppi et,2017],随着研究社区中进一步广泛的工作正在进行,使用更低的精度权重,以及鼓励权重和/或激活的技术来进一步推动这个边界。
TPUv1的核心是一个65,536个8位的乘法累积矩阵乘法单元,最高吞吐量为92 TeraOps/秒(上限)。TPUv1平均比其同时代的GPU或CPU快15 - 30倍,TOPS/Watt大约高30 - 80倍,能够运行代表当时谷歌数据中心95%的神经网络推理需求的生产神经网络应用程序,具有显著的成本和功率优势[Jouppi et,2017]。
在低功耗移动设备上的推理对于机器学习的许多用途也非常重要。如果能够在设备上运行机器学习模型(设备本身通常是用于语音或视觉等领域的模型的原始数据输入的来源),就会有很大的延迟和隐私方面的好处。可以采用与TPUv1相同的设计原则(一种针对高性能/瓦特的低精度线性代数计算的简单设计),并将这些原则应用于更低功耗的环境,例如移动电话。谷歌的Edge TPU就是这种系统的一个例子,它在2W的功率范围内提供4个陀螺。设备上的计算对于许多有趣的深度学习用例来说已经是至关重要的,在这些用例中,我们希望计算机视觉、语音和其他类型的模型能够直接运行在感官输入上,而不需要连接。一个这样的例子是在设备上的农业应用,比如在木薯田中间识别疾病,木薯田可能没有可靠的网络连接[Ramcharan et al. 2017]。
随着机器学习在世界范围内的广泛应用和它作为一种关键计算类型的重要性的日益增长,一场剑桥式的新型有趣的机器学习计算加速器的爆炸正在进行中。有超过XX家风险投资支持的初创公司,以及各种大型、成熟的公司,它们都在生产各种用于机器学习的新芯片和系统。例如Cerebras、Graphcore和Nervana(被Intel收购)专注于ML培训的各种设计。而阿里巴巴等其他公司则在设计专注于推理的芯片。一些设计避开了更大的内存容量DRAM或HBM,专注于非常高性能的设计,为模型足够小,他们的整个参数集和中间值适合SRAM。其他公司则专注于包括DRAM或HBM在内的设计,这些设计使它们适用于更大规模的模型。有些,比如Cerebras,正在探索完整的晶片级集成。其他公司,如谷歌的Edge TPUs,正在为移动电话和分布式传感设备等环境的推理构建非常低功耗的芯片。
为训练设计定制的机器学习硬件(而不仅仅是推理)是一项比单片机推理加速器更复杂的工作。其原因是,单片训练系统无法解决许多我们希望在合理时间内(如数小时或数天,而不是数周或数月)解决的问题,因为单片系统不能提供足够的计算能力。此外,在更大的数据集上训练更大的模型的愿望是这样的,即使单个芯片可以在合理的时间内交付足够的计算来解决给定的问题,这也意味着我们常常想要解决更大的问题(无论如何,在并行或分布式系统中需要使用多个芯片)。因此,设计训练系统实际上是设计一个更大的、整体的计算机系统,需要考虑单个加速器芯片的设计,以及形成紧密耦合的机器学习超级计算机的高性能互连。谷歌的第二代和第三代tpu, TPUv2和TPUv3,被设计来支持训练和推理,而基本的单个设备,每一个由四个芯片组成,被设计成连接在一起的更大的配置称为豆荚。图5显示了单个谷歌TPUv2芯片的框图,该芯片有两个核心,每个核心的主要计算能力由一个大的矩阵乘法单元提供,每个循环可以产生一对128x128矩阵的乘法结果。每个芯片有16gb (TPUv2)或32gb (TPUv3)的附加高带宽内存(HBM)。图6显示了谷歌的TPUv3 Pod的部署形式,它由1024个加速器芯片组成,包括8个机架的芯片和相应的服务器,芯片以32x32环形网格连接在一起,提供了超过100 petaflop/s的系统性能峰值。
图5:谷歌张量处理单元v2 (TPUv2)的框图
图6: 谷歌的TPUv3 Pod,由1024个TPUv3芯片组成,峰值性能为>100 petaflop/s
下面的图7显示了IEEE fp32单精度浮点格式、IEEE fp16半精度浮点格式和bfloat16格式的符号、指数和尾数位的分割。
在快速变化的领域中不确定性的挑战
构建机器学习加速器硬件的一个挑战是,ML研究领域的发展速度非常快(从每年发表的研究论文的增长和绝对数量可以看出,如图4所示)。目前启动的芯片设计项目通常需要18个月到24个月才能完成设计、制造半导体部件并将其收回,并将其安装到生产数据中心环境中。为了使这些部件在经济上可行,它们通常必须至少有三年的寿命。因此,构建ML硬件的计算机架构师面临的挑战是预测在2到5年内机器学习的快速发展领域将在何处。我们的经验是,将计算机架构师、更高级别的软件系统构建人员和机器学习研究人员聚集在一起,讨论与合作设计相关的主题,比如“在那个时间框架内,在硬件上有什么可能?”以及“什么有趣的研究趋势开始出现,它们对ML硬件有什么影响?”是一种有用的方式来确保我们设计和构建有用的硬件来加速ML的研究和生产使用。
用于芯片设计的机器学习
有巨大潜力的一个领域是使用机器学习来自动生成高质量的解决方案,解决存在于设计定制asic的整个工作流中的许多不同的NP-hard优化问题。例如,目前复杂的ASIC设计的布局和路由需要大量的人工布局专家团队来迭代地从高层布局细化到详细的布局,因为ASIC的总体设计是充实的。因为在放置过程中有大量的人员参与,一旦完成了最初的高层设计,在不显著影响芯片项目进度的情况下考虑完全不同的布局是不可想象的。然而,放置和路由是一个适合于那些成功解决游戏的强化学习方法的问题,比如AlphaGo。在放置和路由中,一系列的放置和路由决策都会影响一组总体指标,如芯片面积、定时和线路长度。通过强化学习算法学习“玩”这个游戏的位置和路由,一般来说在许多不同的ASIC设计,或为特定的ASIC设计,与奖励函数,结合了各种属性到一个数值奖励函数,并运用大量的机器学习计算(ML加速器的形式),与使用现有的电子设计工具进行放置和路由的人类专家团队相比,可能有一种系统可以更快速、更有效地进行放置和路由。我们已经在谷歌内部探索了这些方法,并取得了初步的但看起来很有希望的结果。基于ML的自动化系统还支持快速的设计空间探索,因为奖励功能可以很容易地进行调整,以优化目标优化指标中的不同权衡。
此外,甚至有可能训练一个机器学习系统来做出一系列的决定,从高层次的综合到实际的低层次的逻辑表示,然后执行这些低层次电路的放置和路由,以一种更加自动化和端到端的方式实现实际的高层次设计。如果这种情况发生,那么复杂的ASIC设计的时间可能会大幅减少,从几个月减少到几周。这将极大地改变设计定制芯片所涉及的权衡,因为当前高水平的非经常性工程费用通常意味着定制芯片或电路只用于最高容量和最高价值的应用程序。
图 8:描述这一大型、具有稀疏权重且可以完成多任务的模型。
结论
[Abadi et al. 2016] Abadi, Martín, Ashish Agarwal, Paul Barham, Eugene Brevdo, Zhifeng Chen, Craig Citro, Greg S. Corrado, Andy Davis, Jeffrey Dean, Matthieu Devin, Sanjay Ghemawat, Ian Goodfellow, Andrew Harp, Geoffrey Irving, Michael Isard, Yangqing Jia, Rafal Jozefowicz, Lukasz Kaiser, Manjunath Kudlur, Josh Levenberg, Dan Mane, Rajat Monga, Sherry Moore, Derek Murray, Chris Olah, Mike Schuster, Jonathon Shlens, Benoit Steiner, Ilya Sutskever, Kunal Talwar, Paul Tucker, Vincent Vanhoucke, Vijay Vasudevan, Fernanda Viegas, Oriol Vinyals, Pete Warden, Martin Wattenberg, Martin Wicke, Yuan Yu, and Xiaoqiang Zheng. "Tensorflow: Large-scale machine learning on heterogeneous distributed systems." arxiv.org/abs/1603.04467 (2016).
[Aho et al. 1986] Aho, Alfred V., Ravi Sethi, and Jeffrey D. Ullman. "Compilers, principles, techniques." Addison Wesley (1986). [Angelova et al. 2015] Angelova, Anelia, Alex Krizhevsky, Vincent Vanhoucke, Abhijit Ogale, and Dave Ferguson. "Real-time pedestrian detection with deep network cascades." In Proceedings of BMVC 2015, ai.google/research/pubs/pub43850 (2015).
[Ardila et al. 2019] Ardila, Diego, Atilla P. Kiraly, Sujeeth Bharadwaj, Bokyung Choi, Joshua J. Reicher, Lily Peng, Daniel Tse, Mozziyar Etemadi, Wenxing Ye, Greg Corrado, David P. Naidich and Shravya Shetty. "End-to-end lung cancer screening with three-dimensional deep learning on low-dose chest computed tomography." Nature Medicine 25, no. 6 (2019): 954.
[Baldi et al. 2014] Baldi, Pierre, Peter Sadowski, and Daniel Whiteson. "Searching for exotic particles in high-energy physics with deep learning." Nature Communications 5 (2014): 4308. www.nature.com/articles/ncomms5308 [Bansal et al. 2018] Bansal, Mayank, Alex Krizhevsky, and Abhijit Ogale. "ChauffeurNet: Learning to drive by imitating the best and synthesizing the worst." arxiv.org/abs/1812.03079 (2018).
Chan et al. 2016] Chan, William, Navdeep Jaitly, Quoc Le, and Oriol Vinyals. "Listen, attend and spell: A neural network for large vocabulary conversational speech recognition." In 2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp. 4960-4964. IEEE, 2016. arxiv.org/abs/1508.01211
[Collobert et al. 2011] Collobert, Ronan, Jason Weston, Léon Bottou, Michael Karlen, Koray Kavukcuoglu, and Pavel Kuksa. "Natural language processing (almost) from scratch." Journal of Machine Learning Research 12, no. Aug (2011): 2493-2537. arxiv.org/abs/1103.0398
[Dean 1990] Dean, Jeffrey. "Parallel Implementations of neural network training: two back-propagation approaches”. Undergraduate honors thesis, University of Minnesota, 1990. drive.google.com/file/d/1I1fs4sczbCaACzA9XwxR3DiuXVtqmejL/view
[Dean et al. 2012] Dean, Jeffrey, Greg Corrado, Rajat Monga, Kai Chen, Matthieu Devin, Mark Mao, Marc'aurelio Ranzato et al. "Large scale distributed deep networks." In Advances in Neural Information Processing Systems, pp. 1223-1231. 2012. papers.nips.cc/paper/4687-large-scale-distributed-deep-networks.pdf
[Dean et al. 2018] Dean, Jeff, David Patterson, and Cliff Young. "A new golden age in computer architecture: Empowering the machine-learning revolution." IEEE Micro 38, no. 2 (2018): 21-29.
便捷下载,请关注专知公众号(点击上方蓝色专知关注)
后台回复“DLRC” 就可以获取《深度学习革命及其对计算机架构和芯片设计的影响,讲述AI芯片发展历程与未来》论文下载链接索引~