18个月,华为AI手机涅槃诞生记

搭载麒麟970的华为Mate 10在10月20日已经开卖,成为目前市面上第一款搭载AI芯片的智能手机。

看点:这一个月间,智东西深入华为内部遍访高层,逐渐拼凑出Mate 10这款AI手机的打造始末,同时也挖掘出华为从软到硬的端智能野心。

一个月前,华为陆续在德国及国内推出了两款年度旗舰手机Mate 10和Mate 10 Pro,这两款手机都搭载了此前名噪一时的手机AI芯片“麒麟970”、支持最新的安卓8.0系统、全面屏、比上一代最高增加40%的电池容量、f/1.6超大光圈双摄、4.5G LTE标准……

搭载麒麟970的华为Mate 10在10月20日已经开卖,成为目前市面上第一款搭载AI芯片的智能手机。Mate 10 Pro则将会在11月15日开卖。

▲Mate 10和Mate 10 Pro

在Mate 10系列发布后的这一个月间,智东西深入华为内部,来到上海和深圳,遍访一众从不对外发声的华为高层人员,从AI芯片规划、到手机打造、再到系统搭载的AI平台……我们将所有拼图一块块收集起来,还原了Mate 10这款AI手机打造始末,同时也在不断采访与深入挖掘过程中,逐渐拼凑出华为这一科技硬件巨头在端侧智能领域的强大技术引领,以及其未来从硬到软的全平台野心。

在读这篇文章之前,建议延伸阅读:

《华为麒麟970是不是真正的AI芯片?》

《华为AI旗舰手机Mate10/Pro发布 现场11次叫板iPhone》

源起:麒麟970立项始末

端侧智能,又称端智能,是近两年来AI领域大火的概念之一,指的是数据的采集、计算、决策都在前端设备进行,这一概念与云智能相对应,云智能指的是采集后的数据需要通过网络传输到云端,由云端进行计算后,再将决策发回前端设备执行。

与云智能相比,端智能的优势在于稳定、时延小、同时能够保护用户隐私等,但与此同时,云智能能够提供的强大储存计算力也是端智能的薄弱之处。不过,随着AI的进一步普及,端智能在市场中的呼声越来越高。

端智能需要在硬件终端配备相应的芯片/板卡,拿华为Mate 10为例,这台手机里搭载了能够进行AI计算的硬件——麒麟970芯片,自诞生之日起便无数光环缠身它,不仅甫一发布便刷遍各大新闻网站头条,更是抢占了“第一款手机AI芯片”的头条。

打造这款麒麟970芯片的背后究竟又什么故事?搭载麒麟970的Mate 10系列又究竟实现了什么AI功能?为了让AI应用顺利跑通,华为在软件、平台、硬件上又作出了什么努力?未来AI芯片、端智能设备的路径又在何方?……带着这些问题,智东西首先在华为上海研究院附近的一个果汁吧里与华为无线终端芯片业务部市场总监Eric聊了聊。

Eric告诉我们,与其他所有工作一样,一块芯片的打造流程也包括前期的定义、立项、设计,以及后期的制作打造。前者通常需要几个月到半年时间,麒麟芯片概念小组经过一遍又一遍的讨论审批修改才正式立项,随后这块打造周期也最起码要18个月,因此,总制作流程起码要一年半到两年的时间(18-24个月)

麒麟970的立项是前年的事情了,有着12年芯片工作经验的Eric告诉我们,定义芯片有一个最重要的点——预判。

第一个角度是从用户需求去预判。比如在手机芯片中集成AI模块这件事,两年前其实并没有这一概念。但是当时,华为的团队们观察到了AI行业的一个重要瓶颈——计算力,计算力不足的情况下,无论是深度学习的训练还是应用都极大地受到限制。而众所周知,在半导体行业里改善算力最大的方法就是制作专用芯片,谷歌、英伟达都在做着类似的事情,再结合用户对时延、隐私保护等端智能的需求,搭载NPU的麒麟970应运而生。

第二个预判则需要从半导体技术发展的角度来进行,由于芯片制造过程汇总涉及到很多工艺的进展,比如麒麟970今天使用的台积电10nm工艺,当时在设计之初并不存在。而除了制作工艺,还需要预判半导体产业其他相关技术(如CPU、GPU、内存、屏幕等)究竟将会发展到什么程度,才能对此做一个前瞻性的判断。

无论是对用户需求的预判,还是对半导体相关技术发展的预判,说到底都是对行业的把握。这一环节的重要性不言而喻,正如前文所说,一块芯片的制作流程起码要18-24个月,两年前决定的方向一旦出错,后果将会影响深远。

现在华为麒麟芯片基本以每年一代的节奏迭代着,所以“(虽然)我们今天讨论970,但其实未来两代都已经在路上了。”Eric这么说道。

和上一代麒麟960相比,麒麟970除了新增了AI模块“NPU”,还在各类性能、能效比、通信、以及其他如安卓版本升级等解决方案层面进行了优化,尤其是能效比。在手机芯片上,永远都逃不开能效比,一块手机芯片上无论规划再强的算力,如果最后功耗上有问题的话,就会被一道坎儿卡住,因此这是一个非常关键的核心要点。

