杜 淼 黃天淏 邊 彤 顏逸為 余 勤 雒瑞森
摘 要:由于無線電技術(shù)的日益成熟,盜用正常廣播頻段進(jìn)行其他活動(dòng)的非法廣播對(duì)國民經(jīng)濟(jì)和安全造成相當(dāng)大的危害,因此對(duì)非法廣播的監(jiān)測(cè)非常重要。本文集成隱馬爾科夫模型對(duì)廣播關(guān)鍵詞進(jìn)行識(shí)別,進(jìn)而監(jiān)測(cè)非法廣播。在試驗(yàn)中,首先對(duì)采集的非法廣播進(jìn)行人工切割與標(biāo)定用于訓(xùn)練,然后研究基于集成學(xué)習(xí)的方法組合多個(gè)模型,使用投票規(guī)則得到最終結(jié)果。將集成學(xué)習(xí)的PocketSphinx系統(tǒng)與單一模型進(jìn)行比較,試驗(yàn)結(jié)果顯示,與單一模型84.8%的識(shí)別率相比,集成的PocketSphinx系統(tǒng)識(shí)別率達(dá)到92%,并且具有更好的穩(wěn)定性。
關(guān)鍵詞:關(guān)鍵詞識(shí)別;PocketSphinx;隱馬爾科夫模型;集成學(xué)習(xí)
中圖分類號(hào):TN912.34 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1003-5168(2019)35-0008-04
Application of Hidden Markov Model with Ensemble Learning
in Broadcast Keyword Detection
DU Miao1 HUANG Tianhao BIAN Tong1 YAN Yiwei1 YU Qin1 LUO Ruisen1
(1.College of Electrical Engineering, Sichuan University,Chengdu Sichuan 610000;2. College of Electronic Engineering and Automation, Guilin University of Electronic Technology,Guilin Guangxi 541004)
Abstract: Due to the increasing maturity of radio technology, illegal broadcasts that use the normal broadcast band for other activities have caused considerable harm to the national economy and security, so the monitoring of illegal broadcasts is very important. This paper integrated hidden Markov models to identify broadcast keywords, and then monitored illegal broadcasts. In the experiment, the illegal broadcasts collected were first manually cut and calibrated for training, then the method based on ensemble learning was used to combine multiple models, and the voting rules were used to obtain the final results. Comparing the integrated learning PocketSphinx system with a single model, the experimental results show that compared with the single model's 84.8% recognition rate, the integrated PocketSphinx system has a recognition rate of 92% and has better stability.
Keywords: keyword recognition;PocketSphinx;Hidden Markov Model;ensemble learning
隨著無線電技術(shù)應(yīng)用的成熟,部分不法分子采用盜用調(diào)頻廣播的手段進(jìn)行非法活動(dòng),擾亂正常廣播秩序,對(duì)國民經(jīng)濟(jì)和安全造成了嚴(yán)重威脅。在實(shí)際的應(yīng)用過程中,非法廣播關(guān)鍵詞識(shí)別往往存在諸多復(fù)雜問題,例如,存在設(shè)備和環(huán)境影響產(chǎn)生的噪聲,沒有標(biāo)準(zhǔn)數(shù)據(jù)集進(jìn)行訓(xùn)練,人聲混合等。因此,本文的研究環(huán)境是一個(gè)非常復(fù)雜的實(shí)際應(yīng)用場景。隱馬爾科夫模型(Hidden Markov Model,簡稱HMM)可分為:離散隱馬爾科夫模型(DHMM)、連續(xù)隱馬爾科夫模型(CHMM)和半連續(xù)隱馬爾科夫模型(SCHMM)[1]。SCHMM作為DHMM和CHMM的折衷方法,盡量避免DHMM因矢量化信息造成信息損失和CHMM由于待估計(jì)參數(shù)過多需要大量訓(xùn)練集[2,3]。
由于實(shí)際的非法廣播信號(hào)中存在噪聲、不同人聲和方言等問題,所以本研究采用集成學(xué)習(xí)的方法提高模型的魯棒性。將不同模型結(jié)合可能會(huì)帶來以下好處[4]:從統(tǒng)計(jì)學(xué)角度來看,由于學(xué)習(xí)任務(wù)假設(shè)空間很大,可能有多個(gè)假設(shè)在訓(xùn)練集上達(dá)到同等性能,結(jié)合多個(gè)模型,避免誤選而導(dǎo)致泛化能力不佳的問題;從計(jì)算角度來看,多次運(yùn)行的結(jié)合,可以降低陷入局部極小點(diǎn)的風(fēng)險(xiǎn);結(jié)合多個(gè)模型,可以擴(kuò)大假設(shè)空間,有可能更好地接近未在假設(shè)空間內(nèi)的最優(yōu)解。
為了更好地檢測(cè)非法廣播中的關(guān)鍵詞,本文在PocketSphinx系統(tǒng)[5]上使用集成學(xué)習(xí)的方法,將多個(gè)模型識(shí)別的關(guān)鍵詞結(jié)果通過投票機(jī)制獲得最終的識(shí)別結(jié)果,最后通過非法廣播試驗(yàn)證明采用集成學(xué)習(xí)的方法能獲得更高的識(shí)別率。
1 相關(guān)背景工作
為了監(jiān)測(cè)廣播是否非法,打擊非法頻段的廣播,本文將利用集成學(xué)習(xí)的PocketSphinx系統(tǒng)對(duì)廣播進(jìn)行關(guān)鍵詞識(shí)別。
1.1 SCHMM模型
隱馬爾科夫模型是一種時(shí)間序列的概率模型。該模型描述了由一個(gè)隱藏的馬爾科夫鏈隨機(jī)生成不可觀測(cè)的狀態(tài)隨機(jī)序列,再由各個(gè)狀態(tài)生成一個(gè)觀測(cè)而產(chǎn)生觀測(cè)隨機(jī)序列的過程。在語音系統(tǒng)中,通常以音素[6]為基本識(shí)別單位。從語音中提取音素特征,狀態(tài)之間的轉(zhuǎn)移表示了音素之間的關(guān)系和鏈上每個(gè)狀態(tài)的一個(gè)概率分布。SCHMM可以表示為:
[λ={π,A,B}]? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (1)
式中,[π]為SCHMM的初始化參數(shù);A為狀態(tài)轉(zhuǎn)移矩陣;B為觀察值概率矩陣。
[A=a0N×N],N為模型的狀態(tài)數(shù),記N的狀態(tài)為[s1,...,sN],記[t]時(shí)刻馬爾科夫鏈所處狀態(tài)為[qt],顯然[qt∈(s1,...,sN)],則:
[ai,j=P(qt+1=si|qi=si) 1≤i , j≤N]? ? ? (2)
[B=bjkN×M],其中,[bjk]滿足以下條件:
[bjk=P(oi=vk|qt=sj) 1≤j≤N ,1≤k≤M]? ? ? (3)
HMM是一個(gè)雙重隨機(jī)過程,在概率統(tǒng)計(jì)學(xué)的基礎(chǔ)上解決實(shí)際應(yīng)用中的三個(gè)問題:評(píng)估問題、解碼問題、學(xué)習(xí)問題。HMM的參數(shù)[λ={π,A,B}]通過Baum-Welch算法利用觀測(cè)到的數(shù)據(jù)進(jìn)行估計(jì),由估算的HMM組成分類器,實(shí)現(xiàn)對(duì)觀測(cè)序列的分類。
1.2 PocketSphinx
PocketSphinx是一種輕量級(jí)的語音識(shí)別系統(tǒng),其主要基于隱馬爾科夫模型,程序主要使用C語言進(jìn)行編寫。PocketSphinx是一種應(yīng)用在大詞匯量連續(xù)語音識(shí)別系統(tǒng)的開源項(xiàng)目,由于其成本低且開源,所以本文將對(duì)PocketSphinx系統(tǒng)在非法廣播中的關(guān)鍵詞檢測(cè)進(jìn)行應(yīng)用與開發(fā)。PocketSphinx語音識(shí)別系統(tǒng)是一種包含多種技術(shù)的系統(tǒng)。其中,MFCC特征提取為Mel Frequency Cepstral Coefficents,是一種能準(zhǔn)確包絡(luò)語音短時(shí)功率譜的一種方法[6]。
1.3 集成學(xué)習(xí)
集成學(xué)習(xí)通過將多個(gè)分類器進(jìn)行結(jié)合來完成學(xué)習(xí)任務(wù),通??梢垣@得比單一分類器更顯著的優(yōu)勢(shì)[7]。集成學(xué)習(xí)的一般結(jié)構(gòu)為:先產(chǎn)生一組“個(gè)體學(xué)習(xí)器”,再使用某種策略將它們結(jié)合起來,其中個(gè)體學(xué)習(xí)器一般由訓(xùn)練集數(shù)據(jù)產(chǎn)生。在學(xué)習(xí)任務(wù)中,最優(yōu)點(diǎn)可能不存在整個(gè)假設(shè)空間中,使用單一模型進(jìn)行訓(xùn)練時(shí),無論如何訓(xùn)練都不可能獲得最優(yōu)解,通過結(jié)合多個(gè)模型,有可能學(xué)習(xí)得到更好的近似[7]。
2 試驗(yàn)數(shù)據(jù)與方法
本試驗(yàn)將集成學(xué)習(xí)應(yīng)用到PocketSphinx系統(tǒng),使用截取的關(guān)鍵詞片段對(duì)模型進(jìn)行訓(xùn)練。為了進(jìn)一步提高PocketSphinx系統(tǒng)在廣播檢測(cè)中的識(shí)別率,本節(jié)使用了集成學(xué)習(xí)的方法,目的是訓(xùn)練對(duì)不同關(guān)鍵詞敏感的模型,提高非法廣播的識(shí)別率。本文對(duì)非法廣播的判斷依據(jù)為,如果廣播中出現(xiàn)了試驗(yàn)中定義的非法關(guān)鍵詞,則認(rèn)為廣播為非法廣播,具體試驗(yàn)過程將在本節(jié)詳細(xì)展示。
2.1 試驗(yàn)數(shù)據(jù)
本次數(shù)據(jù)進(jìn)行識(shí)別的關(guān)鍵詞使用了首字母表示,如廣播-gb。本試驗(yàn)的原始廣播數(shù)據(jù)長短不一,所以使用軟件Audacity對(duì)原始數(shù)據(jù)集進(jìn)行了人工切割,將原始的廣播數(shù)據(jù)切分成1min左右的數(shù)據(jù),圖1展示了切分割好的一個(gè)非法廣播語音中的部分,時(shí)間長度為1min,其中紅色虛線框部分為非法關(guān)鍵詞cdkf、lglc,其他部分為廣播的其他內(nèi)容。
圖1 一條廣播語音中的信息
2.2 試驗(yàn)方法
本試驗(yàn)研究了一個(gè)模型的訓(xùn)練過程,先將語音數(shù)據(jù)進(jìn)行歸一化,減少語音大小對(duì)識(shí)別效果的影響;將每個(gè)關(guān)鍵詞設(shè)置不同權(quán)重,對(duì)模型進(jìn)行訓(xùn)練,得到訓(xùn)練好的單一模型;使用模型對(duì)測(cè)試集進(jìn)行識(shí)別,得到識(shí)別后的文本信息。其中,關(guān)鍵詞權(quán)重設(shè)置越高,表示對(duì)識(shí)別該關(guān)鍵詞越嚴(yán)格;反之,表示越容易。使用集成學(xué)習(xí)時(shí),本文將生成多個(gè)模型進(jìn)行試驗(yàn),最后將每個(gè)模型生成的文本信息通過投票的方式判斷測(cè)試語音是否非法。
3 試驗(yàn)結(jié)果
3.1 單一模型
在訓(xùn)練中,以[0,20]中隨機(jī)抽取的值作為關(guān)鍵詞權(quán)重,得到新的單一模型,通過100次試驗(yàn),得到平均識(shí)別率為84.8%。箱型圖是一種用作顯示數(shù)據(jù)分散情況的統(tǒng)計(jì)圖,直觀展示了異常值等數(shù)據(jù)分布特征,本試驗(yàn)將使用箱型圖進(jìn)行展示,圖2展示了100次試驗(yàn)的結(jié)果。其中,橫軸為試驗(yàn)次序(將100次試驗(yàn)平均分成10次進(jìn)行),縱軸為識(shí)別率(ACC)。
圖2 單一模型的箱型圖
3.2 多個(gè)模型
為了訓(xùn)練多個(gè)不同的模型,本試驗(yàn)從[0,20]中隨機(jī)抽取值作為關(guān)鍵詞權(quán)重,并重復(fù)抽取多次訓(xùn)練多個(gè)權(quán)值不同的模型。使用多個(gè)模型對(duì)測(cè)試語音進(jìn)行識(shí)別,最后得到多個(gè)語音文本,再使用投票規(guī)則,最后計(jì)算識(shí)別率。本次試驗(yàn)?zāi)P蛿?shù)量為(1,100],投票規(guī)則為識(shí)別的關(guān)鍵詞數(shù)量大于模型數(shù)量(超出比例為[N]),則認(rèn)為出現(xiàn)了該關(guān)鍵詞。本文通過固定模型數(shù)量(5,10,20),每種集成模型連續(xù)進(jìn)行10次試驗(yàn),得到試驗(yàn)結(jié)果,如圖3和圖4所示。其中,橫軸(Number)為集成的模型數(shù)量,縱軸(ACC)為通過投票規(guī)則后的識(shí)別率。
<E:\新建文件夾\2月份\未做\河南科技201935\內(nèi)文排版文件-河南科技(創(chuàng)新驅(qū)動(dòng))2019年第35期\Image\10-圖3.pdf>[模型數(shù)量/個(gè)][ACC][N][N]
圖3 不同投票規(guī)則中模型數(shù)量與識(shí)別率的關(guān)系
圖4 多個(gè)模型組合的箱型圖
4 討論
4.1 集成學(xué)習(xí)對(duì)識(shí)別率的提高
集成學(xué)習(xí)對(duì)識(shí)別率的提高表現(xiàn)在兩個(gè)方面:一是最低識(shí)別率的提高;二是總體識(shí)別率的提高。通過圖2單一模型的箱型圖可以看到,整個(gè)假設(shè)空間中存在識(shí)別率為97%的解,但是從統(tǒng)計(jì)的均值來看,單一模型的識(shí)別率在81%~87%,中位數(shù)在85%上下浮動(dòng),并且大量數(shù)據(jù)在90%以下,使用單一模型進(jìn)行識(shí)別可能面臨陷入識(shí)別率較低點(diǎn)的風(fēng)險(xiǎn)。由圖2可以明顯看到,試驗(yàn)中出現(xiàn)較多的異常值點(diǎn)。通過單一模型的多次試驗(yàn)可以得出,本次試驗(yàn)數(shù)據(jù)中存在識(shí)別率較高的點(diǎn),但是隨機(jī)抽取權(quán)重后的模型識(shí)別率不高,整個(gè)系統(tǒng)的識(shí)別率不穩(wěn)定。從圖3可以看出,采用集成學(xué)習(xí)后,整體識(shí)別率提高,有效地減小假設(shè)空間,使平均識(shí)別率提高,并且隨著集成模型的增加,識(shí)別率逐漸穩(wěn)定在90%以上。通過圖4多次試驗(yàn)可以看到,隨著模型的增加,數(shù)據(jù)逐漸集中,并且識(shí)別率有了明顯的提高。
4.2 集成模型數(shù)量的影響
4.2.1 集成模型數(shù)量對(duì)識(shí)別率的影響。由于訓(xùn)練片段與測(cè)試集的不同,為了得到較好的識(shí)別率,關(guān)鍵詞的權(quán)重在每個(gè)測(cè)試集中的權(quán)重也不相同。圖4展示了多個(gè)模型組合的箱型圖,每個(gè)集成學(xué)習(xí)箱型圖進(jìn)行了10次試驗(yàn)。從圖4中可以看到,通過集成學(xué)習(xí),整個(gè)系統(tǒng)的平均識(shí)別率達(dá)到92%,高于單一模型84.8%的識(shí)別率,其中中位數(shù)上升到93%,大量數(shù)據(jù)保持在90%以上。通過圖3與圖4的試驗(yàn)結(jié)果可以看到,集成學(xué)習(xí)方法可以有效地減小假設(shè)空間,使平均識(shí)別率提高到92%。
4.2.2 集成模型數(shù)量對(duì)識(shí)別穩(wěn)定性的影響。由圖2可知,單一模型試驗(yàn)頻繁出現(xiàn)異常值點(diǎn),說明單一模型容易進(jìn)入一個(gè)局部糟糕的點(diǎn),系統(tǒng)穩(wěn)定性較差。由圖4可知,模型數(shù)量為20時(shí)出現(xiàn)了一個(gè)異常值點(diǎn),但是該點(diǎn)識(shí)別率高于單一模型的平均識(shí)別率,整個(gè)系統(tǒng)在識(shí)別率上展示了較強(qiáng)的穩(wěn)定性。同時(shí),使用集成學(xué)習(xí)使模型減少了陷入糟糕局部解的風(fēng)險(xiǎn),使數(shù)據(jù)集中較好的識(shí)別率接近識(shí)別率較高的點(diǎn)。
5 結(jié)語
本文將集成學(xué)習(xí)的PocketSphinx系統(tǒng)用于廣播關(guān)鍵詞檢測(cè),這是一種監(jiān)測(cè)非法廣播的有效手段。本文的試驗(yàn)數(shù)據(jù)為實(shí)地采集數(shù)據(jù),在本文使用的數(shù)據(jù)集和關(guān)鍵詞中,通過集成學(xué)習(xí)試驗(yàn)結(jié)果與單一模型試驗(yàn)結(jié)果可以發(fā)現(xiàn),集成學(xué)習(xí)PocketSphinx系統(tǒng)在識(shí)別率和穩(wěn)定性上的效果明顯。試驗(yàn)結(jié)果表明,集成不同權(quán)重的PocketSphinx模型可以有效提高關(guān)鍵詞的識(shí)別率和系統(tǒng)的穩(wěn)定性。但是,由于本文采集數(shù)據(jù)中噪聲低的數(shù)據(jù)較少,所以本試驗(yàn)沒有從訓(xùn)練數(shù)據(jù)來調(diào)整模型的多樣性。本文使用的廣播數(shù)據(jù)為中文數(shù)據(jù),但是非法廣播關(guān)鍵詞的檢測(cè)可以應(yīng)用不同語種,為了更好地打擊違法犯罪行為,利用語音關(guān)鍵詞識(shí)別對(duì)更多地區(qū)進(jìn)行廣播監(jiān)測(cè)將是非常必要的手段。本文使用集成學(xué)習(xí)的PocketSphinx模型可以進(jìn)一步提高中文關(guān)鍵詞識(shí)別率和系統(tǒng)穩(wěn)定性,并在其他語言的關(guān)鍵詞識(shí)別方面具有一定的參考價(jià)值。
參考文獻(xiàn):
[1]向東,劉虎,陳先橋,等.半連續(xù)隱馬爾科夫模型脫機(jī)阿拉伯手寫識(shí)別[J].武漢理工大學(xué)學(xué)報(bào)(信息與管理工程版),2011(3):349-353.
[2]嚴(yán)斌峰,朱小燕,張智江,等.基于鄰接空間的魯棒語音識(shí)別方法[J].軟件學(xué)報(bào),2007(4):878-883.
[3]高家寶,來羽.一種新的HMM/SVM混合語音識(shí)別模型[J].控制工程,2016(11):1802-1807.
[4]Dietterich T G.Ensemble methods in machine learning[C]//International workshop on multiple classifier systems.2000.
[5]袁翔.基于Sphinx的機(jī)器人語音識(shí)別系統(tǒng)構(gòu)建與研究[J].電腦知識(shí)與技術(shù),2017(7):154-155.
[6]邵明強(qiáng),徐志京.基于改進(jìn)MFCC特征的語音識(shí)別算法[J].微型機(jī)與應(yīng)用,2017(21):48-50.
[7]余恩澤,努爾布力,于清.一種基于集成學(xué)習(xí)的釣魚網(wǎng)站檢測(cè)方法[J].計(jì)算機(jī)工程與應(yīng)用,2019(18):81-88.