语音识别如何建模为HMM

语音识别系统的模型通常由声学模型和语言模型两部分组成,分别对应于语音到音节概率的计算和音节到字概率的计算。其中声学模型通常被建模为HMM
输入的一段语音信号,通过特征提取之后,变成了特征向量的序列,也就是被转化为一个12行(假设声学特征是12维)、N列的一个矩阵,称之为观察序列。这里N为总帧数,每帧是12维向量。这也就是HMM中我们能得到的观测序列O.
一个单词的发音可以被分解为几个音素的序列,一个音素通常由3帧组成,其中一帧(一个12维向量)就对应一个HMM中的状态。所有帧就构成HMM中的状态序列I
语音识别系统的任务就是:根据观察序列O,估计对应的状态序列I,再把状态组合成音素,再把音素组合成单词,最后得到单词序列。
学习问题:要训练模型,需要大量的(单词,发音)的训练样本,也就是完整语料,然后采用监督学习方法,使用最大似然估计,可以训练得到A、B、π参数。
解码问题:在语音识别系统的实际应用中,需要进行解码问题。(A,B,π)都是经过训练得到的。程序获取一段语音,作为观测序列O,然后计算最大概率的状态序列I,也就得到了识别结果。这一步通常使用维特比算法。
语音信号本身就是一个时间序列,并且前后状态具有明显的概率关系,所以很容易被建模为马尔科夫模型。

参考文献
[1]《基于HMM的语音识别技术原理》https://blog.csdn.net/weixin_42788078/article/details/107768893
[2]《语音识别系统的声学建模:隐马尔可夫模型》https://blog.csdn.net/liurong_cn/article/details/9812587
[3] 《统计学习方法》李航

你可能感兴趣的:(人工智能,语音识别)