谈到AI,Eric其实并没有非常兴奋;他认为,今年大家对这个概念有点被过热讨论,未来AI将会是一个基础技术,可能明年家家都会有这个能力,只是高低的区别而已。

几千研发人员、数亿美元投入

麒麟970之所以敢叫自己“AI芯片”,是因为麒麟970提供了全新的HiAI人工智能移动计算新架构,其中集成的专用AI硬件处理单元——NPU(Neural-Network Processing Unit,神经网络处理器)的技术合作方为寒武纪科技(Cambricon)。寒武纪成立于2016年3月,是中科院计算所孵化出来的AI芯片创业公司,中科院计算所不仅对寒武纪进行了天使轮融资,同时还给与了长期的支持与投入。

今年8月底,寒武纪宣布完成了1亿美元的A轮融资,投资方为国投创业、阿里巴巴、联想等,一跃成为国内AI芯片届独角兽。而麒麟970正式推出于今年10月,在寒武纪1亿美元融资的新闻发布仅隔两月,使得大家对麒麟970芯片的关注点常常聚焦到寒武纪这只独角兽身上。

其实,华为和寒武纪合作要比这早上许多,早在2011年以来,中科院计算所自就和华为展开合作,组建了“中科院计算所-华为联合实验室”。而且正如前文所说,一块芯片的打造周期非常漫长,在华为选择之初寒武纪还不是独角兽。

很长一段时间,寒武纪都以“研究性”企业被业内所知,产品一直没有出现;去年4月份的世界互联网大会期间才宣告自己的第一款AI芯片产品寒武纪1A流片了,不过之后其产品到底有没有商用,有没有量产,并没有官方说法。

任何一个没有商用过的新的东西,离真正商用都有很长一段距离,这个过程中的一大难度在于工程化。研究性的商品工程化,变成一个真正可用的东西,并且能够成功搭载在一个消费级电子产品里,这一条路中间有着极其多的坑。

不过好在,华为最强大的能力之一就是将一个概念工程化,最擅长的就是让技术在产品上体现出来——比如华为整通信领域就在干这件事情,进行从4G到5G的迭代升级。从某个角度而言,也是只有华为这个量级的土壕才有能力让寒武纪1A真正产品化。

而对于华为的麒麟芯片而言,另一个很大的优势就是——麒麟芯片是专为华为终端产品而设计开发的,不需要考虑其他不确定的产品需求。一旦想清楚选择某个点,就会尽力地将这一方面投入放大、一次到位,可以投入更多的成本去专门做这件事情,最大化地呈现产品的优势。而一般的商业芯片公司在这些事儿上下决定会比较犹豫,在一些新的方向上的投入上可能也会需要先观望一下情况。

华为有着遍布全球的十几个研究院,每一个外研都有自己专注的方向,比如美国研究所有很多专注于射频技术,欧洲也有相应的通信、图像算法研究所,所以每一代芯片多是全球研究院所共同协作研发的成果。拿麒麟970为例,这一级别的芯片的研发打造每次都会有几亿美金的投入,数千名人员共同参与。

从硬到软,华为的AI平台野心

虽然有了搭载NPU的“AI芯片”,但是AI从硬件基础到APP应用之间还需要众多软件级与系统级的优化,而这些也是Mate 10实现端侧智能的重要因素。基于麒麟970之上实现的手机端AI应用开发既涉及到华为芯片底层架构兼容,又需要华为软件工程部门进行上层资源的打造开发。为此,智东西也来到了位于深圳的华为软件工程部,与副总裁张宝峰进行了一场深入长谈。

1)AI到底能给手机应用带来什么体验优化:

张宝峰认为,以目前AI技术的发展而言,真正从算法意义上的成熟的应用领域主要包括:图像识别、语音识别这两方面。像AlphaGo Zero这类推理决策的“AI黑科技”离消费极电子产品还是有些距离,因此,基于图象识别和语音识别相关的技术所能驱动的业务,肯定会摆在第一优先级的地位。

从Mate 10真正能够实现的AI功能来说,主要包括以下几点:

1)物体识别及卡路里计算。Mate 10能够让AI脱离网络限制,手机本地就能进行物体识别,分别将葡萄、苹果、牛角包等物体放置在摄像头前,它都能识别出食物名称,并计算卡路里。

2)AI美颜功能,通过Mate 10搭载的人脸识别技术,手机可以自动检测人脸并进行美颜,每3秒钟还能变换不同的动态效果,即使在镜头前移动,AI美颜也能精准贴合。

3)自动回复及情绪识别。Mate 10能够实现文本实体提取、情绪识别、智能自动回复等功能,比如聊天中输入文字“今天发工资了”,就能自动联想出“”表情,输入“战狼2”就能自动推荐观影信息。

4)AI降噪。通过深度学习算法,麒麟970能有效抑制噪音,增强语音信号,车噪场景下的语音识别率从80%提升到92%。

