張力文,努爾麥麥提·尤魯瓦斯,吾守爾·斯拉木
(新疆大學 信息科學與工程學院,新疆 烏魯木齊 830046)
語音檢索[1]運用大詞匯量連續語音識別(Large Vocabulary Continuous Speech Recognition)的技術將語音數據轉換為文本[2],并根據識別結果建立索引,檢索系統根據用戶輸入的包含關鍵詞的查詢請求(Query),在文本中搜索與之對應的文件,最后返回相關的語音段。
目前大多數語音檢索系統都是基于語音識別技術,其中有劍橋大學的Video Mail Retrieval Using Voice[3],隨著語音識別解碼技術的不斷發展,基于音素或音節網格的語音檢索技術也成為語音研究領域中的熱點之一,具有代表性的系統有Google推出的Google Voice Local Search[4]。90年代初我國也開始對語音檢索領域進行深入研究,其中中科院完成了查詢詞為語音的漢語語音文件檢索任務[5],哈爾濱工業大學基于關鍵詞檢出技術提出了一種基于音節網格的語音檢索技術[6]。
維吾爾語語音識別研究工作開始于20 世紀90 年代初。1994 年,吾守爾·斯拉木采用獨特的音節訓練詞識別方法和詞匯擴充方法等技術,研制出聯想式特定人維吾爾語音識別系統,其識別率達到95%[7]。2012年中國科學院新疆理化所對維吾爾語廣播新聞連續語音信號進行敏感詞檢索[8],該文獻的工作是對語音文件中的敏感詞匯進行檢索。與該文獻有所不同的是,本文所研究的維吾爾語語音檢索系統目標是針對用戶的輸入信息快速對語音文件進行檢索與定位。
本文所做的工作主要包括: (1)采用大詞匯量連續語音識別技術將維吾爾語語音數據轉換為文本數據;(2)將多候選的識別結果詞圖(lattice)轉換為對應的混淆網絡(CN);(3)根據混淆網絡建立索引,完成對維吾爾語語音檢索系統的搭建;最后在實驗部分對該系統進行評測并對評測結果進行分析。
本文所介紹的維吾爾語語音檢索系統以大詞匯量維吾爾語語音識別作為前端處理,以詞作為識別單元,其識別結果是詞或音節的詞圖(Lattice)多候選結構,識別結果詞圖再通過聚類算法轉換為混淆網絡(CN)[9-10]。為了提高檢索的速率,根據混淆網絡建立倒排索引并將索引存儲在文本文件中。檢索時系統對用戶輸入的維吾爾語查詢短語用空格進行分詞和預處理,將其轉換成可以被檢索系統接受的形式,之后利用索引實現檢索。最后采用置信度[11-12]評測的方法對結果進行確認和驗證,輸出包含所要查詢的詞語的語音文件,整個語音檢索的設計框架如圖1所示:

圖1 維吾爾語語音檢索系統設計框架
維吾爾語LVCSR系統[13]與其他語言LVCSR系統一樣,實質上都屬于同一種模式識別,一般情況下系統的主要任務是根據給定的一段語音序列在HMM狀態空間中找到最優的狀態序列,從而找出使這段語音所代表的最有可能的詞序列即首選(1-Best)識別結果。而在語音檢索任務中,檢索系統一般需要識別結果對正確文本有較高的覆蓋率以減小檢索結果的漏報率,因此在解碼過程中,本文利用HTK[14]工具集中的HDecode模塊生成多候選(N-Best)的詞圖(Lattice)識別結果。
3.1.1 聲學模型
維語與漢語相似,發音都是以音節為單位,但是維語的音節數量非常大,其中常用的就有3 000多個,同時每個音節之間相互獨立沒有共享的內容,因此使用音節作為聲學建模單元是不理想的。而維吾爾語中音素僅有34個(包括sil和sp),非常適合作為聲學模型的建模單元,同時考慮到上下文的因素,因此采用上下文相關的三音素作為建模單元。這樣在理論上就會有38 355個三音素模型,然而實際在訓練集中只出現了12 395個模型,而且不同的三音素模型平均有391個訓練樣本,因而會導致有些模型不能得到充分訓練或某些模型根本沒有被訓練。為了解決這個問題,本文采用基于最大似然決策樹的狀態共享策略,并且根據維吾爾語語音特征(如元音、輔音、塞音、擦音、塞擦音等)設計了156個問題集給決策樹在決策分類過程中提供依據[13,15]。
在建立聲學模型之前,本文對訓練語音數據提取39維MFCC特征(幀長25ms,幀移10ms),其中包括每一幀數據的12維倒譜系數和能量及其一階和二階差分倒譜,并使用倒譜均值方差歸一化方法進行降噪處理。得到MFCC特征之后便可采用上面所描述的基于上下文的三音素HMM模型進行聲學建模,模型訓練過程中先利用HTK[14]工具對其進行MLE訓練,最后再利用MLLR和MAP自適應方法對模型進行自適應優化。
3.1.2 語言模型
本文采用基于統計方法的語言模型,在語言模型生成之前先做訓練數據的準備,每個文本文件中的每一句是以結尾,每個詞用空格分開。由于一般訓練語料中很難包含所有可能的詞序列組合,因此本文采用正向生成的二元模型和逆向生成的三元模型來解決模型的稀疏問題,其中正向模型依賴于它左側的上下文,而逆向模型依賴于它右側的上下文。語言模型利用SRILM[16]工具訓練。
由于在面向大型的語音音頻文件時,詞圖是一種非線性的圖形結構,因此在語音檢索的過程中,用詞圖作為索引就使得索引所占的存儲空間較大;同時由于詞圖包含的每一個候選結果都是基于其后驗概率盡可能大這一原則而得來的,這就不能保證識別結果中每個詞的錯誤率最小。然而由Mangu[9]提出的混淆網絡存儲格式從詞錯誤率最小的角度出發對詞圖進行了優化,使得識別結果詞圖從原來的對整個待選句子的決策變成了對多個候選詞的決策,從而使得識別結果的存儲空間也相對減小了許多。因此本文將識別結果的存儲格式由詞圖轉換為混淆網絡,混淆網絡形式的識別結果如圖2所示。

