原文: http://www.c114.net/news/212/a989434.html

毫无疑问,如果评选2016年度科技界十大最耀眼热词,人工智能&深度学习必定会华丽丽地上榜。从年初阿尔法狗战胜世界围棋冠军李世石,到年末世界互联网大会上BAT大佬们的集体AI秀,每一个信号都在不断提示着我们,人工智能时代来了,未来已来,且就在我们身边。

1956年,约翰·麦卡锡等人出席的达特茅斯会议正式标志着人工智能的诞生。经过60年的发展,人工智能历经了三次浪潮,发展可谓起起落落。

第一次,达特茅斯会议确立了人工智能这一术语,第一款感知神经网络软件和聊天软件诞生,数学定理被证明,人类第一次进入了人工智能的狂欢时期。然而,人们很快发现,这些理论和模型只能解决一些非常简单的问题,他们把问题想得过于简单,人工智能随即进入低谷。

第二次,八十年代Hopfield神经网络和BT训练算法的提出,使得人工智能再次兴起,出现了语音识别、语音翻译模型也为第二次人工智能的热潮点燃了希望之火。但这些设想迟迟未能进入人们的生活之中,第二次浪潮也随之破灭。

第三次,随着2006年Hinton提出的深度学习技术,以及2012年ImageNet竞赛在图像识别领域带来的突破,人工智能再次迎来了烈火烹油式的爆发。特别是到了2016年,大数据技术的日臻成熟以及高性能计算和算法的跨越式进步,为人工智能的发展带来了真正的动力。

高性能计算加速深度学习落地,GPU与FPGA各有所长

而这一次人工智能热潮的兴起,与前两次有着截然不同的本质区别,其中高性能计算应用加速能力的大幅提升功不可没。在恒扬数据应用加速部门产品经理张军看来,深度学习模型是构建在海量的数据和强有力超算能力基础之上的,传统计算架构已经无法支撑深度学习大规模并行计算需求,因此,通过底层应用加速计算过程结合深度学习算法上的优化,是推动人工智能整个产业链发展的重要环节。

目前针对深度学习的分布式加速主要有三种方式:GPU、FPGA和NPU。GPU是最先被引入深度学习领域的,我们熟知的阿尔法狗就是由1920个CPU+280个GPU搭建的超算平台,作为最早看好深度学习应用加速的公司,英伟达是该领域当仁不让的领导者,通过打造CUDA平台,GPU在SIMD单指令多数据流架构中的优势被全面激发,结合高并行计算和高计算吞吐的特点,GPU可以大规模适用于具备计算密集、高并行、SIMD应用等特点的深度学习训练模型领域。目前,GPU已经在深度学习训练模型领域开创性地创建了包含CNN、DNN、RNN、LSTM以及强化学习网络等算法在内的应用加速平台和完整的生态系统。

GPU虽火,但从技术上讲,也有一定的局限性。

首先,运行能效比不佳。相比较而言,运行深度学习算法实现同样的性能,GPU所需功耗远大于FPGA,通常情况下,GPU只能达到FPGA能效比的一半或更低。

其次,应用过程中无法充分发挥并行计算优势。深度学习包含两个计算环节,即训练(Off-line)和推理(On-line)环节。GPU在深度学习算法模型训练上非常高效,但在推理时一次性只能对于一个输入项进行处理,并行计算的优势不能发挥出来。

第三,硬件结构固定不具备可编程性。目前来看,深度学习算法还未完全成熟,算法还在迭代衍化过程中,若深度学习算法发生大的变化,GPU无法像FPGA一样可以灵活的配置硬件结构,快速切入市场。 而以上这些不足,恰恰可以通过FPGA加速的方式来弥补。

可以说,GPU和FPGA在加速深度学习算法方面各有所长。 据张军介绍,单纯从性能角度来看,目前看FPGA的性能要弱于GPU,但FPGA在性能功耗比方面的表现却非常惊艳,以恒扬NSA系列深度学习加速卡来看,性能功耗比可以做到70GFlops/W,是英伟达M4的2倍多,是Intel众核芯片的5倍,优势还是相当明显的。这一点,对大型数据中心而言至关重要,可以节省大量服务器部署及机房建设、用电成本。

从计算优势来讲,目前大家看到在深度学习模型训练领域基本使用的是SIMD架构,即只需一条指令可以平行处理大量数据,这一点正好可以发挥GPU并行计算优势,但是容易让人忽略的是,在完成训练模型后,深度学习还需要进行推理计算环节,即MISD单一数据需要用多条指令平行处理,而这部分计算,正是FPGA最为擅长的。

