語音識別技術簡述

語音識別技術所涉及的領域包括:信號處理、模式識別、概率論和信息論、發聲機理和聽覺機理、人工智能等等。

聲學特徵
聲學特徵的提取與選擇是語音識別的一個重要環節。聲學特徵的提取既是一個信息大幅度壓縮的過程,也是一個信號解捲過程,目的是使模式劃分器能更好地劃分。
由於語音信號的時變特性,特徵提取必須在一小段語音信號上進行,也即進行短時分析。這一段被認爲是平穩的分析區間稱之爲幀,幀與幀之間的偏移通常取幀長的1/2或1/3。通常要對信號進行預加重以提升高頻,對信號加窗以避免短時語音段邊緣的影響。

下面介紹常用的一些聲學特徵。
線性預測係數LPC:線性預測分析從人的發聲機理入手,通過對聲道的短管級聯模型的研究,認爲系統的傳遞函數符合全極點數字濾波器的形式,從而n時刻的信號可以用前若干時刻的信號的線性組合來估計。通過使實際語音的採樣值和線性預測採樣值之間達到均方差最小LMS,即可得到線性預測係數LPC。對LPC的計算方法有自相關法(德賓Durbin法)、協方差法、格型法等等。計算上的快速有效保證了這一聲學特徵的廣泛使用。與LPC這種預測參數模型類似的聲學特徵還有線譜對LSP、反射係數等等。
倒譜系數CEP:利用同態處理方法,對語音信號求離散傅立葉變換DFT後取對數,再求反變換iDFT就可得到倒譜系數。對LPC倒譜(LPCCEP),在獲得濾波器的線性預測係數後,可以用一個遞推公式計算得出。實驗表明,使用倒譜可以提高特徵參數的穩定性。
Mel倒譜系數MFCC和感知線性預測PLP:不同於LPC等通過對人的發聲機理的研究而得到的聲學特徵,Mel倒譜系數MFCC和感知線性預測PLP是受人的聽覺系統研究成果推動而導出的聲學特徵。對人的聽覺機理的研究發現,當兩個頻率相近的音調同時發出時,人只能聽到一個音調。臨界帶寬指的就是這樣一種令人的主觀感覺發生突變的帶寬邊界,當兩個音調的頻率差小於臨界帶寬時,人就會把兩個音調聽成一個,這稱之爲屏蔽效應。Mel刻度是對這一臨界帶寬的度量方法之一。
MFCC的計算首先用FFT將時域信號轉化成頻域,之後對其對數能量譜用依照Mel刻度分佈的三角濾波器組進行卷積,最後對各個濾波器的輸出構成的向量進行離散餘弦變換DCT,取前N個係數。PLP仍用德賓法去計算LPC參數,但在計算自相關參數時用的也是對聽覺激勵的對數能量譜進行DCT的方法。

聲學模型
語音識別系統的模型通常由聲學模型和語言模型兩部分組成,分別對應於語音到音節概率的計算和音節到字概率的計算。本節和下一節分別介紹聲學模型和語言模型方面的技術。
HMM聲學建模:馬爾可夫模型的概念是一個離散時域有限狀態自動機,隱馬爾可夫模型HMM是指這一馬爾可夫模型的內部狀態外界不可見,外界只能看到各個時刻的輸出值。對語音識別系統,輸出值通常就是從各個幀計算而得的聲學特徵。用HMM刻畫語音信號需作出兩個假設,一是內部狀態的轉移只與上一狀態有關,另一是輸出值只與當前狀態(或當前的狀態轉移)有關,這兩個假設大大降低了模型的複雜度。HMM的打分、解碼和訓練相應的算法是前向算法、Viterbi算法和前向後向算法。
語音識別中使用HMM通常是用從左向右單向、帶自環、帶跨越的拓撲結構來對識別基元建模,一個音素就是一個三至五狀態的HMM,一個詞就是構成詞的多個音素的HMM串行起來構成的HMM,而連續語音識別的整個模型就是詞和靜音組合起來的HMM。
上下文相關建模:協同發音,指的是一個音受前後相鄰音的影響而發生變化,從發聲機理上看就是人的發聲器官在一個音轉向另一個音時其特性只能漸變,從而使得後一個音的頻譜與其他條件下的頻譜產生差異。上下文相關建模方法在建模時考慮了這一影響,從而使模型能更準確地描述語音,只考慮前一音的影響的稱爲Bi-Phone,考慮前一音和後一音的影響的稱爲Tri-Phone。
英語的上下文相關建模通常以音素爲基元,由於有些音素對其後音素的影響是相似的,因而可以通過音素解碼狀態的聚類進行模型參數的共享。聚類的結果稱爲senone。決策樹用來實現高效的triphone對senone的對應,通過回答一系列前後音所屬類別(元/輔音、清/濁音等等)的問題,最終確定其HMM狀態應使用哪個senone。分類迴歸樹CART模型用以進行詞到音素的發音標註。

