面向嵌入式微控制器的边缘人工智能是一种低功耗、小型化的机器学习技术,能够在嵌入式设备上进行推理计算,源于物联网的快速发展以及嵌入式设备计算能力的提升,进而促使智能边缘节点实现智能化。当前,由于环境中的智能化需求的提升、嵌入式设备的计算能力提升、保护数据隐私等原因,此研究和应用正处于快速发展的阶段。
通用的应用开发流程,数据采集、数据预处理、模型训练、模型优化和转换模型部署和测试几个部分组成。
SensiML平台开发流程
开发板:项目应用的开发板为Arduino Nano 33 BLE Sense,芯片为nRF52840 SoC低功耗芯片。
数据集:采集本人的中文发音“开灯”、“关灯”声音数据。
特征提取方法:MFCC
识别模型:两层卷积神经网络
模型训练结果:经过100次迭代后,训练集和测试集的损失值
最后均在0.2以下,正确率达到95.9%。
项目步骤和结果
通过Arduino Nano 33 ble Sense开发板上的录音器
采集音频,然后进行推理,判断音频为“openlight”、
“closelight”还是“unknow”,如果为“openlight”则控制
灯亮,“closelight”则控制灯灭,“unknow”则保持状态不变。
训练结果
推理结果(显示为“openlight”)
视频:https://www.bilibili.com/video/BV18p4y1E7Wr/?spm_id_from=333.999.0.0