作为国内智能语音与人工智能产业的领导者,科大讯飞一直引领中文语音识别技术不断进步。去年12月21日,在北京国家会议中心召开的以“AI复 始,万物更新”为主题的年度发布会上,科大讯飞提出了以前馈型序列记忆网络(FSMN, Feed-forward Sequential Memory Network)为代表的新一代语音识别系统,让大家眼前一亮[1]。
通过进一步的研究,我们在FSMN的基础之上,再次推出全新的语音识别框架,将语音识别问题创新性的重新定义为“看语谱图”的问题,并通过引入图像识别中主流的深度卷积神经网络(CNN, Convolutional Neural Network)实现了对语谱图的全新解析,同时打破了传统深度语音识别系统对DNN和RNN等网络结构的依赖,最终将识别准确度提高到了新的高度。
今天我们将揭开它的神秘面纱。
FSMN我们在上一期文章中(请点击阅读原文)做了详细的介绍,在这里我们简单的回顾一下。
在 FSMN提出之前,学术界和工业界最好的语音识别系统采用的是双向递归神经网络(BRNN, Bi-directional Recurrent Neural Network),这种网络能够对语音复杂的长时相关性进行建模,从而达到提高识别正确率的功效。但是双向递归神经网络存在训练复杂度高,训练不稳定以及解码时延很高的问题,很难使用化。
FSMN的提出很好的解决了上述缺陷。FSMN通过在传统DNN结构的隐层旁边增 加一个”记忆模块存“储当前语音帧周边的历史信息和未来信息。FSMN的模型结构如图(a)所示,图(b)给出了FSMN的记忆模块记忆当前语音帧左右 各1帧信息时的时序展开结构。由于FSMN的结构中不存在递归,可以避免RNN的不稳定性,同时由于采用了记忆模块可以很好的对语音的长时相关性进行建模。
![\](http://www.ctiforum.com/uploadfile/2016/0329/20160329094152255.jpg)
FSMN的成功给了我们一个很好的启发:对语音的长时相关性建模并不需要观察整个句子,也不一定需要使用递归结构,只要将足够长的语音上下文信息进行良好的表达就可以对当前帧的决策提供足够的帮助,而卷积神经网络CNN同样可以做到这一点。
CNN早在2012年就被用于语音识别系统,并且一直以来都有很多研究人员积极投身于基于CNN的语音识别系统的研究,但始终没有大的突破。最主要的原因是他们没有突破传统前馈神经网络采用固定长度的帧拼接作为输入的思维定式,从而无法看到足够长的语音上下文信息。另外一个缺陷是他们只是将CNN视作一种特征提 取器,因此所用的卷积层数很少,一般只有一到二层,这样的卷积网络表达能力十分有限。
针对这些问题,结合研发FSMN时的经验,我们推出了全新的深度全序 列卷积神经网络(Deep Fully Convolutional Neural Network, DFCNN)语音识别框架,使用大量的卷积层直接对整句语音信号进行建模,更好的表达了语音的长时相关性,比学术界和工业界最好的双向RNN语音识别系统 识别率提升了15%以上。下面我们具体介绍一下DFCNN语音识别框架。
DFCNN的结构如图(c)所 示,DFCNN直接将一句语音转化成一张图像作为输入,即先对每帧语音进行傅里叶变换,再将时间和频率作为图像的两个维度,然后通过非常多的卷积层和池化 (pooling)层的组合,对整句语音进行建模,输出单元直接与最终的识别结果比如音节或者汉字相对应。
DFCNN的工作机理俨然像是一位德高望重的语音学专家,通过“观看”语谱图即可知道语音中表达的内容。对于很多读者来说,乍一听可能以为是在写科幻小说,但听完我们下面的分析之后相信大家都会觉得这种架构是那么的自然。
![\](http://www.ctiforum.com/uploadfile/2016/0329/20160329094237735.jpg)
图(c):DFCNN结构图
首先,从输入端来看,传统语音特征在傅里叶变换之后使用各种人工设计的滤波器组 来提取特征,造成了频域上的信息损失,在高频区域的信息损失尤为明显,而且传统语音特征为了计算量的考虑必须采用非常大的帧移,无疑的造成了时域上的信息损失,在说话人语速较快的时候表现的更为突出。因此DFCNN直接将语谱图作为输入,相比其他以传统语音特征作为输入的语音识别框架相比具有天然的优势。
其次,从模型结构上来看,DFCNN与传统语音识别中的CNN做法不 同,它借鉴了图像识别中效果最好的网络配置,每个卷积层使用3x3的小卷积核,并在多个卷积层之后再加上池化层,这样大大增强了CNN的表达能力,与此同时,通过累积非常多的这种卷积池化层对,DFCNN可以看到非常长的历史和未来信息,有这两点就保证了DFCNN可以出色的表达语音的长时相关性,相比 RNN网络结构在鲁棒性上反而更加出色。
最后,从输出端来看,DFCNN还可以和近期很热的序列短时分类(CTC)方案完美结合以实现整个模型的端到端训 练,且其包含的池化层等特殊结构可以使得以上端到端训练变得更加稳定。
在和其他多个技术点结合后,讯飞DFCNN的语音识别框架在内部数千小时的中文语音短信听写任务上,获得了相比目前业界最好的语音识别框架——双向RNN-CTC系统15%的性能提 升,同时结合讯飞的HPC平台和多GPU并行加速技术,训练速度也优于传统的双向LSTM CTC系统。
DFCNN的提出开辟了语音识别新的一片天地,后续基于DFCNN框架,我们还将展开更多相关的研究工作,例如:双向LSTM和DFCNN都 可以提供对长时历史以及未来信息的表达,但是这两种表达之间是否存在互补性,是值得思考的问题。
相信随着研究的不断深入,科大讯飞的语音识别系统将不断攀登新的高峰!
【参考文献】
[1] S. Zhang, C. Liu, H. Jiang, S. Wei, L. Dai, and Y. Hu, “Feedforward sequential memory networks: A new structure to learn long-term dependency,” arXiv preprint arXiv:1512.08301, 2015.