圖2 混淆網絡形式的識別結果
本文使用Mangu、Brill等人提出的聚類算法(Clustering Algorithm)將詞圖轉化為混淆網絡,算法大致有如下幾個步驟[9-10]:
(1) lattice中的弧上都包含了一些得分,采用前-后向算法計算每條弧的后驗概率;
(2) 對后驗概率小于事先設定閾值的弧進行裁減;
(3) 對相同詞的弧進行合并,合并前將每條弧上的后驗概率進行求和,得到合并弧的后驗概率;
(4) 對在同一時間間隔內相互競爭且擁有相同語音性質的互不相同的詞進行聚類,最終形成混淆網絡。
對后驗概率較低的弧進行裁減是為了更好地將相互競爭的詞對齊,同時可以提高系統的檢索速率。然而如果裁減閾值設定得過高,就很有可能會裁減掉正確的詞,從而降低召回率,這一點將會在后面的實驗中得到驗證。
要達到快速檢索語音文件的目的,需要對多候選識別結果建立索引。文本檢索的相關研究表明,使用倒排索引結構可以有效地提升檢索速度,在文本檢索中倒排索引的索引項是詞(漢語中還有可能是字,本文針對維吾爾語自身特點采用詞作為索引項),每個詞對應一系列的包含文檔ID以及該詞在文檔中的位置信息的索引記錄。但是由于語音識別結果與文本不同,識別結果中的每個詞還包含時間信息和相應的得分,因此語音索引記錄中除了包括索引項所在的所有文檔編號以外,還包含了起始時間、終止時間以及一些相應的得分信息。基于以上描述,本文所采用的倒排索引結構如圖3所示。

