针对物联网边缘设备基于EIT的手部手势识别的1D CNN效率增强的组合模型压缩方法
论文标题:Combinative Model Compression Approach for Enhancing 1D CNN Efficiency for EIT-based Hand Gesture Recognition on IoT Edge Devices
中文标题:针对物联网边缘设备基于EIT的手部手势识别的1D CNN效率增强的组合模型压缩方法
作者信息:
- Mahdi Mnif,1,2,3
- Salwa Sahnoun,1,2
- Yasmine Ben Saad,1
- Ahmed Fakhfakh,2
- Olfa Kanoun,*3
- National School of Electronics and Telecommunications of Sfax, University of Sfax, Tunisia
- Laboratory of Signals, Systems, Artificial Intelligence and Networks (SM@RTS), Digital Research Center of Sfax (CRNS), Tunisia
- Measurements and Sensor Technology, Faculty of Electrical Engineering and Information Technology, Chemnitz University of Technology, Germany *Corresponding author: olfa.kanoun@etit.tu-chemnitz.de
论文出处:To appear in: Internet of Things
主要内容:
摘要: 本文研究了模型压缩技术,旨在确定它们组合时的兼容性,并找出一种有效的方法来提高物联网边缘设备上的推理速度和能效。研究基于电气阻抗断层扫描(EIT)的手部手势识别(HGR)应用场景,该场景涉及复杂的信号处理,并且需要实时处理和能效。因此,设计了一个定制的一维卷积神经网络(1D CNN)HGR分类模型。通过战略性地结合模型压缩技术,实现了一个为物联网嵌入式设备更快推理和改进能效定制的模型。模型大小压缩至10.42 kB,尺寸减少了98.8%,在个人电脑上推理增益为94.73%,准确度下降了大约8.56%。组合模型压缩技术的方法在一系列处理能力有限的边缘计算物联网设备上应用,显著提高了这些设备的模型执行速度和能效。具体来说,Arduino Nano BLE的平均功耗增益为52%,Raspberry Pi 4为34.05%。对于Arduino Nano BLE Sense、Nicla Sense和Raspberry Pi 4,推理时间减半,ESP32的增益达到了94%。
1. 引言: 随着人工智能(AI)的进步,智能传感器和设备在从物联网(IoT)设备到智能家居和自动驾驶汽车等多种应用中的普及度急剧上升。这些传感器和设备依赖于深度学习技术,如深度神经网络(DNNs)、卷积神经网络(CNNs)和循环神经网络(RNNs),在包括计算机视觉、语音识别、医学诊断和人机交互在内的各个领域取得了重大突破。然而,传感器捕获的值通常发送到功能强大的计算设备(如云服务器)上执行机器学习算法,这种方法引入了数据采集和算法响应之间的显著延迟,可能会影响整体性能。此外,在网络上传输大量数据可能会导致网络拥塞并增加能耗。为了解决这些问题,发展了边缘计算的概念。边缘计算涉及将计算和通信资源从云端转移到网络边缘,有助于避免通信延迟,实现更快的最终用户响应时间,并在安全边缘环境中本地处理数据,减少数据泄露风险。
2. 相关工作: 本研究分析了现有的基于边缘计算的手势识别系统的局限性和挑战,考虑了能耗、模型大小、推理处理时间和模型优化等关键参数。
3. 探索模型压缩技术以实现高效的边缘AI部署: 模型压缩技术已成功应用于优化大型语言模型,通过降低计算成本、提高推理效率和增强可扩展性,这些技术已成为云部署的基本要素。此外,它们在边缘计算场景中的潜力也不容忽视。然而,在物联网边缘设备上实施这些技术面临独特的挑战,如管理有限的内存、处理能力和能耗。
4. 基于电气阻抗断层扫描的手势识别: 设计了一个用于识别美国手语(ASL)手势的系统。使用单独的传感器系统进行EIT数据采集,然后将数据发送到个人电脑(PC)进行处理和特征提取以执行手势分类。当前解决方案有几个局限性,使其不适合作为可穿戴设备使用。首先,分类过程依赖于笔记本电脑或基于云的计算来运行深度学习模型推理,这意味着它不独立,不能完全作为可穿戴设备使用。此外,这种对外部计算的依赖也使解决方案效率低下且能耗不高效,因为它需要能量将数据传输到计算机上运行推理。为了克服这些局限性,应该开发一种新解决方案,可以在可穿戴设备本身上使用边缘设备执行分类和推理任务,这种方法将提供更大的独立性、能效和实时决策能力。
5. 针对CNN优化的组合模型压缩技术: 本节的目标是通过研究和调查TensorFlow框架支持的不同模型压缩技术,找到计算效率和精度之间的最佳权衡,从而开发出更强大的HGR算法,通过提高1D-CNN模型的效率来保持其准确性。
6. 结果和性能评估: 本节详细描述了组合模型压缩技术的效果,并比较了基线模型与组合模型在模型大小、推理时间和准确性方面的性能。通过结合KD、FP和8位PTQ,在准确性、推理时间和最小模型大小之间取得了平衡。推理时间从0.3741 ± 0.0228降低到0.0197 ± 0.0012,模型速度提高了约94.73%。模型大小从871.58 kB显著减少到仅10.42 kB,实现了更适合资源受限环境的更紧凑模型。然而,这些增益的代价是准确性从80.81% ± 1.72降低到72.25% ± 1.05,大约下降了8.56%。
7. 结论: TinyML模型旨在在设备上执行计算,最小化通过网络传输敏感信息的风险。边缘计算和TinyML之间的联系在于它们共同的目标,即将计算能力和智能更接近数据源。边缘计算为本地数据处理提供基础设施,而TinyML通过在资源受限的物联网边缘设备上部署ML模型来补充它。它们共同使一系列从低延迟、隐私保护和高效设备上处理中受益的应用成为可能。这就是为什么需要优化深度学习模型以部署在物联网边缘设备上的原因。这项工作基于调查几种模型压缩技术,战略性地结合它们,并将其应用于基于EIT测量的HGR的1D-CNN模型。主要目标是评估组合模型压缩技术的兼容性,并确定优化不同知名嵌入式物联网设备模型执行时间和能效的最有效方法。通过在一系列物联网设备上实施和评估组合压缩模型技术,具体来说,Arduino Nano BLE的平均功耗降低了约52%,Raspberry Pi 4降低了34.05%。推理时间减半,对于Arduino Nano BLE Sense、Nicla Sense和Raspberry Pi 4,以及ESP32(从119毫秒到7毫秒)的显著增益为94%。这些结果强调了组合模型压缩方法在物联网边缘设备上的快速、节能部署的有效性和适用性。
相关文章:

