论文部分内容阅读
随着深度学习技术的研究进展,语音识别同样已经完成了从传统模型到深度学习的过渡,本文主要目的是解决移动端离线状态下的语音识别并提高语音识别的精度。本文采用深度学习的方式,利用首先在电脑上训练好的模型移植到树莓派3b+上进行语音识别操作。项目整体结构可以分为声学模型及语言模型两个部分,声学模型由优化后的DFCNN(Deep Fully Convolutional Neural Network)构建训练而成,将声音信号转换成语谱图后通过优化后的DFCNN模型进行训练,训练完成后可以将输入的语音信号转换成拼音。语言模型采用谷歌针对英德互译所构造的模型框架Transformer编码器部分进行模型搭建及训练,将拼音转为汉字。针对上述模型本文还做了相关工作:1、利用深度学习框架Tensorflow构建DFCNN模型和Transformer编码器部分两个模型后完成训练,其中针对DFCNN模型进行优化。同时利用Tensorflow的量化系统将模型量化后,移植于嵌入式平台即搭载linux系统的树莓派3b+上,实现嵌入式端的语音识别。2、为了使样本足够丰富,选择清华大学开源的THCHS30的音频库进行训练。对于声学模型,摒弃了传统的MFCC和LPCC等特征值提取方式,采用类似图像识别的方式通过卷积神经网络提取特征值。利用python将语音信号预处理后转为语谱图作为DFCNN模型的输入数据。同时对比训练好的Bi-LSTM模型,在电脑和树莓派3b+上的识别速度和性能进行了测试及分析。3、语言模型部分利用Transformer编码器部分进行建模后,将处理后的拼音文件和汉字文件输入模型并训练。拼音文件和汉字文件皆通过生成的词典提取相应的ID列表并填充后输入模型。在测试阶段对比了传统的n-gram模型的性能和速度,分析了Transformer编码器模型的优劣。4、树莓派3b+通过安装ReSpeaker 2-Mics Pi Hat相关软硬件,可以针对说话人进行语音信号的采集,此硬件可以滤去一定的噪音,并通过预处理进一步提高音频信号的信噪比,提高识别率。利用训练集和收集到的实验室同学的音频信号,同语音识别中其他主流模型进行对比测试后,得到的结论是声学模型DFCNN和语言模型Transformer的编码器部分都适合移植于嵌入式端,且识别效果和速度都达到了期待的程度,实际运用中的识别率和识别速度也令人满意。