GPU 为人工智能加速:崭新的计算模型

作者 英伟达中国

Yann LeCun 邀请我于本周在纽约大学举办的“人工智能的未来”学术研讨会上发表演讲。人工智能领域的众多重量级人士齐聚一堂,讨论这项技术的现状和未来发展。我在演讲中就以下方面发表了看法: 深度学习这项新的软件模型为何需要搭配新的计算模型;人工智能研究人员采用 GPU 加速计算的原因;随着人工智能的采用不断增长,NVIDIA 在推动这项技术方面的持续努力。以及经过这么多年后,人工智能在今天蓬勃发展的原因。

大爆炸般的发展

在计算机设计的悠久历史进程中,人工智能是最后一个待开发的领域。在过去五十多年的时间里,计算机科学家始终致力于打造能像我们一样理解四周环境,了解我们的语言并从各种例子中进行学习的智能机器。但这并非易事,计算机科学家综合 Yann LeCun 的卷积神经网络、Geoff Hinton 的反向传播算法,以及 Stochastic 的梯度下降训练法,加上吴恩达 (Andrew Ng) 对 GPU 的大规模应用,来加快深度神经网络 (DNN) 的运算速度,才促进「深度学习」这项现代人工智能技术出现大爆炸般的发展局面。

一开始 NVIDIA 忙于推动 GPU 加速计算的发展,这个崭新的计算模型大量采用并行图形处理器,以并行运算方式加快应用程序的处理速度。  科学家和研究人员纷纷采用 GPU 来进行分子等级的模拟运算,以确定医疗药物的效果、以 3D 立体方式呈现我们的器官(通过微量电脑断层扫描进行重组),或是模拟银河星系以发现宇宙运行的规则。一名使用我们的 GPU 进行量子色动力学模拟的研究人员告诉我:「由于 NVIDIA 的出色作为,使我能在有生之年成就毕生事业」。这真是莫大的鼓励。我们一直以来的使命就是让人们有能力去开创更美好的未来。NVIDIA 的 GPU 使人人都拥有超人般的计算能力,而研究人员如今已发现了它的威力。

2011 年,人工智能研究人员发现了 NVIDIA GPU。随后,Google 的 Brain 项目取得了惊人成果,通过观看 YouTube 上的视频学会了辨别猫和人。但它需要使用 Google 的一个巨型数据中心,在多台服务器中安装 2,000 个 CPU,并需设法冷却这些 CPU。然而只有极少数的企业拥有这样的计算机规模。再回到 NVIDIA 和 GPU。NVIDIA 研究中心的 Bryan Catanzaro 与斯坦福大学的 Andrew Ng 团队合作,将 GPU 运用于深度学习。结果,12 个 NVIDIA GPU 的深度学习能力相当于 2,000 个 CPU 的表现。纽约大学、多伦多大学及瑞士人工智能实验室的研究人员使用 GPU 加快了其 DNN 的计算速度,大爆炸时代就此拉开序幕。

深度学习技术创造奇迹

多伦多大学的 Alex Krizhevsky 在 2012 年的 ImageNet 计算机图像辨别比赛上夺得冠军,(1)他的计算机将计算机视觉专家以人工方式编写出来的软件狠狠地甩在后面。Krizhevsky 和他的团队并未编写任何计算机视觉代码,他们的计算机通过深度学习,学会了自己辨认图像。他们设计了一个名为 AlexNet 的神经网络,用上百万个示例图像来训练它,这需要在 NVIDIA GPU 上运行数兆次数学运算。Krizhevksy 的 AlexNet 打败了人工编写出的最出色软件。

人工智能的竞争战火已点燃,2015 年我们又到达了另一个重要的里程碑。

Google 与微软均使用深度学习,在 ImageNet 竞赛上打破了人类创造的最好成绩(2,3) – 并非人类编写的程序,而是人类。不久之后,微软和中国科技大学宣布他们开发的 DNN 达到了大学毕业生的智商测试分数。(4)随后百度又宣布一项名为 Deep Speech 2 的深度学习系统使用单一算法学会了中英两种语言。(5)2015 年 ImageNet 竞赛的优胜项目皆以深度学习技术为基础,并在 GPU 加速深度神经网络上运行,其中多项击败了人工辨识的准确度。

