相信关注手机的朋友们都知道,跑分是衡量手机性能的一项重要参考。以往大部分跑分软件都集中在CPU和GPU的性能考核上,而近年来随着AI技术不断在手机上得到普及,也有一些跑分软件开始针对AI推出评测机制,让AI手机能够一较高下。

从鲁大师到AI Benchmark,麒麟970 AI跑分持续领先

在业内,最早将AI列入评测指标的是鲁大师,去年其首次在业内推出手机AI评测,搭载麒麟970的华为Mate 10系列斩获排行榜冠军。前不久,鲁大师数据中心又公布了2018年上半年手机AI排行榜,搭载麒麟970的荣耀Play领衔,携手华为P20和荣耀10突破搭载骁龙845手机的围攻,稳居榜单前三的位置,力压群雄。

随着端侧AI技术的不断发展和AI功能在智能手机中的普及,越来越多评测机构开始将AI作为手机跑分的重要指标。继鲁大师手机AI排行之后,苏黎世联邦理工学院最新推出了一个更为全面的AI跑分工具——AI Benchmark通过图像分类、人脸识别、图像超分辨率等测试来多角度衡量各个SoC方案的AI性能。

根据测试结果,麒麟970在支持NPU的测试项目中,相比骁龙845基本有200-300%以上的性能优势,在CPU项目中稍有落后,但深度学习领域的行业趋势正是将更多的工作从CPU移动到支持AI硬件加速的环境上来,并且硬件加速也已经从通用的GPU开始迁移到专门的DSP和NPU上,以获取更高性能和能耗比,因此随着算法的进一步优化和改进,基于NPU进行AI计算的麒麟970相比基于传统GPU的SoC来说,有更大的提升空间。

AI Benchmark下载:

Google Play商店链接:https://play.google.com/store/apps/details?id=org.benchmark.demo

百度网盘分流链接:https://pan.baidu.com/s/1qx0NFYSbc7gHyZg7Qlaobg 密码:p2a3

以上是AI Benchmark的下载地址,有兴趣的朋友可以下载试试,目前AI Benchmark仅支持Android平台。

AI Benchmark全面解析,AI跑分怎么跑?

AI Benchmark包含了9个测试项目,单从总分看华为P20 Pro得分为6397,而骁龙845的榜首机型一加6得分为1875分,差距比较明显。那么这个结果是如何产生的呢?下面,我们现在就来具体分析各个测试项目的特性和性能特点。

测试1:目标识别分类

第一个测试项目是目标识别分类,使用的是MobileNet - V1算法,这是一个非常基础但十分强大的神经网络,能够基于单一照片识别 1000 个不同的对象类别,准确率约为70%。经过量化,其尺寸小于5Mb,系统资源消耗小,适合手机这样的移动设备使用。这个神经网络算法支持CPU、DSP和NPU计算。虽然这个算法支持NPU,但这个是比较基础的算法。

测试2:目标分类识别

第二个测试项目还是目标识别分类,不同之处在于使用了Inception - V3神经网络,而且这个算法更先进,78%的识别准确度也更高,还能识别更小的物体。但这种算法的规模是MobileNet - V1的四倍,对于计算能力有更高的要求。在这种对性能的高要求下,麒麟970的NPU有着更为充分的发挥空间,AI性能优势明显。

测试3:人脸识别

第三个测试是人脸识别,Inception - Resnet - V1神经网络会对每个人脸图像编码并生成一个 128 维的特征向量,该特征向量不会被缩放、平移或旋转影响,然后在数据库的上亿样本进行向量比对。这个测试项目是纯CPU性能测试,并不支持DSP/GPU和NPU,在CPU运算方面,麒麟970稍显逊色,骁龙845在这一回合中获胜,同时也期待后续的测试过程中,该项测试能够增加对NPU等硬件的支持,以适应各种AI方案在人脸识别的应用场景。

测试4:图像处理

第4个测试项目的内容是通过神经网络恢复模糊的图片,使用的是SRCNN 9-5-5算法,仅需要 3 个卷积层来实现恢复经过高斯模糊算法的模糊画面,这个算法支持CPU、NPU和DSP的运算。虽然这个算法的算力需求和并行度不算太高,但麒麟970的NPU表现突出,这意味着搭载麒麟970的手机在拍照防抖上有着绝对的优势,对于拍照手抖一族来说,可以说是绝对的福音了。

测试5:图片超分辨率

以往在翻看手机相册的时候,想放大查看照片细节是很难的,因为放大之后照片的分辨率过低,照片也会变得模糊,甚至出现像素点,这个时候就需要通过图片超分辨来处理。在这项测试中,使用的是19 层的 VGG-19网络,在这个网络中可以训练AI将缩小后的图像(如缩小四倍)恢复至原图。VGG-19是鲁大师AI测试第三个项目的改进算法,需要用到19 层的网络,因此计算量更大,在此项测试中,麒麟970的NPU优势非常明显,AI的运算力得到证实,结合前段时间麒麟970联合搜狐新闻推出的图片超分辨功能来看,这项AI能力已经落在了实际应用当中。

