在STM32上运行keyword spotting(四)边缘设备运行以及测试
如果不将模型部署在边缘设备上加以使用,那我们的模型将毫无意义怎样在STM32上运行神经网络以及进行推理STM32最常用使用C语言开发,也有少许用micropython或者是lua开发,但是这些都不在主流范围内,再者说在STM32上使用torch等网络推理框架也是相当不现实。因此我们需要在C环境下使用神经网络推理框架,经过我的寻找,在github上找到了这几种使用C语言实现的推理架构:sipeed/
如果不将模型部署在边缘设备上加以使用,那我们的模型将毫无意义怎样在STM32上运行神经网络以及进行推理STM32最常用使用C语言开发,也有少许用micropython或者是lua开发,但是这些都不在主流范围内,再者说在STM32上使用torch等网络推理框架也是相当不现实。因此我们需要在C环境下使用神经网络推理框架,经过我的寻找,在github上找到了这几种使用C语言实现的推理架构:sipeed/
搭建一个怎样的模型KWS模型结构属于比较简单的模型结构,但是为了少走弯路,我计划使用现成的结构,我从这个演示视频参考而来:点击我跳转,这个KWS项目运行在AT32F403上,其网络模型结构为一个64个特征的普通卷积层,然后重复四次的DS-CNN卷积,在每次卷积后都进行一次relu,最后进行一次池化,用来减少全连接层的参数。模型部分代码如下:class Net(torch.nn.Module):
为什么需要样本神经网络模型的训练本质上是根据结果寻找最优解的过程,在这个过程中我们需要输入大量的样本以及正确的答案,帮助网络结构内部矫正自己的参数。样本如何获取speech_commands_v0.01下载地址,这里整理了数种常用的语音指令供我们使用,每种语音指令下大约有2300条语音数据,包括多种音色,不同背景噪声,具有普遍性。为什么要筛选数据后面我用来训练的数据是16KHZ采样率,时间长度为1
前景提要公司有一个新产品,产品定义上有一个很愚蠢的交互设计,耳机中有人打电话过来后,会有提示音播放是否接听,此时用户想要接听,随便说什么话都可以接通(甚至噪音都可以),如果不想接通就闭嘴,因此我来了兴趣,能否在单片机上运行简单的语音关键词识别简述keyword spotting什么是kws(keyword spotting),翻译过来就是关键词检测,例如小米音响、天猫精灵音响上都有小爱同学、天猫精