首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Facebook如何应对AI在手机上的混乱局面

移动设备上的人工智能有点混乱,这对Facebook来说是一个令人头痛的问题,Facebook的广告收入中有90%来自使用移动服务的用户。

这些是Facebook最近发表的一篇研究论文的一些内容,他们详细介绍了他们如何不得不想出各种各样的技巧来解决移动设备的硬件缺陷。

Facebook(图片来源:BGR)

越来越多的人需要在手机上执行AI。但设备中芯片和软件的格局是标准不一,不同的软件API,导致性能变差。

如何解决这一问题?例如对将要上传到Instagram的图像进行实时推断,作为需要本地处理的任务,以避免进入云进行推理的延迟。

该公司的“神经网络引擎部署在超过10亿个移动设备上”,包括“超过两千个独特的SOC 片上系统,半导体不仅包括微处理器,还包括其他计算模块。”这是一万种不同型号的手机和平板电脑。

平均而言,这些手机中的CPU并不是那么出色:“几乎所有的移动推理都在CPU上运行,大多数已部署的移动CPU内核都是旧的和低端的。”具体来说,今年,他们看到的所有智能手机中只有四分之一是运行2013年或之后设计的CPU。

而且这不仅仅是因为那里有很多旧手机:“这些智能手机的主要部分在最近的一到两年内销售。”

此外,“没有标准的移动SoC进行优化,”他们感叹道,最常见的芯片市场份额不到4%。“数据很清楚:没有'典型的'智能手机或移动SOC。”芯片有一个“特别长的尾巴”。

拥有一个机载“加速器”,如GPU,有帮助,但没有那么多强大的那些。

“不到20%的移动SoC拥有比CPU强3倍的GPU。”他们写道,手机上的大多数人工智能功能“甚至都没有使用GPU”。

DSP或数字信号处理器具有相同的缺点,它们相关,并且所有这些加速器几乎无法访问高带宽内存。对机器学习核心的关键矢量结构的支持很少,大多数人都需要数年才能获得这种能力。

混乱的另一部分是软件:很难为AI编写这些芯片。有一个广泛的API在移动设备上有用,“OpenCL”,但“不是Android系统的正式部分”,并且与其他API的标准不同。其他API,包括“OpenGL ES”,一种适用于图形的桌面API和“Vulkan”,很有前景,但只是部署得很薄。

他们写道,苹果公司脱颖而出:它的iOS“金属”API运行在一致的芯片平台上,平均而言,这些芯片中的GPU性能更高,“使具有GPU的iOS设备上的Metal成为高效神经网络的有吸引力的目标推理。”然而,即便如此,对六代Apple“A”系列芯片的推断速度进行“严格”检查的结果表明,在每一代芯片中仍然存在“广泛的性能变化”。

“可编程性是使用移动协处理器/加速器的主要障碍,”他们写道。

为了解决这一切,该公司充分利用其内部工具。例如,其“Caffe2”框架“部署到超过10亿台设备,其中约75%是基于Android的,其余设备运行iOS”,并且“针对生产规模和广泛的平台支持进行了优化”。

最新版本的Facebook“PyTorch”框架于今年在该公司的开发者大会上亮相,旨在“通过简化通过研究探索开发的模型转换为生产规模而过渡开销很小的过程来加速AI创新。”它还支持微软和其他公司支持的“开放式神经网络交换”或ONNX规范。

Facebook内部有一个完整的“工作流程”系统,可以找出如何优化边缘的神经网络模型。它使用诸如“量化,k均值聚类,执行引擎选择”之类的技巧来提高目标移动设备的性能。例如,量化将32位浮点数的值转换为8位整数,运行速度更快,但代价是精度较低。

在手机上运行模型的Caffe2解释器完成了许多其他工作,例如计算通过“空间分辨率调整”减少神经网络中“中间层”的处理时间。Caffe2还调用两个独立的“后端”系统,进一步优化卷积神经网络的运行,这是深度学习的主力。

尽管如此,作者还是提到机器学习性能在不同的“硬件层级”之间存在很大差异。一些低端手机型号实际上比名义上功能更强大的中端型号更好。对现实世界进行基准测试是不现实的,因为“它需要一大批设备”。因此,他们无法完全预测手机中老化电池等性能受到的影响。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181231A05TEE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券