圖3 維吾爾語語音檢索倒排索引結構圖
圖3表示了三個維吾爾語詞“語音”、“檢索”、“系統”(圖中從上到下的順序)的倒排索引結構,其中DocID,TS,TE,SCORE分別表示索引項所在文檔編號、起始時間、終止時間和相應得分,在維吾爾語語音關鍵詞檢索中,當用戶輸入所要查詢短語之后,系統會根據空格進行分詞并刪除停用詞之后再查找查詢詞所在的文本文件和其對應的語音段。
在目前的研究中,基本是以弧的后驗概率作為置信度[11-12]的衡量標準。假設我們的查詢詞Query的音節串為l1l2...lk,后驗概率記為P(Q|O),計算公式如式(1)所示。
P(Q|O)=P((l1l2...lk)|O)=P(A(l1l2...lk)|O)
(1)
其中A(l1l2...lk)代表包含音節串l1l2...lk所有的路徑的集合,式(1)具體推導過程見文獻[11-12]。
在計算相關度之前先將語音文檔D分成若干個語音片段(Segment)S1,S2,S3...SI,當用戶輸入查詢短語Query(簡寫為Q)時,查詢短語通過分詞并刪除停用詞等處理以后,被分成若干個Word,分別記作W1,W2...WJ,經過3.4節中對置信度的計算,能夠計算出查詢詞在各個語音段發生的后驗概率P(Wj|Si)(1≤j≤J,1≤i≤I),最后便可得到查詢短語Q和語音文檔D的相關度計算公式,見式(2)。
(2)
式(2)計算出查詢詞所發生的頻率,在索引過程中依據SIM(D,Q)值來排序文檔,因此可以看出查詢詞出現的頻率越高,查詢詞與語音文檔間的相關度就越大。
早期的語音檢索研究主要針對英語而進行。隨著語音檢索技術的發展,針對一些其他語言(如漢語、阿拉伯語等)的語音檢索技術也被越來越多的人所重視。與英語和漢語相比,維吾爾語有其自身特點,而這些特點也影響到了維吾爾語語音檢索系統的設計與實現。
維吾爾語屬于阿爾泰語系突厥語族,是黏著性語言,同一詞干利用豐富的詞綴可產生超大詞匯量。因此要建立覆蓋維吾爾語中所有單詞的發音詞典有一定的難度,而且當單詞作為語音識別單元時,識別系統中會產生較多的未登錄詞(Out Of Vocabulary,OOV),因而影響識別性能。那么在檢索系統遇到無法識別的詞時,檢索結果就會出現較多的錯誤。目前OOV問題的主要解決方法就是對查詢短語中的未登錄詞進行詞干和詞綴的切分[17]。然而維語詞綴包含較多信息,該方法會造成信息缺失,因此對于維吾爾語OOV問題還需更進一步的探索和研究。
4.1.1 訓練數據描述
實驗中聲學模型訓練集采用的是16khz采樣頻率,16bit 量化精度,單聲道,用PC在辦公室環境下錄制。訓練語料包含356 個人(189女,167男)發聲的128 小時的49 548條語句。頻譜特征觀察矢量為每幀39 維向量,包擴12 階MFCC,歸一化對數能量,及其一階、二階差分。
實驗中語言模型訓練集共采用1 335 000個句子和590 000個不重復單詞的維吾爾語文本語料庫,內容包含新聞、雜志、政府公文、各種理工科書籍等,同時對語料庫中的句子以單詞為單位進行反向處理,選取60 000個高頻單詞作為識別發音詞典和語言模型建模的基礎單詞列表,采用SRILM[16]語言模型訓練工具分別建立了基于單詞的正向2-gram和反向3-gram語言模型。
4.1.2 測試數據描述
識別階段的測試語音庫包含10個說話人(5男,5女)發聲的2小時約1 000個語句的wav文件,測試集對語言模型的平均OOV率為14.8%。在檢索階段,本文分別對20個維吾爾語關鍵詞進行檢索,其中20個關鍵詞中有兩個為集外詞。
4.2.1 系統性能評價
語音檢索系統的性能評價分為語音識別模塊性能的評價和語音檢索模塊性能的評價: 語音識別模塊的性能采用單詞正確率進行評價,在4.1.2節所介紹的測試集上,該模塊的單詞正確率為82.1%;語音檢索的性能評價準則采用接收機工作特性(Receiver Operating Characteristics: ROC)曲線。ROC曲線以虛警率為橫軸,召回率為縱軸,繪制在改變閾值θ時檢索系統的工作特性。在3.2節詞圖轉換為混淆網絡過程中,閾值θ用于控制詞圖弧的裁減,當詞圖弧的置信度低于閾值θ時,就對該弧進行裁減,則該弧將不參與混淆網絡的轉換,即不參與建立索引。
4.2.2 實驗結果及分析
如表1所示為20個關鍵詞在不同裁減閾值θ下的召回率和虛警率,并根據表中結果給出召回率和虛警率的ROC曲線,如圖4所示:

表1 不同閾值下系統的虛警率和召回率
從表1結果和圖4的ROC關系曲線可以看出當閾值θ增大時,相應的召回率和虛警率就會隨之降低,這是由于當閾值增大時識別結果詞圖的弧相應裁減量就會增多,因而識別結果對正確文本的覆蓋率就會降低,自然檢索結果的數量就會減少,最終就有可能會導致召回率和虛警率降低。而在現實應用當中,檢索系統的召回率越高越好,而相應的虛警率越低越好,因此如何根據不同的需求來選擇閾值的大小,使二者達到一個比較好的平衡是一個值得考慮的問題。

