在AIoT设备上加速深度神经网络推理的进展:一项综述

news2024/11/13 16:40:31

这篇论文的标题是《Advancements in Accelerating Deep Neural Network Inference on AIoT Devices: A Survey》,作者是 Long Cheng, Yan Gu, Qingzhi Liu, Lei Yang, Cheng Liu, Ying Wang。论文主要探讨了在人工智能物联网(AIoT)设备上加速深度神经网络(DNN)推理的最新进展。以下是论文的主要内容概述:

摘要

  • 论文讨论了AIoT设备上部署DNN模型的挑战,包括计算能力、存储和能效。
  • 论文提供了一个全面的回顾,探讨了旨在加速AIoT设备上DNN推理的技术。
  • 论文涵盖了模型压缩技术、硬件优化策略、并行化方法和执行过程的优化策略。
  • 论文还对未来趋势进行了前瞻性分析,包括移动硬件的进步、软硬件协同设计、隐私和安全考虑,以及在资源受限的AIoT设备上进行DNN推理。

1. 引言

  • 论文介绍了AI与物联网(IoT)设备的结合对日常生活各个方面的影响,如智能可穿戴技术、自动驾驶汽车和先进制造系统。
  • 论文强调了DNN模型在AIoT设备中的作用,以及它们在处理大规模数据和操作数十亿模型参数方面的可扩展性。

2. DNN模型压缩

  • 论文讨论了模型压缩技术,包括剪枝、量化、蒸馏和紧凑的DNN模型结构设计,以提高资源受限AIoT设备上的推理速度和能效。

DNN模型压缩对于在资源受限的AIoT设备上高效进行DNN推理至关重要,因为它可以提高速度和能效,而不会显著牺牲性能。主要的模型压缩方法包括剪枝、量化、蒸馏和紧凑的DNN模型结构设计。

  • 剪枝:通过消除对性能影响最小的参数来减少模型大小和计算复杂性。剪枝过程通常通过将DNN模型中的一些权重、神经元或连接设置为零或小幅度来实现。论文探讨了两种主要的剪枝方法:无结构剪枝和结构化剪枝,每种方法都有助于在保持准确性的同时提高模型执行效率。

    • 无结构剪枝:在DNN模型中实现显著的压缩率,但这种方法通常会产生不规则的稀疏模式,由于需要复杂的硬件解决方案来管理这些非均匀结构,因此在有效实现方面面临挑战。

    • 结构化剪枝:针对DNN模型中的特定层级,如通道或卷积核,通过消除稀疏索引开销来提高AIoT设备上的硬件兼容性。这种方法通过跳过处理元素(PE)中的不必要计算来减少能源消耗和延迟。

  • 量化:DNN模型的参数通常由32位浮点数表示,这使得它们在计算和内存方面非常密集。为了在AIoT设备上促进高效的DNN推理,量化技术被用来压缩DNN模型中权重和激活的位宽。这种位宽的减少显著降低了内存和计算需求,从而提高了资源受限AIoT设备上DNN推理的效率。论文讨论了从两个角度的量化技术,即低比特宽度网络和混合精度网络。

    • 低比特宽度网络:通过极端降低位宽来减少计算和存储成本,是加速AIoT设备上DNN推理的有效方法。

    • 混合精度网络:根据它们的重要性和硬件特性为不同层分配不同的位精度,以提高AIoT设备上DNN推理的准确性。

  • 模型蒸馏:模型蒸馏技术是加速DNN推理的有效方法,它使得从复杂、训练有素的模型中转移知识到更紧凑、更简化的模型成为可能。这种方法显著减少了模型的大小和复杂性,对AIoT设备上的快速DNN推理至关重要。蒸馏方法可以分为传统蒸馏、对抗性蒸馏和多教师蒸馏。

    • 传统蒸馏:使用softmax来模拟DNN模型的输出分布,以实现知识转移。

    • 对抗性蒸馏:通过让教师模型从真实数据分布中学习,增强模型在未知样本上的表现和鲁棒性。

    • 多教师蒸馏:使用多个教师模型通过利用多样化的知识来改进学生模型的训练。

  • 紧凑的DNN模型结构设计:设计紧凑且高效的DNN模型架构对于在AIoT设备上加速DNN推理至关重要。论文中展示了几种经典DNN模型的架构,并讨论了如何通过使用全局平均池化层、组卷积、深度可分离卷积等技术来减少计算工作量。

