当前位置: CompoTech China > 专题 > 专题报道 >
 

"深度学习"堆栈不简单!NVIDIA 让机器自己写软件

本文作者:任苙萍       点击: 2017-11-13 11:22
前言:
AI 抢滩阵式3:从设备、主机到云端,软、硬全面加速
"深度学习"堆栈不简单!NVIDIA 让机器自己写软件
 
GPU (图形处理器) 已成大数据计算、分析、排序等并行计算的骨干。GPU 鼻祖可追溯至英伟达 (NVIDIA) 于 1999 年首推、专职几何转换并改进光影表现的 GeForce 256;2008 年,受惠于信息大厂力拱 OpenCL 跨平台应用程序编程接口 (API),终将 GPU 推上"超级电脑"舞台。2015 年,"JETSON TX1"模块的每秒浮点计算能力达阵 Tera 等级,为 NVIDIA 成功打开深度学习 (Deep Learning)、电脑视觉等嵌入式人工智能 (AI) 市场。
 
CUDA 为 ASIC 编程奠定里程碑
日前 GTC Taiwan 年会上,NVIDIA 创办人暨执行长黄仁勋一上台就表示:移动世代,电脑被带进每一个人的口袋;迈入云纪元,每个移动设备都将成为一部超级电脑;今后的 AI 世界,电脑将可自行编程软件、自主学习,为数以亿万计的计算设备注入智能,为产业带来空前盛况,而软件与计算是电脑科技的两大驱动因素。他认为,软件开发将因深度学习而有巨大改变,能自动侦测、学习,从大数据取得所需并设计成可被理解的架构与知识,进而找出共通点和规则,做出预测、判断。
 

照片人物:NVIDIA 创办人暨执行长黄仁勋
 
然而,深度学习有一个重要前提:强大的计算能力。可惜受限于半导体物理特性,每年增加 50% 晶体管及效能的摩尔定律已近尾声;取而代之的是,另一股新兴力量正在崛起——基于 GPU 的全新算法和计算架构,让它与 CPU 并行协作、加速计算。黄仁勋推估,在新的微处理器、软件堆栈、算法及应用程序开发者的携手合作下,2025 年的计算能力将增加千倍。他并提到,软件与计算平台两者其实互为鸡生蛋、蛋生鸡的微妙关系:计算平台需要软件配合,才能解决过去无法处理的问题;另一方面,软件开发也要考虑到硬件是否有能力支撑。
 
"这也是为何近年并无太多新计算平台横空出世的原因",黄仁勋说。他回顾,诞生已满十个年头的革命性计算架构 CUDA,即结合了高效能的特定应用集成电路 (ASIC) 及可编程模式,才能让开发者轻松应对大量、复杂的平行计算;近五年间,CUDA 开发者数量已狂增十五倍,迄今累积逾 64.5 万人,下载次数大于 600 万次,单是去年就有 180 万次。黄仁勋自豪宣示,2017 年诺贝尔物理、化学两个奖项的得主——前者证明爱因斯坦重力波理论,后者藉低温电子显微镜的高传真原子尺度研究分子,皆得力于 NVIDIA GPU 的匡助。
 
VR 商业价值渐显,"Holodeck"为终端创建运作环境
有鉴于电脑绘图也是虚拟现实 (VR) 的重要推手,NVIDIA 特为 hTC VIVE 等 VR 设备创造名为"Holodeck"的高度逼真、可遵循物理原则之 VR 环境,以描绘真实场景;用户可用它分享数字内容、邀请真人穿梭其中并分派 AI 角色;场中人员的转头、挥手动作皆能忠实呈现,且可感觉到触碰或疼痛。借用这样的虚拟会议室召开产品会议,可直接将汽、机车等设计图汇入"Holodeck",让分散各地的与会人员彷佛置身同一个约定空间商讨;不仅能透视产品内部构造、获悉全部细节,还可实时调整参数或变更设计外观、材质。
 

图1:在"Holodeck"虚拟环境进行产品会议,有身历其境之感
数据源:翻摄于 NVIDIA GTC Taiwan 屏幕展示
 
黄仁勋强调,AI 可解决以往软件编程无法解决的问题,例如,长时间做光线追踪,而 NVIDIA 却能运用深度学习来训练自动编码器,完成局部呈现的写实影像;每一次的光粒子与表面撞击到进入眼睛的过程需要许多数学计算,若不够完整,根本无从察觉差异。NVIDIA 与 Remedy 创建一种神经网络,可通过观看影片、从说话者的语态模拟当时的 3D 面部表情,做成动画;另与加拿大新创公司 WRNCH 训练网络、推论 2D 影片中的人物在 3D 空间里的位置及姿势,一个典型应用是:只要有摄影机对着人、物拍摄,就能瞬间将其转换到 VR 环境。
 
