为了改善电脑系统在资料处理上的效能,科学家将主意打到了人类的神经网络上。这个念头并不是神来一笔,而是观察到人类的脑神经在处理视觉、听觉和语言方面,有非常卓越的表现。
这种参考人类神经元结构所产生的资料处理程序,被称为「类神经网络」或者「人工神经网络(Artificial Neural Network,ANN)」,它就是一种模仿生物神经网络结构和功能的数学模型的演算法。
ANN技术其实已问世超过50年,且不断的进行改良和突破,例如卷积类神经网络(Convolutional Neural Networks,CNN)就是相当著名的一支,由于它的结构简单易用,因此发展迅速,并被广泛的运用在大型图像的处理上。
到了近几年,随着芯片技术的突破和人工智能应用的崛起,让神经网络技术又进一步受到重视。目前主要的推力则是机器学习(Machine Learning),它是人工智能的基础所在,而机器学习的核心是基于神经网络的多层资料处理技术的「深度神经网络(Deep Neural Network)」,也因此,想办法来提升神经网络资料处理的效能,就成了目前各家终端产品设计的突破点。
而眼前,最火热的战场,就是智能型手机。
神经网络智能手机的新卖点
神经网络运算有多项优势,包含平行处理、内容定址记忆、容错特性、能处理一般演算法难以胜任的问题等,因此很适合运用在经常需要处理非常复杂的任务的应用上,而手机就是一个这样的产品。
智能手机是当代人们每天都要随身的电子装置,它不仅时时要能连线上网,而且经常会同时开启多个App软件,影像和语音的处理更是家常便饭。而随着人工智能功能的导入,更让手机功能的优化与执行变得复杂,此时,神经网络技术就成了最好的解决方案之一。
由于神经网络技术具有自我学习的能力,能学习使用者的操作特性,并设定出一个最佳的输入和输出的路径。因此一旦学习完成之后,后续的各项操作皆能相对以往的软件程序快上不少,对于使用者体验有大幅的改善。
目前主要的手机处理芯片供应商也已经在其解决方案中,加入了神经网络处理器的技术。
苹果Bionic处理器加入神经网络引擎
苹果的iPhone就是最著名的产品。苹果在2017年的iPhone A11 Bionic处理器上首度加入了神经网络处理引擎(Neural Engine)的技术。根据苹果的资料,这个神经网络引擎是一个双核的设计,每秒运算次数最高可达6000亿次,能大幅提升机器学习的效能。
图一: 苹果最新的A12处理器,神经网络引擎的核心数已达8个。(source: Apple)
而实际的使用情形也证实苹果所言不假,神经网络处理技术的的确确让机器学习有了脱胎换骨的表现。也因此,苹果最新一代的处理器A12更进一步增强了神经网络处理单元的性能,更正确的说,是增加了4倍。
在硬件设计上,苹果的神经网络引擎是透过一块FPGA区域来达成,因此在机器学习性能上有很强的自定义能力。而在最新使用7纳米制程的A12处理器上,神经网络引擎的核心数已达8个(A11是双核),且每秒可进行5万亿次运算(约8.33倍),至于执行Core ML的速度则是上一代的9倍,但功耗却只有前代的十分之一。
图二: 各家芯片商的神经网络运算技术比较。
也因为如此,采用A12处理器的iPhone学习能力惊人,除了能快速甚至即时的运行各项应用程式外,更能够迅速的辨认模式并做出预测,且不断的进行改良,堪称是当代最聪明的智能型手机。也由于新的处理器,iPhone在智能语音和影像辨识的能力有了绝伦的表现。
高通骁龙NPE技术以DSP突破运算性能
神经网络技术的优势明显,各家手机处理器芯片商当然也就陆续投入相关的技术研发,高通(Qualcomm)就是其中一个。旗下的骁龙(Snapdragon)处理器就已经搭载了神经网络处理引擎(Neural Processing Engine; NPE)技术。
图三: 高通Hexagon DSP神经网络执行性能,相比在CPU上执行,能快出5至8倍。(source: 高通)
根据高通的资料,骁龙的NPE是一种整合了多种软硬件的元件,用来加速终端装置上(on-device)的AI功能,以改善使用者的体验,但原则上,高通的NPE是以软件为中心(software-centric)的解决方案。
而在软件架构上,高通的NPE是属于开放的架构,能支援多种神经网络的框架,包含Tensorflow、Caffe、Caffe2和ONNX,此外,高通也开发了自有的Hexagon Neural Network(NN)函式库,让开发者可以让其AI演算法在骁龙处理器里的Hexagon DSP上执行。
而在最新一代的骁龙处理器855上,NPE已经发展到了第四代,其效能已较第三代有3倍的成长,可对影像、影音、AR/VR与游戏等智能功能进一步优化。只不过高通并没有具体的说明其NPE的技术细节,硬件的架构也不得而知,也没有解释为何是在DSP上运行。但依据高通自己的说法,高通的Hexagon DSP 的神经网络执行性能,相比在CPU上执行,能快出5至8倍。
联发科曦力处理器加入NeuroPilot与APU技术
台湾的联发科技(MediaTek)当然也看到了人工智能在行动装置上的应用商机,自2018年初起,就推出了NeuroPilot的技术,并将之首次运用在其手机处理平台曦力P60上。
根据联发科的说法,NeuroPilot是基于他们的核心监控与调节技术CorePilot的进阶版。CorePilot在2014年就已经被开发出来,其主要作用就是动态监控手机多核处理器的每个核心的工作负载量,并加调节和分配,以提高手机运行的性能并降低电耗。
到了人工智能时代,联发科也顺势推出了APU技术,并运用在CorePilot所积累的异构运算经验,推出了NeuroPilot平台,作为CPU、GPU和APU间的运作协调,以提升整体的AI运算效能。
NeuroPilot平台约可分为三个层级,顶层是各种APP应用程式;中间层为程序编写和异构运算(软件层);最底层是各种硬件处理器。而其中最关键的就是中间的软件层。
联发科指出,中间层主要由演算法软件构成,包括各种软件的API、神经网络运行(NN Runtime)、异构运行(Heterogeneous Runtime)。简单来说,就是所谓的人工智能的运行架构(AI framewrok),以及神经网络的演算法。
而联发科的NeuroPilot也是属于开放式的架构,支援目前市面上主流的AI framework,包含TensorFlow、TF Lite、Caffe、Caffe2、Amazon MXNet、Sony NNabla和ONNX等。联发科也提供NeuroPilot SDK,其包含Google神经网络API(Android NN API)和联发科NeuroPilot扩充元件。
图四: NeuroPilot平台可分为三个层级,中间层为程序编写和异构运算,是最关键的一层。(source: 联发科)
而在硬件方面,除了原本的CPU、GPU外,则是增加了新的人工智能处理器APU,用来提高人工智能应用和神经网络处理的校能。在最新一款的旗舰处理器P90上,联发科的APU已升级至2.0版本,比前一代快上四倍,算力达1127GMACs(电脑定点处理能力的量)。
中国海思携手寒武纪主攻NPU技术
中国华为旗下的海思半导体(HiSilicon),是手机处理器市场一家快速崛起的IC设计公司,目前屡屡在技术上有领先业界表现。该公司在2017年九月就率先发表了一款采用10纳米制程的智能手机处理器-麒麟(Kirin)970,该处理器是产界首款具有人工智能神经处理元件(NPU)的手机处理芯片。
海思的NPU同样是属于AI应用程式的加速处理单元,也就是针对神经网络演算法的处理,特别专注于卷积神经网络(CNN)的应用。根据海思的说法,在相簿模式中,Kirin 970的NPU每秒能处理2,000张照片的处理;若没有NPU介入,单以处理器运算只能处理约100张而已。
图五: 最新一代的Kirin 980处理器,其NPU核心数已增加至两个。(source: 海思)
据了解,Kirin 970的NPU,是由中国的芯片IP商寒武纪(Cambri0con)所提供,并由海思与寒武纪共同合作进行优化的一个模组。
而最新一代的Kirin 980处理器,其NPU核心数已增加至两个。根据华为的资料,双核NPU的性能可达到每分钟处理4,500张图像,较前一代提升了120%的辨识速度。可以快速执行人脸识别,物体侦测与辨识,物体识别,影像分割和智能辨识等人工智能的应用。
AI需求成形处理器IP商也加入战场
由于神经网络的性能卓越,因此除了IC设计商积极投入研发外,处理器IP供应商自然也开始跨入此一领域,包含前段所提到的中国寒武纪之外,以色列的IP商CEVA也开始提供具备神经网络技术的IP方案。
CEVA近期所发表的WhisPro就是一款基于神经网络技术的智能语音辨识方案,它采用了可扩展递回神经网络(Recurrent Neural Network)技术,可同时辨识多个触发片语,能运用在智能手机、智能音箱、蓝牙耳机和其他语音设备中。
然而有趣的是,虽然神经处器技术的势头已经窜起,但处理器IP的龙头Arm却是动作缓慢,到目前为止,仍未提供任何的神经网络解决方案。虽然Arm也看好人工智能的应用市场,但就是迟迟未把具体的产品曝光。
而依据Arm的时程,最快今年第一季才会推出具备人工智能功能的AI处理器-Arm ML CPU。根据Arm的说明,Arm ML处理器也会是一个系列产品,提供多种规格给不同的应用产品,性能范围是1至4 TOP/s,可满足不同的产品需求,包含智能手机、智能手机、智能家居和汽车等。
Arm指出,其ML处理器主要有三个部分,一个是MAC引擎,主要是执行卷积云神经网络的运算;第二是可程式的运算引擎,可以支援未来新的运算元和网络;第三是资料管理,用来降低AI运算的功耗。
虽然推出的时间晚了,但Arm仍是自信满满,由于其处理器的生态系十分庞大且完整,要后来居上也可能是易如反掌。
「我们已经看到机器学习技术正在成熟,市场需求也正在不断增加,我们认为现在是进入市场的最佳时机。」Arm机器学习副总裁Dennis Laudick说。