ASR---自动语音识别 概述
语音识别基本原理:
观察矢量X=X1X2…Xn
词序列W=W1W2…Wm
最优词序列W^
P(X|W): 声学模型描述了词W产生的情况下信号X的概率。
P(W): 语言模型描述了词W出现的频率
概率分布P(X|W)和P(W)被假设成某种已知的概率分布函数Pa(X|W)和Pb(W):
概率分布函数中的参数集a和b通过统计学的方法从实际训练数据中估计得到
P(W)语言模型:
语音识别系统:
语料库corpus:尽可能覆盖各种发音,性别,年龄多样化,数据越多越好。
发音字典Lex/dict:是联系AM, LM, Decoder的桥梁。
保存某种特定的对应关系。exp:词----发音 汉字----声韵母
深圳
深圳 |
0.70 |
sh en zh en |
0.10 |
sh eng zh en |
|
0.10 |
s en zh en |
|
0.05 |
s eng zh en |
|
0.02 |
sh en z en |
|
|
… |
Acoustic Modeling:
• 就是将一个实际的发音数字化。
• 最常用HMM, SVM和模板匹配。
Language Modeling:
• 统计语言模型
• Context-free Grammar(CFG)
特征提取(Feature Extract):
语音信号离散化、数字化
MFCC、PLP和LPC
解码器(Decoder):
寻找与实际语音最匹配的声学模型
受到语言模型或语法、字典、声学模型限制
Viterbi-based Decoder (Spsim.exe)
隐马尔科夫HMM:
成为语音识别中一种很有效的技术,它不仅能用来作为以音素、音节或词为单位的语音产生的声学模型,而且能作为词法、语法、语义等高层次的语言模型,在很多领域都取得很大的应用。
短时平稳假设
特征序列可以分成若干段(状态),在每个状态内观察特征是服从相同的分布的
可以用两个过程去刻画:
状态之间的转移(隐藏的) 在特定状态下的特征输出(可见的)
两个基本假定:当前状态只与前一状态有关,而与更早的状态无关(无后效性或马尔可夫性)-一阶马尔可夫链
当前状态下的输出只与当前状态有关,而与其他任何状态均无关-状态间输出的独立性
Pr(xt|x1,2,…t-1, sit)=Pr(xt|sit)
三个基本参数:
• π=(π1, π2,…, πL) —初始状态概率矢量 πL — 1(初始)时刻系统处于状态L的概率
• A ={aij}L×L—状态转移矩阵 aij=P(st=j|st-1=i)
• B = {bi(k)} —状态输出概率矩阵 bi(k)=P(Xt=ok|st=i)
状态输出概率密度函数:
Gaussian Mixture Model
Cjm------权重
u----均值
∑----方差
转移状态的拓扑结构:
状态数目:
状态数超过5个对识别率没有显著改善。
5~6状态的HMM对孤立词的识别已经足够。
而对音素或声韵母,2~3个状态比较合适。
tips:
并行结构与串行结构的HMM性能没有显著的差别
对于识别,图C结构的HMM是最常用的。
同一个系统不同的基元可以有不同的拓扑结构sil noise、语气词、发音变异、……
实际采用的HMM拓扑结构:
非静音HMM拓扑结构
静音HMM拓扑结构
HMM举例:
~h "uei"
<BEGINHMM>
<NUMSTATES> 5
<STATE> 2
<MEAN> 20
3.453652e+00 3.360322e+00 5.156588e+00 -9.956509e-01 4.308074e-01 -1.543629e+01 -1.662839e+00 -5.023790e-01 3.252854e+00 -2.705109e-01 -3.946230e+00 -1.938585e+00 2.098332e+00 -3.888280e-01 4.094309e-01 2.509879e-01 -2.902386e-01 -2.183825e-01 1.308009e+00
-9.073809e-01
<VARIANCE> 20
1.441231e+02 7.640010e+01 1.879874e+02 1.197320e+02 2.368950e+02 2.440873e+02 4.916407e+00 5.381260e+00 1.192160e+01 1.284354e+01 1.253834e+01 2.183302e+01 3.658225e+00 1.202391e+00 1.085491e+00 1.940374e+00 1.937373e+00 3.724287e+00 4.104959e+00 7.290089e-01
<GCONST> 8.626842e+01
<STATE> 3
<MEAN> 20
-4.213091e+00 6.582459e+00 1.567512e+01 -6.173773e+00 -1.296236e+01 -1.072380e+01 -5.880691e-01 8.873697e-01 1.421225e+00 -4.793919e-01 6.399391e-02 1.716026e+00 -5.080013e-01 3.042485e-01 3.882493e-03 -6.034634e-01 4.494926e-01 9.416871e-01 2.136560e-01 -5.314342e-01
<VARIANCE> 20
1.278196e+02 7.607331e+01 1.465285e+02 1.176282e+02 1.666769e+02 2.004058e+02 1.407992e+00 2.986647e+00 5.146656e+00 5.279605e+00 9.254088e+00 8.775490e+00 1.313267e+00 2.834269e-01 4.318118e-01 9.487810e-01 9.255407e-01 1.492221e+00 1.650650e+00 2.525958e-01
<GCONST> 7.281402e+01
<STATE> 4
<MEAN> 20
-3.096133e+00 9.693324e+00 1.616689e+01 -1.399846e+00 -2.836054e+00 -2.010851e+00 5.401618e-01 -3.070685e-01 -2.371913e+00 2.230821e+00 1.789907e+00 1.641352e+00 -4.110667e+00 -1.489664e-01 -2.912712e-01 -7.578440e-01 1.111798e-01 -1.171930e-01 -1.431810e-01
-3.229521e-01
<VARIANCE> 20
1.334825e+02 1.502919e+02 1.936354e+02 1.428857e+02 1.715757e+02 2.022643e+02 9.090389e+00 9.166428e+00 1.328861e+01 1.042778e+01 1.486714e+01 1.451428e+01 1.315656e+01 1.408813e+00 1.368831e+00 2.016674e+00 1.954137e+00 2.364113e+00 2.442726e+00 2.399417e+00
<GCONST> 8.930891e+01
<TRANSP> 5
0.000000e+00 1.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00
0.000000e+00 6.374927e-01 3.625073e-01 0.000000e+00 0.000000e+00
0.000000e+00 0.000000e+00 8.043569e-01 1.956431e-01 0.000000e+00
0.000000e+00 0.000000e+00 0.000000e+00 7.414533e-01 2.585467e-01
0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00
<ENDHMM>