古 典,李 輝
(中國科學技術大學 電子科學與技術系,安徽 合肥 230027)
近年來,深度神經網絡在語音識別領域的應用使得語音識別技術取得突飛猛進的發展,深度神經網絡技術已經成為構建語音識別聲學模型的主流技術,相對于傳統的GMM-HMM語音識別框架,單詞錯誤率下降超過30%。在實際應用中,由于訓練集和測試集的說話人不匹配,導致語音識別系統的性能受到影響。語音識別中的說話人自適應技術可以解決不匹配問題,從而能夠進一步提高語音識別的性能。
在傳統的GMM-HMM框架下,比較著名的自適應技術有最大似然線性回歸(MLLR)[1]、最大后驗線性回歸(MAP-LR)[2]和向量泰勒級數(VTS)[3]等。然而,這些自適應技術不能直接應用到DNN-HMM的框架中,因為GMM是一個生成性模型,DNN屬于判別性模型。隨著DNN技術的成熟,大量研究者投入到DNN自適應領域,并提出了很多優秀的自適應方法。這些方法可以被分為兩大類:模型域自適應以及特征域自適應。線性輸入網絡(LIN)[4]是將一個線性層添加到輸入層和第一個隱層之間。這種方法的思想是通過線性變化,將說話人相關的特征與說話人無關的DNN模型相匹配。與此類似的方法還有線性隱層網絡(LHN)[5]和線性輸出網絡(LON)[6]。擴充特征的方法是將聲學特征和代表說話人信息的特征進行拼接,作為深度神經網絡的輸入。一個比較好的方法是利用i-vector[7]作為說話人信息。文獻[8]提出,在自適應任務中引入多任務學習方法可以進一步提升系統性能。采用學習性隱層單元貢獻(LHUC)[9]的方法,在保留原有基線網絡參數的基礎上,在隱層的每個神經元上引入一個參數對相應神經元的輸出進行矯正,使得網絡能夠匹配特定的說話人,并且僅增加少量的自適應參數。
然而少量的自適應數據限制了LHUC自適應參數的調整,基于對上述缺陷的分析,本文從以下兩個方面對原方法進行改進:(1)由于自適應網絡性能的提升來源于獲取的自適應數據所包含的信息量,而i-vector作為一種表示說話人信息的向量可以為自適應網絡提供額外的信息,可以以此來彌補自適應數據信息量的不足;(2)受文獻[8]的啟發,將多任務學習引入LHUC自適應訓練中,通過增加輔助任務,有助于自適應參數的更新,使自適應網絡提升獲取自適應數據信息的能力,以達到進一步提升系統性能的效果。
本文的主要工作包括:搭建DNN-HMM框架的連續語音識別系統作為基線系統,采用LHUC方法對DNN進行自適應訓練;在現有模型的基礎上,分別融合i-vector和多任務學習方法,并分別對實驗結果進行分析。
在DNN-HMM的框架中,HMM用來描述語音信號的動態變化,DNN利用其強大的分類能力估計觀察特征的概率。DNN的輸出層節點數對應于HMM的狀態數。
DNN實際上是具有多個隱層的多層感知器(MLP),分為輸入層、隱層和輸出層。網絡的計算公式為:
(1)
(2)
式中,l代表層數,wl表示l-1層到l層的權重,bl表示l層的偏置,x為輸入向量,Zl表示激勵向量,al表示l層的輸出。對于每個隱層,激勵向量通過激活函數獲得激活向量作為輸入送往下一個隱層,對于輸出層,第j個神經元的值表示sj的后驗概率,所以需要用softmax函數進行歸一化,公式如下:
(3)
DNN的訓練準則一般采用交叉熵準則,它用來衡量目標后驗概率與實際后驗概率的差異度,交叉熵函數的公式如下:
(4)

DNN采用反向傳播算法進行訓練。對于輸出層,損失函數對最后一個隱層輸出的誤差為:
(5)
誤差由輸出層從后向前傳遞,通過式(5)中誤差的回傳,逐一求出前幾個隱層的誤差:
(6)
利用式(5)、(6)可求出損失函數對更新參數w和b的偏導數,公式如下:
(7)
(8)
參數的更新公式為:
(9)
(10)
式中,α為學習率,根據式(9)、(10)進行參數更新,尋找使得損失函數取得最小值時的權重。
LHUC模型采用說話人獨立的神經網絡模型,針對每一個特定人,用特定人的自適應數據進行自適應訓練,固定原網絡參數不變,只更新自適應參數,保留與特定說話人有關的參數。定義一組說話人有關的參數r,作用于網絡中每個神經元的輸出,如下式:
(11)