語言模型
語言模型主要分爲規則模型和統計模型兩種。統計語言模型是用概率統計的方法來揭示語言單位內在的統計規律,其中N-Gram簡單有效,被廣泛使用。
N-Gram:該模型基於這樣一種假設,第n個詞的出現只與前面N-1個詞相關,而與其它任何詞都不相關,整句的概率就是各個詞出現概率的乘積。這些概率可以通過直接從語料中統計N個詞同時出現的次數得到。常用的是二元的Bi-Gram和三元的Tri-Gram。
語言模型的性能通常用交叉熵和複雜度(Perplexity)來衡量。交叉熵的意義是用該模型對文本識別的難度,或者從壓縮的角度來看,每個詞平均要用幾個位來編碼。複雜度的意義是用該模型表示這一文本平均的分支數,其倒數可視爲每個詞的平均概率。平滑是指對沒觀察到的N元組合賦予一個概率值,以保證詞序列總能通過語言模型得到一個概率值。通常使用的平滑技術有圖靈估計、刪除插值平滑、Katz平滑和Kneser-Ney平滑。

搜索
連續語音識別中的搜索,就是尋找一個詞模型序列以描述輸入語音信號,從而得到詞解碼序列。搜索所依據的是對公式中的聲學模型打分和語言模型打分。在實際使用中,往往要依據經驗給語言模型加上一個高權重,並設置一個長詞懲罰分數。
Viterbi:基於動態規劃的Viterbi算法在每個時間點上的各個狀態,計算解碼狀態序列對觀察序列的後驗概率,保留概率最大的路徑,並在每個節點記錄下相應的狀態信息以便最後反向獲取詞解碼序列。Viterbi算法在不喪失最優解的條件下,同時解決了連續語音識別中HMM模型狀態序列與聲學觀察序列的非線性時間對準、詞邊界檢測和詞的識別,從而使這一算法成爲語音識別搜索的基本策略。
由於語音識別對當前時間點之後的情況無法預測,基於目標函數的啓發式剪枝難以應用。由於Viterbi算法的時齊特性,同一時刻的各條路徑對應於同樣的觀察序列,因而具有可比性,束Beam搜索在每一時刻只保留概率最大的前若干條路徑,大幅度的剪枝提高了搜索的效率。這一時齊Viterbi-Beam算法是當前語音識別搜索中最有效的算法。 N-best搜索和多遍搜索:爲在搜索中利用各種知識源,通常要進行多遍搜索,第一遍使用代價低的知識源,產生一個候選列表或詞候選網格,在此基礎上進行使用代價高的知識源的第二遍搜索得到最佳路徑。此前介紹的知識源有聲學模型、語言模型和音標詞典,這些可以用於第一遍搜索。爲實現更高級的語音識別或口語理解,往往要利用一些代價更高的知識源,如4階或5階的N-Gram、4階或更高的上下文相關模型、詞間相關模型、分段模型或語法分析,進行重新打分。最新的實時大詞表連續語音識別系統許多都使用這種多遍搜索策略。
N-best搜索產生一個候選列表,在每個節點要保留N條最好的路徑,會使計算複雜度增加到N倍。簡化的做法是隻保留每個節點的若干詞候選,但可能丟失次優候選。一個折衷辦法是隻考慮兩個詞長的路徑,保留k條。詞候選網格以一種更緊湊的方式給出多候選,對N-best搜索算法作相應改動後可以得到生成候選網格的算法。
前向後向搜索算法是一個應用多遍搜索的例子。當應用簡單知識源進行了前向的Viterbi搜索後,搜索過程中得到的前向概率恰恰可以用在後向搜索的目標函數的計算中,因而可以使用啓發式的A算法進行後向搜索,經濟地搜索出N條候選。

