开通VIP,畅享免费电子书等14项超值服
首页
好书
留言交流
下载APP
联系客服
2017.10.09
机器能否比人眼看得更清楚?近年来,随着CV(ComputerVision)芯片产品不断推出,这一疑惑正在慢慢变成现实。就如AlphaGo战胜“围棋天才”柯洁一样,在某些应用场景,机器视觉因其准确性、客观性、稳定性,比人类生理视觉更具优势。
在我们通常的印象中,一个视力正常的人可以迅速且毫不费力地感知世界,甚至可以详细生动得感知整个视觉场景;但其实这只是一个错觉,人类生理视觉有着天然的局限,只有投射到眼球中心视觉场景的中间部分,我们才能详细而色彩鲜明地看清楚。比起人眼来,CV其实具备了相当多的优势(详见表一),可以清楚的看到,CV的视力已经远不止5.0了!
表一:机器视觉相对人眼的优势
机器视觉的视力为何如此之强?关键在于芯片,核心是将一些特定图像算法用芯片方式实现,同时融入了深度学习和神经网络算法。
1机器视觉原理——图像处理和算法
机器视觉或称计算机视觉是用一个可以代替人眼的光学装置和传感器来对客观世界三维场景进行感知,即获取物体的数字图像,利用计算机或者芯片,结合专门应用软件来模拟人脑的判断准则而对所获取的数字图像进行测量和判断。该技术已广泛用于实际的测量、控制和检测中,随着芯片技术发展,在人工智能各个领域应用也逐步展开。
图一:机器视觉代替人眼抽象图
一个典型的工业机器视觉系统包括:光源、镜头、相机(包括CCD相机和COMS相机)、图像处理单元(或机器视觉芯片)、图像处理软件、监视器、通讯、输入输出单元等。系统可再分为主端电脑、影像采集与影像处理器、影像摄影机、CCTV镜头、显微镜头、照明设备、Halogen光源、LED光源、高周波萤光灯源、闪光灯源、其他特殊光源、影像显示器、LCD、机构及控制系统、控制器、精密桌台、伺服运动机台。
可见,从应用技术划分,机器视觉是一门综合了模拟、数字电子、计算机、图像处理、传感器、机械工程、光源照明、光学成像等跨学科的前沿技术;从应用学科划分,机器视觉是一门涉及人工智能、神经生物学、心理物理学、计算机科学、图像处理、模式识别等多个领域的交叉学科。
机器视觉技术的发展,归功于计算机软件技术使现有大规模集成电子电路技术发展的成果达到了极大化的利用,尤其是多媒体和数字图像处理及分析理论方面的技术成熟,使得机器视觉技术不仅在理论,而且在应用上都得到了高速发展。
机器视觉之于人工智能的意义等同于视觉之于人类的意义,而决定着机器视觉的就是图像处理技术。不同的应用领域需要不同的图像处理算法来实现机器视觉。常用的机器视觉领域图像算法有运动目标检测算法、基于深度学习的人脸算法等。
下面介绍下机器视觉中的运动目标检测图像算法,该方法是运动物体识别和跟踪的基础。移动物体的检测依据视频图像中背景环境地不同可以分为静态背景检测和动态背景检测。由于篇幅有限,我们这里只介绍静态背景检测算法。常见的静态背景目标的检测算法包括帧间差分法、背景减除法、光流法等。这些背景不变算法的优缺点描述如下表二。
在上述检测算法中,帧间差分法和背景减除法更加适用于如视频监控、智能交通系统等图像背景静止的环境中。光流法则更加适用于背景不断变化的动态环境中。下面我们来介绍以上三种常用算法的基本原理。
表二各种机器视觉物体运动检测算法比较
帧间差分法的适应环境能力强、计算量小、且稳定性好,是目前应用广泛的一类运动检测方法。其原理是将相帧或者三帧序列图像像素点的对应灰度值进行相减,如果灰度差值大于阈值则说明此处物体发生了变化,它是运动的;如果像素的灰度差值小于给定阈值说明此处物体没有发生变化,认为它是静止的。将像素灰度值发生变化的部分标记出来,这些被标记的点就组成了运动目标区域。进一步对灰度图像进行二值化分析,提取目标运动信息,区分出前景和背景图像,进而分割出运动目标。
背景减除法其实是一种特别的帧间差分法,背景减除法根据将当前帧图像与背景模型做差来实现对运动目标的检测。这种方法首先获取背景模型,并将其保存起来,当对某一帧图像进行检测时,用实时获取的帧图像与背景模型做差分运算,得到要检测的运动目标。
光流法是当运动目标在监控场景中产生运动的时候,物体表面会形成位移矢量场,根据其变化可以得到运动目标。光流是指移动物体在其对应的灰度图像上的表面运动,在光流场中,运动目标的速度矢量形成的平面投影构成了目标的运动信息。运动目标在投影上形成的速度矢量是比较均匀,运动目标速度不同形成的速度矢量也不相同,通过光流的计算结果就可以区分出速度不同的运动目标。
图像处理算法一开始应用应该是采用服务器的软件算法来完成,随着互联网技术的不断成熟,会扩展到云端计算来完成,但是这样对于网络带宽要求非常大,对于云服务器的计量量要求也非常高。笔者估计,视频图像处理技术算法的大规模产业化应用,必然是需要专业的芯片来完成,该芯片就是机器视觉(CV)芯片。芯片方式一定是能够降低成本,同时提高运算能力。从近年的整个行业情况来看,计算机视觉作为人工智能领域最重要的方向之一,由于机器视觉芯片诞生和深度学习算法不断发展,近几年获得了巨大的发展,各项应用在不同的行业里开始落地生根。
2机器视觉的应用
历史
最早的机器视觉提出开始与上个视觉60年代,随后1973年,美国自然科学基金会制定了1973-1982视觉系统和机器人的发展计划,并研究成功了一些实用的视觉系统,应用于机械手定位、集成电路生产、精密电子产品装配、饮料罐装的检验等场合;后来在PCB制作工艺中也采用机器视觉系统,用于印制电路板的质量监测等。除了在生产制造领域外,军事领域也广泛应用,如精确的制导系统等,无人机的自动导航等;还有CV也应用在生物实验等领域,用于监测生物各个生产规律,通过加速视频播放来呈现生物生长等过程;在汽车自动驾驶领域,CV芯片也有不断深入的应用。
在当今这个时代,计算机视觉领域呈现出很多新的趋势,其中最为显著的一个,就是应用的爆炸性增长。除了手机、个人电脑和工业检测之外,计算机视觉技术在智能安防、机器人、自动驾驶、智慧医疗、无人机、增强现实(AR)等领域都出现了各种形态的应用方式。计算机视觉迎来了一个应用爆炸性增长的时代,目前的应用如下图所示,主要以运动控制为主。
图二:当前机器视觉多种应用方式
随着各个领域技术不断发展,许多科技巨头也开始了在图像识别和人工智能领域的布局,Facebook签下的人工智能专家YannLeCun最重大的成就就是在图像识别领域,其提出的LeNet为代表的卷积神经网络,在应用到各种不同的图像识别任务时都取得了不错效果,被认为是通用图像识别系统的代表之一;Google借助模拟神经网络“DistBelief”通过对数百万份YouTube视频的学习自行掌握了猫的关键特征,这是机器在没有人帮助的情况下自己读懂了猫的概念。值得一提的是,负责这个项目的AndrewNg后来转投百度领导百度(现已离职),其一个重要的研究方向就是人工智能和图像识别,这也能看出国内科技公司对图像识别技术以及人工智能技术的重视程度。
未来
机器视觉领域的应用将呈现了爆发式的增长态势。刚才已经提到在安防监控、高度的自动化驾驶、增强现实、医疗图像、机器人工业视觉、移动互联网等领域都有众多的计算机视觉应用产生。CV芯片的成熟量产将使得人类生活在一个无所隐藏的时代,每个带有CV芯片的摄像头就是视力远远高于5.0的眼睛,并且超强的分析判断能力;当然人工智能的有序应用,最终将造福人类。
下图是对2014年至2018年全球机器视觉系统及部件机器视觉市场规模预测,图中折线为年增长率,由图根据复合增长率可以计算出2014-2018年的复合增长率为8.39%。
图三:全球机器视觉市场规模预测
2国内外CV芯片公司与特点
视觉芯片产品应用型公司如杭州海康机器人技术有限公司,起步于全球安防排名首位——海康威视成立的机器视觉业务部,依托海康威视在视音频、成像采集与核心算法等领域技术积累,海康机器人主攻智能制造,业已开拓机器视觉、移动机器人以及行业级无人机等业务领域。其中,机器视觉产品覆盖全系列工业面阵、线阵、立体相机,镜头,视觉软件平台,视觉控制器及工业智能相机等。
广州云从信息科技有限公司(简称云从科技)是一家专注于计算机视觉与人工智能的高科技企业,核心技术源于四院院士、计算机视觉之父——ThomasS.Huang(黄煦涛)教授。核心团队曾于2007年到2011年6次斩获智能识别世界冠军,得到上市公司佳都科技与香港杰翱资本的战略投资。公司主要技术团队来自中国科学院重庆分院,是中科院研发实力最雄厚的人脸识别团队,并作为中科院战略性先导科技专项的唯一人脸识别团队,代表参与了新疆喀什等地安防布控。
格灵深瞳是一家将计算机视觉和深度学习技术应用于商业领域的科技公司,自主研发的深瞳技术在人和车的检测、跟踪与识别方面居于世界领先水平。公司借助海量数据,让计算机像人一样看懂这个世界,实时获取自然世界正在发生的一切,打造自然世界的搜索引擎。华为海思在机器视觉这块也积极布局,但是目前还没有成熟量产CV芯片推出。
中星微电子
中星微电子是国内为数不多的一家机器视觉芯片设计公司,其芯片的主要功能在人脸识别领域的应用。2016年6月20日,中星率先推出中国首款嵌入式神经网络处理器(NPU)芯片中星微,这是全球首颗具备深度学习人工智能的嵌入式视频采集压缩编码系统级芯片,并取名“星光智能一号”。这款基于深度学习的芯片运用在人脸识别上,最高能达到98%的准确率,超过人眼的识别率。该芯片于2016年3月6日实现量产,目前出货量为十几万件。该NPU采用了“数据驱动”并行计算的架构,单颗NPU(28nm)能耗仅为400mW,极大地提升了计算能力与功耗的比例,可以广泛应用于高清视频监控、智能驾驶辅助、无人机、机器人等嵌入式机器视觉领域。
图四:中星微NPU框架
NEXTCHIP
韩国NEXTCHIP公司1997年成立,2007年在韩国已经上市,是一个以图像处理技术为主的公司。公司的产品设计视频监控、DVR、SOC、自动驾驶系统中的核心芯片,均是以图形处理、传输为主的半导体芯片厂家。公司涉及机器视觉领域芯片是在自动驾驶系统的应有中,主打产品APACHE4是瞄准下一代的ADAS体系的SOC芯片。
APACHE4加入了专用检测引擎,支持行人检测、车辆检测、车道检测和移动物体检测四种监测类型。嵌入其中的CEVA-XM4图像和视觉平台可让APACHE4的客户使用高阶软件编程来开发差异化的ADAS应用,具体应有如下图,在车辆系统的前后左右都有图像采集系统,搭配一颗APACHE4,并将采集数据送入到图像分析系统ECU,并将分析结果送入汽车操控系统。
图五:APACHE4在汽车自动驾驶中应用
Movidius
Movidius是一家无晶圆半导体公司,2016年9月英特尔宣布将收购计算机视觉创业公司Movidius,这家公司也是谷歌ProjectTango3D传感器技术背后的功臣。Movidius的使命是“为机器赋予视觉能力”,同时也将与英特尔的RealSense技术配合。该公司主要产品为低功耗视觉处理器:Myriad系列VPU,而且已经与谷歌、联想和大疆等公司签订了协议。
DJI大疆宣布推出最新的无人机产品Phantom4。这款飞行器采用计算机视觉来实现自主飞行,核心的机器视觉芯片就是采用了Movidius的Myriad2芯片。早在2014年,Movidius推出的首颗芯片Myriad1就应用到了谷歌的第一代ProjectTango平板中。
2017年8月28日,INTEL宣布推出MovidiusMyriadX视觉处理器(VPU),该处理器是一款低功耗SoC,主要用于基于视觉的设备的深度学习和AI算法加速,比如无人机、智能相机、VR/AR头盔。
图六:MyriadX视觉处理器
MyriadX的推出并不会取代Myriad2。Movidius称,MyriadX能在同一功率范围内的深度神经网络DNN推理中,提供10倍于Myriad2的性能。MyriadX拥有Movidius称之为神经计算引擎(NeuralComputeEngine)的功能,这是一种集成在芯片上的DNN加速器。
Movidius称,有了它,MyriadX的DNN推理吞吐量能达到每秒超过一万亿次运算(TOPS)。除了神经计算引擎,SoC16还具有可编程矢量处理器,可配置MIPI通道和VisionAccelerator。矢量处理器使您能够一起运行多个成像和视觉应用。
此外,MIPI通道确保您可以将多达8个HD-RGB摄像机直接连接到MyriadX.该芯片可以处理高达每秒7亿像素的图像信号。最后,VisionAccelerator可以让您执行光流量和立体声深度等任务,而无需额外的计算能力。与人类相媲美的视觉智能设备构成了计算的下一步,随着低功耗的CV芯片的逐渐发展,真正的AI离我们越来越近了。
Ambarella
美国安霸(Ambarella)是高清视频业界的技术领导者,主要提供低功耗、高清视频压缩与图像处理的解决方案。2015年安霸收购意大利公司VisLab,计划借此进入计算机视觉芯片市场。
安霸收购VisLab后,包括“计算机视觉算法、传感器融合以及基于算法的感知、探测和决断”等在内的多项核心技术也将一并纳入安霸麾下,同时安霸的汽车轨迹记录芯片以及基于摄像头的系统级芯片解决方案也是吸引VisLab加入的重要原因。
安霸本身是图像处理芯片公司,同时一直在汽车行业也有出色的芯片应用,有了机器视觉芯片后,安霸在汽车自动驾驶领域将会起到更大作用。业界消息反馈,目前安霸的机器视觉芯片CV1将在今秋送样。安霸的CV1未来取决于算法和软件,最终是有没有可能投入到庞大的车队和达到LEVEL4的自动驾驶水平。
摩根士丹利证券分析师JosephMoore指出,“电脑视觉(computervision)”蕴藏极大商机,将创造出许多赢家,安霸在影像处理领域的深厚专业知识使其处于独特的地位。安霸首款电脑视觉芯片将自今年秋季起开始送样并进行必要的车用认证程序。如果一切进行顺利,安霸的电脑视觉芯片可望自明年起开始拉高产量。
Inuitive
CEVA图像和视觉DSP满足最复杂计算摄影和电脑视觉应用对极端处理的需求,比如视频分析、扩增实境和先进驾驶辅助系统(ADAS)。透过从CPU和GPU卸载下这些性能密集型的任务,这些高效的DSP可大幅降低整体系统的功耗,同时还可提供完整的灵活性。这些行动设备包括扩增实境和虚拟实境头戴耳机、无人机、消费机器人、360度相机和深度感测器等。
图七:Inuitive视觉处理器NU3000
目前该公司在机器视觉的芯片有NU3000和NU4000两款。NU4000是Inuitive在其NU3000多核影像处理器成功的基础之上所推出的新款产品;NU3000以第三代的CEVA-MM3101图像和视觉DSP来提供立体视觉功能,现在是GoogleProjectTango生态系统中的一部分,开发人员能够利用它来开发需要即时深度产生、映射、定位、导航和其它复杂信号处理演算法的应用。
小结
从目前的数据看,机器视觉领域目前是一个巨大的市场,如下图预测,预计在2018年市场容量将达到50.43亿美元的规模。面对如此巨大的市场,并且核心的硬件芯片占了整套视觉系统大概35%的成本的情形下,半导体行业各个大公司都对此领域虎视眈眈。但是因其技术壁垒较高,需要有成熟的图像算法方面积累,半导体公司也不敢贸然进入。
中国国内大部分是在视觉产品中下游公司,设计生产专用机器视觉芯片公司凤毛麟角。从中国国内机器视觉专利申请数量看,在二十年前,几乎没有任何的专利创新,2011年,我国机器视觉专利申请数为267个;2012年,我国机器视觉专利申请数量为298个;2013年为101个,说明国内也在不断重视机器视觉这个领域,试图在产业的高端有所突破。
放眼全球,INTEL、安霸等半导体巨头在CV领域早有研究,并且目前有成熟可量产的CV芯片上市,在高端控制了整个机器视觉领域,同时,这些国际大公司也通过自己本身在行业的影响地位,不断推动CV的各个行业的具体应用,大力推动了整个CV行业的高速发展。
3CV芯片未来发展趋势
从目前CV芯片的现状和机器视觉系统的应用来看,芯片领域是一个非常巨大的市场,是计算机视觉未来大规模应用的重要一环,笔者认为未来的CV芯片有下面三大发展趋势。
趋势一:CV芯片的集成度进一步提高。随着半导体加工工艺向6nm迈进,单颗CV的集成度将大大提升。更高效的大卷积解构与复用机制成熟,在超大神经网络中可以进一步减少总线上的数据通信,可以适当深度学习和神经网络IP更加容易集成;同时,各种图形处理算法IP直接固化在CV芯片中,降低了对GPU的计算能力依赖。未来的单颗CV芯片,将会标配深度学习功能、神经网络功能和机器视觉处理、分析功能。
趋势二:机器视觉芯片出现细分。CV芯片将随着应用领域不同而出现细分,如分为专用的自动驾驶CV芯片、无人机导航CV芯片、AR/VR应用CV芯片等。因为在某个特殊领域,随着机器视觉算法应用需求越来越多,必然带来成本的需求,以增加产品的利润,所以,在CV芯片上做costdown,裁减非本领域的应用功能,并不断深化该领域应用是必然的。
趋势三:低功耗,SOC方式。云+端的方式,通过端完成关键的机器视觉功能,把处理结果传回云,利用云端做分析判断。这种方式优势是减少网络带宽,把视频处理运算由中心分散到前端,这个笔者一定是未来的一个重要趋势。因此,作为端的CV芯片必须是低功耗并且带有一定的CPU功能,需要做到单颗电池续航能力持久,并且具备一定的数据通信、任务调度功能。
在不久的将来,机器眼时代将全面来临,我们都准备好了吗?
当前,智能革命浪潮正席卷全球。2017年开年,神秘棋手Master连胜中日韩多名世界级顶尖棋手的跨年围棋大战落下帷幕,随即Master被证实正是2016年3月战胜李世石的AlphaGo。在围棋领域,顶尖人类智慧已经输给了人工智能,这是人工智能(ArtificialIntelligence,AI)史上绝对的“历史事件”。
AI也正冲击着人们的日常生活。随着计算力提升、算法创新和数据量的不断积累,类似自动驾驶汽车(AutomatedDriving)这样的应用已经从教科书照进了现实。现在,人类驾驶员依靠车内的智能驾驶仪便可实现无人驾驶。
随着科技的发展,AI将会成为人们生活中不可或缺的一部分。
人工智能未来也将会是个大热点。近期,国务院印发《新一代人工智能发展规划》宣布:举全国之力,在2030年一定要抢占人工智能全球制高点!人工智能已经正式上升为国家战略。
可以预见的是:一个人工智能的时代即将到来!
1AI时代,机器学习离不开前端强大计算力
AlphaGo、自动驾驶汽车等等一系列应用的落地让我们看到人工智能越来越接近于“人性化”。
在人工智能时代,机器如果想要学会感知、理解这个世界并且对外界的客观环境做出反应,那强大的计算能力必不可少。而这也正是类似英特尔这样的科技企业推出不断创新的视觉处理单元的重要原因之一。同过前端配备神经网络计算引擎的片上系统芯片,人类可以更快、更准确地实现神经网络对图像数据的处理,从而帮助机器实现超过人类的视觉处理能力。而这正是未来强人工智能时代和更具实践价值的人工智能应用的落地保证。
因此,在未来,我们将看到计算机视觉系统与人工智能相结合,来创造并实现各种新的可能性。
2英特尔发布MyriadX,助力AI视觉发展
英特尔曾经提到:让设备具有和人类一样的视觉系统,是人工智能领域的下一个重大课题。
英特尔为了这个目标,也一直在不断创新。加速低耗能芯片的创新和应用,是现在英特尔在做的事情。
根据官方介绍,MyriadX是全球第一个配备专用神经网络计算引擎的片上系统芯片(SoC),用于加速端的深度学习推理。
而MyriadX之所以强大,是因为引入了一种神经计算器引擎的结构,属于一种加速器,在这种引擎的帮助下,MyriadX可以提供超过4TOPS的总体性能表现,并且达到每秒万亿次的DNN峰值吞吐量。(4TOPS:架构计算是基于所有计算单元上的最大每秒操作次数性能。)
其微型的尺寸和板载处理能力非常适合自主设备解决方案。除了神经计算引擎,MyriadX通过如下独特的方式实时整合了成像、视觉处理和深度学习推理:
●可编程128位VLIW向量处理器:通过为计算机视觉工作负载而优化的16个向量处理器可以灵活地同时运行多个成像和视觉应用流水线。
●增加可配置的MIPI通道:通过其一套丰富的接口和16个MIPI通道,可以把多达8个高清RGB摄像头直接连接到MyriadX,从而支持最高每秒7亿像素的图像信号处理吞吐量。
●强化的视觉加速器:利用超过20个硬件加速器来执行光流和立体深度等任务,而不需要额外的计算开销。
●2.5MB的多核异构同质片上内存:集中化的芯片内存架构最高支持每秒450GBytes的内部带宽,通过尽量减少芯片外部数据传输进而最小化数据访问的延迟并降低功耗。
MyriadX是最新一代MovidiusVPU,专为嵌入式视觉智能和推理开发设计。MovidiusVPUs通过整合三种架构能够在低功耗的情况下实现高性能,从而为深度学习和计算机视觉工作负载提供持续的高性能:
1.一组可编程VLIW向量处理器,其中的指令集为计算机视觉和深度学习工作负荷进行了优化;
2.一套硬件加速器可以支持图像信号处理、计算机视觉和深度学习推理;
3.通用的智能内存结构,用于把芯片上的数据搬移量降至最低。
未来,我们可以看到全新的英特尔MyriadX处理器将很好的与智能机器相结合,在无人机、机器人、智能摄像头、VR等机器上更快捷的进行推理。将人类的视觉功能应用到机器上,实现虚拟与现实的相结合,适应更多的场景当中。
现在,我们已经迫不及待地想看到由MyriadX所带来的人工智能创新!
华为、苹果、Imagination:面向手机的成熟产品发布,移动端AI时代的敲门砖
2016年初,以Eyeriss为代表的深度学习加速器芯片乘着人工智能兴起的东风纷纷破土而出。目前基于深度学习的人工智能算法需要很大的计算量,而传统CPU芯片上用于计算的ALU数目并不多,性能不足以支持深度学习算法的流畅执行。
另外,GPU虽然在云端服务器获得大规模应用,但是一方面GPU架构的功耗太大,无法在移动端广泛使用;另一方面GPU最适合的是深度学习训练,在深度学习的推理应用中因为GPU基于batch运算的模式导致延迟过大,也不适合在移动端使用。
关于深度学习加速器的用法,一般分为芯片和IP两种。芯片的代表如Movidius的Myriad系列(以及基于Myriad芯片的neuralstick产品)和,用户可以把芯片集成到自己的系统中来做深度学习加速。然而,在BOM可谓寸土寸金的手机领域,额外加一块芯片加速深度学习几乎不可能,可行的做法是在手机SoC里面集成一块深度学习加速器IP,在手机执行深度学习应用的时候可以把计算放到加速器模块去执行。
华为、苹果和Imagination发布的深度学习加速器产品都是这样的IP模块。这些模块经过长期设计和验证,已经非常成熟,可以进入大规模生产阶段。产品能进入量产阶段意味着之前已经经过了长期的技术积累,正如苹果和华为透露他们的人工智能加速IP至少在两年前就已经立项了,可见这些手机巨头对于人工智能的远见和拿下市场的决心。
目前手机上的人工智能应用应该说还处于非常初期的阶段,硬件和软件属于“先有鸡还是先有蛋”的境况:在没有深度学习加速硬件的情况下开发手机端的人工智能应用,会导致硬件限制执行速度,用户体验不好;
华为、苹果和Imagination公布的加速器峰值性能分别是1.96TOPS、0.6TOPS和4TOPS,而实测的性能麒麟970可以到300GOPS(执行VGG-16模型),Imagination约750GOPS(执行GoogleNet模型),苹果的实测数据还没有公布,估计也是在100GOPS的数量级。这样的数字能够支持基础的深度学习算法:
目前,苹果宣称其A11中的neuralengine主要是加速FaceID应用,而华为的展示项目则是实时物体辨识。预期在未来,这些人工智能加速器的应用场景会远远多于这些,同时也促成移动端人工智能应用的井喷式发展。
另一方面,我们也应该看到,100GOPS数量级的算法运行计算量更大的实时物体检测(objectdetection,从画面中同时定位并识别多个物体)还不够流畅,因此深度学习IP还有不少进步的空间。
NvidiaDLA:为AI生态铺路的前瞻性产品
与华为、苹果等定制深度学习IP模块不同,Nvidia选择了开源其深度学习加速架构DLA。目前,DLA已经在github上发布了其RTL代码可供编译、仿真以及验证,预计在未来Nvidia将进一步公布其C模型等重要设计组件。
NvidiaDLA最主要的部分是计算单元,据悉目前DLA会使用Winograd算法来减小卷积的计算开销,同时也会使用数据压缩技术,来减少DRAM访问时的数据流量。
Nvidia同时给出了NVDLA构成的两种系统,在比较复杂的大系统中,DLA的接口包括与处理器交互的IRQ/CSB,与片外DRAM交互的DBBIF,以及与SRAM交互的SRAMIF,而在小系统的例子中,则省去了SRAMIF,因为小系统中的SRAM比较宝贵可能没有可供NVDLA使用的部分。
在性能方面,NVDLA在使用2048个MAC的时候可以每秒完成269次ResNet-50推理,相当于2.1TOPS的性能,当然其对于内存的带宽要求也达到了20GB/s,接近DDR4系列的最高带宽。
那么,Nvidia为什么选择了开源的形态呢?通过观察,我们不难发现目前在人工智能硬件领域,Nvidia已经成为云端人工智能加速的主宰者,而在发展潜力巨大的无人车领域,Nvidia也接连推出多款GPU产品布局,在竞争中也处于领跑地位。
在这些Nvidia具有竞争优势的领域,Nvidia的GPU都是作为一种性能强劲的计算加速器存在的。然而,对于产品种类多样而更适合使用SoC产品形态的移动领域,Nvidia一直没有打开局面。
之前Nvidia曾经推出过TK系列和TX系列作为带有深度学习和机器视觉硬件加速特性的SoC来试水移动市场,可惜这些产品的功耗都在10W左右,而且成本很高,导致一直无法占领移动端人工智能加速市场。Nvidia最担心的恐怕就是有一家芯片厂商在移动端人工加速市场脱颖而出,由下至上挑战Nvidia在人工智能加速硬件领域的地位。
因此,Nvidia开源其DLA加速模块,其实是让全球的SoC厂商帮Nvidia一起优化DLA加速模块,并且帮助Nvidia抢占移动端市场。另一方面,开源DLA也能加速移动端人工智能加速硬件的成熟,这样当硬件不再成为瓶颈后,移动端人工智能应用将迎来爆发。而Nvidia作为深度学习模型训练(GPU)以及优化(TensorRT)工具链生态环境的实际掌控者,在移动端人工智能市场真正蓬勃发展后,即使DLA不带来收入也能从人工智能产业链的上游获得大量收益,因此开源DLA的举动是Nvidia布局人工智能生态的重要一步。
IntelLoihi:神经拟态芯片,试验性产品
与前述的几家公司不同,Intel推出的Loihi是一款基于神经拟态(neuromorphic)的芯片。目前最流行的深度学习神经网络中,神经网络把人类的神经系统的统计行为抽象为一系列运算(高维卷积以及非线性运算)的数学系统,与真正的生物神经工作并不相同,而之前介绍的几款产品(以及绝大多数其他人工智能加速器硬件)都是加速这类经典神经网络结构的。
神经拟态则是几乎完全照搬生物神经系统,试图在模型中完全重现生物神经的工作方式(例如引入神经元电势可以充放电,在电势超过一定阈值后神经元就会放出电脉冲到其他相邻的神经元)。理论上,这种神经拟态芯片可以由异步系统实现,并且有很低的功耗。然而,目前神经拟态结构如何训练仍然是学术界没有解决的问题。
Intel发布的Loihi声称可以自我学习,然而学习的效果如何还不得而知。应该说在模型训练问题还没有解决前,神经拟态就基本无法与经典的深度学习在主流人工智能应用里正面竞争,而主要会用在一些实验性的应用,例如利用神经拟态芯片去完成脑科学研究,或者做一些专用场合的高效数据处理(例如三星就使用过IBM的TrueNorth神经拟态芯片来实现动态视觉传感器,只有在画面发生变化的时候该传感器才会记录)。而Intel发布的Loihi,也更多是一款试验性质的产品。
为什么大家纷纷推出AI芯片产品?
在未来的移动人工智能市场,由于移动产品的多样性(如要求高性能但是允许高功耗的智能摄像头市场,要求高性能但是同时要求低延迟和低功耗的无人机市场,要求中等性能但是对成本和功耗要求很高的手机市场,以及要求超低功耗但是对于性能要求也不高的物联网市场),预计还是会有多家公司分别占领不同的市场,而不太会出现一家独大通吃所有市场的情况。未来人工智能芯片预计会进入群雄逐鹿的时代。