LHUC關于r參數的更新采用類似于訓練說話人獨立網絡的反向傳播算法,對于最后一個隱層r的梯度表示為:
(12)
由于剩下的隱層參數的梯度必須經a傳導,故優先求出對于a的梯度:
(13)
前面各個隱層有關a的梯度可以由下式推導獲得:
(14)
最終,前幾個隱層對于r的梯度由前一層a的梯度獲得:
(15)
以上獲取了所有r參數的梯度。然而r參數不是共享的,它只對特定說話人有意義,如果測試集含有多個說話人,則需分別進行自適應訓練獲取特定人參數。
i-vector在說話人確認和識別領域取得了廣泛的應用,它能夠很好地表征說話人信息并且具有固定的維度,這種優良的特性成為說話人自適應的一個理想工具。i-vector方法基于高斯混合模型-通用背景模型(GMM-UBM)。它將說話人信息和信道信息作為一個整體進行建模,特定說話人的GMM均值超矢量由以下公式表示:
VS=m+TwS
(16)
其中,VS表示說話人s的GMM均值超矢量,m表示與說話人無關的UBM均值超矢量,T為全局差異矩陣,wS為服從正態分布的總差異因子。i-vector的提取過程即為對總差異因子進行極大后驗點估計。
語音特征主要包含語義信息,i-vector代表特定說話人信息,將語音特征和i-vector進行拼接,形成了說話人歸一化的特征空間,新的特征輸入到DNN中,DNN利用i-vector信息能夠降低說話人差異帶來的影響,提高系統的識別能力。
多任務學習[10]是一種通過同時學習多個相關任務來提高模型泛化能力的機器學習技術。深度神經網絡這種對輸入特征層層抽象的性質很適合采用多任務學習方法。如圖1所示,DNN網絡含有不止一個輸出層,這些輸出層共享網絡的隱藏層,不同的輸出層同時進行誤差回傳,它們的誤差按照如下公式進行計算:

(17)

圖1 多任務學習框架
本文首先構建基線系統及LHUC自適應網絡,然后分別進行兩種方法的LHUC改進實驗。
實驗采用TED-LIUM版本1英語語料庫,內容為英語演講音頻,采樣率為16 kHz。語料庫包括發音詞典、訓練集、開發集、測試集及對應的文本標注。訓練集時長118 h,開發集時長10 h,測試集時長15 h。本實驗將開發集也作為一個測試集使用,兩個測試集分別記為Dev和Test。測試使用的3gram語言模型來自Cantab提供的TEDLIUM release1.1。系統評價指標采用單詞錯誤率WER。
實驗工具采用kaldi[11]語音識別工具包和PDNN[12]深度學習工具。首先建立HMM-GMM系統,在此基礎上構建HMM-DNN基線系統。DNN網絡采用6隱層結構,每個隱層含有1 024個神經元,實驗采用sigmoid激活函數。輸出層采用softmax函數,節點數為4 082,對應于HMM狀態數。特征采用40維的Fbank,通過CMVN歸一化處理,取前后各5幀進行拼接,共440維作為輸入特征。訓練集取總數據的5%作為交叉驗證集。訓練算法采用隨機梯度下降算法,超參數batch-size設為256,訓練之前進行SDA預訓練。
在基線系統的基礎上做LHUC自適應訓練,Dev和Test兩個測試集分別含有8和11個說話人,抽取每人的 15個句子作為自適應數據。
表1給出了基線系統及LHUC自適應系統的WER,實驗驗證了LHUC自適應方法可以有效地提升系統的性能,WER相比于基線系統下降了8%。

表1 基線系統和LHUC自適應系統的性能 (%)
首先構建與i-vector相關的DNN基線系統。分別提取訓練集和測試集中每個說話人的i-vector,向量維度設為100。將訓練集語音特征與對應說話人的i-vector進行拼接,作為新的特征進行訓練,獲得說話人歸一化網絡,網絡結構和訓練方法與基線系統保持一致。LHUC自適應階段,同樣將自適應數據與i-vector拼接。
表2給出了基于i-vector方法的基線網絡和LHUC自適應系統的性能。結果表明,在引入i-vector作為額外信息后,自適應系統的性能進一步得到提高,WER比原LHUC系統降低了2.5%。由此可以得出結論:i-vector信息的引入,提高了自適應網絡對說話人的區分能力,緩解了自適應數據稀疏造成的影響。