系統實現
語音識別系統選擇識別基元的要求是,有準確的定義,能得到足夠數據進行訓練,具有一般性。英語通常採用上下文相關的音素建模,漢語的協同發音不如英語嚴重,可以採用音節建模。系統所需的訓練數據大小與模型複雜度有關。模型設計得過於複雜以至於超出了所提供的訓練數據的能力,會使得性能急劇下降。
聽寫機:大詞彙量、非特定人、連續語音識別系統通常稱爲聽寫機。其架構就是建立在前述聲學模型和語言模型基礎上的HMM拓撲結構。訓練時對每個基元用前向後向算法獲得模型參數,識別時,將基元串接成詞,詞間加上靜音模型並引入語言模型作爲詞間轉移概率,形成循環結構,用Viterbi算法進行解碼。針對漢語易於分割的特點,先進行分割再對每一段進行解碼,是用以提高效率的一個簡化方法。
對話系統:用於實現人機口語對話的系統稱爲對話系統。受目前技術所限,對話系統往往是面向一個狹窄領域、詞彙量有限的系統,其題材有旅遊查詢、訂票、數據庫檢索等等。其前端是一個語音識別器,識別產生的N-best候選或詞候選網格,由語法分析器進行分析獲取語義信息,再由對話管理器確定應答信息,由語音合成器輸出。由於目前的系統往往詞彙量有限,也可以用提取關鍵詞的方法來獲取語義信息。

自適應與魯棒性
語音識別系統的性能受許多因素的影響,包括不同的說話人、說話方式、環境噪音、傳輸信道等等。提高系統魯棒性,是要提高系統克服這些因素影響的能力,使系統在不同的應用環境、條件下性能穩定;自適應的目的,是根據不同的影響來源,自動地、有針對性地對系統進行調整,在使用中逐步提高性能。以下對影響系統性能的不同因素分別介紹解決辦法。
解決辦法按針對語音特徵的方法(以下稱特徵方法)和模型調整的方法(以下稱模型方法)分爲兩類。前者需要尋找更好的、高魯棒性的特徵參數,或是在現有的特徵參數基礎上,加入一些特定的處理方法。後者是利用少量的自適應語料來修正或變換原有的說話人無關(SI)模型,從而使其成爲說話人自適應(SA)模型。
說話人自適應的特徵方法有說話人規一化和說話人子空間法,模型方法有貝葉斯方法、變換法和模型合併法。
語音系統中的噪聲,包括環境噪聲和錄音過程加入的電子噪聲。提高系統魯棒性的特徵方法包括語音增強和尋找對噪聲干擾不敏感的特徵,模型方法有並行模型組合PMC方法和在訓練中人爲加入噪聲。信道畸變包括錄音時話筒的距離、使用不同靈敏度的話筒、不同增益的前置放大和不同的濾波器設計等等。特徵方法有從倒譜矢量中減去其長時平均值和RASTA濾波,模型方法有倒譜平移。

小結
以上介紹了實現語音識別系統的各個方面的技術。這些技術在實際使用中達到了較好的效果,但如何克服影響語音的各種因素還需要更深入地分析。目前聽寫機系統還不能完全實用化以取代鍵盤的輸入,但識別技術的成熟同時推動了更高層次的語音理解技術的研究。由於英語與漢語有着不同的特點,針對英語提出的技術在漢語中如何使用也是一個重要的研究課題,而四聲等漢語本身特有的問題也有待解決。 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章