本文首发于电子发烧友论坛:【正点原子i.MX93开发板试用连载体验】基于深度学习的语音本地控制 - 正点原子学习小组 - 电子技术论坛 - 广受欢迎的专业电子论坛!
好久没有更新了,今天再来更新一下。
我们用前面提到的录音工具录制了自己的中文语音,包括“打开”和“关闭”各100条,同时我们从谷歌的mini_speech_commands样本集里面随机挑选了100条作为"unknown”的样本,三个类别的数据个数要尽量相同,否则训练出来的结果会有倾向性。然后,开始自己的训练过程。
我所使用的是阿里云的PAI-DSW进行在线训练,平台的使用非常方便,避免了在本机上进行繁琐的设置工作。我采用的训练笔记本是TensorFlow的Simple audio recognition: Recognizing keywordssimple_audio_pi/simple_audio_train_numpy.ipynb
将脚本上传后,直接打开,就可以看到笔记本了。
笔记本的操作和其他平台差不多,就不详细介绍了。
我把准备的语音数据上传到data/speech目录下,共有3个子目录,分别是open、close和unknown。然后修改脚本中关于data_dir的设置。
`data_dir = pathlib.Path('data/speech')`
然后修改了训练集、验证集和测试集的数量设置。
train_files = filenames[:350]
val_files = filenames[250: 250 + 100]
test_files = filenames[-100:]
然后就按照笔记本里面的步骤执行就可以了。
数据量不大,训练只用了数秒就完成了。
使用一个样本进行测试,可以正确得到打开的结果。
最后可以得到tflite格式的文件,用于在开发板上的测试。
将tflite格式的文件拷贝到开发板上,并修改前面的测试程序中的模型文件路径和commands设置就可以使用中文的“打开”、“关闭”进行控制了。视频稍后将上传到B站,欢迎大家观看。
标签:训练,开发板,正点,speech,filenames,100,MX93,data From: https://blog.csdn.net/bit_mike/article/details/140906702