表2 i-vector網絡和LHUC自適應系統的性能 (%)
實驗的輔助任務選取單音素識別,單音素個數為46,對應輔助任務輸出層的節點。首先訓練輔助任務輸出層的參數,利用訓練集在基線網絡上做單音素訓練,保持隱層參數不變,只更新輸出層參數。
將訓練得到的輔助任務輸出層應用到LHUC自適應訓練中,進行多任務訓練,主任務的誤差權重設為1,不斷改變輔助任務的誤差權重做對比實驗。
表3給出了輔助任務在不同權重下,自適應系統性能的變化。實驗結果表明增加輔助任務可以有效提升系統的性能,性能隨著輔助任務的權值變化而變化。當權值為0時,相當于不使用多任務方法,隨著權值的增加,系統性能逐漸提升。當權重為3時,性能達到最優,WER相比LHUC基線降低了1.9%。隨著權重的繼續增加,性能出現下降,這是由于主任務的比重相對下降造成的。單音素識別與主任務具有一定的相關性,在自適應過程中,輔助任務的信息對有限的自適應數據進行了補償,提升了自適應網絡的泛化能力。

表3 輔助任務不同權重下LHUC系統性能 (%)
本文將i-vector和多任務學習這兩種方法分別與LHUC自適應方法相結合,兩種方法從不用的角度均緩解了原系統中自適應數據的稀缺問題。其中,i-vector包含的說話人信息向自適應網絡提供了額外的信息;多任務學習方法中,輔助任務的信息對自適應數據進行了補償。實驗結果表明,兩種方法都提升了自適應網絡的泛化能力,WER相對下降了2.5%和1.9%。
參考文獻
[1] GALES M J F, WOODLAND P C. Mean and variance adaptation within the MLLR framework[J]. Computer Speech & Language, 1996, 10(4): 249-264.
[2] CHESTA C, SIOHAN O, LEE C H. Maximum a posteriori linear regression for hidden Markov model adaptation[C]//Sixth European Conference on Speech Communication and Technology, 1999: 211-214.
[3] UN C K, KIM N S. Speech recognition in noisy environments using first-order vector Taylor series[J]. Speech Communication, 1998, 24(1): 39-49.
[4] TRMAL J, ZELINKA J, MüLLER L. Adaptation of a feedforward artificial neural network using a linear transform[C]//International Conference on Text, Speech and Dialogue. Springer, Berlin, Heidelberg, 2010: 423-430.
[5] GEMELLO R, MANA F, SCANZIO S, et al. Linear hidden transformations for adaptation of hybrid ANN/HMM models[J]. Speech Communication, 2007, 49(10): 827-835.
[6] LI B, SIM K C. Comparison of discriminative input and output transformations for speaker adaptation in the hybrid NN/HMM systems[C]//Eleventh Annual Conference of the International Speech Communication Association, 2010: 526-529.
[7] DEHAK N, KENNY P J, DEHAK R, et al. Front-end factor analysis for speaker verification[J]. IEEE Transactions on Audio, Speech, and Language Processing, 2011, 19(4): 788-798.
[8] HUANG Z, LI J, SINISCALCHI S M, et al. Rapid adaptation for deep neural networks through multi-task learning[C]//Sixteenth Annual Conference of the International Speech Communication Association, 2015: 3625-3629.
[9] SWIETOJANSKI P, RENALS S. Learning hidden unit contributions for unsupervised speaker adaptation of neural network acoustic models[C]//Spoken Language Technology Workshop (SLT), 2014 IEEE. 2014: 171-176.
[10] CARUNA R. Multitask learning: a knowledge-based source of inductive bias[C]//Machine Learning: Proceedings of the Tenth International Conference, 1993: 41-48.
[11] POVEY D, GHOSHAL A, BOULIANNE G, et al. The Kaldi speech recognition toolkit[C]//IEEE 2011 Workshop on Automatic Speech Recognition and Understanding. IEEE Signal Processing Society, 2011.
[12] Miao Yajie. Kaldi+ PDNN: building DNN-based ASR systems with Kaldi and PDNN[Z]. arXiv preprint arXiv:1401.6984, 2014.