3. 硬件优化

  • 论文探讨了硬件优化技术,如移动GPU、ASIC、FPGA以及多核和多芯片架构设计,以提高DNN推理的效率。

4. 并行化技术

  • 论文分析了并行计算方法,包括数据并行性、模型并行性和管道并行性,以及混合并行性,以提高复杂计算任务的推理效率。

在AIoT设备上进行深度神经网络(DNN)推理时,由于涉及到大量的矩阵乘法和非线性计算,因此需要显著的计算资源。为了提高计算效率,研究人员探索了多种并行计算方法,包括数据并行性、模型并行性和管道并行性。此外,混合并行性,通过结合不同并行化技术的优势,以提高复杂计算任务的推理效率和可扩展性,已成为提高AIoT设备上DNN推理效率的有前途的解决方案。

  • 数据并行性: 数据并行性是DNN推理加速中的关键策略,特别适用于可以并行处理的实时任务。这种方法利用多核处理器的能力,显著减少了任务完成时间。例如,在GPU实现的背景下,通过将训练数据分批处理并分配给不同的GPU核心,可以实现显著的速度提升,同时只有最小的准确性折损。

  • 模型并行性: 模型并行性是一种分布式训练策略,涉及将DNN模型的不同部分分配给不同的资源进行处理,有效减少了训练期间的内存需求。模型并行性在设备上实现时,需要在不同的核或芯片之间进行频繁的通信以进行同步。例如,通过自动将DNN模型分解到可用处理器上,优化了各个推理阶段的资源效率。

  • 管道并行性: 管道并行性通过将计算流程分解为可以在不同处理核心上并行执行的多个阶段来提高DNN推理的效率。例如,DART架构提供了一种基于管道的数据并行调度方案,用于在由CPU和GPU组成的异构平台上实时和最佳努力任务。这种方法显著减少了最坏情况下的响应时间,并提高了最佳努力任务的吞吐量。

  • 混合并行性: 在AIoT设备上部署DNN架构的不断演变中,仅应用数据、模型或管道并行性已不再可行,因为不同类型的层需要不同的并行化策略。这种挑战促使研究人员探索混合并行方法,以确定复杂模型的最佳分区方案。例如,通过结合数据并行性和模型并行性,优化了在卷积层中的数据并行性,并在全连接层中应用模型并行性。

在AIoT设备上加速DNN推理的过程中,这些并行化技术的发展和应用至关重要,它们共同提高了计算效率,满足了AIoT设备上资源受限环境中对高性能计算的需求。

5. 执行优化策略

  • 论文介绍了执行优化策略,包括数据流优化、早期退出策略、缓存技术和内存访问方法,以加速AIoT设备的DNN推理。

执行优化策略在加速AIoT设备上的DNN推理中扮演着至关重要的角色。这些策略包括一系列方法,如数据流优化、早期退出策略、缓存技术和内存访问方法,旨在提高推理效率和适应性,尤其是在资源受限的AIoT设备上。

  • 数据流优化: 数据流优化着重于提高数据流处理系统的效率,以应对实时数据流的快速处理需求。这涉及到优化数据在系统中的传输和处理方式,减少计算和数据传输延迟。例如,通过灵活的数据流映射工具优化DNN加速器的能效和性能,实现与传统NoC(网络on芯片)结构相比更高的利用率。

  • 早期退出策略: 早期退出策略通过在DNN模型的早期层集成额外的分类器,以高置信度进行推理,从而加速推理过程。这是因为DNN模型的早期层学到的特征往往足以提供准确的推理结果。早期退出策略可以是静态的或动态的,它们通过在模型的适当层添加退出点,减少不必要的计算,从而提高推理速度。

  • 缓存技术: 缓存技术通过将频繁访问的数据存储在快速访问的缓存中,减少检索时间和延迟,对于处理大型实时数据流至关重要。数据缓存优化了数据存储和访问,减少了对主内存或外部存储的频繁访问。模型缓存则通过存储常见的DNN模型以快速加载,提高了推理效率。

    • 数据缓存:通过在SRAM数组中执行原地算术操作、有效的数据映射和减少数据移动等技术,提高了数据流处理的效率。

    • 模型缓存:通过缓存DNN模型的关键部分,如卷积层及其输入数据,提高了卷积性能,并减少了DNN模型的启动时间和资源消耗。

  • 内存访问: 内存访问优化技术旨在减少DNN推理过程中的计算和内存访问时间,尤其是在内存容量有限且功耗高的AIoT设备上。这包括使用处理内存储(PIM)架构,将计算任务与数据存储紧密集成,减少数据传输和延迟。

    • 处理内存储(PIM)架构:通过在存储组件内集成计算核心,减少了数据移动,提高了内存操作的效率。例如,利用ReRAM(阻变随机存取存储器)等非易失性存储技术,提高了DNN模型的推理速度。