针对物联网边缘设备基于EIT的手部手势识别的1D CNN效率增强的组合模型压缩方法
论文标题:Combinative Model Compression Approach for Enhancing 1D CNN Efficiency for EIT-based Hand Gesture Recognition on IoT Edge Devices 中文标题:针对物联网边缘设备基于EIT的手部手势识别的1D CNN效率增强的组合模型压缩方法 作者信息&a…...

商品满减、限时活动、折扣活动的计算最划算 golang
可以对商品的不同活动(如满减、限时价和折扣)进行分组,并在购物车中显示各个活动标签下的最优价格组合。以下代码将商品按活动类别进行分组计算,并输出在购物车中的显示信息。 package mainimport ("fmt""math&qu…...

vue3 + ts + element-plus 二次封装 el-table
一、实现效果: (1)数据为空时: (2)有数据时:存在数据合并;可自定义表头和列的内容 (3)新增行: (4)删除行: &a…...

python传递json参数给php
python传递json参数给php 在Python中,你可以使用requests库来发送JSON数据给一个PHP脚本。以下是一个简单的例子: 首先,安装requests库(如果你还没有安装的话): pip install requests 然后,…...

2.若依vue表格数据根据不同状态显示不同颜色style
例如国标显示蓝色,超标是红色 使用是蓝色,未使用是绿色 <el-table-column label"外卖配送是否完成评价" align"center" prop"isOverFlag"> <template slot-scope"scope"> …...

JZ2440开发板——LCD
以下内容源于韦东山嵌入式课程的学习与整理,如有侵权请告知删除。 之前在博文中学习过LCD(SoC是S5PV210),作为对比,本文学习S3C2440这款SoC的LCD方面的内容。主要涉及以下三个内容: 一、LCD的硬件原理 1.…...

YOLOv6-4.0部分代码阅读笔记-yolo_lite.py
yolo_lite.py yolov6\models\yolo_lite.py 所需的库和模块 #!/usr/bin/env python3 # -*- coding:utf-8 -*- import math import torch import torch.nn as nn import torch.nn.functional as F from yolov6.layers.common import * from yolov6.utils.torch_utils import i…...

奇瑞汽车:降阶模型在新能源汽车热管理仿真上的应用
随着新能源汽车的发展,对仿真技术的要求也越来越高。那么奇瑞汽车利用降阶模型在新能源汽车热管理仿真上做了哪些应用呢?本次内容主要从四个方面展开介绍: 1、 奇瑞汽车简介; 2、 热管理降阶模型开发的背景; 3、 高低…...

传统的自然语言处理评估指标
目录 传统的自然语言处理评估指标 EM(Exact Match) BLEU(Bilingual Evaluation Understudy) 传统的自然语言处理评估指标 传统评估指标 EM(Exact Match) 计算方式:如果生成的答案与参考答案完全相同(字符级完全匹配),则 EM 得分为 1,否则为 0。这是一种比较严格的…...

WPF+MVVM案例实战(十七)- 自定义字体图标按钮的封装与实现(ABC类)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1、案例效果1、按钮分类2、ABC类按钮实现1、文件创建2、字体图标资源3、自定义依赖属性4、按钮特效样式实现 3、按钮案例演示1、页面实现与文件创建2、依赖注入3 运…...

Redis数据结构:List类型全面解析
文章目录 一、List数据类型1.1 简介1.2 应用场景1.3 底层结构 二、数据结构2.1 压缩列表ZipList2.2 双向链表LinkedList(后续已废弃)2.3 快速链表QuickList 三、List常见命令 一、List数据类型 1.1 简介 详细介绍:Redis五种数据类型、Strin…...

人工智能证书合集
本文将对目前市面上主流官方机构颁发的人工智能证书进行整理和介绍,由于整理的证书较多,本文共一万八千多字,请根据自己的考证需求阅读对应部分的内容,希望本文对人工智能行业的从业人员和计划从事人工智能相关岗位工作的人员有所…...

php开发实战分析(8):优化MySQL分页查询与数量统计,提升数据库性能
在开发过程中,我们遇到了一段用于从数据库中查询部门信息的PHP代码。该代码负责根据不同的条件(如部门名称和来源)筛选数据,并返回分页结果及总记录数。然而,原始代码存在一些问题,包括重复的查询条件构建逻…...

shell脚本案例:RAC配置多路径时获取磁盘设备WWID和磁盘大小
使用场景 在RAC配置多路径时,需要获取到磁盘设备的wwid。因为RAC的磁盘配置是提前规划好的,只知道wwid,不知道磁盘对应大小,是不知道应该如何配置多路径的mutipath.conf文件的;而凭借肉眼手工去对应磁盘设备的wwid和大…...

Android Framework AMS(10)广播组件分析-1
该系列文章总纲链接:专题总纲目录 Android Framework 总纲 本章关键点总结 & 说明: 说明:本章节主要解读应用层广播组件的发送广播和接收处理广播 2个过程,以及从APP层到AMS调用之间的打通。关注思维导图中左上部分即可。 有…...

在 Node.js 中使用 .env 文件
什么是 .env 文件? 文件.env是包含环境变量键值对的简单文本文件。此文件的内容不会被签入源代码管理,从而确保敏感数据的安全。 示例 PORT 4000 DATABASE_URL mongodb://localhost: 27017 /mydb API_KEY abcd1234 NODE_ENV development 在 Node.…...

CesiumJS 案例 P19:添加矩形、监听鼠标左击、监听鼠标右击、监听鼠标移动
CesiumJS CesiumJS API:https://cesium.com/learn/cesiumjs/ref-doc/index.html CesiumJS 是一个开源的 JavaScript 库,它用于在网页中创建和控制 3D 地球仪(地图) 一、添加矩形 <!DOCTYPE html> <html lang"en&…...

路测毫米波雷达标定和目标跟踪
1 2 3 4 5 6 查找匹配时,先对数据排序。逐帧对数据处理,运行速度快。单帧有噪点,多帧处理,准确率更高一些。 7 8 9 10 参考 路侧毫米波雷达标定与目标跟踪哔哔哩_bilibili路侧毫米波雷达标定与目标跟踪, 视频播放量 5855、弹幕量…...

【sqlmap使用手册-持续更新中】
SQLMap 简介 SQLMap 是一个开源的渗透测试工具,用于自动化检测和利用 SQL 注入漏洞。它支持多种数据库,包括 MySQL、PostgreSQL、Oracle、SQL Server 等。 可以通过以下命令安装sqlmap git clone https://github.com/sqlmapproject/sqlmap.git最常用的…...

面向对象三大特征之一:封 装
1、特点 封装是面向对象的核心思想,两层含义:一是一个整体(把对象的属性和行为看成一个整体,即封装在一个对象种),二是信息隐藏,对外隐藏,但可以通过某种方式进行调用。 2、访问权…...

qt QMenuBar详解
1、概述 QMenuBar是Qt框架中用于创建菜单栏的类,它继承自QWidget。QMenuBar通常位于QMainWindow对象的标题栏下方,用于组织和管理多个QMenu(菜单)和QAction(动作)。菜单栏提供了一个水平排列的容器&#x…...

ESP32的下的蓝牙应用笔记(1)——Beacon蓝牙信标
Beacon蓝牙信标简介 Beacon蓝牙信标是一种基于蓝牙低功耗(BLE)技术的设备,主要用于提供位置信息和数据传输服务。它通过周期性地广播信号,能够在一定范围内与其他蓝牙设备进行通信,从而提供精准的位置信息和相关服…...

控制台安全内部:创新如何塑造未来的硬件保护
在 Help Net Security 的采访中,安全研究人员 Specter 和 ChendoChap 讨论了游戏机独特的安全模型,并强调了它与其他消费设备的不同之处。 他们还分享了对游戏机安全性的进步将如何影响未来消费者和企业硬件设计的看法。 斯佩克特 (Specter) 是本周在阿…...

如何选择适合自己的 Python IDE
集成开发环境(IDE)是指提供广泛软件开发能力的软件应用程序。IDE 通常包括源代码编辑器、构建自动化工具和调试器。大多数现代 IDE 都配备了智能代码补全功能。在本文中,你将发现目前市场上最好的 Python IDE。 什么是 IDE? IDE…...

Matlab车牌识别课程设计报告模板(附源代码)
目 录 一.课程设计目的……………………………………………3 二.设计原理…………………………………………………3 三.详细设计步骤……………………………………………3 四. 设计结果及分析…………………………………………18 五. …...

kubesphere jenkins自动重定向 http://ks-apiserver:30880/oauth/authorize
问题:登陆kubesphere的jenkins Nodeport IP :Port 46.XXX.XXX.16:30180 自动跳转失败 http://ks-apiserver:30880/oauth/authorize?client_idjenkins&redirect_urihttp://46.XXX.XXX.16:30180/securityRealm/finishLogin&response_typecode&scopeopen…...

Vue3访问页面时自动获取数据
1. 使用生命周期钩子函数 # 后端代码--使用pywebview class Api:def greet(self):greet_text pywebview and vue3response {}response[text] greet_textreturn responseif __name__ __main__:# 前后端通信测试api Api()window webview.create_window(Vue app in pywebvie…...

go语言回调函数的使用
前言 在 Go 语言中,回调函数是一种将一个函数作为参数传递给另一个函数,在特定的事件发生时被调用的编程模式。 一、回调函数的定义 type OnTaskHandler func(r []byte)type remoteTaskClient struct {sync.RWMutexonTask OnTaskHandler } 以上定义了…...

区块链学习笔记(一)
区块链技术实现了去中心化的货币系统,与中心化记账方式不同,它消除了中间第三方,允许用户进行点对点交易,并确保了货币的真正所有权。此外,区块链的代码完全公开且不可篡改,保障了系统的透明度和安全性。 …...

解决QT打包发布App Store时(90238)错误
Invalid signature. The main app bundle, xxxx at the “xxxx.app” path, has the following signing error(s): [a sealed resource is missing or invalid. In subcomponent: xxxx.app/Contents/Frameworks/QtWebEngineCore.framework]. For details about signing Mac cod…...