必一运动官方网站3月14日,芯片厂商联发科技发布了旗下首款内建AI功能的芯片曦力P60。据悉,本月多家手机厂商发布的手机都将搭载该芯片。
截止目前,各大移动芯片厂商都已经开始了AI功能芯片的布局,苹果AI1、海思麒麟970、高通骁龙845、三星Exynos 9810、联发科曦力P60。其中,联发科曦力P60面向中端手机市场,这说明搭载AI芯片的手机开始从高端向中低端普及。
目前市面上出现了多款搭载上述AI芯片的手机,比如苹果iPhone X、华为Mate10系列、LG G7、三星S9,以及即将发布的搭载曦力P60的OPPO R15和VIVO X21等,他们都内置了AI芯片,而AI功能也成为这些手机共同的宣传点,比如人脸识别、智能语音、AI算法拍照等等。
虽然各家的AI芯片都开始集成独立的神经网络处理单元,但是在设计上有很大不同。这意味着,在运行机器学习应用方面,几家AI芯片在性能和能耗上有很大差别。因此,第三方开发者是否针对几家的芯片设计进行优化,或只支持某一种设计,会对系统性能产生重大影响。
手机AI芯片的能力,其实远不止目前宣传的人脸识别、AI算法拍照等基础功能,而是能够根据用户习惯与需求,通过芯片的硬件“离线”处理能力(收集整理信息、运算与分析、应对处理)与系统传输配合,推算出用户的兴趣、爱好与需求,并即时反馈给给用户。
比如,通过手机的感知能力,在本地记录用户地理位置、天气、光线、使用时长、用户行程安排等数据,通过本地计算结合到已有的算法模型之中。这里需要注意的是,将智能推荐这类本身就依托于网络的算法完全移植到本地端意义不大,但把云端推理结果放到本地端再处理,会得到很不一样的用户体验,可以得到真正定制化的AI体验。
所以,AI芯片只是移动AI生态的一块基石,它真正的魅力还在于提供了基础设施之后,开发者利用AI芯片的能力开发出创新性的应用。
移动AI芯片的出现,降低了消费级AI应用的准入门槛,给了开发者推出轻量级产品的可能,这使得他们不必担心云服务资源的使用资费,也不必担心用户量增长带来服务器宕机。
摆在整个行业上的难题是,目前AI芯片还处于算法主导到产品主导的过渡期,各家AI芯片的设计不同,AI方案架构方面都有不小落差,就算开发者开发出同一款AI应用,其兼容性可能会存在很多问题。也就导致开发者必须针对不同厂商的设备进行逐个优化。加之安卓生态比较混乱,厂商之间筑起的护城河难以填平,移动AI开发者很可能受到更多阻碍。
正因为如此,有报道指出,目前大部分开发者只在产品中嵌入一些计算量比较小的网络,或者是调用频率比较低的功能,无法选择在持续功能里复发神经网络。
比如,很多直播APP都有实时美颜功能,利用降噪、颜色空间转换实现磨皮、滤镜等基础功能,但在一些手机上也会出现耗电量过高的情况。
目前,大多数移动AI芯片在机器学习方面做了较为普适性的优化,而对一些特定的计算方式则没有进行太多优化。并且,开发者在计划从云端到终端的迁移时,还会受制于原本的框架。
因此,当AI应用的开发进入到实际的应用和业务层面,开发者面临着标准不同意、API配适、软件优化等很多的难题。
当芯片厂商利用AI芯片疯狂跑马圈地的时候,开发者却遇到了很多的难题,这时,做底层设计的架构巨头ARM开始出场,意图一统“江湖”。
要知道,在移动芯片市场,不管是高通、三星、苹果必一运动,还是联发科、华为海思,都是基于ARM的底层ISA设计。也就是说,几乎所有移动终端设备和多数智能联网设备都使用了ARM的设计架构。
这家欧洲巨头公司,在2016年7月被孙正银的软银公司以320亿美金天价收购。
ARM近期推出了全新芯片架构DynamIQ,这种架构能够对同一运算设备中的大小两个核进行适当配置,以减少电池消耗。通过这项技术,AI的性能有望在未来三到五年内提升50倍。
3月6日,ARM还宣布了两款针对中低端市场的GPU架构及多媒体方案,加上其在今年2月底推出的Project Trillium机器学习平台(这是一套高度可扩展处理器的ARM IP组合),ARM企图结合开发环境、算法与各大主流机器学习框架、甚至硬件,全面布局从终端到云端所有AI应用开发生态。
各大芯片厂商纷纷押注AI芯片,竞争热潮叠起,手机厂商也借着此次机会极力宣传AI功能手机,但是对于开发者和消费者来说,一切只不过刚刚开始。
对于用户而言,移动AI芯片的出现意味着可以在终端上获得更好的产品体验,可对于开发者来说,移动AI却不能靠芯片一蹴而就。目前大多数移动AI芯片在机器学习做了较为普适性的优化,而对一些特定的计算方式则没有进行太多优化。比如深度学习中需要的卷积计算,当前就会更适合部署在云端。并且在计划从云端到终端的迁移时,开发者还会受制于原本的框架。像Tensorflow就很容易支持iOS和安卓上的部署,让迁移变得更加容易。可像Caffe、Torch这样基于小团队的框架,在产品化上相对乏力,目前还无法帮助开发者将代码迁移到两个移动端必一运动。这也给了Tensorflow更多的优势,尤其是在消费级应用之上。
移动AI芯片不能解决所有问题,但很多团队正在试图从软件方面加速移动AI的部署。美国西雅图的 AI 创业公司 xnor.ai利用二值化神经网络减小神经网络模型的储存大小,从而加快运算速度、降低计算成本,最终实现在不依赖网络的前提下,在嵌入式设备中部署深度学习模型。
硬件的出现必一运动,只是移动AI生态的一块基石。进入业务层面,还要考虑api配适、软件优化,甚至未来可能出现的5G网络等等。
之前介绍了AI芯片的历史以及分类的概述:爱喝水的大灰狼:AI芯片-1-概述:AI技术发展的核心
云端:数据中心和超算,具有强大的计算能力和海量的数据,进行模型的训练以及推理(目前的AIGC大模型)
边缘端:数据中心外的设备:机器人,自动驾驶,手机,物联网设备等。使用训练好的模型进行推理。
云端要求高性能,AI芯片要尽可能高的吞吐量。而边缘侧则更加注重实时性和低功耗。
一般学习模型采用的是浮点数运算,所以用TFLOPS比较多:每秒万亿次浮点操作
在云端AI芯片领域,现在GPU一枝独秀。很多科研机构没有GPU A100是没办法开展工作的。谷歌也出了TPU,云端AI芯片吞吐量一般在100-320 TFLOPS。
边缘端AI芯片目前性能在5-10TOPS左右。每年在提升。降低功耗,减小芯片面积是AI芯片的重要课题,特别是边缘端AI芯片。
在5G中可以做到1ms的低延时传输,但是对于像自动驾驶,无人机等,实时性、安全和隐私尤为重要。所以想对这些场景使用云端模型推理,不是很现实。还是需要本地的模型。
提到DNN芯片就不得不提及SNN芯片,SNN类脑芯片目前的研究还远不如DNN芯片成熟。类脑芯片以恒定幅度的信号的时间宽度或时间间隔来表示信号强度,幅度小,功耗低。 学习的时候只需要少量的数据,并且可以进行在线学习和终身学习。 和我们人脑一样,我们人脑的功耗比较低,主要原因就是做了很多估算,并没有达到很高的精度。
目前AI在训练模型期间(都是DNN模型),需要保持极高的数据输出精度。2012年深度学习刚刚开始兴起的时候,大多数AI训练都是32位浮点精度的,后来到16。
而在模型的部署推理阶段为了降低功耗一般采取量化到16位或者8位的整型变量。
相同位宽情况下,整数形式模型可以节省50%的功耗与面积。相同输出精度下8位整型的能效能够达到32位浮点数的4倍。
人工智能(AI)算法包括各种机器学习算法还是深度学习算法,都是要基于硬件作各种运算才能得出结果,传统的硬件如CPU,FPGA等也能跑各种算法,但效率没有GPU那么高,特别是像无人驾驶这种对实时性要求极高的场景。现在又有很多厂商发布AI芯片,本质上是一种对AI算法(如各种神经网络)作进一步特定优化的硬件结构,使得各种AI算法的执行效率更高,提高对特定使用场景的匹配度。