这些执行优化策略共同作用,显著提高了AIoT设备上DNN推理的性能和效率,使得在资源受限的环境中实现实时、高效的推理成为可能。

6. 未来发展趋势

  • 论文预测了DNN推理在AIoT设备上的未来发展趋势,包括移动硬件技术的进步、软硬件协同设计、推理过程中的安全性和隐私保护,以及在资源受限的AIoT设备上进行推理。

7. 结论

  • 论文总结了AIoT设备上DNN推理加速的主要进展,并强调了这一领域面临的挑战和未来的研究方向。

参考文献

  • 论文列出了一系列相关的研究文献,涵盖了DNN推理加速、模型压缩、硬件优化和并行计算等领域。

整体而言,这篇论文为AIoT设备上的DNN推理加速提供了一个全面的技术回顾,并对未来的研究方向提出了见解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2134373.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

多层建筑能源参数化模型和城市冠层模型的区别

多层建筑能源参数化(Multi-layer Building Energy Parameterization, BEP)模型和城市冠层模型(Urban Canopy Model, UCM)都是用于模拟城市环境中能量交换和微气候的数值模型,但它们的侧重点和应用场景有所不同。以下是…

重要涉密文件如何防窃取?一分钟了解这5个有效的办法,超实用!

在信息化时代,重要涉密文件承载着企业的核心业务机密、技术专利和敏感客户信息等关键数据。 一旦这些文件被不法分子窃取,不仅会导致无法估量的经济损失,还会严重损害企业的声誉。 因此,构建一个全面的防护体系来防止涉密文件被…

癌症细胞状态的十年探索:单细胞RNA测序的启示

癌症细胞状态的十年探索:单细胞RNA测序的启示 引言 在过去的十年里,单细胞RNA测序(scRNA-seq)技术彻底改变了我们对复杂生物系统的理解,尤其是在癌症研究领域。癌症作为一种由多种遗传克隆和恶性细胞状态组成的复杂生…

2024年开学季,有哪些大学宿舍必备好物?

随着2024年开学季的到来,新生们即将离开熟悉的家乡,踏入充满未知与挑战的大学生活。对于许多学子而言,宿舍不仅是他们未来几年的居住之所,更是承载青春记忆、实现自我成长的重要空间。为了帮助大家更好地适应校园生活,…

基于Arduino和PCB技术的机器人炫彩矩阵点屏的制作过程

第一部分:引入 随着物联网和嵌入式系统技术的发展,炫彩点阵屏在装饰和信息显示中得到广泛应用。本文将记录如何使用Arduino板、WS2812灯珠和PCB制作技术实现机器人炫彩点阵屏的制作过程。WS2812灯珠以其高亮度、色彩丰富和可编程性,成为制作…

探索代码的守护者:Pyflakes,Python代码的隐形盾牌

文章目录 探索代码的守护者:Pyflakes,Python代码的隐形盾牌第一部分:背景介绍第二部分:Pyflakes是什么?第三部分:如何安装Pyflakes?第四部分:Pyflakes的简单使用方法第五部分&#x…

STM32 移植FATFS时遇到ff_oem2uni函数未定义问题

STM32 移植FATFS时遇到ff_oem2uni/ff_uni2oem/ff_wtoupper函数未定义问题 在移植STM32 FATFS文件系统代码时,完成后编译遇到如下错误: 经过排查分析,是文件没有添加完全导致的: 把ffunicode.c文件添加进工程就可以了&#xff…

CAN数据记录仪与乘用车或者工程车辆OBD口连接注意事项

CAN数据记录仪配置好参数后,车上OBD接口CAN信号线定义是3,11(CANH,CANL);6,14(CANH,CANL),直接插到车上可以正常记录数据; 具体分析步骤如下: 1.使用之前了解CANFDLog-VCI设备的接口定义。 下图…

Java Web实战:利用三层架构与Servlet构建登录注册模块

