机器学习(ML)和人工智能(AI)是当前科技领域最热门的话题,这两项技术都在通过对于底层的优化改良进而影响人们的生活,而下一次工业革命很有可能由人工智能点燃。而普通大众对于AI的认识源于智能手机中内置的AI引擎。特别是我们已经见识过了AI引擎在使用手机过程中带来的提升,如:AI一键换天、AI提升语音转文字效率。
当手机AI性能发展到切实能够影响使用体验的时候,AI也成了衡量手机芯片性能的一部分,AI跑分软件应运而生。用户必然会好奇AI跑分软件如何实现对于手机AI性能的衡量?今天我们就来解释什么是AI、AI跑分软件是如何评判手机AI性能的。
01 手机上的AI到底是什么?
所谓AI,指的是人工智能,如果将范围缩小到硬件层面,就是指模拟人类大脑结构的人工神经网络。说白了,就是模拟人的神经结构和功能的数学模型或计算模型,通过大量的人工神经元(数学函数)联结进行计算。不同于传统逻辑推理,基于大量数据统计的人工神经网络具有一定的判断力,在语音识别和图像识别上特别有优势。
单层神经元网络
人工神经网络需要大量的数据训练,它在识别图片的训练过程中会根据一些特征来记忆并识别物体。如人工神经网络会因为形状、颜色等特征来识别图片中的人脸、猫咪或者建筑。这有些类似人类在幼年时期,根据动物的特征来做出“这不是马,是鹿”的判断。
人工神经网络最有价值的地方是通过对于数据的归类和分割,从而“推理”出智能化结果。AI“推理”是人类向整套AI系统提供数据并“训练”AI以后的结果。用户端最终呈现的AI是经过训练后的AI“推理”后的结果。同理,智能手机中的AI引擎最主要的作用是AI“推理”,进而为用户提供定制化的使用效果。
需要注意的是,AI运算与传统运算的区别在于,传统运算是需要按照人为算法得到最终的函数结果,AI运算的过程更为开放,会根据用户输入的数据信息依靠人工神经元对数据信息进行识别判断。因此,手机AI的评判更为复杂、繁琐。
02 手机AI跑分软件的测试标准是什么?
为了让用户对手机AI性能有更清晰准确的认识,目前市面上已经出现了一些AI跑分软件,来帮助用户认识到不同机型的AI性能差异。
目前主流AI跑分软件主要衡量的是面向移动端图像分类的ResNet-34和Inception-V3、面向单一目标检测和移动视觉的Mobilenet-SSD,以及面向图像语义分割的Google DeepLab-v3等。
ResNet-34主要用来测试手机AI识别图片的概率高低与用时,来判断手机AI的性能。Inception-V3也是类似的评分机制。这两项是综合评判手机基本的AI性能。剩下的两项则是考察手机单项AI性能指标。
Mobilenet-SSD
Mobilenet-SSD是一种目标检测算法。特点是速度快、精度高,“目标检测”的意义就是让AI寻找图像中的物体,并指出他们在图像中的位置与种类,这种算法拍摄一次可检测图像中的多个对象。
Google DeepLab-V3+
Google DeepLab-V3+原理示意图
Google DeepLab-V3+是谷歌开源语义分割模型,它可以实现对于物体的建模。简单来说,这一项是检测手机AI的图像处理能力。
总结来说,ResNet-34和Inception-V3是考察手机芯片的基础AI能力,Mobilenet-SSD是让AI寻找图像中物体的位置与种类,Google DeepLab-V3+则是考验手机AI的“抠图”能力。
03 市面主流AI软件成绩该如何理解?
手机上的AI测试软件在建立测试标准后需要做两件事:其一,适配智能手机所在芯片平台的SDK(软件开发工具包);其二,支持AI计算深度学习模型中的两种常用数据格式INT8和FP16的运算。这里提及了相对专业的名词,我们先来解释下做这两项的含义。
适配智能手机所在芯片平台的SDK
SDK是“Software Development Kit”的缩写,中文译为“软件开发工具包”,SDK是AI提供商为了开发者更方便实现AI功能而准备的开发者工具。AI测试软件支持AI SDK的意义在于更便捷、更准确测得实际的AI性能。
高通的AI SDK命名为SNPE
其中,高通的SDK命名为SNPE、联发科的SDK命名为NeuroPilot、海思的SDK命名为HiAI.。..。.AI测试软件支持的SDK越多,越容易建立统一的AI测试基准。
支持INT8和FP16的运算
INT8和FP16是AI计算深度学习模型中的两种常用数据格式。
INT8指的是8bits表示的数字,代表的是整数运算。INT8运算优势在于计算速度快,可以通过减少计算与内存带宽来提升能耗,可以让手机在AI运算中更为省电,缺点是计算精度略差。FP16指的是16 bits表示的数字,代表的是浮点运算。FP16运算的优势在于更高的计算精度,缺点是对于手机电量要求高、硬件需求高、多数消费类应用使用不到该级别精度。
INT8和FP16没有完全的优劣之分,手机端的AI往往会根据实际场景的不同来综合考虑选择。虽然FP16能提供比较高的精度,但其能效比略差,不适合在手机这种电池容量有限的设备上运行。而INT8不仅具备能效的优势,其运算的效率和精度也在不断提升。
了解这些后我们再来盘点下市面主流的AI测试软件:AIMark(鲁大师开发)、AITuTu(安兔兔开发)和ETH AI Benchmark(即苏黎世AI跑分应用)。
AIMark
AIMark
AIMark的开发商为鲁大师,测试手机芯片AI性能的基准分为ResNet-34、Inception-V3、Mobilenet-SSD和DeepLab-V3+四大类模型。其中AIMark的分值取决于手机AI处理数据集和执行特定目标识别的效率。
开发商鲁大师表示AIMark与ARM、高通,海思、联发科、三星等AI核心SoC产品供应商进行了测试与调整,实现了对于主流手机AI SDK的支持。同时,鲁大师根据实际消费端的AI使用现状,将可以满足主流消费应用INT8运算权重占比略高。
上图是AIMark测试中热门手机芯片AI性能汇总。其中三星Galaxy S20 Pro和一加8的AI跑分远超其他终端,这得益于两款手机采用的骁龙865内置了比前代平台更强大的第五代高通人工智能引擎AI Engine。我们来具体看下骁龙865的AI算力来源。
骁龙865的AI算力来源于第五代Qualcomm人工智能引擎AI Engine。第五代AI引擎则由Kryo 585 CPU+Adreno 650 GPU+Hexagon 698张量加速器构成,每一部分都有各自的运算专长,系统会根据实际负载将需求分配到CPU、GPU和张量加速器上。高通第五代AI Engine的AI算力达到了15 TOPS,保证高性能与低功耗兼备,满足移动端的使用需求。
高通第五代AI Engine所提供的15 TOPS的算力与AIMark的实际跑分相符,也证明了高通AI算力提升所言非虚。
此外,在AIMark中我们不难发现一个非常有趣的结果:同样采用骁龙855平台的三星Galaxy Note10的AI跑分要远高于Pixel 4 XL。这是因为两款手机在实现AI能力上采用了不同的SDK,Pixel 4 XL实现AI算力的方式是接入谷歌为安卓系统准备的Android神经网络API(Android NN API),软件的不同最终导致了两款手机实际AI性能上的差异。
而是否搭配高通的AI SDK所带来的差距,在高通865上的第五代AI引擎上体现得会更加明显,这是因为高通为其第五代AI引擎进行了定制优化。专为第五代AI引擎准备的SDK可以让AI应用开发者快速简单地调用高通第五代AI引擎的最大性能。
此外,高通还为第五代AI引擎准备了一种深度学习带宽压缩的技术,将数据量压缩一半,降低了运算能耗。针对处理AI任务时消耗电能的问题,高通开发了一项全新的技术——深度学习带宽压缩。这还是一项完全无损的压缩技术,被压缩的所有数据精度不会有任何损失。
同时,采用高通865的手机往往会使用最新的LPDDR5高带宽内存相互配合,因此采用骁龙865的手机登顶AIMark也是情理之中。
AITuTu
AITuTu的开发商是安兔兔。AITuTu测试手机芯片AI性能的基准测试为Inception-V3和Mobilenet-SSD。同时开发商安兔兔表示,AITuTu通过各厂商提供的SDK将原始神经网络转化为厂商所支持的神经网络,再通过图片分类、对象识别测试项对处理器AI性能做评定。
AITuTu
AITuTu实现了对于主流手机芯片平台如高通、联发科、海思、三星的SDK支持,测试标准较为统一。同时,AITuTu的AI测试中INT8运算权重略高。
AITuTu的测试结果显示,搭载骁龙865的设备在AI性能上遥遥领先。
ETH AI Benchmark
ETH AI Benchmark,即苏黎世AI跑分应用。目前苏黎世AI跑分应用有v3和v4两个版本,这两个版本的跑分会有些许差异。ETH AI Benchmark这款软件对于手机AI性能的测试包括对象识别、人脸识别、图像去模糊等9大测试项,根据手机AI识别的速度、准确率和内存要求,最终得出一个体现手机AI性能的分数。
ETH AI Benchmark
需要注意的是,ETH AI Benchmark和上述两个平台测试有差异。首先是ETH AI Benchmark不支持手机芯片平台的AI SDK,ETH AI Benchmark支持的是谷歌为安卓准备的TensorFlow Lite(TFLite)和Android神经网络API(Android NN API)两套接口。这会影响到实际的AI测试结果。
这是因为Android神经网络API(Android NN API)在使用骁龙芯片的厂商中使用率很低。有数据显示,高通平台中使用高通SDK的比例高达94%,而使用Android神经网络API的比例约为1%。ETH AI Benchmark不支持芯片厂商SDK意味着芯片平台难以发挥全部的AI性能,最终结果和使用结果存在偏差。
ETH AI Benchmark v3测试权重,FP16最高
另外,ETH AI Benchmark的FP16运算加权更高,占到了48%,INT8代表的整数运算占比为24%,这也会影响到最终AI测试分数。我们首先看下ETH AI Benchmark v3版的数据。
ETH AI Benchmark v3测试数据
ETH AI Benchmark v3的测试情况与AIMark和AITuTu不同:麒麟990 5G领先于骁龙865。这是因为而麒麟990 5G在AI浮点运算方面有专属的AI处理器,因此分数排名有所不同。
我们再来看下ETH AI Benchmark v4版的测试数据:其结果与v3版有所不同,麒麟990 5G的领先幅度较小。
表格中数字为平均初始化时间(单位为毫秒),数值越低越好
三款主流的AI测试软件的测试结果来看,高通865内置的第五代AI引擎在INT8代表的整数运算方面有优势,并通过INT8 AI精度带来包括语音转文字、语音助手等推荐引擎、相机图像识别与处理等优质的体验。
04 总结
手机AI性能的发展非常迅速,而如何确立评判手机AI性能的基准也成了很难的事情,不过当前主流的三款AI测试软件在一定程度上给我们以启发。AIMark和AITuTu的测试结果取决于INT8性能,而ETH AI Benchmark看中FP16性能。INT8和FP16并无优劣之分,但INT8运算因为具备更好的能效比,且INT8的AI模型效率和精度也在不断提升,因此更适合移动端使用。
责任编辑:pj
-
AI
+关注
关注
87文章
29665浏览量
267994 -
人工智能
+关注
关注
1789文章
46576浏览量
236895 -
机器学习
+关注
关注
66文章
8340浏览量
132278
发布评论请先 登录
相关推荐
评论