探索用于小占用关键词检测的TinyML框架:一个简明概述
创作时间:
作者:
@小白创作中心
探索用于小占用关键词检测的TinyML框架:一个简明概述
引用
CSDN
1.
https://blog.csdn.net/bit_mike/article/details/141672602
在智能语音激活设备、智能手机和物联网(IoT)应用中,实现小占用(Small Footprint, SF)关键词检测(Keyword Spotting, KWS)的TinyML框架是当前人工智能领域的研究热点。本文综述了TinyML框架在低功耗和有限内存设备上的部署挑战,并探讨了六种不同的优化技术,包括网络架构、学习技术、模型压缩等。通过实验研究对比了不同框架的性能,并得出TensorFlow Lite框架在模型压缩和保持准确度方面的优势结论。
摘要
- 论文讨论了在低功耗和有限内存的边缘设备上实现SF-KWS模型的重要性。
- 通过深度学习的进步,可以在连续的词汇流中识别预定义的单词或关键词。
- 论文研究了六种不同的技术类别,包括网络架构、学习技术、模型压缩、注意力感知架构、特征优化和神经网络搜索,这些技术适用于开发SF-KWS系统。
- 实验表明,Tensorflow Lite框架可以压缩模型约69%,同时保持可接受的准确度。
第一部分:引言
- 论文介绍了语音助手在日常生活中的重要性,以及它们如何通过云基语音识别实现自然通信。
- 讨论了将连续的音频流发送到云端进行语音识别的能源效率和网络负载问题。
- 介绍了关键词检测(KWS)的概念,以及它在唤醒设备并触发云端语音识别中的作用。
第二部分:部署TinyML的常见挑战
- TinyML旨在在低功耗设备上实现优化和紧凑的机器学习模型。
- 论文讨论了TinyML解决方案的局限性,包括无法在设备上进行模型训练,以及模型大小和推理延迟的优化问题。
- 介绍了各种TinyML框架,包括Google的TensorFlow Lite、Microsoft的Embedded Learning Library、ARM的CMSIS-NN等。
第三部分:SF-KWS的不同方法
- 论文根据文献调查,探讨了多种方法和技术来优化KWS系统,包括网络架构、学习技术、模型压缩、注意力感知、特征优化和神经架构搜索。
- 每种方法都旨在在准确性和资源效率之间取得平衡。
A. 网络架构(Network Architecture)
- 深度神经网络(DNN):使用深度学习技术,如深度残差学习技术和扩张卷积,来提高小占用模型的性能。
- 卷积循环神经网络(CRNN):结合卷积神经网络和循环神经网络,以捕获时间序列数据的特征。
- 多分支时间卷积模块(MT-Conv):通过不同尺度的时间模式捕获,以最小的内存和计算开销提高效率。
- Matchbox架构:使用1D时间通道可分离卷积来减少与常规1D卷积相比的模型大小。
B. 学习技术(Learning Techniques)
- 残差学习:在深层网络中使用快捷连接来增强训练和模型性能。
- 知识蒸馏(Knowledge Distillation):将大型模型的知识传递给小型模型,以在减少模型大小和计算需求的同时保持性能。
- 奇异值分解(Singular Value Decomposition):压缩权重矩阵,保留关键信息,减少参数,适用于SF-KWS。
- 少样本学习(Few-shot Learning, FSL):解决关键词数据有限的挑战,采用原型网络(ProtoNet)概念,在10次样本情况下实现76%的准确度。
C. 模型压缩(Model Compression)
- 量化(Quantization):降低模型参数的精度,减少内存占用,同时尽量不牺牲性能。
- 动态量化:使用较低位宽表示神经网络权重和激活,减少内存使用并加速计算。
- 错误扩散(Error Diffusion):将量化误差分散在语音特征上,允许更高的压缩比率,同时保持关键词检测的准确性。
D. 注意力感知架构(Attention Awareness Architecture)
- 注意力机制:通过关注输入序列中的关键部分来减少计算负载,并通过自注意力模型、共享权重自注意力和端到端模型提高关键词检测的准确性和效率。
E. 特征优化(Feature Optimization)
- 特征选择:选择紧凑且相关的语音信号表示,以实现准确有效的关键词识别。
- 流特征(Streaming Features):使用时间频率表示,最小化维度,并选择能够捕获关键听觉信息的特征。
F. 神经架构搜索(Neural Architecture Search, NAS)
- NAS:通过创新算法,如NASNet、AmoebaNet、DARTS和MicroNet,自动发现有效的神经网络架构。
- NASNet:使用强化学习优化各种操作的结构。
- AmoebaNet:为具有挑战性的场景细化NAS方法。
- DARTS:使用基于梯度的方法进行架构优化。
- MicroNet:专注于小型模型的资源效率。
第四部分:实验研究
- 论文专注于网络架构组,从六个类别中选择不同的架构进行实验。
- 使用Google Speech Commands数据集对十类不同的类别进行分类。
- 对比了不同TinyML框架应用到SF-KWS架构上的性能,包括模型大小、推理时间和准确度。
第五部分:结论
- 论文总结了SF-KWS的探索,强调了Tensorflow Lite框架在减少模型大小方面的显著效果,同时保持了较高的准确度。
- 指出MicroNet-S架构在模型大小和推理时间上适合IoT设备部署。
实验方法
- 作者选择了多种网络架构,包括深度神经网络(DNN)、卷积神经网络(CNN)、Deathwish-separable Convolution Networks(DS-CNN)和MicroNet模型。
- 为了更细致地分类和区分这些架构,作者根据它们的尺寸将它们分为小型(S)和大型(L),例如DNN-S、DNN-L、CNN-S、CNN-L等。
- 实验使用了不同的TinyML框架,如TensorFlow Lite和Edge Impulse,来适配和优化这些架构,使其适合在物联网(IoT)边缘设备上部署。
实验结果
- 实验结果显示,TensorFlow Lite框架可以将模型大小压缩约69%,同时保持可接受的准确度,并且推理时间显著减少。
- 特别是TensorFlow Lite的CNN-S和DS-CNN-S模型,它们在目标边缘设备的闪存上易于部署,非常适合IoT边缘设备。
- Edge Impulse框架显著减少了模型大小,而MicroNet-S模型在低占用设备上在准确度和内存大小之间进行了权衡。
模型量化
- 作者将Keras软件模型量化为Int8格式,以适应TensorFlow Lite模型,包括MicroNet架构。
- 量化过程导致了模型大小的显著减少,同时保持了推理的准确性。
模型部署
- 作者评估了不同框架在Cortex-M板的推理时间、模型大小和最终部署能力。
- 表IV(Table IV)可视化了不同TinyML框架应用到各种SF-KWS架构的比较评估。
实验结论
- 实验结果表明,TensorFlow Lite框架在减少模型占用空间方面表现出色,同时MicroNet-S架构在保持高准确度的同时显著减少了推理时间,非常适合部署在IoT设备上。
代码和模型
- 作者使用了GitHub上的Keras软件模型,并对其进行了训练和评估。
- EdgeImpulse框架采用了基于Mel-frequency cepstral coefficients (MFCC)和1D卷积的架构,包括float32和int8压缩技术。
参考文献
- 论文列出了一系列相关的研究文献,涵盖了关键词检测、TinyML框架、模型压缩和神经网络搜索等领域。
论文通过实验和理论分析,为在资源受限的IoT设备上部署SF-KWS模型提供了有价值的见解和框架比较。
本文原文来自CSDN,作者是Soumen Garai和Suman Samui,来自印度国立技术学院杜尔加布尔分校电子与通信工程系。
热门推荐
元宵节带孩子猜灯谜,有3个讲究,玩好了分分钟爱上语文
团队成员如何技能互补
中暑急救与预防全攻略:这些关键步骤你一定要知道
冬天应该用什么水洗脸
揭秘买股票佣金5元的真正含义
广东省传统工艺类非物质文化遗产传承人培训班在广州举行
异地判决书可以到当地申请执行吗?
异地法院判决怎么申请强制执行流程
快递小哥们也能“考证”!湖北全面推进产业工人技能素质提升行动
销售利润怎么计算
男生发型名称大全图解 最全男士发型名称及脸型搭配
“没有课上但不放假”,学校要倾听学生的意见
大兴安岭开发建设60周年老照片展:加格达奇的历史记忆
小小吐蕃,两陷长安三败阿拉伯,凭什么力敌东西方两大强国不败?
上海绿牌车申请流程及政策变化详解
深圳小汽车绿牌申请指南(车型+申请条件+流程)
左氧氟沙星和克林霉素的功效区别是什么
《实战伤寒论》:中医经典的传承与创新
自动挡的车,“+”“-”挡到底怎么用?别再只用D档开车了
一文了解拔牙后多久能正常吃饭/喝水/刷牙/抽烟/喝酒/怀孕?
一种高耐磨类纸膜及其制备方法和应用与流程
酵母的舞曲,如何选择面粉,打造松软馒头的秘诀
TTL电平的输出标准是什么?
持续升值,离岸人民币对美元汇率抹平今年以来跌幅 业内提示汇率波动风险
勐腊:“全民大赶摆”激发消费新活力
现在的台球厅不怕跑单的主要原因有几点
如何正确使用滚筒洗衣机,让衣服洗得更干净
揭秘岳飞之死:忠臣遇害的真相
一人犯罪影响三代?这些考公政审的谣言,是时候该被戳破了
资产生命周期成本(LCC)与总拥有成本(TOC)