根据赛灵思全球战略与市场营销高级副总裁Steve Glasev介绍,他认为FPGA未来在超级数据中心将成主流应用,尤其是在深度学习方面,在这方面GPU强在训练,而FPGA强在推断。一旦需要大规模部署训练模型,就必须大幅度提高效率,这需要新的推断引擎来提升效率,比如3到4倍,同时还要最小限度损失精确性,这正是FPGA的强项。他预测,未来至少95%的机器学习计算都是用于推断,只有不到5%是用于模型训练,这是两者的区别。

另外,不同架构的FPGA由于底层DSP有所不同,因此在不同领域的利用率和计算效率也有所不同。

从灵活性来说,GPU一旦设计完成就无法根据应用去调整硬件资源,但FPGA可以根据特定的应用给硬件编程,能针对任何新型应用和算法进行硬件优化。正是这种特有的可重配置和可重编程特性,FPGA能在一秒之内快速切换成不同的设计方案,面对下一个工作负载进行硬件优化,成为超大规模数据中心应用提供高度灵活、复杂多变的和高能效的最佳计算方案。

打造深度学习生态闭环,为人工智能赋能

作为第二代分布式计算联盟创始成员以及OpenPower组织联盟成员,恒扬数据与赛灵思、IBM在分布式计算领域有着深入密切合作。据恒扬数据张军介绍,2015年起,恒扬就关注到在全球7大超级数据中心,特别是在机器学习、深度学习领域,FPGA会成为主流应用之一,今年10月百度宣布设计出用以加速机器学习推断的赛灵思 UltraScale FPGA池以及11月AWS大会上Amazon EC2 F1实例,更加坚定了我们的想法。

比如Amazon EC2 F1实例,它是第一个用于FPGA应用加速的可编程硬件云实例,用户可以选择最高集成8块高性能16nm Xilinx UltraScale+ VU9P FPGA的方式,将FPGA架设在云端,类似于Vivado HLS/SDSoC remote server模式,用户只需要购买云服务,即可获得相应的开发工具,包括集成深度学习主流框架的应用开发套件、应用函数库、配置管理工具等等,进行开发、仿真、调试、编译等工作,定制FPGA硬件加速,从而大幅降低开发难度,缩减开发时间,让云服务用户更加便捷地加速深度学习推断、基因分析、金融分析、视频处理、大数据、安全等工作负载。

目前,恒扬非常看好类似的应用,正在与国内的几大数据中心展开联手合作,我们致力于与赛灵思联手,与超大数据中心进行深度合作,挖掘FPGA在深度学习中的潜能。

如果说与数据中心展开深入合作是恒扬建立深度学习生态圈组合拳的第一记重拳,那么丰富自身算法库,与行业应用深入结合,形成完整的商业闭环,则是恒扬的第二记重拳。相比较而言,FPGA的开发难度是比较高的,它要求开发人员必需对底层硬件编程语言例如Verilog非常熟悉,即便是使用类C的OpenCL进行开发,对软件开发人员而言,还是具有一定难度,因此必须集成快速开发工具、算法库、算法框架集成包及参考设计样板,为应用深度学习算法开发人员和平台设计人员提供最快速、最便捷的开发和部署途径。目前,恒扬重点开发的算法库包括CNN卷积神经网络、压缩算法、视频图像缩放等,下一步恒扬还将逐步完善对主流caffe、tensorflow算法框架的支持,将体系进一步完善化。

在完善算法的同时,将技术与行业紧密结合,打通商业闭环也是恒扬重点布局的方向。FPGA的特性决定了它在某些特定行业应用上具有得天独厚的优势,例如在医疗领域,医学影像比普通图像纹理更多,分辨率更高,相关性更大,存储空间要求更大,必须严格确保临床应用的可靠性,其压缩、分割等图像预处理、图像分析及图像理解等要求更高。这些特点恰恰可以充分发挥FPGA的优势,通过FPGA加速图像压缩进程,删除冗余,提高压缩比、并确保图像诊断的可靠性。类似的医疗领域应用还有基因测序加速。

再比如在金融领域,由于采用流水线逻辑体系结构,数据流处理要求低延时,高可靠,这在金融交易风险建模算法应用中是极大的关键点,FPGA正具备了此种优势。类似的行业和领域还有很多,比如视频转码直播、内容过滤、视频安防等等。

除了在云端构建恒扬深度学习生态圈外,对于特定的不适合放在云端的终端应用,如无人机、自动驾驶、机器人,恒扬也开始逐步探索,我们相信,在智能时代,FPGA会扮演越来越重要的角色,成为变革全球经济的重要技术手段,更多地改变我们的学习、工作和娱乐方式。

