飛 龍,高光來,王宏偉
(內(nèi)蒙古大學(xué) 計算機(jī)學(xué)院,內(nèi)蒙古 呼和浩特 010021)
基于詞干的蒙古語語音關(guān)鍵詞檢測方法的研究
飛 龍,高光來,王宏偉
(內(nèi)蒙古大學(xué) 計算機(jī)學(xué)院,內(nèi)蒙古 呼和浩特 010021)
為了提高蒙古語語音關(guān)鍵詞檢測任務(wù)中的集內(nèi)詞檢測性能,該文結(jié)合蒙古文的構(gòu)詞特點(diǎn)提出了基于詞干進(jìn)行檢測的蒙古語語音關(guān)鍵詞檢測方法。首先,該文采用基于分割識別的蒙古語語音識別系統(tǒng)將語音解碼成了網(wǎng)格文本,并對網(wǎng)格文本進(jìn)行了混淆網(wǎng)絡(luò)的轉(zhuǎn)換;其次,采用關(guān)鍵詞的詞干部分對混淆網(wǎng)絡(luò)文本進(jìn)行了關(guān)鍵詞的檢測。實(shí)驗(yàn)結(jié)果表明,基于詞干進(jìn)行檢測的蒙古語語音關(guān)鍵詞檢測方法明顯優(yōu)于基于詞混淆網(wǎng)絡(luò)的蒙古語關(guān)鍵詞檢測方法,并有效提高了系統(tǒng)的召回率和精確率。
蒙古語;詞干;混淆網(wǎng)絡(luò);置信度
語音關(guān)鍵詞檢測技術(shù)是根據(jù)用戶給定的查詢(Query),從指定的語音數(shù)據(jù)集中返回與其對應(yīng)的語音片段。開展蒙古語語音關(guān)鍵詞檢測技術(shù)的研究不僅具有重要的實(shí)用價值,并對繁榮和發(fā)展少數(shù)民族文化、維護(hù)國家安全及邊疆少數(shù)民族地區(qū)的穩(wěn)定有重要意義。
蒙古語語音關(guān)鍵詞檢測系統(tǒng)可以分為兩個階段進(jìn)行處理。第一階段為識別階段,通過蒙古語大詞匯量連續(xù)語音識別(Large Vocabulary Continuous Speech Recognition, LVCSR)系統(tǒng)[1]將語音識別成文本;第二階段為檢測階段,從識別的文本中查詢對應(yīng)關(guān)鍵詞,并返回結(jié)果。蒙古文屬于黏著語,蒙古文單詞是由詞根綴加多個后綴組成,而所有的詞根和后綴可以組合成大規(guī)模的蒙古文單詞。為了讓蒙古語LVCSR系統(tǒng)能識別大規(guī)模的蒙古文單詞,我們在以前的研究中提出了基于分割識別的蒙古語語音識別方法[2]。該方法將蒙古語LVCSR中的識別單位從蒙古文單詞轉(zhuǎn)換成了獨(dú)立的詞干和結(jié)尾后綴形式,很好地解決了大規(guī)模蒙古文單詞的識別問題,并且該方法對語言模型的稀疏問題起到了適當(dāng)?shù)母纳谱饔谩?/p>
在之前的研究中,我們提出了基于詞混淆網(wǎng)絡(luò)的蒙古語語音關(guān)鍵詞檢測方法[3],并且證明了該方法明顯優(yōu)于基于詞網(wǎng)格的蒙古語語音關(guān)鍵詞檢測方法,但是基于詞混淆網(wǎng)絡(luò)的蒙古語語音關(guān)鍵詞檢測方法的性能依然較低。本文結(jié)合蒙古文的構(gòu)詞特點(diǎn),改進(jìn)了基于詞混淆網(wǎng)絡(luò)的蒙古語語音關(guān)鍵詞檢測方法,并且得到了較好的實(shí)驗(yàn)結(jié)果。
蒙古文單詞一般可以分解為詞根和詞綴兩部分。蒙古文沒有前綴和中綴,而只有后綴,后綴可以依次相加。蒙古文的后綴可以分為構(gòu)詞后綴、構(gòu)形后綴和結(jié)尾后綴。結(jié)尾后綴是處于詞末位置僅表示單純的語法意義(主要是關(guān)系意義)的一種后綴。蒙古文的詞根、詞干和后綴的關(guān)系如圖1所示。構(gòu)詞后綴和構(gòu)形后綴屬于詞干后綴。結(jié)尾后綴則不屬于詞干后綴,它包含靜詞的格后綴、領(lǐng)屬(物主)后綴、式動詞(時間、人稱)后綴和副動詞后綴。在一般情況下,后綴的次序是構(gòu)詞后綴在前,構(gòu)形后綴在后,結(jié)尾后綴在最后。單詞中構(gòu)詞后綴和構(gòu)形后綴都可以有一個以上,但結(jié)尾后綴一般只有一個[4]。
圖1 蒙古文詞根、詞干和后綴關(guān)系圖
基于詞混淆網(wǎng)絡(luò)的蒙古語關(guān)鍵詞檢測系統(tǒng)框架如圖2所示。首先,本文將蒙古文語音文件通過蒙古語語音識別系統(tǒng)進(jìn)行解碼,并生成詞網(wǎng)格文件;其次,將詞網(wǎng)格文件轉(zhuǎn)化成詞混淆網(wǎng)絡(luò)結(jié)構(gòu)的文件,并建立索引;最后,從索引庫中進(jìn)行關(guān)鍵詞的搜索和確認(rèn)。
2.1 蒙古語LVCSR解碼
圖2 基于詞混淆網(wǎng)絡(luò)的蒙古語關(guān)鍵詞檢測系統(tǒng)框架
本文采用了基于分割識別的蒙古語LVCSR系統(tǒng)對蒙古語語音進(jìn)行了解碼。蒙古語語音文件通過蒙古語LVCSR系統(tǒng)進(jìn)行多遍解碼后可以生成詞網(wǎng)格形式的文件。網(wǎng)格是一個有向非循環(huán)圖,每一個節(jié)點(diǎn)表示一個時間點(diǎn),每一條邊表示一個識別單元假設(shè)(詞干和結(jié)尾后綴)。網(wǎng)格中的每一個節(jié)點(diǎn)包含對應(yīng)的時間信息和上下文信息,每一條邊包含開始節(jié)點(diǎn)、結(jié)束節(jié)點(diǎn)、識別單元假設(shè)和該識別單元假設(shè)的聲學(xué)模型得分、語言模型得分等。
網(wǎng)格可以用來進(jìn)行音頻文檔檢測,但是,網(wǎng)格的結(jié)構(gòu)比較復(fù)雜,占用的存儲空間也比較大。Mangu等人[5]提出的混淆網(wǎng)絡(luò)結(jié)構(gòu)是一種新穎的語音識別多候選存儲結(jié)構(gòu),是對網(wǎng)格進(jìn)一步處理的結(jié)果,比網(wǎng)格占用的存儲空間更小,結(jié)構(gòu)簡單,能提供的信息比較豐富,并且研究表明混淆網(wǎng)絡(luò)能獲得比網(wǎng)格更小的詞錯誤率[6-7]。本文將識別后的網(wǎng)格文件轉(zhuǎn)換成了混淆網(wǎng)絡(luò)文件,混淆網(wǎng)絡(luò)結(jié)構(gòu)圖如圖3所示。圖中百分號開始的是結(jié)尾后綴, sil表示靜音;null表示空弧,其他表示蒙古文詞干,粗線表示正確的解碼路徑。
圖3 混淆網(wǎng)絡(luò)機(jī)構(gòu)圖
2.2 關(guān)鍵詞檢測
為了加快對詞混淆網(wǎng)絡(luò)的檢測速度,我們對詞混淆網(wǎng)絡(luò)文件建立了索引。本文對蒙古文混淆網(wǎng)絡(luò)文件建立了前向索引和逆向索引,建立前向索引的目的是便于產(chǎn)生逆向索引,逆向索引類似與信息檢索技術(shù)中的倒排索引,用于快速定位關(guān)鍵詞[8]。關(guān)鍵詞檢測和文本檢索的不同之處在于語音要考慮關(guān)鍵詞的發(fā)生時間和結(jié)束時間,語音的發(fā)生時間相當(dāng)于文檔中詞條的出現(xiàn)位置。對于關(guān)鍵詞檢測,即使檢測出的查詢詞與發(fā)生時間不一致也認(rèn)為是錯誤的。另外由于語音識別結(jié)果的不確定性,必須對每個識別結(jié)果標(biāo)注置信度,以衡量該項結(jié)果的可靠程度。
假設(shè)關(guān)鍵詞Q,首先對關(guān)鍵詞中的蒙古文單詞進(jìn)行詞干和結(jié)尾后綴的切分,并表示為Q=(k1,k2,...,kn),其中n≥1,每個ki(1≤i≤n)稱為一個查詢項(蒙古文詞干或結(jié)尾后綴),“關(guān)鍵詞檢測”就是以Q作為查詢,從語音數(shù)據(jù)集中檢測出與其相似的所有語音片段。如果相鄰兩個單詞的時隙大于0.5秒(經(jīng)驗(yàn)值),詞干和結(jié)尾后綴的間隙大于0.2秒(經(jīng)驗(yàn)值),就認(rèn)為兩個單詞之間或詞干和結(jié)尾后綴之間有插入項,否則認(rèn)為這兩個之間有前后連接關(guān)系。對于候選結(jié)果的確認(rèn),采用了后驗(yàn)概率作為了置信度得分。
拉丁轉(zhuǎn)寫:ene masin-i gadagadv-aqa wrwgvlvgsan yvm.
中文意義:這個車是進(jìn)口的。
拉丁轉(zhuǎn)寫:edeger masin tohogerumji-yi bur gadagadv-aqa wrwgvlba.
中文意義: 這些全部都是進(jìn)口設(shè)備。
蒙古文的結(jié)尾后綴主要表示的是語法關(guān)系意義,單詞切掉結(jié)尾后綴后詞本身的基本意思不會發(fā)生變化。本文提出了對關(guān)鍵詞進(jìn)行結(jié)尾后綴的切分,并利用關(guān)鍵詞的詞干進(jìn)行檢測的方法。該方法有以下幾個優(yōu)點(diǎn)。
(1) 關(guān)鍵詞的結(jié)尾后綴很可能帶有一些關(guān)鍵詞主要意思之外的額外信息,這樣結(jié)尾后綴反而在關(guān)鍵詞檢測時變成了噪音,影響檢測的召回率和精確率,而切掉結(jié)尾后綴則可以避免這種情況。切除結(jié)尾后綴的方法類似于信息檢索中的停用詞的去除。
(2) 本文采用了詞干和結(jié)尾后綴分開識別的基于分割識別的蒙古語LVCSR方法對語音進(jìn)行了解碼。該方法解決了蒙古文大部分單詞的識別問題,但是識別結(jié)果中會出現(xiàn)一些結(jié)尾后綴的錯誤識別問題。利用關(guān)鍵詞的詞干進(jìn)行檢測,則即使結(jié)尾后綴識別的不正確,也不會影響檢測結(jié)果。
score(Q′,t,D)=
(1)
其中Pr (ki′|ti,D)為蒙古文詞干ki′(1≤i≤n)在ti時刻的后驗(yàn)概率,Brank(ki′|t,D)為取值范圍為0到1的提升系數(shù)。其中γ=1/n,查詢詞Q的持續(xù)時間為tn-t+dn。對?1≤i≤n,蒙古文詞干之間的時隙0≤ti-(ti-1+di-1)≤0.5秒(經(jīng)驗(yàn)值)。
圖4 改進(jìn)的關(guān)鍵詞檢測系統(tǒng)的流程圖
本文采用的性能評價標(biāo)準(zhǔn)為召回率(Recallrate)、精確率(PrecisionRate)和虛警率(FalseAlarmRate,F(xiàn)A)。召回率是指關(guān)鍵詞被正確找到的比例,精確率是指所有找到關(guān)鍵詞中正確的比例,虛警率是指每個小時關(guān)鍵詞平均被虛報的次數(shù)。關(guān)鍵詞檢測實(shí)驗(yàn)中使用的測試語音為21小時的錄音語料。本文的實(shí)驗(yàn)選擇了十個關(guān)鍵詞對測試語音進(jìn)行了檢測,每個關(guān)鍵詞包含兩個到五個蒙古文單詞。該十個關(guān)鍵詞全部為集內(nèi)詞(IV),并且所有關(guān)鍵詞在測試集上至少都出現(xiàn)過十次以上。每個關(guān)鍵詞中有1~3個單詞包含結(jié)尾后綴。實(shí)驗(yàn)使用的工具是隱馬爾可夫模型工具HTK3.4[9]和語言模型訓(xùn)練工具SRILM[10]。
本實(shí)驗(yàn)對采用基于詞混淆網(wǎng)絡(luò)的關(guān)鍵詞檢測方法時不切掉結(jié)尾后綴的關(guān)鍵詞和切掉結(jié)尾后綴的關(guān)鍵詞的檢測結(jié)果進(jìn)行了比較。我們通過11點(diǎn)的召回率-精確率曲線分析了在混淆網(wǎng)絡(luò)上兩種關(guān)鍵詞的檢測結(jié)果,比較結(jié)果如圖5所示。表1給出了11點(diǎn)召回率-精確率曲線的平均精確率、對應(yīng)的召回率和虛警率。從表1和圖5可以看出關(guān)鍵詞切掉結(jié)尾后綴后進(jìn)行檢測的精確度和召回率都高于未切分的檢測結(jié)果,并且虛警率也略低于未切分的檢測結(jié)果。實(shí)驗(yàn)結(jié)果表明,基于詞干進(jìn)行檢測的關(guān)鍵詞檢測方法不會受到結(jié)尾后綴的不同或結(jié)尾后綴的錯誤識別等問題影響,所以系統(tǒng)的性能會得到明顯的提升。
圖5 改進(jìn)后關(guān)鍵詞檢測方法和未改進(jìn)方法的召回率-精確率曲線
表1 改進(jìn)關(guān)鍵詞檢測方法和原來方法的比較
本文結(jié)合蒙古文的構(gòu)詞特點(diǎn),對基于詞混淆網(wǎng)絡(luò)的蒙古語語音關(guān)鍵詞檢測方法進(jìn)行了改進(jìn)。首先采用基于分割識別的蒙古語LVCSR系統(tǒng)對蒙古語語音進(jìn)行了解碼;其次,對生成的網(wǎng)格文件進(jìn)行了混淆網(wǎng)絡(luò)的轉(zhuǎn)換,并對混淆網(wǎng)絡(luò)文件建立了索引;最后,將關(guān)鍵詞中的每個蒙古文單詞進(jìn)行了詞干的切分,并利用切分后的詞干對索引庫進(jìn)行了關(guān)鍵詞的檢測。實(shí)驗(yàn)結(jié)果表明,本文提出的改進(jìn)的關(guān)鍵詞檢測方法明顯優(yōu)于基于詞混淆網(wǎng)絡(luò)的蒙古語語音關(guān)鍵詞檢測方法,系統(tǒng)的精確度和召回率得到了一定的提升。
[1] Feilong Bao, Guanglai Gao. Improving of Acoustic Model for the Mongolian Speech Recognition System[C]//Proceedings of The Chinese Conference on Pattern Recognition (CCPR2009), Nanjing, 2009: 616-620.
[2] Feilong Bao, Guanglai Gao, Xueliang Yan. Segmentation-based Mongolian LVCSR Approach[C]//Proceedings of The 38th International Conference on Acoustics, Speech, and Signal Processing (ICASSP2013), Vancouver, 2013: 8136-8139.
[3] Feilong Bao, Guanglai Gao, Yulai Bao. The Research on Mongolian Spoken Term Detection Based on Confusion Network[C]//Proceedings of The Chinese Conference on Pattern Recognition (CCPR2012), Beijing, 2012: 606-612.
[4] 清格爾泰. 蒙古語語法[M], 內(nèi)蒙古人民出版社,1992.
[5] 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(4): 373-400.
[6] 黃湘松. 基于混淆網(wǎng)絡(luò)的漢語語音檢索技術(shù)研究 [D]. 哈爾濱工程大學(xué)博士學(xué)位論文. 2010.
[7] J Mamou, B Ramabhadran, O Siohan. Vocabulary independent spoken term detection[C]//Proceedings of ACM-SIGIR’07, Amsterdam, 2007: 615-622.
[8] P Yu, K Chen, C Ma, et al. Vocabulary-independent indexing of spontaneous speech[J]. Speech Audio Process. 2005, 13(5): 635-643.
[9] Young S, et al. The HTK book (Revised for HTK version 3.4.1) [M]. Cambridge University .2009.
[10] A Stolcke. SRILM—An Extensible Language Modeling Toolkit[C]//Proceedings of International Conference Spoken Language Processing, Denver, Colorado, 2002.
Mongolian Speech Keyword Spotting Method Based on Stem
BAO Feilong, GAO Guanglai,WANG Hongwei
(College of Computer Science, Inner Mongolia University, Hohhot, Inner Mongolia 010021,China)
To improve in-vocabulary performance in Mongolian speech keyword spotting task, we propose a Mongolian speech keyword spotting method by searching the stem according to the characteristic of Mongolian word-formation rule. First, Mongolian speech is decoded to lattice file by Segmentation-based LVCSR system, and this lattice file is converted to a confusion network. Then, we detect the keywords according to their stems among the confusion network. Experimental results show that the proposed method outperforms baselines based on word confusion network.
Mongolian; stem; confusion network; confidence measures
飛龍(1985—),博士,講師,碩士生導(dǎo)師,主要研究領(lǐng)域?yàn)槊晒盼男畔⑻幚?、語音識別、語音合成。E?mail:csfeilong@imu.edu.cn高光來(1964—),碩士,教授,博士生導(dǎo)師,主要研究領(lǐng)域?yàn)槟J阶R別、自然語言處理。E?mail:csggl@imu.edu.cn王洪偉(1989—),碩士研究生,主要研究領(lǐng)域?yàn)槊晒盼男畔⑻幚?。E?mail:wanghongwei6136@163.com
1003-0077(2016)01-0124-05
2013-06-08 定稿日期: 2014-03-20
國家自然科學(xué)基金(61563040,61263037);內(nèi)蒙古自然科學(xué)基金(2014BS0604);內(nèi)蒙古大學(xué)高層次人才引進(jìn)科研項目
TP391
A