2012 年,深度学习技术打败了人工编写的软件,到 2015 年,深度学习技术在感知理解能力方面达到了「超越人类」的水平。

用于新软件模型的全新计算平台

计算机程序包含大量按顺序执行的命令,而深度学习是完全不同的崭新软件模型,以并行方式训练数十亿个软件神经元和数兆连接。运行 DNN 算法并从示例中学习,计算机本质上是在编写自己的软件。这项与众不同的软件模型需要新的计算机平台,以提高运行效率。

加速计算是一项理想的方法,而 GPU 是最完美的处理器。《自然》(Nature) 杂志日前指出早期深度学习技术有所进步,原因在于「出现了便于编程的高速图形处理单元 (GPU),让研究人员将训练神经网络的速度提高了 10 到 20 倍」(6)综合性能、编程生产力及公开访问性等因素对打造新的计算平台非常重要。

性能。 NVIDIA GPU 在并行处理工作负载方面具有卓越性能,能够将 DNN 速度提升 10 至 20 倍,将每项训练迭代时间从几周减少到几天。但我们并未就此止步。我们与人工智能开发人员协作,继续改进 GPU 设计、系统架构、编译器和算法,仅在三年内就将训练深度神经网络的速度提高了 50 倍,这个速度远超摩尔定律的预测。我们期望在未来几年内将速度再提高 10 倍。

可编程性。 人工智能创新正在飞速发展,简化编程和提高开发人员工作效率是首要任务。NVIDIA CUDA 平台的可编程性和丰富性使研究人员能快速提出创新项目,打造 CNN、DNN、深度初始网络、RNN、LSTM 及强化学习网络的新配置。

3-acellerate-web

可访问性。 开发人员希望能随时随地进行创造,也希望将成果部署到各个地方。而 NVIDIA GPU 可在全世界任何地方使用,从每台 PC 原始设备制造商 (OEM),到台式机、笔记本、服务器或超级计算机,到 Amazon、IBM 和微软的云。所有重大的人工智能开发框架均采用 NVIDIA GPU 来加快计算速度,从互联网公司到研究机构,再到新创公司。无论您喜好哪种人工智能开发系统,GPU 均能有效提速。我们几乎为每一种计算机主板尺寸都开发了 GPU,使 DNN 能为各种智能机器提供支持。例如,GeForce 适用于 PC,  Tesla 适用于云和超级计算机,Jetson 适用于机器人和无人机。DRIVE PX 适用于车辆。这些均采用相同架构,能够加快深度学习的速度。

每个行业皆需智能

百度、Google、Facebook 和微软是首批将 NVIDIA GPU 用于深度学习的企业。这项人工智能技术能够回应您说出的话,将口语或文本翻译成另一种语言,辨别图像并自动加上标签,还可以根据我们喜欢和关心的内容量身推荐新闻、娱乐和产品。新创公司和知名公司竞相在自己的新产品或服务中使用人工智能,或将其用于提升运营效率。在仅仅两年的时间里,NVIDIA 合作开发深度学习项目的公司已增加了近 35 倍,数量超过 3,400 家。医疗、生命科学、能源、金融服务、汽车、制造和娱乐业等产业均将从中收益,借助海量数据洞悉未来趋势。并且,随着 Facebook、Google 和微软向所有人开放其深度学习平台后,人工智能支持的应用程序将会快速传播。在此趋势下,《连线》(Wired) 杂志近日发出了「GPU 崛起」的预言。

无人驾驶汽车。 无论是为驾驶员增加一名拥有超能力的副驾驶,还是革新个人移动服务,抑或减少市区杂乱无章的停车场需求,无人驾驶汽车都会为社会带来诸多益处。驾驶是一项复杂的活动,时常会发生意外。如冰冷的雨可能会将路面变成滑冰场,前往目的地的道路被封闭,或一个小孩出现在车辆前面。您无法编写出足够强大的软件,预测无人驾驶汽车可能遇到的每种情况,而这正是深度学习的价值所在 – 它可以学习、调整和改进。我们正在开发一个名为 NVIDIA DRIVE PX 的无人驾驶车用端对端深度学习平台,涵盖从训练系统到车内人工智能计算机在内的每个层面,结果非常喜人。  未来车内搭载超人计算机副驾驶和无人驾驶交通车辆再也不是科学幻想了。