建立FPGA深度学习加速生态圈,为人工智能赋能相关推荐

  1. 浪潮科大讯飞Altera用OpenCL实现FPGA深度学习语音识别加速方案

    11月17日,在正在举行的2015全球超级计算大会(SC15)上,浪潮联合全球可编程逻辑芯片巨头Altera,以及中国最大的智能语音技术提供商科大讯飞,共同发布了一套面向深度学习.基于AlteraAr ...

  2. fpga深度学习gpu加速_TornadoVM:使用GPU和FPGA加速Java

    fpga深度学习gpu加速 重要要点 TornadoVM是一个编程和执行框架,用于在异构硬件(多核CPU,GPU和FPGA)上卸载和运行JVM应用程序 TornadoVM通过OpenCL的新后端扩展了 ...

  3. 英特尔推深度学习加速工具包OpenVINO,布局边缘计算,发力物联网业务

    上周五(7 月 27 日),英特尔面向中国市场推出了专注于加速深度学习的 OpenVINO 工具包,可以帮助企业在边缘侧快速实现高性能计算机视觉与深度学习的开发. OpenVINO (Open Vis ...

  4. 深度学习加速:算法、编译器、体系结构与硬件设计

    2020-03-28 10:38:33 概述 NeurlPS2019 大会的「Efficient Processing of Deep Neural Network: from Algorithms ...

  5. 干货!深度学习加速综述:算法、编译器、体系结构与硬件设计

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 转载于 :meton 知乎链接:https://zhuanlan. ...

  6. 深度学习巨头Yoshua Bengio清华演讲: 深度学习通往人类水平人工智能的挑战

    来源:专知 摘要:2018年11月7日晚,被称为"深度学习三巨头"之一的蒙特利尔大学计算机科学与运算研究系教授Yoshua Bengio在清华大学做了<深度学习抵达人类水平人 ...

  7. 第三代英特尔 至强 可扩展处理器(Ice Lake)和英特尔 深度学习加速助力阿里巴巴 Transformer 模型性能提升

    第三代英特尔® 至强® 可扩展处理器采用了英特尔10 纳米 + 制程技术.相比于第二代英特尔® 至强® 可扩展处理器,该系列处理器内核更多.内存容量和频率更高.阿里巴巴集团和英特尔的技术专家共同探索了 ...

  8. 深度学习、机器学习、人工智能的区别

    日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) 深度学习.机器学习.人工智能的区别 1.机器学习 是 人工智能 ...

  9. 浅谈 深度学习、机器学习、人工智能

    人工智能(AI)是人类所能想象的科技界最突破性的发明了,某种意义上来说,人工智能就像游戏最终幻想的名字一样,是人类对于科技界的最终梦想.从50年代提出人工智能的理念以后,科技界,产业界不断在探索的研究 ...

最新文章

  1. 从无到有算法养成篇-栈和队列·栈
  2. numpy基础——对数组切片操作
  3. CentOS环境搭建
  4. 企业微信_获取access_token
  5. SOA技术相关介绍(RPC, Web Service, REST,SOAP,JMI)
  6. ubuntu搭建时间同步服务器
  7. 对称加密、非对称加密、RSA、消息摘要、数字签名、数字证书与 HTTPS 简介
  8. 三种div居中显示方式
  9. 升压和升降压拓扑中IDC与IO的关系推导 // 《精通开关电源设计》P41式2-2
  10. 【Android】ActivityManager的介绍
  11. 天宫管理系统_天宫职位
  12. Rack集成Sentry
  13. YTU OJ 1329: 手机尾号评分
  14. html5 操作excel,html5读取excel表格/在Excel中,一个表格引用另一个表格的数据,用哪些公式进行操作?...
  15. 互联网行业中最常用的数据库——MySQL 索引、事务与存储引擎
  16. yii2 使用redis
  17. css画钟表_利用css+原生js制作简单的钟表
  18. [Paper Summary] Evaluating repres. by the complexity of learning low-loss predictors [Whitney 2020]
  19. Realme GT 大师版 ROOT 解锁BL教程
  20. JavaFX8开发过程中的问题记录

热门文章

  1. c++ stl之pirority_queue
  2. mysql脚本下载_Mysql备份脚本
  3. java mysql框架_盘点 Java 数据库访问框架——究竟哪个更适合你
  4. 计算机图形学三大应用领域,计算机图形学作业
  5. mysql-5.2 lib_Centos 5.2下安装多个mysql数据库配置详解
  6. java当中的定时器怎么做_java当中的定时器的4种使用方式
  7. 开源MyBatis分页插件,省时省力
  8. 基于 Token 的多平台身份认证架构设计
  9. Java 8 中 Map 骚操作之 merge() 的用法
  10. 每日一皮:第一次用CSS的时候,我震惊了...