测试6:图片超分辨率

第6项测试依然是图片超级分辨率,但所使用的SRGAN算法有所区别,其使用两个神经网络进行处理,在网路A处理有问题的时候,网络B会发现问题并进行修正,同时帮助A改进算法。SRGAN算法实现得效果更好但速度更慢,并且不支持AI硬件加速,只能依靠CPU暴力解决,麒麟970在此项测试中稍显吃力,NPU性能优势无法发挥。

测试7:语义图像分割

这个测试主要是围绕自动驾驶算法进行的场景识别。依据车载摄像头拍摄的照片检测19类目标(例如车、行人、路、天空等)。在上面这张图中,大家可以看到最近专为低性能设备设计的 ICNet 网络的像素级分割结果(每个颜色对应不同的目标类别)。由于这个算法是针对低性能设备设计的,比较落后,仅能支持CPU运算。但其实在Tesla或者Drive PX平台上,这个内容的计算都是支持硬件加速的,因此麒麟970的AI性能还有很大的提升潜力和应用空间。

测试8:拍照增强

这一项主要是针对改善老照片的画质进行的,如果现在翻出几年前用手机拍摄的照片,当时的分辨率不够高,画质不够好,所以现在看起来质感不够好,这时就可以通过神经网络来改善。通过训练学习,AI可以让旧照片呈现出单反画质,虽然这个算法存在一定限制,比如不同手机都需要分别训练,但图像优化的结果看上起很棒。

这个优化是使用的ResNet-12算法,支持CPU、DSP和NPU加速。在这项测试中目,麒麟970优势非常显著,可以说是所有测试中优势最大的项目。在测试中,麒麟970的NPU处理仅需不到0.2秒,基本不需要等待,体验非常好。而这个测试项目中用到的图片分辨率仅为128x192像素,如果是平时手机拍摄的1200万像素的4000x3000尺寸图片,麒麟970的性能优势会更为明显。

测试9:存储极限

最后这个测试项目依然是使用第4项中的SRCNN神经网络对图片内的文字进行识别,这是最轻负荷的神经网络之一,但即便如此,在处理高分辨率照片时,它也会让大多数手机不堪重负——处理高清照片手机至少要有 6GB 的内存。这项测试的目的是找到设备的极限,测试这个最简易的神经网络到底能处理多大的图像。在本轮测试中,华为P20 Pro的样机是6GB内存,在容量上受到一定的限制,未看到明显优势。

几番登顶端侧AI排行,麒麟970靠运气还是实力?

麒麟970的NPU性能优势不仅仅是植根于硬件,也关系到软件和生态系统。移动AI处理是一个软硬结合的多层次系统项目,最上层是应用层,其下是API作为应用层和硬件层的交互应用接口。目前Android平台中AI加速的API主要有两个:一个是Google官方的Android AI Runtime,类似Windows下的Direct Compute,软硬件兼容性好,是行业规范;另一个是华为的HiAI,这个是麒麟独有的API。类似NVIDIA的CUDA,虽然硬件上有限制,但效率更高。在API层下面还有一个HiAI异构资源管理系统,分配任务给下面的硬件层,下面的硬件层可以是NPU,也可以是GPU、CPU、DSP,甚至是ISP。

得益于华为HiAI平台架构的通用性,麒麟970的性能可以在绝大多数APP和测试软件上得到很好的发挥。而高通平台的Hexagon DSP AI加速芯片需要开发者专门为其进行独占优化才能发挥效能,这就意味着开发者需要在通用代码的途径之外,额外的为高通Hexagon DSP AI 加速芯片编写专门的路径,这样无疑会大大加大高通AI开发的难度和成本,对于开发者而言并不友好。另外我们还发现搭载Pixel Visual Core AI加速芯片的Google Pixel 2 XL在本测试中成绩并不理想,也就只能达到骁龙835的水平,这说明Pixel Visual Core的泛用性也存在问题,并不能很好支持第三方的App程序。

关注近期搭载麒麟970的手机,其实不难看到华为在AI应用上做出的成绩。前段时间华为推动上线了首批AI应用,如Prisma、WPS等,在照片处理、PPT识别上带来更强大的使用体验,而在近期的nova 3发布会上演示的AI短视频魔幻特效更是十分酷炫,结合麒麟970的AI运算力,视频也能像照片一样实现图像分割和特效渲染添加,这背后需要进行极其复杂的图像识别与运算,离不开强大的AI运算力加持。说到这里,麒麟970是靠实力还是靠运气,相信各位已经一目了然。

在AI Benchmark官网有这样一句话“你的智能手机为AI做好准备了吗?”,这其实是一个很好的问题,如今各家手机厂商都在大力宣传自己的AI手机,但是所有手机都做好进入AI时代的准备了吗?至少从这次评测结果来看,还不能给出肯定的答案。

相关文章