陳文云
百色學院 廣西 百色 533000
語音識別是指將語音轉(zhuǎn)換為計算機可讀的語言符號的過程[1],是人工智能的重要分支,在自然語言處理(Natural Language Processing)技術中起關鍵作用[2]。語音識別技術涉及多門學科的交叉科學,其中包括數(shù)字信號處理、機器學習、計算機科學、聲學、語言學、生理學和心理學等。語音識別應用非常廣泛,如語音檢索、命令控制、聊天機器人以及機器翻譯等。
語音識別是一個極具挑戰(zhàn)性的任務,主要是由于音素繁多,音節(jié)包含的音素多變,詞或詞組包含的音節(jié)個數(shù)也不固定,語調(diào)也變化多樣,組合空間巨大;不同人的口音導致相同的詞或詞組參數(shù)分布差異;同一人由于心理或生理的不同狀態(tài)會影響發(fā)音;發(fā)音方式和習慣產(chǎn)生連讀會省略部分發(fā)音;信道會導致語音傳輸?shù)氖д娴萚3]。
語音識別的建模大致分為語音模型和語言模型。語音模型主要通過隱馬爾可夫和神經(jīng)網(wǎng)絡兩種方法對音素或音節(jié)建模,語言模型是通過對語音組成的詞進行統(tǒng)計建模而得。
如圖1所示,語音識別系統(tǒng)由訓練器和識別器兩部分組成。訓練器由語音和語法訓練器組成,分別訓練出語音和語言模型。語音訓練器以語音聲學特征參數(shù)和相應語音標注為輸入,訓練得到語音模型;語法訓練器以正確語法句子為輸入,訓練得到語言模型。識別器由語音識別器和語法過濾器組成。語音識別器以語音聲學特征和語音模型作為輸入,生成初始的備選語言符號,這些語言符號再通過語言模型進行語法過濾,生成一組語法正確的句子。
模擬語音首先經(jīng)過模數(shù)轉(zhuǎn)換得到數(shù)字信號,在經(jīng)過特征提取模塊提取合適的聲學特征參數(shù),常用的語音聲學特征參數(shù)為梅爾倒譜系數(shù)MFCC,該特征參數(shù)既可作為訓練器的輸入,也可作為識別器的輸入。
一個句子由多個詞或詞組組成,詞或詞組由字組成,而字的發(fā)音是一個音節(jié),由單個含有語調(diào)的韻母或一個聲母與一個含語調(diào)的韻母構(gòu)成,一個音節(jié)由若干音素組成。漢語有22個聲母,38個韻母,構(gòu)成音節(jié)的音素有輔音22個、單元音13個、復元音13個和復鼻尾音16個。
鑒于語音的短時平穩(wěn)性,利用隱馬爾可夫模型HMM建立音素間的轉(zhuǎn)移模型是最佳選擇,HMM通常運用動態(tài)規(guī)劃DP算法實現(xiàn)可變長音節(jié)/音素的分段和分類,利用高斯多模統(tǒng)計模型對音節(jié)/音素的觀測值(倒譜系數(shù))進行學習。
字的發(fā)音有長有短,一句話中字與字間的間隔不是固定的。為簡化問題,先從單個字的語音模型開始。由上可知,每個音節(jié)字都由若干特征觀測值MFCC序列表示:
根據(jù)貝葉斯據(jù)策論,單個字的識別問題可表示為:
根據(jù)貝葉斯定理可知,
為了通用性和避免下溢風險,通常使用最大對數(shù)似然概率代替總似然概率:
從而可以運用Viterbi動態(tài)規(guī)劃算法進行快速求解。
為了讓訓練結(jié)果更穩(wěn)定可靠,輸出概率 通常使用高斯混合GMM模型訓練:
單字語音HMM模型由于狀態(tài)值缺失,適宜利用EM算法進行訓練[4]。EM算法分為兩步,其中E步可通過前向概率
根據(jù)極大似然估計,M步可求得狀態(tài) 的輸出正態(tài)分布的均值、方差:
連續(xù)語音模型可以將訓練語音中每個單字HMM按順序相連得到,形成復合HMM模型。復合HMM模型的訓練同樣采用EM算法,由于連續(xù)語音中每個字的邊界是不確定的,不能單獨訓練其中每個HMM模型,而是采用并行方式,同時訓練。
由于復合HMM的特殊性,計算前向概率和后向概率過程稍有不同。假設復合HMM由個HMM組成,用表示其中某一個HMM,則:
前向概率遞推公式為:
再運用類似式3、式4和式5進行學習,而得每個HMM參數(shù)。
基于HMM語音識別技術具有自動尋找可變長音節(jié)的邊界,在同類技術中識別準確率高的優(yōu)點。但由于同音字、多音字、連讀和方言等情況的影響,只依賴語音模型進行語音識別會帶來額外錯誤識別率,需要引入語言模型來對基于語音模型的識別結(jié)果進行過濾和校正,從而找到語法正確、符合人們發(fā)音習慣的正確識別結(jié)果。