此外,爱丁堡大学的研究人员训练网络仿真一个能适应不同环境与地形的虚拟角色,它会自行规划行进路径并聪明地避开障碍物;而加洲大学柏克莱分校与 OpenAI 发明的"一次性模仿学习",只须寥寥数次的示范,就能成功教导机器人执行新任务。诸如此类,都是人类编程不容易做到的,也呼应了黄仁勋稍早"AI is eating Software"的说法。为协助培植台湾本土 AI 产业,NVIDIA 将与科技部合作,提供包括网络实验室与研讨课程等实作训练课程,学习如何使用开源框架与 NVIDIA GPU 加速深度学习平台,拟于未来四年培训 3,000 位开发人员。
 
Tesla P100 GPU 为服务器加速,Jetson TX2 聚焦边缘设备
与此同时,国家高速网络与计算中心将组建全台第一部专为 AI 打造、搭载 NVIDIA DGX AI 计算平台与 Volta GPU 的超级电脑,期于明年达到 4 petaflops 的效能、跻身全球五百大排行榜的前二十五名,预计四年内上看 10 petaflops。事实上,NVIDIA 在去年推出搭载 Tesla P100 GPU 加速器、由 124 部 DGX-1 服务器组成的 DGX SATURNV 超级电脑,一上市就在 TOP 500 勇夺第二十八名,每秒可执行1 quintillion (10 的 18 次方) 次计算,锁定高效燃油引擎、完全燃烧核融合反应器模型及医药研究等超精密大型应用,包括 NVIDIA DRIVE PX 2 自驾车。
 

图2:DGX SATURNV 的计算能力可更快速训练深度神经网络,创建更智能的 AI
数据源:NVIDIA 官网
 
DGX-1 整合了深度学习软件、开发工具及八颗 Pascal 架构的 Tesla P100 GPU,可谓是连接 AI 与超级电脑的桥梁。延续 Pascal 架构、于今年第一季新登场的 Jetson TX2 借助"六核异构计算",将整套 AI 系统集成在信用卡大小的电路板上,且耗电不到 7.5W,特别适用于小体积、低功耗的边缘设备 (Edge Device),可在商用无人机、工业机械、智慧摄影等终端实现进阶导航、影像分类与语音识别的神经网络计算,例如:多合一电脑分享、自动侦测商品存量、接合 360∘影片做 4K 高画质直播串流服务,或支持小型无人机的视觉演算。
 
服务器、超级电脑和终端布局完成后,NVIDIA 的研发脚步并未停歇;为追求更高效计算 (HPC),今年第二季,NVIDIA 再发布第七代 GPU 架构 Volta——采用台积电 12nm 制程、集成 210 亿颗晶体管以及新的数字格式和 CUDA 指令,可执行 4×4 矩阵计算、支持 250 个应用程序,首款 GPU 代表作是 Tesla V100;一部搭载 Tesla V100 GPU 的服务器效能,号称足以顶替市售搭载数百颗 CPU 的传统 HPC 电脑,跨越深度学习的 100 TFLOPS 效能"天堑"(官方数据为 120 TFLOPS),为 AI 训练 (Training) 和推论 (Inference) 提供更高的浮点计算效能。
 
Volta 应 HPC 而生,Tesla V100 未演先轰动
黄仁勋指出,传统 HPC 目前只有不到 10% 有搭载加速器,市场成长空间极大,而 CUDA 已成 HPC 的基础核心。Tesla V100 能支持语音助理、个人化搜寻与建议系统等高度精准 AI 服务,还能加速 HPC 与绘图作业且具备扩充性;若将 DGX-1 AI 超级电脑连接八个 Tesla V100 GPU,可使深度学习能力再翻倍。此外,NVDIA 还另行开发名为"NVLink"的高速互连通讯接口以加快多个 GPU 之间、或与 CPU 的沟通,并与三星共同开发数据传输率达 900 Gbps 的 HBM2 DRAM 内存,为大型数据中心组建"HGX 参考架构"以推动 AI 云计算。
 

图3:HGX 服务器设计将八个 Tesla V100 GPU 加速器通过 NVLink 互连技术,组成混合式立方网络 (hybrid cube mesh)
数据源:NVIDIA 提供
 
意识到公有云市值已达 250 亿美元,蕴含惊人商机;NVIDIA 早在 2010 年便与 Amazon AWS 推出首款针对 GPU 进行优化的云端实例;Facebook 的 Caffe 2、PyTorch 与 Google 的机器学习、高效计算和数据分析,以及 Microsoft 的 Azure N 系列、Project Olympus 和 Cognitive 工具套件,亦见 NVIDIA 踪迹,并相继宣示将升级至 Volta。美国橡树岭国家实验室将于明年问世的科研超级电脑 Summit,也以 Volta GPU 作为计算核心。中国市场亦大有斩获,百度云及智慧驾驶、腾讯的语音/相片/视讯及腾讯云的深度学习平台,也是 NVIDIA 伙伴。
 
黄仁勋预期,AI 会将信息注入 2,000 万个云服务器、上百亿万计的车辆及工业机器人,最终,高达一兆个物联网 (IoT) 设备与各种传感器将会智能监控一切,从人体心跳、血压,到工厂设备的振动;就算不上公共网域,也会在局网中运行,将收集到的数据汇入神经网络里。虽然百度、腾讯和京东的数据中心也是 AMD EPYC 处理器的用户,不久前更传出阿里巴巴和百度有意采用 AMD Radeon Instinct GPU 加速器做深度学习的消息,对 NVIDIA 的 Tesla P100 GPU 可能造成威胁,不过 NVIDIA 回应,挟着多年生态系耕耘优势,对自家产品仍信心十足。
 
