这里对比了GMM-HMM的语音识别系统与加入神经网络的DNN-HMM语音识别系统,并针对四种不同模式的神经网络进行了对比。

主要流程

1.数据准备(音素,词典,训练音频/文本)
2.特征提取(MFCC)
3.HMM状态(序列建模)
4.DNN网络
5.Viterbi算法
6.解码


与GMM的对比

对比GMM,使用DNN的话需要考虑状态对齐,这时候直接使用GMM的结果即可。
下图为DNN-HMM语音识别系统的流程图

DNN-HMM流程图
再次对比GMM-HMM的流程,会发现DNN-HMM多处了对齐和DNN训练的步骤:
DNN多出的步骤


FNN(Feedforward Neural Network)

公式FNN图解

激活函数:

激活函数

NN分类问题损失函数

NN分类问题

梯度下降(Gradient Descent)

梯度下降

反向传播(Back Propagation)

反向传播

训练流程

训练流程

其他NN必备知识

• Optimizer(SGD/Momentum/Adam …)
• Dropout
• Regularization
• Residual Connection
• Batch Normalization
• 详请参考李宏毅老师的深度学习课程:
https://www.bilibili.com/video/BV1JE411g7XF?p=1

FNN在语音识别中应用之后能大幅降低错误率(可达到20%)
FNN实际运用


CNN(Convolution Neural Network)

扩张卷积

扩张卷积

能获取到更多细节,适应更大的范围

与DNN的区别

与DNN区别

相对于DNN的全对齐,CNN能扩展至更多的输入,体现了“共享”的特性

Pooling

降维,具有局部不变性。
p.s.局部不变性是指下列紫色方框中的打乱重排列,依旧不影响输出
类型
• Max Pooling
• Average Pooling
• 作用
• Dimension Reduction
• Invariance/Robust
pooling

CNN在语音识别中的应用:

2013 - Abdel-Hamid, Deng, Yu - Exploring Convolutional Neural Network Structures and Optimization Techniques for Speech Recognition
• 5~10%错误率下降
• 2D CNN在当时没有取得比较好的效果

2015 - Peddinti, Povey, Khudanpur - A time delay neural network architecture for efficient modeling of long temporal contexts
• TDNN(Time Delay Neural Network)和扩张卷积的想法是一致的
• 仅时域卷积,没有pooling
• 5~10%错误率下降


RNN(Recurrent Neural Network)

特点:有记忆功能,从而代表可以对时序建模
RNN


LSTM (Long Short Term Memory)

长短时记忆单元
LSTM

LSTM在语音识别中的应用:

2014 - Sak, Senior, Beaufays - Long Short-Term Memory Based Recurrent Neural Network Architectures for Large Vocabulary Speech Recognition
• 训练帧正确率高很多
• 5~10%错误率下降


混合神经网络

• FNN

  • 全局特征抽取

• CNN

  • 局部特征抽取
  • Invariance
  • 有限时序建模能力

• RNN

  • 记忆
  • 时序建模能力
  • 复杂网络基本是以上三种网络的组合
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