机器人。 行业领先的机器人制造商 FANUC 日前展示了一个组装机器人,它学会了从箱子里“挑拣”出随意摆放的物体。这个采用 GPU 技术的机器人从尝试和错误中汲取经验,而其中的深度学习技术是由日本 Preferred Networks 公司开发,《华尔街日报》一篇名为《日本通过人工智能寻求技术复兴》(Japan Seeks Tech Revival with Artificial Intelligence) 的文章报道了这家公司。

医疗及生命科学。 深度学习基因 (Deep Genomics) 采用基于 GPU 的深度学习,来了解基因变异如何诱发疾病。Arterys 使用 GPU 支持的深度学习来加快医学图像分析,这项技术会用在 GE Healthcare MRI 机器上,协助诊断心脏疾病。Enlitic 运用深度学习来分析医学图像,以找出肿瘤、近乎看不到的破裂处和其他病况。

以上只是一些例子,人工智能已得到广泛应用。

GPU 为人工智能加速:崭新的计算模型

深度学习技术的突破性进步为人工智能的发展带来了革命性变化。人工智能深度神经网络支持的机器可以解决对编程人员来说太过复杂的问题。它们会从数据中学习,并随着实际应用进行改善,就算不是编程人员也能训练出同一套 DNN 来解决新的问题。这一切的发展速度愈来愈快,采用数量越来越多,我们相信它对社会的影响也将越来越大。KPMG 近期的一项研究预测,计算机驾驶辅助技术在 20 年内会使交通事故减少 80%,相当于一年挽救一百万人的生命,而深度学习人工智能将会是其中的核心技术。

深度学习对计算机产业的影响也会越来越大。深度学习从根本上来说是一种全新的软件模型,因此我们需要新的计算机平台来运行它 – 这个架构必须能够有效执行编程人员的命令,同时大规模并行训练深度神经网络。我们确信 GPU 加速计算技术是理想的推动力。 《科技新时代》(Popular Science) 杂志日前将 GPU 称为「现代人工的骨干主力」,我们非常赞同这一点。

参考资料

  1. A. Krizhevsky, I. Sutskever, G. Hinton.ImageNet classification with deep convolutional neural networks.In Proc.Advances in Neural Information Processing Systems 25 1090–1098 (2012).
  2. K. He, X. Zhang, S. Ren, J. Sun.Delving deep into rectifiers:Surpassing human-level performance on ImageNet classification. arXiv:1502.01852 [cs] (2015).
  3. S. Ioffe, C. Szegedy.Batch normalization:Accelerating deep network training by reducing internal covariate shift.In International Conference on Machine Learning (ICML) 448–456 (2015).
  4. H. Wang, B. Gao, J. Bian, F. Tian, T.Y.Liu.Solving Verbal Comprehension Questions in IQ Test by Knowledge-Powered Word Embedding. arXiv:1505.07909 [cs.CL] (2015).
  5. D. Amodei, R. Anubhai, E. Battenberg, C. Case, J. Casper, B. Catanzaro, J. Chen, M. Chrzanowski, A. Coates, G. Diamos, E. Elsen, J. Engel, L. Fan, C. Fougner, T. Han, A. Hannun, B. Jun, P. LeGresley, L. Lin, S. Narang, A. Ng, S. Ozair, R. Prenger, J. Raiman, S. Satheesh, D. Seetapun, S. Sengupta, Y. Wang, Z. Wang, C. Wang, B. Xiao, D. Yogatama, J. Zhan, Z. Zhu.“Deep speech 2:End-to-end speech recognition in English and Mandarin,” arXiv preprint arXiv:1512.02595 (2015).
  6. Y. LeCun, Y. Bengio, G. Hinton.Deep Learning – Review. Nature (2015).