云 NVDocker 容器,免去开发者编译困扰
"深度学习的软件堆栈相当复杂,包括计算、系统、网络资源分配、中间件、函式库到各式算法,且以等比级数的速度成长",黄仁勋说。考虑到开发者有各自偏好的架构及工具,在编译 (Compiler) 时或将遭遇版本兼容性问题,NVIDIA 特针对"训练"必要的模型及网络架构,为每个堆栈创造 NVDocker 容器;通过 CUDA 加速,将经过优化、测试的堆栈全数储存于 NVIDIA GPU 云容器注册表 (NGC)。开发者上网注册就能下载、导入至内建 CUDA 芯片的数据中心、工作站或个人电脑。最重要的是,NVIDIA 承诺会永久维护,让内容保持在最新状态。
 

图4:NGC 是 GPU 加速云平台,开发者可通过本地网络、Amazon EC2 或其他云平台提供商的深入学习框架,快速入门
数据源:NVIDIA 提供
 
黄仁勋剖析,深度神经网络 (DNN) 结合多个演算式及上百万个参数,是非常庞杂的档案,可能应用在大型数据中心、也可能是小型机器手臂或单纯的程序堆栈指令,而未来大部分的节点都将用于"推论"。推论设备大爆炸的结果是:整个地球将被神经网络包围,无远弗届;这些堆栈须在大大小小的不同应用平台运行,例如:麦克风、机器人、自驾车或超级电脑中心,将迫使各式网络不断成长,故推论平台须具备可编程特性及扩展性以因应多元且不断升级的网络架构,而新架构、更深层的网络与神经网络层设计,又将持续增进卷积神经网络 (CNN) 效能。
 
AI 推论大爆发,计算之外……编译也要加速
用于分类的循环神经网络 (RNNS) 以及长短期记忆 (LSTM) 的辨识语句与翻译效能已超越人类,而生成对抗网络 (GAN) 利用一个可被训练用于侦测的判别器、以及另一个用于制造事例来欺骗判别器的生成器,可完美产生影像、声音并除噪。为方便不同设备的编译加速,NVIDIA 另推全球首款可编程推论加速器 TensorRT,会依据目标应用适度移除神经网络上不必要的元素,并善用指令将复杂架构重新堆栈融合 (Fusion),执行多串流 (Multi- Stream)。第三代 TensorRT3 便是冲着 CUDA GPU 神经网络而来,利用 CUDA 深度学习指令创建运行时间并优化数值精准度、分层和张量。
黄仁勋认为,深度学习模型须先行将电脑优化,才能在低延迟、高吞吐量、低功耗、少量内存的情况下进行推论。不久的将来,数据中心内每个查询与工作负载都将包含一个或多个 DNN 推论,而推论的吞吐量会直接反应在数据中心的总持有成本 (TCO) 上。例如,CPU+TensorFlow 每秒可处理 140 个图像,但 Tesla V100+TensorRT 每秒可处理 5,700 个、足足快了 40 倍,语音更快上 150 倍,意谓每个 V100 服务器可省下约 50 万美元的成本。
 

图5:TensorRT 可用于快速优化、验证和部署训练有素的神经网络,包括大型数据中心、嵌入式系统或汽车平台
数据源:NVIDIA 官网
 
AI 下个重头戏:自驾车
黄仁勋主张,通过价值功能取向的试误及奖惩做强化学习,在不断尝试后,最终机器人一定能把任务学好;而将深度学习软件与服务结合,NVIDIA 有信心做出史上第一辆没有驾驶和方向盘的真正无人车。他预告:"自主机器世代即将来临!自驾车就是第一个自主机器人。传感器、人工智能与节能的 CUDA GPU 将为自主机器打开一个新世界"。为符合自驾车"Fail-Safe Operator"要求 (即使当机仍要正常运作),NVIDIA 的策略是在数据中心里训练神经网络,用超级电脑仿真所有哩程——DRIVE PX PEGASUS 是全球首部专为量产自驾出租车所打造的电脑。
 
"这个超级计算数据中心仅有车牌大小,可放在后车箱做 ASIL 安全等级测试,320 TOPS 计算效能的功耗只有 500W",黄仁勋介绍。最后,他总结 AI 趋势:继产业自动化后,将迎向"自动化的自动化"(机器自己写软件);为此,NVIDIA 备有五大策略因应:

●JETSON 自主机器平台:超级电脑的 baby,用于终端设备;
●JetPack SDK:专为 JETSON 设计的整合软件开发工具包;
●DIGITS 应用程序:专为训练神经网络、或导入预先训练过的网络所设计;
●Isaac 虚拟实验室:机器人在其中被创造并学习将任务做到尽善尽美;
●深度学习机构:机器人模拟环境平台,可训练打高尔夫球等高难度动作。通过机械原理、传感器与传动设备,搭配精准的环境模型与物理仿真,训练过后的类神经网络可被下载并导入真实世界使用。