不到1ms在iPhone12上完成推理,苹果提出移动端高效主干网络MobileOne

简介: 不到1ms在iPhone12上完成推理,苹果提出移动端高效主干网络MobileOne

来自苹果的研究团队分析了现有高效神经网络的架构和优化瓶颈,提出了一种新型移动端主干网络。


用于移动设备的高效神经网络主干通常针对 FLOP 或参数计数等指标进行优化。但当部署在移动设备上,这些指标与网络的延迟可能并没有很好的相关性。

基于此,来自苹果的研究者通过在移动设备上部署多个移动友好网络对不同指标进行广泛分析,探究了现有高效神经网络的架构和优化瓶颈,提供了缓解这些瓶颈的方法。该研究设计了一个高效的主干架构 MobileOne,它的变体在 iPhone12 上的推理时间少于 1 ms,在 ImageNet 上的 top-1 准确率为 75.9%。


论文地址:https://arxiv.org/abs/2206.04040

MobileOne 架构不仅实现了 SOTA 的性能,还在移动设备上提速了许多倍。其中,最好的模型变体在 ImageNet 上获得了与 MobileFormer 相当的性能,同时速度提高了 38 倍。MobileOne 在 ImageNet 上的 top-1 准确率比 EfficientNet 在相似的延迟下高 2.3%。


此外,该研究还表明 MobileOne 可以推广到多个任务 —— 图像分类、目标检测和语义分割,与部署在移动设备上的现有高效架构相比,准确度显著提高,延迟显著缩短。

方法概览

研究者首先分析了常用指标(FLOP 和参数计数)与移动设备延迟的相关性,并分析了架构中不同设计选择对手机延迟的影响。

指标相关性

比较两个或多个模型大小最常用的成本指标是参数计数和 FLOPs。但是,它们可能与实际移动应用程序中的延迟没有很好的相关性,该研究对此进行了深入的分析,对高效神经网络进行了基准测试。

该研究并使用近期模型的 Pytorch 实现将它们转换为 ONNX 格式。该研究使用 Core ML Tools 将每个模型转换成 coreml 包,然后开发了一个 iOS 应用程序来测量 iPhone12 上的模型延迟。

如下图 2 所示,该研究绘制了延迟与 FLOPs 和延迟与参数计数的关系图。研究者观察发现许多具有较高参数计数的模型延迟较低。在类似的 FLOPs 和参数计数下,MobileNets 等卷积模型对于比相应的 Transformer 模型延迟更低。


研究者还估计了下表 1 (a) 中的 Spearman 排名相关性,并发现延迟与 FLOPs 适度相关,而与移动设备上高效架构的参数计数弱相关,在台式机 CPU 上相关性会更低。


激活函数的关键瓶颈

为了分析激活函数对延迟的影响,该研究构建了一个 30 层的卷积神经网络,并在 iPhone12 上使用不同的激活函数对其进行基准测试,这些激活函数通常被用于高效的 CNN 主干网络。下表 3 中的所有模型除了激活函数之外,架构都是相同的,但它们的延迟却截然不同。


这种差异主要是由最近提出的激活函数(例如 SE-ReLU、Dynamic Shift-Max 和 DynamicReLUs)造成的。  MobileOne 中仅使用 ReLU 激活函数。架构块影响运行时性能的两个关键因素是内存访问成本和并行度。

在多分支架构中,内存访问成本显著增加,因为必须存储来自每个分支的激活函数来计算图中的下一个张量。如果网络的分支数较少,则可以避免此类内存瓶颈。强制同步的架构块(如 Squeeze-Excite 块中使用的全局池化操作)也会因同步成本而影响整体运行时间。为了演示内存访问成本和同步成本等隐藏成本,该研究在 30 层卷积神经网络中大量使用残差连接(skip connection)和 Squeeze-Excite 块,表 1b 展示了它们对延迟的影响。

基于此,该研究采用了在推理时没有分支的架构,从而降低了内存访问成本,并在 MobileOne 的最大变体中使用 Squeeze-Excite 块以提高准确性。最终,MobileOne 架构如下图所示。


为了提高性能,模型在以下几个方面进行了扩展:宽度、深度和分辨率。该研究没有随着 FLOP 和内存消耗的增加而扩大输入分辨率,这对移动设备上的运行时性能是有害的。


由于新模型在推理时没有多分支架构,因此它不会产生数据移动成本。与多分支架构(如 MobileNet-V2、EfficientNets 等)相比,苹果的新模型能够积极地扩展模型参数,而不会产生很高的延迟成本。

增加参数数量能够让该模型很好地泛化到其他计算机视觉任务上,如目标检测和语义分割。表 4 将新模型与最近的训练时间过参数化工作进行了比较,结果表明 MobileOne-S1 变体的性能优于 RepVGG-B0,约比后者高 3 倍。


实验及结果

