深度起底苹果AI芯片A11:九年潜伏布局 狂买数十家公司
来源:微信公众号:智东西 Lina
就在上周的今天,苹果公司在刚刚落成投入使用的“飞船”新总部(Apple Park)举行2017年秋季新品发布会,整场发布会基本被iPhone X抢尽了风头(想采访一下iPhone 8/8p的心理阴影面积)。
iPhone 8/8p和iPhone X都搭载了苹果自研的A11 Bionic(仿生)芯片。虽然苹果全程并没有在这款芯片上花太多功夫介绍,但我们仍旧知道它搭载了一个专用于机器学习的硬件——“神经网络引擎(Neural Engine)”
还记得月初华为发布的麒麟970吗?麒麟970正是因为搭载了“神经网络处理单元(NPU)”而称为首款手机AI芯片。
可别小看了这块A11,通过智东西仔细研究发现,它不仅是iPhone X中一众“黑科技”的来源,而且苹果为了打造这块芯片早在9年前就开始了技术布局。
一、参数亮相:跑分爆表了~
在介绍A11里专门用于机器学习的“神经网络引擎”之前,我们先来看看A11的基本参数。
工艺方面,A11采用了台积电10nm FinFET工艺,集成了43亿个晶体管(上一代采用16nm工艺的A10 Fusion集成了33亿个晶体管,华为麒麟970则用10nm工艺集成了55亿个)。
A11搭载了64位ARMv8-A架构的6核CPU,其中包括2个名为“Monsoon”的性能核(performance core)和4个名为“Mistral”的能效核(high-eggiciency core),性能核比上一代A10里的快了25%,能效核则快了70%。
而且,与A10不同,A11中使用了苹果自研的第二代新型性能控制器,允许6个CPU内核同时使用,整体性能比上一代快了70%。
至于为什么分为性能核和能效核呢?当手机进行发短信、浏览网页等轻量任务时,系统会选择调用能耗更低的能效核(high-eggiciency core),而当手机需要运行对计算能力要求更高的软件时,则需要动用性能核(performance core)进行处理,借此可以有效延长平均电池寿命。搭载了A11的iPhone X在充满电后,将会比iPhone 7延长2个小时的待机时间。
A11的另外一大亮点就是首次搭载了苹果自研的GPU,这是一款3核GPU,性能相比A10 Fusion提升30%,只需要一半的功耗就能达到A10的表现,并且针对3D及。这是今年4月苹果宣布和英国GPU设计公司Imagination Technologies“分手”后推出的首款自研GPU,针对AR、沉浸式3D游戏等方面都进行了优化,比A10快了30%。
A11里还集成了苹果自研的ISP、自研的视频编解码器等等,从种种强调的“自研”我们不难发现,苹果已经越来越强调架构的自主化。在彻底跟老朋友Imagination Technologies分手后(并且导致人家股价断崖式下跌70%后),苹果的下一个自研目标也许会移到基带技术上,与高通旷日持久的专利诉讼案件算得上是前兆了。
此外,我们也可以从A11在Geekbench的跑分上一窥究竟:在Geekbench中有A11的几个跑分,其中单核性能最高的是4274,多核性能最高的是10438,而取这些跑分平均值后,单核性能是4169,多核性能是9836。
这是什么概念呢?跟上一代A10的“单核成绩3332,多核成绩5558”比起来,A11在两方面的性能有接近30%和50%的飙升。而iPad Pro中的A10X单核性能平均在3900左右,而多核性能是9200左右,依然弱于A11。
而Android阵营的种子选手——高通骁龙835的GeekBench成绩为单核2000左右,多核6500左右。(麒麟970跑分未知)
二、A11就是“人工智能芯片”
还记得月初华为发布的麒麟970吗?这款手机芯片搭载了来自寒武纪的“神经网络处理单元(NPU)”,专门用于机器学习,麒麟970也因此被称为“手机AI芯片”。
这次,苹果也在自家的A11 Bionic芯片上搭载了一个专用于机器学习的硬件——“神经网络引擎(neural engine)”。
正如我们在《华为麒麟970是不是真正的AI芯片?》一文中介绍的,现在所谓的手机处理器,比如高通的835、苹果的A11、麒麟970等,实际上所指的是一个“处理器包”封装在一起,这个计算包专业一点说叫Soc(System-on-a-Chip),高大上的说法是“计算平台”;根据分工不同,很多专用功能的处理单元加进来,比如我们最熟悉的是GPU,现在这个包里的独立单元数量已经越来越大,比如ISP(图像处理)、Modem(通信模块)、DSP(数字信号处理)等,不同的数据进来,交给不同特长的计算模块来处理将会得到更好的效果、更高的能效比,这个神经网络引擎(neural engine)跟麒麟970的NPU一样,是在手机处理器平台新加入的一个擅长神经网络计算的硬件模块。
而这也是为什么从20nm、16nm、到现在的10nm、以及研发中的7nm,各大芯片设计商、代工商都在拼命把芯片技术往小了做,为的就是在不影响芯片大小的前提下挤进更多的独立处理单元。
A11的神经网络引擎采用双核设计,每秒运算次数最高可达6000亿次,相当于0.6TFlops(寒武纪NPU则是1.92TFlops,每秒可以进行19200次浮点运算),以帮助加速人工智能任务,即专门针对Face ID,Animoji和AR应用程序的ASIC(专用集成电路/全定制AI芯片)。
有了神经网络引擎,苹果高级副总裁Phil Schiller很有底气的表示:A11 Bionic是一款智能手机到目前为止所能拥有的最强劲、最智能的芯片。而基于ASIC的深度学习,实现了高准确率之外,还能比基于通用芯片(GPU、FPGA)的方案减少功耗。
不过,苹果对这款神经网络引擎的功耗、实测性能等方面都没有进一步披露。
A11同时也支持Core ML,这是苹果在今年WWDC开发者大会上推出的一款新型机器学习框架,能让开发者更方便地将机器学习技术整合到自己的App中。Core ML支持所有主要的神经网络,如DNN、RNN、CNN等,开发者可以把训练完成的机器学习模型封装进App之中。
除了使用NPU、神经网络引擎等专用AI硬件单元这种做法外,现在的众多手机厂商使用的基于CPU+GPU+DSP架构上对AI功能进行优化的方式。比如高通就在今年7月发布了骁龙神经处理引擎(NPE,Neural Processing Engine)的软件开发包SDK。
三、买买买,买出的AI帝国
像苹果正在进行的其他所有研究一样,在人工智能方面,苹果保持着它一贯神秘而低调的“严守秘密,闭口不谈”作风。
然而,人工智能暂时还是个发展早期的行业,各位行业大牛们基本也是学术大牛们,这种拒绝透露研究成果、不让发论文、甚至不让谈论的严格保密态度,很可能会让无数身处学术圈(并且早已实现财务自由)的AI专家们拒绝苹果的offer,转而投向如谷歌、Facebook等更为开放自由的公司。
所以外界一直以来对苹果自研的人工智能技术持观望怀疑态度,而苹果似乎也意识到了这一点,从去年年底,苹果开始允许其人工智能研究人员在苹果博客上公开发表他们的研究成果,目前已经公布了三篇Siri相关的论文与一篇计算机视觉相关的论文。
但是~没人不要紧,我们有钱啊。
从去2010年开始,苹果就没有停止过收购人工智能创企的步伐,并且每次给出的都是惯常声明:“苹果会不时收购规模较小的科技公司。我们通常不讨论目的或计划。”非常有“事了拂衣去,深藏功与名”的意思。
而且,每个被苹果收购的公司都会立即关闭对外的产品和服务,从此像是忽然从世界消失一般。
1)收购芯片厂商
以芯片为例,早在2008年,苹果就以2.78亿美元收购了2003年成立加州的高性能低功耗处理器制造商PA Semi。
随后在2010年,苹果以1.21亿美元收购了1997年成立的美国德州半导体逻辑设计公司Intrinsity,专注于设计较少晶体管、低能耗同时具备高性能的处理器。
2011年年底,苹果又以3900万美元的价格收购了2006年成立的以色列闪存控制器设计公司Anobit。
2013年8月1日,苹果收购了成立于2007年的加州半导体公司Passif Semiconductor,其专长于低功耗无线通讯芯片(大胆地猜测一下Apple Watch的芯片技术是不是来自这里)。
其后的2015年底,苹果再次斥资1820万美元,收购了一间位于加州圣何塞北部的面积7万平方英尺(6500平方米)的芯片制造工厂。这座工厂原属于芯片制造商Maxim Integrated Products,其设施包括了芯片制造工具,而且工厂地址靠近三星半导体公司。
从以上一连串的买买买我们可以看到,苹果的芯片布局早在近十年前就开始了。
除了芯片之外,从2010年至今,苹果已经陆续收购了好几十家创企,包括语音识别、图像/面部识别、计算机视觉、AR、数据挖掘、机器学习、地图、定位等等,而这其中几个比较具备代表性的有:
2)收购面部识别/表情追踪厂商——Animoji和Face ID的技术来源
2010年,苹果以2900万美元收购瑞典面部识别创企Polar Rose,他们开发的面部识别程序可以可以为用户自动圈出照片中的人脸。
2015年11月,苹果收购《星球大战》背后的动作捕捉技术公司Faceshift,这家苏黎世的创业公司开发了实时追踪人脸表情,然后再用动画表现出来的技术。该技术还可以实现面部识别。
2016年1月,苹果收购了加州AI初创Emollient,该公司使用人工智能技术读取图片中的面部表情。
2017年2月,苹果以200万美元收购了面部识别以色列创企RealFace,该公司开发了一种独特的面部识别技术,其中整合人工智能并将人类的感知带回数字过程。
3)收购AR引擎巨头
2015年5月,苹果收购AR引擎巨头德国Metaio公司。彼时Metaio与Vuforia并肩称霸AR引擎行业,Metaio拥有约15万名开发者,Vuforia则拥有大约18万,两家的SDK开发者占到了当时整个市场的95%以上,在AR的行业地位有如Windows和Mac OS之于PC。——可以看作是ARkit的技术来源。
4)收购25年德国老牌眼球追踪企业
而离现在最近的一次收购就是苹果今年6月时宣布收购拥有25年历史的德国老牌眼动追踪企业SMI——SMI全名SensoMotoric Instruments,其历史要追溯到1991年,SMI从柏林自由大学学术医疗研究院剥离出来,独自成立眼球追踪技术公司,迄今已经有超过25年的发展历史了,产品包括面向企业与研发机构的眼球追踪设备/应用、医疗医疗眼控辅助设备、手机、电脑、VR设备等的眼控技术支持等。
目前,眼球追踪技术已经被集成在了iPhone X里。在用Face ID解锁时,只要你眼睛没有看着屏幕,屏幕也是不会解锁的。
四、用来干啥:Face ID背后的结构光学技术
既然是“人工智能芯片”,当然是用来做人工智能~人脸识别、图像识别、面部表情追踪、语音识别、NLP、SLAM、等等。
而A11的神经网络引擎第一个重要的应用就是iPhone X的刷脸解锁——Face ID。
虽然刷脸解锁并不是什么石破天惊的新技术,但是苹果的Face ID解锁跟普通的基于RGB图像的人脸识别解锁不同。寒武纪架构研发总监刘少礼博士说,“我们这次对苹果A11的AI引擎了解不多,特别是功耗、实测性能等方面苹果发布会基本没有提。个人觉得iPhone X这次最大的亮点是距离传感器,用来支持3D的Face ID,这个功能在业内还是引起了不小震动,后续会给予这功能开发出不少有趣的应用。通过结构光发射器和红外摄像头配合,可以捕捉人脸的深度信息,比之前用2D图像作人脸识别进步了很多。”
根据原理和硬件实现方式的不同,行业内所采用的3D机器视觉主要有三种:结构光、TOF 时间光、双目立体成像。
(三种主流的 3D 视觉方案代表性产品)
双目立体成像方案软件算法复杂,技术还不成熟;结构光方案技术成熟,功耗低,平面信息分辨率高,但是容易受光照影响,识别距离近;TOF 方案抗干扰性好,识别距离远,但是平面分辨率低,功耗较大。
综合来看,结构光方案更加适合消费电子产品前置近距离摄像,可应用于人脸识别 、手势识别等方面,TOF方案更加适合消费电子产品后置远距离摄像,可应用于 AR、体感交互等方面。
(“刘海儿”,TrueDepth Camera System)
iPhone X的Face ID采用了人工智能加持的结构光方案:数据采集由该机正面上方的景深感知摄像机(即“刘海儿”,TrueDepth Camera System)完成,其红外线发射器可以发射3万个侦测点,利用神经引擎(Neural Engine)将反射回来的数据与储存在A11芯片隔区内的数据进行对比,实现用户面部的3D读取与处理。通过神经网络训练的加持,Face ID失误率仅为百万分之一,远小于Touch ID的五万分之一。
与此同时,iPhone X还具备眼球追踪功能,在你面对屏幕,但是眼睛没有看着它的时候,也是不会解锁的。所以,这样的人脸解锁是照片骗不过的。
而且,苹果的软件工程高级副总裁Craig Federighi曾表示,“我们不会在用户注册Face ID时收集数据,它会保留在你的设备上,不会被发送到云端进行训练。” 符合苹果一贯的“用户隐私为上”理念。
最为神奇的是,用户面容适应(化妆、佩戴眼镜、长胡子、随着年龄增长而变容改变等)过程需要用到的深度学习训练也是在本地完成的。深度学习分为训练(Training)和推理/应用(Inference)两部分,训练阶段所需的计算量比应用阶段的要大上许多。
另一方面,计算与训练的本地化也有助于让Siri变得更加智能。毕竟有不少人认为由于苹果对用户的隐私过于重视,导致Siri发展较慢,竞争对手们后来居上。
此外,在A11的加成下,iPhone X前头“刘海儿”实现的脸部追踪技术还可以用于个人定制化表情Animoji(能捕捉并分析 50 多种不同的肌肉运动)、AR滤镜等,新的互动的方式有望提高用户的参与度和粘性,提高AR社交平台的经济价值,而3D视觉所提供的景深信息和建模能力是现有普通摄像头无法比拟的。
而iPhone X还搭载了全新陀螺仪和加速计,刷新率达到60 fps,可以实现准确的动作追踪以及很好的渲染效果。在发布会上,苹果全球市场营销高级副总裁Phil Schiller是这么说的:这是第一款真正为AR打造的智能手机。
发布会现场,苹果还演示了几款AR应用的小样:即时策略游戏《战争机器》(The Machines)、即时战略游戏《战锤40K:自由之刃》(Warhammer 40k:Free Blade)、职业棒球直播《At Bat》、星空注解《Skyguid》。
五、火热的AI芯片产业
当前人工智能芯片主要分为GPU、ASIC、FPGA。代表分别为NVIDIA Tesla系列GPU、Google的TPU、Xilinx的FPGA。此外,Intel还推出了融核芯片Xeon Phi,适用于包括深度学习在内的高性能计算,但目前根据公开消息来看在深度学习方面业内较少使用。
(AI芯片一览)
其中,苹果的A11、寒武纪的A1、谷歌的TPU等都属于ASIC,也就是专用集成电路ASIC(Application Specific Integrated Circuit)。顾名思义,ASIC 就是根据特定的需求而专门设计并制造出的芯片,能够优化芯片架构,针对性的提出神经网络计算处理的指令集,因而在处理特定任务时,其性能、功耗等方面的表现优于 CPU、GPU 和 FPGA;但ASIC算法框架尚未统一,因此并未成为目前主流的解决方案。
(寒武纪1号神经网络处理器架构)
(谷歌ASIC产品探索)
现有的ASIC包括谷歌的TPU、我国中科院计算所的寒武纪、应用于大疆无人机和海康威视智能摄像头的Movidius Myriad 芯片、曾用于Tesla汽车自动驾驶和ADAS的Mobileye芯片等针对特定算法以及特定框架的全定制AI芯片。
此外,更近一步的的AI芯片前景,大概是IBM 的TrueNorth这类的类脑芯片(BPU)。类脑芯片的目的是开发出新的类脑计算机体系结构,会采用忆阻器和 ReRAM 等新器件来提高存储密度,目前技术远未成熟。
(不同芯片在人工智能计算方面各有所强)
结语:我们离手机AI芯片还有多远?
有着苹果和华为的推进,专用AI处理单元可能会越来越成为智能手机芯片的发展趋势。毕竟目前在生物识别、图形图像识别、用户使用习惯学习等方面都越来越依赖机器学习技术,而不太稳定的网络带宽(大家记不记得早期Prisma要等好久才能生成图片)、个人隐私、功耗比等问题也在驱动着手机芯片集成专用AI处理单元的发展。
不过,搭载A11的iPhone X要到10月27日起才开始预售,11月3日发售,跟其他所有产品9月15日预售+22日发售相比完了将近一个多月,而搭载麒麟970的华为Mate 10也要等到10月16日才在慕尼黑发布。
用上了“神经网络引擎”或是“神经网络计算单元”的手机芯片究竟能发挥多大作用?会给手机体验带来什么改变,是不是“然并卵?”这种种问题都要等到真机上手才能逐渐明确。
但总的来说,无论是A11还是麒麟970,都是让AI在手机端开始由软到硬地落地的表现,是人工智能进一步产业化落地的一个典型代表。