專利名稱:采用多個文法網(wǎng)絡(luò)的語音識別系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及計算機實現(xiàn)的語音識別。更具體地,本發(fā)明涉及采用多個文法網(wǎng)絡(luò)處理語音數(shù)據(jù)的方法及裝置。采用多個網(wǎng)絡(luò)得出語音數(shù)據(jù)的不同分節(jié),以便從無用的語音中抽取有用的語音。
雖然本發(fā)明有許多用處,這里所描述的為適用于電話呼叫路由選擇應(yīng)用的類型的拼讀姓名識別系統(tǒng)。在示出的實施例中,利用第一與第二文法網(wǎng)絡(luò)來獨立檢測N最佳與M最佳字母序列。一種文法網(wǎng)絡(luò)是配置在用戶將響應(yīng)系統(tǒng)提示立即開始拼讀的假設(shè)之上的。第二種文法網(wǎng)絡(luò)是配置在拼讀的姓名字母序列是以系統(tǒng)不能識別的外來噪音或發(fā)音開始的假設(shè)之上的。將N最佳與M最佳字母序列分開提交給相對于有效姓名的詞典的動態(tài)編程匹配,以抽取對應(yīng)于各N最佳與M最佳字母序列的N最佳與M最佳姓名假設(shè)。然后通過從這些姓名假設(shè)集合中選擇最佳候選姓名而作出識別決定。
當(dāng)前的語音識別技術(shù)包含聲音數(shù)據(jù)中的模式識別及這些模式與系統(tǒng)所識別的預(yù)定詞典項集合的關(guān)聯(lián)。語音識別問題是極具挑戰(zhàn)性的,因為存在著如此之多的不同差異。通常,語音識別器以數(shù)字格式將進入的聲音數(shù)據(jù)作用在數(shù)學(xué)識別進程上,后者根據(jù)預(yù)定的模型將數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換成參數(shù)。
傳統(tǒng)上,模型是早先已用充分大的訓(xùn)練集合訓(xùn)練過的,從而極大地降低了單個說話者的差異?;谀P偷淖R別進程將進入的數(shù)據(jù)分節(jié)成諸如音素等基礎(chǔ)分量,然后通過與訓(xùn)練模型比較加上標(biāo)記。在一種形式的識別器中,一旦在單個音素上加上了標(biāo)記,便將該音素數(shù)據(jù)與系統(tǒng)詞典中預(yù)存儲的字比較。這一比較是通過對準(zhǔn)進程執(zhí)行的,由于不準(zhǔn)確的音素識別以及在給定的序列中插入與刪除音素而對準(zhǔn)進程會提供不精確的匹配。這一系統(tǒng)是在概率基礎(chǔ)上工作的。傳統(tǒng)上,語音識別器將從上分節(jié)、加標(biāo)記與對準(zhǔn)進程中得出的候選字中選擇最可能的字。
由于它們的最基本的本質(zhì),當(dāng)前的語音識別器從預(yù)定的詞典中選擇候選字,從而它們只識別預(yù)定的字的集合,這產(chǎn)生問題,特別是在根據(jù)語音識別結(jié)果作出進一步?jīng)Q定的系統(tǒng)中。在詞典中找不到的外來噪音或字的發(fā)音通常被錯誤地解釋成在詞典中能找到的字。基于這種錯誤識別的后續(xù)決定能導(dǎo)致有故障的系統(tǒng)性能。
為了說明這一問題,考慮拼讀姓名的電話呼叫路由選擇應(yīng)用。用合成的話音提示來指示用戶拼讀應(yīng)將呼叫的路由確定到他的人的姓名。如果用戶遵照這些指令,語音識別器識別所發(fā)出的各字母然后便能通過將字母序列與詞典對準(zhǔn)而查找拼讀出的姓名。然后系統(tǒng)利用在詞典中找到的路由信息將呼叫的路由確定到適當(dāng)?shù)姆謾C上。然而,如果用戶首先發(fā)出外加的信息,諸如在拼讀之前讀出該人的姓名,識別進程高度有可能失敗。這是因為識別系統(tǒng)期望只接收一序列發(fā)音的字母而將試圖作為一個或多個字母來“識別”講出的姓名。傳統(tǒng)的系統(tǒng)簡單地未裝設(shè)正確地分節(jié)進入的聲音數(shù)據(jù),因為系統(tǒng)建立在其上面的基礎(chǔ)模型假設(shè)數(shù)據(jù)為對系統(tǒng)有用或有意義的全部等價單元(說出的字母)這一先驗事實。
本發(fā)明解決上述問題的方法是通過采用與綜合多個文法網(wǎng)絡(luò)來生成多組識別候選字,某些基于假設(shè)存在外加語音的模型而某些則基于不存在外加語音的模型的語音識別系統(tǒng)。利用兩種模型的結(jié)果來作出最終識別決定,依賴各自的匹配概率值來選擇最可能的候選字。
按照本發(fā)明的一個方面,使用不同的第一與第二文法網(wǎng)絡(luò)分開處理語音數(shù)據(jù)得出語音數(shù)據(jù)的不同分節(jié)。以這一方法,系統(tǒng)從無用的語音中抽取有用的語音。對于各文法網(wǎng)絡(luò),生成多個識別候選字。轉(zhuǎn)佳實施例用第一文法網(wǎng)絡(luò)生成N最佳候選字并用第二文法網(wǎng)絡(luò)生成M最佳候選字,其中N與M為大于1的整數(shù)并可相等。第一與第二多個識別候選字(N最佳、M最佳)是根據(jù)至少一組關(guān)于有用的語音的先驗制約變換的。變換可包括,諸如,將候選字與系統(tǒng)所識別的拼讀姓名的詞典匹配。然后根據(jù)經(jīng)過變換的識別候選字作出識別決定。
如下面將更全面地說明的,本發(fā)明將語音數(shù)據(jù)分裂成各不相同地處理的兩條或更多路徑。一條路徑是采用根據(jù)只提供有用的發(fā)音(如字母)的假設(shè)的第一文法網(wǎng)絡(luò)處理的。另一條路徑是用假定在有用語音之前存在外加的無用語音的不同文法網(wǎng)絡(luò)處理的。從而不同的文法網(wǎng)絡(luò)得出不同的數(shù)據(jù)分節(jié)。
各路徑所生成的識別候選字可根據(jù)各候選字與各自的模型的匹配程度分別評分。不是為了選擇帶最高分的單一候選字而要求兩條路徑在這一階段上進行競爭,而是將兩組識別候選字保持分開。在這一階段,識別候選字表示N最佳及M最佳字母序列假設(shè)。為了選擇哪一種假設(shè)為最佳候選字,分開將兩組與系統(tǒng)所識別的所有姓名的詞典匹配。
詞典實際上是關(guān)于對系統(tǒng)有用的語音的先驗制約。從而一些字母序列假設(shè)可被評定為較少可能性,因為這些字母序列并不很好地與存儲在詞典中的字母序列匹配。當(dāng)前的較佳實施例利用N最佳與M最佳字母序列從詞典中選擇N最佳與M最佳姓名。從而將來自兩條路徑的貢獻都包含進作出決定過程中。最后,可組合N最佳與M最佳姓名組以構(gòu)成應(yīng)用輸入發(fā)音的縮小的詞典候選字集合。
這一縮小了大小的詞典可用來建立從N最佳與M最佳姓名候選字構(gòu)成的動態(tài)文法。這一動態(tài)文法取決于輸入發(fā)音是否包含外加語音而傾向于對一組或另一組候選字有利。如果存在外加話音,設(shè)計成識別與排斥外加話音的文法網(wǎng)絡(luò)將傾向于產(chǎn)生更好的識別結(jié)果,而在從N最佳與M最佳姓名候選字中構(gòu)成的動態(tài)文法中將這些結(jié)果反映為更好的候選字。反之,如果不存在外加話音,另一文法網(wǎng)絡(luò)將產(chǎn)生更好的識別結(jié)果,在動態(tài)文法中將其更好地反映為較好的候選字。
一旦構(gòu)成了動態(tài)文法,便可用根據(jù)動態(tài)文法來抽取單個最可能的候選姓名作為識別出的姓名的識別器來處理輸入語音數(shù)據(jù)。然后用識別出的姓名來訪問適當(dāng)?shù)臄?shù)據(jù)庫以適當(dāng)?shù)剡x擇電話呼叫的路由。
為了更完整地理解本發(fā)明、其目的與優(yōu)點,可參見以下說明書及附圖。
圖1為采用本發(fā)明的呼叫路由選擇裝置的示范性系統(tǒng)的方框圖;圖2為本發(fā)明的呼叫路由選擇裝置的示范性實施例的方框圖;圖3為建立在拼讀的姓名字母序列以有效字母開始的假設(shè)上的文法網(wǎng)絡(luò)G1的狀態(tài)圖4為建立在拼讀的姓名字母序列以系統(tǒng)不能識別的外來噪音或發(fā)音開始的假設(shè)上的文法網(wǎng)絡(luò)G2的狀態(tài)圖;圖5為本發(fā)明的當(dāng)前較佳識別系統(tǒng)的詳細(xì)方框圖;圖6為示出不同類型的識別錯誤的圖;圖7為示出優(yōu)化PLP-RASTA濾波器系數(shù)來降低替代、刪除與插入錯誤的曲線;圖8為示出改進的網(wǎng)絡(luò)結(jié)構(gòu)N最佳技術(shù)的圖;圖9為進一步描述如何在識別的回溯階段中執(zhí)行假設(shè)生成的圖。
下面在提示用戶通過口頭拼讀姓名到系統(tǒng)中來提供呼叫路由選擇信息的呼叫路由選擇裝置的上下文中來示出與描述本發(fā)明的原理。因此,為了幫助理解本語音識別系統(tǒng),首先提供在其中采用本語音識別系統(tǒng)的呼叫路由選擇裝置的簡要描述。然而應(yīng)記住,本發(fā)明的語音識別系統(tǒng)不限于呼叫路由選擇裝置。而是本識別系統(tǒng)可在必須從無用的外來噪音或話音中抽取有用的話音的廣范圍的不同應(yīng)用中找到用處。
系統(tǒng)概述及基本操作采用連續(xù)語音識別的呼叫路由選擇裝置示出在適合于插接與播放連接到現(xiàn)有專用小交換機(PBX)開關(guān)上或用于在制造時加進PBX設(shè)備中的示范性實施例中。參見圖1,PBX開關(guān)210用諸如電話線214等傳統(tǒng)裝置連接在電話網(wǎng)基本結(jié)構(gòu)212上。在所示的實施例中為了方便起見示出了三條線路。這不是為了限制本發(fā)明,由于本發(fā)明能應(yīng)用在具有更多或更少電話線的系統(tǒng)中。
PBX開關(guān)具有傳統(tǒng)的設(shè)計,能將來自網(wǎng)絡(luò)212的進入呼叫的路由確定到諸如手機216等任何選擇的電話裝置上。如連接手機216那樣將本發(fā)明的拼讀姓名識別呼叫路由器218連接在PBX開關(guān)210上的附加分機或端口上。如下面要更全面地討論的,當(dāng)前的較佳實施例通過攜帶話音通信量的多條線路220并通過攜帶使呼叫路由器能與現(xiàn)有的PBX系統(tǒng)整體地工作的控制邏輯信號的附加線路222連接在PBX開關(guān)上。
圖2更詳細(xì)地示出呼叫路由器218。同時示出PBX開關(guān)210及線路220與222??捎酶鞣N不同方式根據(jù)PBX系統(tǒng)的結(jié)構(gòu)構(gòu)成呼叫路由器218。在所示的實施例中,呼叫路由器具有分別連接在三條線路220上的三條獨立音頻通道。當(dāng)然所需的通道數(shù)目將取決于電話系統(tǒng)的結(jié)構(gòu)。這里示出了三條通道來說明系統(tǒng)如何為三條進入電話線214的各條上的三個主叫者同時提供拼讀姓名識別。為了支持更多的主叫者,可以包含更多的音頻通道或者可包含多路復(fù)用電路使通道能夠共用。
各音頻通道具有數(shù)字信號處理器(DSP)224及相關(guān)的模數(shù)/數(shù)模轉(zhuǎn)換電路226。數(shù)字信號處理器耦合在包含存儲有所有參照或姓名的數(shù)據(jù)存儲器230的主處理器228上。數(shù)據(jù)存儲器230可以是諸如隨機存取存儲器等任何適用的數(shù)字存儲介質(zhì)。數(shù)據(jù)存儲器230存儲系統(tǒng)所能識別的所有姓名的連續(xù)語音識別詞典連同相關(guān)的電話交換機號碼。如下面將更全面地說明的,本較佳實施例采用為與說話者無關(guān)的連續(xù)拼讀姓名識別優(yōu)化的特殊語音識別器。
同時耦合在主處理器228(或作為主處理器的一部分加入的)有呼叫轉(zhuǎn)換邏輯232。這一轉(zhuǎn)換邏輯連接在信號線222上并遵照PBX開關(guān)規(guī)定的通信協(xié)議與PBX開關(guān)系統(tǒng)通信。
在進行語音識別器的詳細(xì)說明之前,呼叫路由器218的操作的簡要說明可能是有幫助的。參見圖1與2,當(dāng)進入呼叫通過電話線214之一到達PBX開關(guān)時,它可以由人類接線員處理而不受本發(fā)明的呼叫路由器的干預(yù)。然而,如果人類接線員不能處理該呼叫(例如,呼叫在沒有人類接線員的正常上班時間以后進入),便將PBX開關(guān)編程為將呼叫轉(zhuǎn)送給呼叫路由器218。開關(guān)根據(jù)在線路222上發(fā)送的轉(zhuǎn)換指令,通過簡單地將該呼叫分配給呼叫路由器的音頻通道之一(線路220之一)來做到這一點。如果想要,可將PBX開關(guān)編程為在第一條線路忙時跳到路由器218內(nèi)的不同音頻通道上的不同信號線上。完成了這一操作之后,進入呼叫現(xiàn)在與DSP處理器224中選定的一個進行通信。處理器向進入主叫人提供所需要的話音提示(請求主叫人拼讀所希望的人的姓名,并且它還處理主叫人的拼讀的姓名應(yīng)答。下面描述DSP處理器224使用的語音識別算法的細(xì)節(jié)。
作為識別進程的一部分,DSP處理器224從主機下載共享的語音識別資源的拷貝,即反映所有參照姓名及它們的相關(guān)電話分機號的數(shù)據(jù)。采用實時識別的N最佳策略的DSP實現(xiàn)的語音識別器從數(shù)據(jù)存儲器230中選擇最可能的候選字。利用DSP處理提供語音合成信號或播放再生所選擇的人姓名的預(yù)錄制的音頻信號而將這一候選姓名說回給主叫人。然后要求主叫人應(yīng)答“是”或“否”,表示候選名字是否正確。如果是,主處理器228便用呼叫轉(zhuǎn)換邏輯232指令PBX開關(guān)將呼叫從線路220之一傳送到選中的一個手機216。出現(xiàn)了這一轉(zhuǎn)換之后,呼叫路由器的音頻通道便又一次空閑來處理新進入的呼叫。
較佳語音識別處理的細(xì)節(jié)當(dāng)前較佳的語音識別系統(tǒng)可看作是多遍過程,只有在前面的(對準(zhǔn))遍并不產(chǎn)生單個識別的姓名作為輸出時才使用最后一遍。第一與最后的遍采用隱藏的Markov模型識別,而對準(zhǔn)遍采用與詞典的動態(tài)編程對準(zhǔn)。如下面要全面討論的,第一遍(隱藏的Markov模型識別)本身分成多條并行子路徑。圖5中示出了第一、第二與第三遍。注意第一遍分叉通過分開的隱藏Markov模型識別框26a與26b。
所示的實施例是設(shè)計成識別包含通過主叫人的電話手機10作為輸入提供給識別系統(tǒng)的一序列字母的連續(xù)拼讀的姓名的。為了示出有用與無用輸入的例子,示出了兩個手機10。進入一個手機,主叫人通過提供字母序列H-A-N-S-O-N正確地使用本系統(tǒng)。進入另一手機,主叫人通過說出姓名然后跟隨字母序列“Hanson”H-A-N-S-O-N,不正確地使用本系統(tǒng)。如下面要描述的,系統(tǒng)是設(shè)計成接納正確使用與不正確使用兩者的,得出更強有力的識別系統(tǒng)。
總的示出在12上的識別系統(tǒng)包含總的示出在13上的姓名檢索系統(tǒng)。如將要討論的,姓名檢索系統(tǒng)具有構(gòu)成表示在姓名詞典中找到的項的選擇的子集的動態(tài)文法的能力。動態(tài)文法用在在第二遍中不能完成識別而處理進行到第三遍的事件中。
可將輸入字母序列饋送給適當(dāng)?shù)恼Z音分析模塊14。這一模塊執(zhí)行設(shè)計成降低替代、刪除與插入錯誤數(shù)目的前端優(yōu)化。在連續(xù)地拼讀的姓名中的替代錯誤是用不正確的字母替代正確的字母。圖6在16與18處示出在拼讀姓名JOHNSON的識別中產(chǎn)生的替代錯誤的示例。刪除錯誤是從連續(xù)拼讀的姓名中省略一個或多個字母。這示出在圖6中20處。插入錯誤是在連續(xù)地拼讀的姓名中包含進去原來未發(fā)出聲音的額外字母。插入錯誤的例子示出在圖6中22與24處。
語音分析模塊14是設(shè)計成在數(shù)字化的語音數(shù)據(jù)上操作的。從而如果采用的是模擬語音輸入系統(tǒng),應(yīng)首先將模擬信號數(shù)字化。這可以用包含在語音分析模塊14中的適當(dāng)模數(shù)電路來完成。
當(dāng)前較佳語音分析模塊利用8階PLP-RASTA過程來補償通信信道的影響。有關(guān)PLP-RASTA補償?shù)母嘈畔ⅲ奌.Hermansky、N.Morgan、A.Bayya及P.Kohn,EUROSPEECH′91,1367-1370頁,1991。當(dāng)前較佳實施例采用10毫秒幀位移與20毫秒分析窗。將RASTA濾波器系數(shù)優(yōu)化成減少替代、刪除與插入錯誤的數(shù)目。將最佳濾波器系數(shù)平衡選擇為0.90的值。
在確定優(yōu)化的RASTA濾波器系數(shù)中,將能量、能量的一階導(dǎo)數(shù)與靜態(tài)對數(shù)倒頻譜系數(shù)C1至C8(在7幀上計算的)的一階導(dǎo)數(shù)交替代與靜態(tài)對數(shù)倒頻譜系數(shù)組合以構(gòu)成語音參量表示(共18個系數(shù))。圖7示出減少替代、刪除與插入錯誤的數(shù)目的優(yōu)化RASTA濾波器系數(shù)。在這一圖中,PLP-RASTA代表能量、能量的一階導(dǎo)數(shù)、靜態(tài)對數(shù)倒頻譜系數(shù)與靜態(tài)對數(shù)倒頻譜系數(shù)的一階導(dǎo)數(shù)的組合。
雖然PLP-RASTA優(yōu)化是當(dāng)前較佳的,但也可使用其它形式的優(yōu)化。例如,也可替代地采用mel(音調(diào)單位)頻率對數(shù)倒頻譜系數(shù)(MFCC)分析。采用14階MFCC分析能獲得適當(dāng)?shù)慕Y(jié)果。對于MFCC分析,用16毫秒的幀移位與32毫秒的分析窗計算11個靜態(tài)對數(shù)倒頻譜系數(shù)(包含C0)。
利用不同的特征集可得到不同的識別精度。這些特征集可包含分開的與組合的靜態(tài)特征及動態(tài)特征。為了說明本發(fā)明中使用的參數(shù)化的堅固性,使用了純凈的及經(jīng)過濾波的數(shù)據(jù)。為了在當(dāng)前較佳實施例中得出測試集的濾波數(shù)據(jù),使用了失真濾波器并濾波測試數(shù)據(jù)來人為地建立訓(xùn)練集與測試集之間的失配。這一方面,見H.Murveit、J.Butzberger與M.Weintraub的Darpa“Workshop Speech and Natural Language”(“研究室語音與自然語言”)280-284頁,1992年2月。
返回到圖5,將語音分析模塊14的輸出分裂成兩路,一路與隱藏的Markov模型識別框26a關(guān)聯(lián)及一路與隱藏的Markov模型識別框26b關(guān)聯(lián)。識別框26a用示意性地描繪在28a處的預(yù)定義字母文法G1工作。識別26b用示意性地描繪在28b處的不同字母文法G2工作。這些不同的字母文法是分別作為圖3與4中所示的文法網(wǎng)絡(luò)構(gòu)成的。這些文法為包含與各可能字母關(guān)聯(lián)的節(jié)點及哪些節(jié)點到節(jié)點的轉(zhuǎn)移是可能的圖。這兩種文法都包含靜默節(jié)點后面跟著字母環(huán)路,其中任何字母都可以跟隨任何字母。圖3的文法G1從靜默(sil)節(jié)點50開始,轉(zhuǎn)移到單個開始字母A、B、C…。圖4中所描繪的文法G2從填充物節(jié)點52開始以表示拼讀前說出的外加話音或噪音。填充物節(jié)點轉(zhuǎn)移到靜默節(jié)點52然后到與G1一樣的單個字母節(jié)點。在當(dāng)前較佳實施例中,識別框26a與26b是采用Viterbi解碼的幀同步的、一階、連續(xù)密度隱藏的Markov模識別器。
當(dāng)前較佳實施例采用產(chǎn)生N最佳或M最佳假設(shè)(不是單個假設(shè))的經(jīng)過修改的Viterbi解碼器。通常Viterbi解碼器是設(shè)計成根據(jù)HMM模型與測試發(fā)音之間的匹配的概率只提供最佳假設(shè)的。修改這一標(biāo)準(zhǔn)viterbi解碼器供在本發(fā)明中使用,從而它根據(jù)HMM模型與測試發(fā)音之間的匹配的最高概率提供N最佳或M最佳假設(shè)。識別框26a與26b各生成它們自己的N最佳或M最佳假設(shè)。如果想要,這兩個識別框不一定生成相同數(shù)目的假設(shè),然而在較佳實施例中采用了相同的數(shù)目(例如,N=M=10)。從而在圖5中,識別框26a產(chǎn)生N最佳假設(shè)而識別框26b產(chǎn)生M最佳假設(shè)。如上所述,符號N與M可以是大于1的任何整數(shù)。為整數(shù)N與M選擇的精確值可取決于處理器速度及存儲器大小。下面將更全面地討論生成N最佳(或M最佳)候選字母的技術(shù)。可以理解,兩種情況中生成N最佳(或M最佳)假設(shè)的技術(shù)是基本上相同的。
在26a與26b上使用的隱藏Markov模型設(shè)置有束搜索能力,這一能力設(shè)計成限制搜索空間,因此識別器將更快地處理進入的語音、隱藏Markov模型識別器產(chǎn)生表示輸入語音與參照語音之間匹配的似然性的分?jǐn)?shù)。沒有束搜索機制,識別器在搜索過程中必須為各幀上所有可能路徑評分。有了束搜索,識別器只須考慮其分?jǐn)?shù)偏離最佳分?jǐn)?shù)不大于束寬度的量的那些路徑即可。不是搜索整個搜索空間而實現(xiàn)束搜索,從而刪除了較少可能性的搜索路徑,使得只返回最佳假設(shè)。
然后將從識別器26a與26b得出的N最佳(或M最佳)假設(shè)分別傳遞給動態(tài)編程(DP)對準(zhǔn)模塊38a與38b。動態(tài)編程對準(zhǔn)模塊能訪問對照它比較N最佳(或M最佳)假設(shè)的相關(guān)姓名詞典39。利用動態(tài)編程來計入插入、替代與刪除錯誤。
在一些情況中,動態(tài)編程對準(zhǔn)的結(jié)果將產(chǎn)生不帶其它候選字的單個姓名。決策策略模塊40檢測到它并在從DP對準(zhǔn)中只得出一個候選姓名時便提供這一識別出的姓名作為輸出。在大多數(shù)情況中,并不得出單一候選姓名,在這一情況中,決策策略模塊便將N最佳與M最佳假設(shè)傳遞給模塊42供建立動態(tài)文法。
模塊42利用DP對準(zhǔn)模塊提供的N最佳與M最佳候選姓名建立文法。然后調(diào)用高度制約的識別器44用動態(tài)文法42評價N最佳與M最佳候選姓名。識別器44也可以是隱藏的Markov模型識別器。即使高度制約的,由于動態(tài)文法是小的并由于不需要重新計算參數(shù)表示(在14中計算的),數(shù)據(jù)通過這一識別器并不費時。如果希望,可在識別器26a與26b或識別器44的輸出上應(yīng)用神經(jīng)網(wǎng)絡(luò)鑒別器。
附錄A中的清單示出本發(fā)明的系統(tǒng)在識別拼讀的姓名WILSON中如何工作。在該清單中指名為[第一遍]的段示出兩種文法所生成的所有假設(shè)。其中沒有一個是姓名WILSON。
在標(biāo)記為[DP對準(zhǔn)]的段中,列出了最高候選姓名包含在這一清單中的有姓名WILSON(10個中的候選姓名1)。
在標(biāo)記為[代價高的制約遍]中,只將輸入發(fā)音與DP對準(zhǔn)中選擇的候選姓名比較。在這一情況中,識別器正確地檢測出姓名WILSON。
N最佳處理技術(shù)N最佳或M最佳候選姓名是用N最佳選擇算法選擇的。關(guān)于這一技術(shù)的細(xì)節(jié),見R.Schwartz與Steve Austin的“N最佳搜索的高效、高性能算法”,語音識別DARPA討論會,6-11頁,1990。在語音識別中,將進入的語音數(shù)據(jù)分成時幀并在逐幀基礎(chǔ)上分析。對于任何給定的發(fā)音,可以有若干種假設(shè)。當(dāng)前較佳的N最佳(或M最佳)算法只根據(jù)前一個字母而不根據(jù)前一個字母再以前的字母來選擇字母的最佳起始時間。隨著說出與分析各字母,隱藏的Markov模型識別器為各模型生成概率分?jǐn)?shù)。因為本系統(tǒng)的目的為最終選擇最可能的字母序列,本系統(tǒng)存儲表示字母的可能拼讀組合的多條路徑。
為了使系統(tǒng)作為實時識別器工作得更好,實現(xiàn)了兩個不同級別的數(shù)據(jù)刪除。兩個級別上的刪除技術(shù)都包含將給定假設(shè)的概率對概率閾值進行比較。如果給定路徑的概率在閾值以下,便將其丟棄。更具體地,刪除發(fā)生在局部級與全程級上。局部級刪除包含丟棄表示在字母級上低概率匹配的路徑;而全程刪除則包含丟棄表示從發(fā)音開始到找到的最后一個字母的低概率匹配的路徑。從而,在拼讀姓名結(jié)束時,執(zhí)行遞歸回溯來抽取N最佳(或M最佳)姓名假設(shè)。在執(zhí)行回溯操作時,局部與全程刪除已減少了分析所需的存儲器空間的大小。
除了局部與全程刪除,當(dāng)前較佳系統(tǒng)也可采用自適應(yīng)閾值,從而隨著系統(tǒng)的運行自動調(diào)節(jié)刪除閾值。
在可能混淆的字的情況中,識別器使用狀態(tài)結(jié)束幫助集焦在字的鑒別部分上及減少估計的參數(shù)的數(shù)目。結(jié)合的字母為(m、n)、(i、r)、(p、t)與(b、d)。在當(dāng)前較佳實施例中,除外字母W的所有字母都是用6狀態(tài)HMM模型表示的。字母W是用12狀態(tài)HMM模型表示的而靜默模型則用一種狀態(tài)表示。取決于字母如何可以混淆,字母模型具有不同數(shù)目的高斯密度?!癊集”字母b,c,d,e,g,p,t,v與z以及字母m,n,s與f全部用6種高斯密度建模,而其余字母則用三種高斯密度建模。
圖8示出用于執(zhí)行N最佳(或M最佳)假設(shè)分析的另一當(dāng)前較佳技術(shù)。這里稱作格子N最佳技術(shù),該過程在各幀上計算各文法節(jié)點的似然性并保存進入該節(jié)點的最佳響應(yīng)。然后連同該假設(shè)成立的幀數(shù)存儲概率。從而該技術(shù)保持N最佳(或M最佳)假設(shè)并將最佳的一種傳播通過節(jié)點,所有其它的假設(shè)則由最大似然路徑歸類。
viterbi前向算法計算各狀態(tài)的概率。這是在輸入緩沖器中的所有數(shù)據(jù)上逐幀進行的,將這些概率存儲在狀態(tài)數(shù)據(jù)結(jié)構(gòu)中。當(dāng)前較佳格子N最佳技術(shù)為產(chǎn)生N最佳(或M最佳)候選姓名的修改的Viterbi算法,但在下一個模型中只傳播最大似然性。從而在各幀上,該例程計算各文法節(jié)點的似然性,然后保存進入該節(jié)點的最佳響應(yīng)。
參見圖8,其中描繪了網(wǎng)絡(luò)節(jié)點n。三種假設(shè)W1、W2與W3進入節(jié)點n。在這些假設(shè)中只將最大似然性(最高概率)向前帶。從而節(jié)點n根據(jù)來自節(jié)點n的最大似然性生成下一個字假設(shè)Wj、Wk與Wl。Viterbi前向算法存儲概率、持續(xù)時間(當(dāng)前假設(shè)成立的幀數(shù))及指向生成該特定網(wǎng)絡(luò)節(jié)點的各假設(shè)的指針。在分析狀態(tài)數(shù)據(jù)結(jié)構(gòu)中的概率數(shù)據(jù)時,回溯算法利用這一信息。
可參照圖9理解回溯算法。當(dāng)前較佳回溯算法將所有N最佳結(jié)束節(jié)點按優(yōu)先次序排列到優(yōu)先級隊列中,作為垂直列280示出在圖16中。如果例如在第一遍中在最后一幀中傳播了十種假設(shè)(N=10),則在優(yōu)先級隊列280中將有10個結(jié)束節(jié)點(n1,n2,…n10)。以遞降次序排序結(jié)束節(jié)點,使得隊列中的第一個結(jié)束節(jié)點表示帶有最好概率分的節(jié)點。
在圖9中為了示例目的假定節(jié)點n1為最高分節(jié)點。通過回溯一步定位生成該給定節(jié)點n1的假設(shè)(W1、W2或W3)而擴充該節(jié)點。依次標(biāo)識這一假設(shè)使回溯例程能標(biāo)識生成所標(biāo)識的假設(shè)的節(jié)點。在圖16中,如果假設(shè)W2負(fù)責(zé)生成節(jié)點n1,則通過回溯標(biāo)識節(jié)點nb。然后在優(yōu)先級隊列280中某些位置上用節(jié)點nb替代節(jié)點n1。替代后,優(yōu)先級隊列保持按降序排序。如果新替代的節(jié)點nb正好具有最高分,則它將占據(jù)以前由節(jié)點n1占據(jù)的位置。當(dāng)然,優(yōu)先級隊列中的其它節(jié)點之一也可能具有比新代入的節(jié)點nb高的分?jǐn)?shù)。在這一情況中,在下一個回溯操作中將使用最高分節(jié)點而不是新代入的節(jié)點nb。
以上述方式進行回溯直到在回溯中遇到起始節(jié)點(對應(yīng)于語音的第一幀的節(jié)點)為止。到達起始節(jié)點時便找到了一種假設(shè)。隨著回溯的進行,回溯算法保存遇到的各個符號??蓪⑦@些符號作為串保存,在相反的次序上向后讀時生成最可能的候選姓名。
圖9示出了存在N最佳假設(shè)(N=10)時的一般情況。為了進一步說明優(yōu)先級隊列回溯過程,見附錄B中提出的例子。該例子示出姓名“JONES”的回溯過程。
從上文中可以理解,本發(fā)明的呼叫路由選擇裝置很好地適用于插接兼容連接到實際上任何辦公室電話網(wǎng)或PBX系統(tǒng)上。路由選擇裝置采用完善的與說話人無關(guān)的連續(xù)語音識別技術(shù),該技術(shù)允許進入主叫人拼讀受話人的姓名,而系統(tǒng)自動地確定所要求的受話人的正確電話分機;并使現(xiàn)有的電話網(wǎng)或PBX系統(tǒng)將進入主叫人連接到受話人的分機上。本發(fā)明消除了通過麻煩的按鍵命令與電話網(wǎng)通信的要求,使系統(tǒng)很好地適合于視力不良者。本語音識別技術(shù)是高度靈活的進入主叫人可用他們自己的自然說話速率拼讀,而在主叫人停止講話后系統(tǒng)自動提示用戶確認(rèn)選擇的姓名。如果進入主叫人短暫停止然后繼續(xù)拼讀,系統(tǒng)將自動恢復(fù)語音識別。即使在噪雜的電話信道上,多遍語音識別過程也能很好地執(zhí)行。過程在遍之間傳播N最佳假設(shè),并將更費計算力的過程推遲到最后一遍,此時可能的姓名的候選表已大為縮小了。作為N最佳多遍識別進程的效果,本發(fā)明能用低成本DSP電路實現(xiàn)。
雖然已以其當(dāng)前較佳形式描述了本發(fā)明,應(yīng)理解可以不脫離所附權(quán)利要求書的精神作出一定的修改。從而,例如可以設(shè)想不同的配置來與不同類型的當(dāng)今的與將來的電話系統(tǒng)連接,既包含模擬系統(tǒng)又包含數(shù)字系統(tǒng)。
權(quán)利要求
1.一種處理用于字識別的語音數(shù)據(jù)的方法,包括根據(jù)第一文法模型用識別器處理所述語音數(shù)據(jù)以抽取第一多個識別候選字;根據(jù)與所述第一文件模型不同的第二文法模型用識別器處理所述語音數(shù)據(jù)以抽取第二多個識別候選字;將所述第一多個識別候選字與預(yù)定的字的詞典對準(zhǔn)以生成第一候選字表;將所述第二多個識別候選字與預(yù)定的字的所述詞典對準(zhǔn)以生成第二候選字表;從所述第一與第二候選字表建立動態(tài)文法模型;以及根據(jù)所述動態(tài)文法模型用識別器處理所述語音數(shù)據(jù)以抽取識別的字。
2.權(quán)利要求1的方法,其中所述第一與第二文法模型為包含多個互連的字母模型的網(wǎng)絡(luò)模型。
3.權(quán)利要求2的方法,其中所述字母模型是用隱藏的Markov模型表示的。
4.權(quán)利要求1的方法,其中所述第一與第二文法模型為包含多個互連的字母模型的網(wǎng)絡(luò)模型,及所述第二文法模型至少包含一個填充物模型來表示未由所述字母模型定義的發(fā)音。
5.權(quán)利要求1的方法,其中所述第一與第二文法模型為包含多個互連的字母模型的網(wǎng)絡(luò)模型,及所述第二文法模型至少包含一個表示未由所述字母模型定義的發(fā)音的填充物模型及一個表示所述語音數(shù)據(jù)中的暫停的靜默模型。
6.權(quán)利要求1的方法,其中所述第二文法模型定義字母標(biāo)出文法。
7.權(quán)利要求1的方法,其中所述第一與第二文法模型包括多個不同節(jié)點及其中所述第一與第二多個識別候選字是用按照所述語音數(shù)據(jù)如何緊密匹配所述節(jié)點評分所述節(jié)點的識別進程抽取的;以及其中所述第一與第二多個識別候選字是通過選擇評分為具有與所述語音數(shù)據(jù)最緊密的匹配的那些節(jié)點而抽取的。
8.權(quán)利要求1的方法,其中所述第二文法模型至少包括一個表示噪音的節(jié)點。
9.權(quán)利要求1的方法,還包括用所述識別出的字來選擇電話呼叫的路由。
10.一種處理用于拼讀的姓名識別的語音數(shù)據(jù)的方法,包括根據(jù)第一文法模型用識別器處理所述語音數(shù)據(jù)以抽取第一多個候選字母;根據(jù)第二文法模型用識別器處理所述語音數(shù)據(jù)以抽取第二多個候選字母;將所述第一多個候選字母與預(yù)定姓名的詞典對準(zhǔn)以生成第一候選姓名表;將所述第二多個識別候選字母與所述預(yù)定字詞典對準(zhǔn)以生成第二候選姓名表;從所述第一與第二候選姓名表建立動態(tài)文法模型;以及根據(jù)所述動態(tài)文法模型用識別器處理所述語音數(shù)據(jù)以抽取識別出的姓名。
11.權(quán)利要求10的方法,其中所述第一與第二文法模型是不同的。
12.權(quán)利要求10的方法,其中所述第一與第二文法模型為包含多個互連字母模型的網(wǎng)絡(luò)模型。
13.權(quán)利要求12的方法,其中所述字母模型為用隱藏Markov模型表示的。
14.權(quán)利要求10的方法,其中所述第一與第二文法模型為包含多個互連字母模型的網(wǎng)絡(luò)模型,而所述第二文法模型至少包含一個填充物模型來表示未由所述字母模型定義的發(fā)音。
15.權(quán)利要求10的方法,其中所述第一與第二文法模型為包含多個互連字母模型的網(wǎng)絡(luò)模型,及所述第二文法模型至少包含一個表示未由所述字母模型定義的發(fā)音的填充物模型及一個表示所述語音數(shù)據(jù)中的暫停的靜默模型。
16.權(quán)利要求10的方法,其中所述第二文法模型定義字母標(biāo)出文法。
17.權(quán)利要求10的方法,其中所述第一與第二文法模型包含多個不同節(jié)點,及其中所述第一與第二多個識別候選字是由按照所述語音數(shù)據(jù)如何緊密匹配所述節(jié)點評分所述節(jié)點的識別進程抽取的;以及其中所述第一與第二多個識別候選字是通過選擇評分為具有與所述語音數(shù)據(jù)最緊密的匹配的那些節(jié)點而抽取的。
18.權(quán)利要求10的方法,其中所述第二文法模型包括至少一個節(jié)點用于表示噪音。
19.權(quán)利要求10的方法,還包括用所述識別出的字來選擇電話呼叫的路由。
20.一種處理用于識別的語音數(shù)據(jù)的方法,包括根據(jù)第一文法網(wǎng)絡(luò)用識別器處理所述語音數(shù)據(jù)以按照第一語音輸入標(biāo)準(zhǔn)分節(jié)與抽取第一多個識別候選字;根據(jù)第二文法網(wǎng)絡(luò)用識別器處理所述語音數(shù)據(jù)以按照第二語音輸入標(biāo)準(zhǔn)分節(jié)與抽取第二多個識別候選字;根據(jù)所述語音數(shù)據(jù)上的至少一組先驗制約將所述第一與第二多個識別候選字變換成變換后的候選字;根據(jù)所述變換后的候選字作出識別決定。
21.一種處理用于識別的語音數(shù)據(jù)的方法,包括用得出所述語音數(shù)據(jù)的不同分節(jié)的不同的第一與第二文法網(wǎng)絡(luò)分開處理所述語音數(shù)據(jù)以從無用的語音中抽取有用的語音;用所述第一文法網(wǎng)絡(luò)生成第一多個識別候選字及用所述第二文法網(wǎng)絡(luò)生成第二多個識別候選字;根據(jù)關(guān)于對生成變換后的識別候選字有用的語音的至少一組先驗制約變換所述第一與第二多個識別候選字;以及根據(jù)所述變換后的識別候選字作出識別決定。
全文摘要
用多個文法網(wǎng)絡(luò)分節(jié)輸入語音,其中包含具有設(shè)計成表示噪音或外加語音的填充物模型的網(wǎng)絡(luò)。識別處理得出多個候選字表,各表包含生成的N最佳候選字.然后將表分開與有效姓名的詞典對準(zhǔn)以生成兩張有效姓名表。最后的識別遍將這兩張姓名表組合進動態(tài)文法中,并可用這一動態(tài)文法采用Viterbi識別找出最佳候選姓名。根據(jù)本識別系統(tǒng)的電話呼叫路由選擇應(yīng)用,無論用戶在拼讀之前是否說出姓名,都能選擇對應(yīng)于用戶所拼讀的姓名的最佳候選姓名。
文檔編號G01L5/00GK1249480SQ9812084
公開日2000年4月5日 申請日期1998年9月29日 優(yōu)先權(quán)日1998年9月29日
發(fā)明者邁克爾·蓋勒, 讓-克勞德·瓊奎 申請人:松下電器產(chǎn)業(yè)株式會社