5)拍照场景识别,目前Mate 10和Mate 10 Pro已经经过了1亿张照片的训练,能够智能识别13种场景和物体。 在摄像头识别出镜头内到底是什么场景/物体后(比如一朵静止小花又或是一个奔跑的人类),系统会根据该物体的属性调整相机参数或是进行主动去糊,拍出更适合那个场景的照片。

张宝峰认为,除了图像和语音识别外,另一块最为接近成熟的AI技术是自然语言处理(NLP),而在目前NLP的各类应用中,翻译与虚拟助手是提的较多的两项。

Mate 10搭载了微软定制的AI驱动语音翻译系统,可通过NPU加速实现实时文字交互翻译和识图翻译,比传统翻译快了300%,能够支持50国语言。与此同时,Mate 10系列里AI语音助手“小E”也进行了功能升级。定闹钟、设日程、读信息、刷微博,导航打车找吃的,等等等等,都可以通过呼唤小E语音助手完成,而且,小E并且可以基于用户习惯和场景分析,定制个性化服务在手机的负一屏显示。

顺便一提,Mate 10上小E的一大亮点在于,它可以在熄屏状态下通过语音唤醒的,不需要额外按一个钮把它调出来。也是为了尽可能地避免误唤醒,它的唤醒词采用四个字的“你好,小E”(或者也可以自定义,但同样需要四个音节)。从小E的表现来看,其语音识别和语义理解能力相对于以前华为的语音服务有了飞跃式的提升。

此外,华为Mate 10还有一个特殊的AI应用,那就是通过分析本地数据,尝试理解用户的个人的习惯,进而在保证用户体验尽可能不被影响的情况下,把后台一些无效应用给关闭掉。

举个例子,比如现在在后台里开了一个有字典应用,在查完某个单词之后,绝大部分人应该不会再去查了。但是根据以前的系统模式,应用会在后台进行长期的驻留。而通过AI学习用户习惯后,机器能够知道我20分钟或者一个小时内估计都不会再用了,就可以自动把词典应用关闭。

2)系统层面的AI优化——如何让AI运用跑得最好

对于AI应用来说,首先这个系统要在芯片的软件层面跑起来,主要强调的是基于端侧的CPU、GPU、NPU等的异构调度能力。现在我们手机上所有东西都是通过APP应用呈现的,而每一个APP都一定需要多种运算,比如:只要手机在基本运作,CPU肯定少不了;当你开了屏幕,GPU就要开始绘图;当你开了摄像头,ISP就要打开;当你开始进行AI场景识别,NPU就要开始运行……

所以,让一个AI应用能够真正运行得好,不是NPU一个单一组件的问题,而是一个系统调配的过程。华为方面主要机型异构软件层面的优化,让不同运算单元去执行不同任务,同时保证整个软硬件的功耗与反应速度都是最优的。

对于软件工程层面而言,则包括安卓系统的匹配优化,以及面向第三方开发者的HiAI平台。

Mate 10系列搭载华为EMUI 8.0系统,支持最新版本的安卓8.0。一方面,安卓系统本身对AI进行了优化,Mate 10需要对此进行适配兼容;另一方面,由于安卓每次的新版本都和旧版的兼容性很差,每升级一次就会有大量的兼容性损失,为了不能让产品上体现出这个问题,工程师们需要花很大的精力去排查。

面向第三方开发者的HiAI平台则非常值得一说。HiAI全称HiAI移动计算平台,开发者可以通过它接入华为NPU,调用强大的AI计算功能。

对于自己拥有AI开发能力的、使用TensorFlow或者Caffee等架构的APP开发者来说,在不改变自己训练模型的情况下,HiAI会给他们提供相应的工具,让开发者可以快速迁移已有的模型到HiAI平台。

而对于普通APP开发者来说,HiAI将会提供已经封装好的语音识别、图像识别等技术,开发者们不需要自己做基础AI研发,可以调用HiAI中封装好的AI技术直接应用。

结语:从跟随到引领,火热的AI市场

目前,AI行业正如火如荼的发展着,整个行业都呈现出一派兴旺火热的景象。算法层面,无数科研人员在人工智能的不同领域进行研究,不仅出现了AlphaGo这类“黑科技”,算法的应用落地也在不停优化;硬件层面,从GPU到各类定制化AI芯片层出不穷,从半导体的硬件基础上推动计算力增长。随着算法+芯片这两件事同时发生作用,AI计算力每年都有几十甚至上百倍的提升。

以前,由于性能与技术的限制,开发者们对于AI应用被限制在了云端。而现在,随着算法和芯片的双重加成,端智能能够为AI应用开发者解锁更为广阔的想象空间,手机可以支持更实时、更强大、更智能的AI应用。

在这几年里,华为在消费级电子产品的技术发展速度有目共睹。如果说前几年里,华为在很多领域扮演的都是一个跟随者的角色,那么现在在AI、在5G等高新技术上,华为走到了前面。

表情
您至少需输入5个字

评论 1

相关文章

推荐阅读