当前位置: 首页 > news >正文

针对物联网边缘设备基于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
    1. National School of Electronics and Telecommunications of Sfax, University of Sfax, Tunisia
    2. Laboratory of Signals, Systems, Artificial Intelligence and Networks (SM@RTS), Digital Research Center of Sfax (CRNS), Tunisia
    3. 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部署: 模型压缩技术已成功应用于优化大型语言模型,通过降低计算成本、提高推理效率和增强可扩展性,这些技术已成为云部署的基本要素。此外,它们在边缘计算场景中的潜力也不容忽视。然而,在物联网边缘设备上实施这些技术面临独特的挑战,如管理有限的内存、处理能力和能耗。

93ba25cccb6a4fa4ab34bd4314c0ca86.png

4. 基于电气阻抗断层扫描的手势识别: 设计了一个用于识别美国手语(ASL)手势的系统。使用单独的传感器系统进行EIT数据采集,然后将数据发送到个人电脑(PC)进行处理和特征提取以执行手势分类。当前解决方案有几个局限性,使其不适合作为可穿戴设备使用。首先,分类过程依赖于笔记本电脑或基于云的计算来运行深度学习模型推理,这意味着它不独立,不能完全作为可穿戴设备使用。此外,这种对外部计算的依赖也使解决方案效率低下且能耗不高效,因为它需要能量将数据传输到计算机上运行推理。为了克服这些局限性,应该开发一种新解决方案,可以在可穿戴设备本身上使用边缘设备执行分类和推理任务,这种方法将提供更大的独立性、能效和实时决策能力。

9092a3223ce64cd0a1ccd26578d8c98a.png

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

例如国标显示蓝色&#xff0c;超标是红色 使用是蓝色&#xff0c;未使用是绿色 <el-table-column label"外卖配送是否完成评价" align"center" prop"isOverFlag"> <template slot-scope"scope"> …...

JZ2440开发板——LCD

以下内容源于韦东山嵌入式课程的学习与整理&#xff0c;如有侵权请告知删除。 之前在博文中学习过LCD&#xff08;SoC是S5PV210&#xff09;&#xff0c;作为对比&#xff0c;本文学习S3C2440这款SoC的LCD方面的内容。主要涉及以下三个内容&#xff1a; 一、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…...

奇瑞汽车:降阶模型在新能源汽车热管理仿真上的应用

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

传统的自然语言处理评估指标

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

WPF+MVVM案例实战(十七)- 自定义字体图标按钮的封装与实现(ABC类)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 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&#xff08;后续已废弃&#xff09;2.3 快速链表QuickList 三、List常见命令 一、List数据类型 1.1 简介 详细介绍&#xff1a;Redis五种数据类型、Strin…...

人工智能证书合集

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

php开发实战分析(8):优化MySQL分页查询与数量统计,提升数据库性能

在开发过程中&#xff0c;我们遇到了一段用于从数据库中查询部门信息的PHP代码。该代码负责根据不同的条件&#xff08;如部门名称和来源&#xff09;筛选数据&#xff0c;并返回分页结果及总记录数。然而&#xff0c;原始代码存在一些问题&#xff0c;包括重复的查询条件构建逻…...

shell脚本案例:RAC配置多路径时获取磁盘设备WWID和磁盘大小

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

Android Framework AMS(10)广播组件分析-1

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

在 Node.js 中使用 .env 文件

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

CesiumJS 案例 P19:添加矩形、监听鼠标左击、监听鼠标右击、监听鼠标移动

CesiumJS CesiumJS API&#xff1a;https://cesium.com/learn/cesiumjs/ref-doc/index.html CesiumJS 是一个开源的 JavaScript 库&#xff0c;它用于在网页中创建和控制 3D 地球仪&#xff08;地图&#xff09; 一、添加矩形 <!DOCTYPE html> <html lang"en&…...

路测毫米波雷达标定和目标跟踪

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

【sqlmap使用手册-持续更新中】

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

面向对象三大特征之一:封 装

1、特点 封装是面向对象的核心思想&#xff0c;两层含义&#xff1a;一是一个整体&#xff08;把对象的属性和行为看成一个整体&#xff0c;即封装在一个对象种&#xff09;&#xff0c;二是信息隐藏&#xff0c;对外隐藏&#xff0c;但可以通过某种方式进行调用。 2、访问权…...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

云原生玩法三问:构建自定义开发环境

云原生玩法三问&#xff1a;构建自定义开发环境 引言 临时运维一个古董项目&#xff0c;无文档&#xff0c;无环境&#xff0c;无交接人&#xff0c;俗称三无。 运行设备的环境老&#xff0c;本地环境版本高&#xff0c;ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...

关于easyexcel动态下拉选问题处理

前些日子突然碰到一个问题&#xff0c;说是客户的导入文件模版想支持部分导入内容的下拉选&#xff0c;于是我就找了easyexcel官网寻找解决方案&#xff0c;并没有找到合适的方案&#xff0c;没办法只能自己动手并分享出来&#xff0c;针对Java生成Excel下拉菜单时因选项过多导…...

DAY 26 函数专题1

函数定义与参数知识点回顾&#xff1a;1. 函数的定义2. 变量作用域&#xff1a;局部变量和全局变量3. 函数的参数类型&#xff1a;位置参数、默认参数、不定参数4. 传递参数的手段&#xff1a;关键词参数5 题目1&#xff1a;计算圆的面积 任务&#xff1a; 编写一…...

如何在Windows本机安装Python并确保与Python.NET兼容

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…...

怎么开发一个网络协议模块(C语言框架)之(六) ——通用对象池总结(核心)

+---------------------------+ | operEntryTbl[] | ← 操作对象池 (对象数组) +---------------------------+ | 0 | 1 | 2 | ... | N-1 | +---------------------------+↓ 初始化时全部加入 +------------------------+ +-------------------------+ | …...

41道Django高频题整理(附答案背诵版)

解释一下 Django 和 Tornado 的关系&#xff1f; Django和Tornado都是Python的web框架&#xff0c;但它们的设计哲学和应用场景有所不同。 Django是一个高级的Python Web框架&#xff0c;鼓励快速开发和干净、实用的设计。它遵循MVC设计&#xff0c;并强调代码复用。Django有…...

简单介绍C++中 string与wstring

在C中&#xff0c;string和wstring是两种用于处理不同字符编码的字符串类型&#xff0c;分别基于char和wchar_t字符类型。以下是它们的详细说明和对比&#xff1a; 1. 基础定义 string 类型&#xff1a;std::string 字符类型&#xff1a;char&#xff08;通常为8位&#xff09…...

EEG-fNIRS联合成像在跨频率耦合研究中的创新应用

摘要 神经影像技术对医学科学产生了深远的影响&#xff0c;推动了许多神经系统疾病研究的进展并改善了其诊断方法。在此背景下&#xff0c;基于神经血管耦合现象的多模态神经影像方法&#xff0c;通过融合各自优势来提供有关大脑皮层神经活动的互补信息。在这里&#xff0c;本研…...