前言导读 三层架构:View(视图层)Service(业务层)DAO(持久层) 使用了JDBCtemplate技术,封装了原生的JDBC技术操作MySQL数据库(DAO层)实现了登录功能和注册功能…

PyQt5 图标(icon)显示问题

遇到这种情况,一般采用下面几种方法,特别是第三种。 第一种,直接应用绝对路径: self.setWindowIcon(QIcon("F:/Workspace/PyQT5-Study/images/cat.png"))第二种,采用动态路径: from PyQt5.QtC…

轻量级模型解读——轻量transformer系列

先占坑,持续更新 。。。 文章目录 1、DeiT2、ConViT3、Mobile-Former4、MobileViT Transformer是2017谷歌提出的一篇论文,最早应用于NLP领域的机器翻译工作,Transformer解读,但随着2020年DETR和ViT的出现(DETR解读,ViT…

YOLOv9改进策略【卷积层】| SCConv:即插即用,减少冗余计算并提升特征学习

一、本文介绍 本文记录的是利用SCConv优化YOLOv9的目标检测网络模型。深度神经网络中存在大量冗余,不仅在密集模型参数中,而且在特征图的空间和通道维度中。SCConv模块通过联合减少卷积层中空间和通道的冗余,有效地限制了特征冗余&#xff0…

领夹麦克风哪个品牌好,哪种领夹麦性价比高,无线麦克风推荐

在音频录制需求日益多样化的今天,无线领夹麦克风作为提升音质的关键设备,其重要性不言而喻。市场上鱼龙混杂,假冒伪劣、以次充好的现象屡见不鲜。这些产品往往以低价吸引消费者,却在音质、稳定性、耐用性等方面大打折扣&#xff0…

突发!OpenAI发布最强模型o1:博士物理92.8分,IOI金牌水平

梦晨 衡宇 发自 凹非寺量子位 | 公众号 QbitAI 参考ChatGPT:点击使用 来了来了!刚刚,OpenAI新模型无预警上新: o1系列,可以进行通用复杂推理,每次回答要花费更长时间思考。 在解决博士水平的物理问题时&a…

034-GeoGebra中级篇-关于geogebra的版本以及如何下载本地geogebra

目前,geogebra常用的有geogebra5和geogebra6,本文旨在对比GeoGebra 5和GeoGebra 6两个版本,以揭示它们在功能、用户体验和性能上的主要差异。GeoGebra 5作为一款成熟的数学软件,已经为用户提供了丰富的功能来进行几何、代数、统计…

太牛了!顺丰丰语大语言模型:已应用于20余个场景

9月8日,顺丰科技在深圳国际人工智能展上发布了物流行业的垂直领域大语言模型——丰语,并展示了大模型在顺丰的市场营销、客服、收派、国际关务等业务板块的二十余个场景中的落地实践应用。 发布会现场,中国科学院院士姚建铨、美国医学与生物…

JVS逻辑引擎:如何实现复杂业务逻辑的邮件自动化

大家好,我是软件部长,今天给大家介绍JVS逻辑引擎的发送邮件节点功能。 JVS提供低代码、物联网、规则引擎、智能BI、逻辑引擎、无忧企业文档(在线协同)、无忧企业计划、无忧企业邮筒等平台,欢迎关注微信公众号: 【软开企…

C# WinForm 中 DataGridView 实现单元格cell 能进编辑状态但是不能修改单元格的效果

在Windows Forms(WinForms)开发中,DataGridView 控件是一个功能强大的组件, 用于显示和管理表格数据。无论是展示大量数据,还是实现交互式的数据操作, DataGridView 都能提供多样的功能支持,比如…

基于姿态估计的运动打卡健身系统-AI健身教练-3d姿态估计-摔倒检测应用-姿态估计与计数

基于姿态估计的运动系统 引言 随着计算机视觉技术的发展,人体姿态估计(Pose Estimation)已成为一种广泛应用的技术,特别是在健身、康复训练、体育等领域。姿态估计旨在从图像或视频中检测和定位人体的关键点,如关节位…

【深度学习】【图像分类】【OnnxRuntime】【Python】VggNet模型部署

【深度学习】【图像分类】【OnnxRuntime】【Python】VggNet模型部署 提示:博主取舍了很多大佬的博文并亲测有效,分享笔记邀大家共同学习讨论 文章目录 【深度学习】【图像分类】【OnnxRuntime】【Python】VggNet模型部署前言Windows平台搭建依赖环境模型转换--pytorch转onnxONN…