在移动设备上获得准确的延迟测量可能很困难。在 iPhone 12 上,没有命令行访问或功能来保留所有计算结构以仅用于模型执行。同时也无法将往返延迟分解为网络初始化、数据移动和网络执行等类别。为了测量延迟,该研究使用 swift 开发了一个 iOS 应用程序对这些模型进行基准测试。该应用程序使用 Core ML 运行模型。

在基准测试期间,应用程序会多次运行模型(默认为 1000 次)并累积统计信息。为了实现最低延迟和最高一致性,手机上的所有其他应用程序都将关闭。

如下表 8 所示,该研究报告了完整的模型往返延迟。其中大部分时间可能不是来自该模型本身的执行进程,但在实际应用程序中,这些延迟是不可避免的。因此,该研究将它们包含在报告的延迟中。为了过滤掉来自其他进程的中断,该研究报告了所有模型的最小延迟。


此外,该研究还报告了几种模型在 MS COCO 数据集上的目标检测任务性能和在 Pascal VOC 、ADE 20k 数据集上语义分割任务性能,MobileOne 的性能普遍优于其他模型,具体结果如下表 9 所示。


感兴趣的读者可以阅读论文原文,了解更多研究细节。

相关文章
|
7月前
|
机器学习/深度学习 数据采集 算法
贝叶斯状态空间神经网络:融合概率推理和状态空间实现高精度预测和可解释性
本文将BSSNN扩展至反向推理任务,即预测X∣y,这种设计使得模型不仅能够预测结果,还能够探索特定结果对应的输入特征组合。在二元分类任务中,这种反向推理能力有助于识别导致正负类结果的关键因素,从而显著提升模型的可解释性和决策支持能力。
558 42
贝叶斯状态空间神经网络:融合概率推理和状态空间实现高精度预测和可解释性
|
5月前
|
人工智能 监控 数据可视化
如何破解AI推理延迟难题:构建敏捷多云算力网络
本文探讨了AI企业在突破算力瓶颈后,如何构建高效、稳定的网络架构以支撑AI产品化落地。文章分析了典型AI IT架构的四个层次——流量接入层、调度决策层、推理服务层和训练算力层,并深入解析了AI架构对网络提出的三大核心挑战:跨云互联、逻辑隔离与业务识别、网络可视化与QoS控制。最终提出了一站式网络解决方案,助力AI企业实现多云调度、业务融合承载与精细化流量管理,推动AI服务高效、稳定交付。
|
10月前
|
人工智能 供应链 调度
|
12月前
|
机器学习/深度学习 自然语言处理 计算机视觉
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024 替换骨干网络为 RMT,增强空间信息的感知能力
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024 替换骨干网络为 RMT,增强空间信息的感知能力
511 13
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024 替换骨干网络为 RMT,增强空间信息的感知能力
|
12月前
|
机器学习/深度学习 计算机视觉
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR LSKNet (附网络详解和完整配置步骤)
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR LSKNet (附网络详解和完整配置步骤)
423 13
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR LSKNet (附网络详解和完整配置步骤)
|
12月前
|
机器学习/深度学习 计算机视觉 网络架构
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024替换骨干网络为 UniRepLKNet,解决大核 ConvNets 难题
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024替换骨干网络为 UniRepLKNet,解决大核 ConvNets 难题
855 12
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024替换骨干网络为 UniRepLKNet,解决大核 ConvNets 难题
|
12月前
|
机器学习/深度学习 编解码 数据可视化
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR ConvNeXt V2 (附网络详解和完整配置步骤)
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR ConvNeXt V2 (附网络详解和完整配置步骤)
848 11
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR ConvNeXt V2 (附网络详解和完整配置步骤)
|
12月前
|
机器学习/深度学习 存储 大数据
RT-DETR改进策略【Backbone/主干网络】| ICLR-2023 替换骨干网络为:RevCol 一种新型神经网络设计范式
RT-DETR改进策略【Backbone/主干网络】| ICLR-2023 替换骨干网络为:RevCol 一种新型神经网络设计范式
380 11
RT-DETR改进策略【Backbone/主干网络】| ICLR-2023 替换骨干网络为:RevCol 一种新型神经网络设计范式
|
12月前
|
计算机视觉 Perl
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为CVPR-2024 PKINet 获取多尺度纹理特征,适应尺度变化大的目标
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为CVPR-2024 PKINet 获取多尺度纹理特征,适应尺度变化大的目标
325 10
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为CVPR-2024 PKINet 获取多尺度纹理特征,适应尺度变化大的目标
|
11月前
|
人工智能 运维 监控
领先AI企业经验谈:探究AI分布式推理网络架构实践
当前,AI行业正处于快速发展的关键时期。继DeepSeek大放异彩之后,又一款备受瞩目的AI智能体产品Manus横空出世。Manus具备独立思考、规划和执行复杂任务的能力,其多智能体架构能够自主调用工具。在GAIA基准测试中,Manus的性能超越了OpenAI同层次的大模型,展现出卓越的技术实力。

热门文章

最新文章