圖4 虛警率與召回率關系曲線(ROC)
本文研究并搭建了基于大詞匯量維吾爾語連續語音識別技術的語音檢索系統,該系統以維吾爾語連續語音識別系統作為識別模塊,將識別結果以詞圖格式輸出并轉化為混淆網絡,最后根據混淆網絡生成索引,用戶在使用時輸入查詢串,系統先對查詢串進行分詞,然后根據分詞結果定位所要搜索的語音文件。經過評測,發現該系統在識別正確率為82.1%的情況下,當虛警率為13.5%和8.5%時,召回率分別為97.0%和79.1%,但是由于測試數據和查詢關鍵詞數量較少,該評測數據僅僅只能提供一個參考,在具體應用過程中還需要另外討論。除此之外,目前建立的維吾爾語語音和文本語料庫規模還是比較小,而且沒有統一、共享的評測數據,無法對研究結果進行客觀的評價,也無法與其他系統進行對比實驗,因此需要加快評測數據的建立和共享。
該維吾爾語語音檢索系統是新疆多語種信息處理重點實驗室研發的第一個語音檢索系統,為實驗室后期的研發奠定了基礎,但仍有許多可以改進的地方,如:
(1) 訓練語料庫的擴展,可以收集各種各樣的語料,覆蓋更廣的語音現象和更廣的領域;
(2) 對維吾爾語連續語音識別模塊的聲學模型和語言模型進一步優化以提高識別正確率(例如利用深度神經網絡的方法進行優化);
(3) 將維吾爾語音的韻律特征與詞圖進行融合,充分運用維吾爾語語言的特點,提高維吾爾語語音檢索的性能;
(4) 對集外詞的問題要進一步深入研究;
(5) 優化維吾爾語語音檢索系統,界面更加友好,在視覺效果上盡可能適應用戶需求,盡可能滿足用戶的需求。
[1] A Hauptmann,H Wactlar.Indexing and Search of Multimodal Information[A].Proceedings of IEEE International Conference of Acoustics Speech and Signal Processing,Munich,Germany,1997[C]: 195-198.
[2] 鄭鐵然,韓記慶,李海洋.基于詞片的語言模型及在漢語語音檢索中的應用[J].通信學報,2009,30(3): 84-88.
[3] G J.E Jones,J.T.Foote,K Sparck Jones et al.Video mail retrieval:the Effect of Word Spotting Accuracy on Precision[A].International Conference on Acoustics,Speech,and Signal Processing 1995[C].ICASSP’95,1995,1(1):309-312P.
[4] GOOG-411[DB/OL],http://en.wikipedia.org/wiki/GOOG-411, 2008,12.
[5] Hsin-min Wang.Mandarin Spoken Document Retrieval Based on Syllable Lattice Matching[J].Pattem Recognition Letters.2000: 615-624P.
[6] 鄭鐵然,韓紀慶.基于音節Lattice的漢語語音檢索技術及其索引去冗余方法[J].聲學學報,2008,33(6): 526-533.
[7] 那斯爾江·吐爾遜,吾守爾·斯拉木.基于隱馬爾可夫模型的維吾爾語連續語音識別系統[J].計算機應用,2009,29(7): 2009-2011.
[8] 木合塔爾·沙地克,李 曉,布合力齊姑麗·瓦斯力.維吾爾語廣播新聞連續語音敏感詞檢索系統[J].計算機系統應用,2012,21(3): 29-35.
[9] L. Mangu, E. Brill, A. Stolcke. Finding Consensus in Speech Recognition: Word Error Minimization and Other Applications of Confusion Networks[J]. Computer Speech And Language,2000,14:373-400.
[10] Ville T.Turunen,Mikko Kurimo.Indexing Confusion Network for Morph-based Spoken document Retrieval[A],Proceedings of the SIGIR[C]//2007: 631-638.
[11] F K Soong,W K Lo, S Nakamura.Generalized Word Posterior Probablity(GWPP) for Measuring Reliability of Recognized Words[A].Proceeding of the SWIM2004,2004:127-128.
[12] F Wessel,R Schluter,K Macherey et al.Confidence Maesures for Large Vocabulary Continuous Speech Recognition[A].IEEE Transactions on Speech and Audio Processing,2001,9(3):288-298.
[13] 努爾麥麥提·尤魯瓦斯,吾守爾·斯拉木.面向大詞匯量的維吾爾語連續語音識別研究[J].計算機工程與應用,2013,49(9): 115-119.
[14] Young S.The HTK book[EB/OL].[2012-03-031].http://htk.eng.cam.ac.uk/.
[15] 陶梅,吾守爾·斯拉木,那斯爾江·吐爾遜.基于HTK的維吾爾語連續語音聲學建模[J].中文信息學報,2008,22(5): 56-59.
[16] Andreas Stolcke.SRILM—AN EXTENSIBLE LANGUAGE MODELING TOOLKIT.Speech Technology and Research Laboratory,SRI International, Menlo Park, CA, U.S.A.[EB/OL].[2004-07].http://www.speech.sri.com.
[17] 米成剛,王磊,楊雅婷,等.維漢機器翻譯未登錄詞識別研究[J].計算機應用研究,2013,4,30(4): 1112-1115.