语音识别中DT训练和ML的区别

X表示训练数据中的语音信号,W代表训练数据中的文本,θ\theta代表声学模型参数,LM语言模型是固定的。
ML的目标函数是:
θ^ML=argmaxθpθ(XW){{\hat \theta }_{ML}} = \arg \mathop {\max }\limits_\theta p{}_\theta (X|W)
而DT的目标函数是:
θ^DT=argmaxθpθ(WX){{\hat \theta }_{DT}} = \arg \mathop {\max }\limits_\theta p{}_\theta (W|X)
区别在于条件概率不同。ML中,只要训练文本产生训练语言的概率大就行了。而DT要求的是训练语音对于训练文本的概率大。即就是要训练文本产生训练语音的概率,与其他文本产生训练语音的概率之差大。对DT目标函数用一次贝叶斯公式就可以看出:
θ^DT=argmaxθpθ(XW)p(W)pθ(X)=argmaxθpθ(XW)p(W)wpθ(Xw)p(w){{\hat \theta }_{DT}} =\arg \mathop {\max }\limits_\theta \frac{{p{}_\theta (X|W)p(W)}}{{p{}_\theta (X)}} = \arg \mathop {\max }\limits_\theta \frac{{p{}_\theta (X|W)p(W)}}{{\sum\nolimits_w {} p{}_\theta (X|w)p(w)}}
分子上的pθ(XW)p{}_\theta (X|W),正是ML的目标函数;而分母则是所有文本(包括训练文本和它的所有竞争者)产生训练语音的概率(按语言模型加权的)和。
由于分母上要枚举所有可能的文本并不现实,所以实际中,一般使用一个已有的ML训练的语音系统对训练语音做一次解码,得到n-best或lattice,用这里面的文本来近似分母上的求和。n-best list或lattice中包含了训练文本的足够接近的竞争者。
对DT的目标函数取对数,可以得到:
θ^DT=argmaxθ(logp(W)+logPθ(XW)logwpθ(Xw)p(w)){{\hat \theta }_{DT}} =\arg \mathop {\max }\limits_\theta (logp(W)+logP_{\theta}(X|W)-log\sum\limits_wp_{\theta}(X|w)p(w))
右边第一项logp(W)是常数,可忽略,第二项是ML的目标函数的对数,第三项的形式与第二项有相似之处。
ML训练问题一般使用EM算法来解决的,DT训练多了第三项,同样有Generalized EM算法来求解。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章