專利名稱:用于語音分類和語音識別的隱藏條件隨機場模型的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及語音分類和語音識別,尤其涉及用于實現(xiàn)自動語音分類和語音識別的模型。
背景技術(shù):
在語音分類和語音識別中,隱藏馬爾可夫模型(HMM)被廣泛用于對語音的聲學(xué)建模。HMM是使用隱藏狀態(tài)序列的概念來對來自標(biāo)簽的觀測數(shù)據(jù)的生成的非平穩(wěn)性建模的再生模型。在輸入信號的每一幀上,HMM確定從每一可能的隱藏狀態(tài)生成該狀態(tài)的概率。該概率是通過將從語音幀導(dǎo)出的特征向量應(yīng)用于與該狀態(tài)相關(guān)聯(lián)的一組概率分布來確定的。另外,HMM確定從前一狀態(tài)轉(zhuǎn)移到隱藏馬爾可夫模型中的每一狀態(tài)的概率。使用組合的轉(zhuǎn)移概率和觀測概率,隱藏馬爾可夫模型選擇最可能生成該幀的狀態(tài)。
隱藏馬爾可夫模型的一個局限是,每一狀態(tài)的概率是通過使用相同的特征向量來確定的,從而對每一狀態(tài)使用同樣的特征集合。該局限是使不合需要的,因為不同的特征對某些語音要比其它語音更為重要。例如,當(dāng)將元音聲彼此區(qū)分時,共振峰的值是重要的。然而,當(dāng)區(qū)分摩擦音時,關(guān)于該語音是有聲還是無聲的信息是有益的。這樣,可能需要能夠?qū)τ谂c不同語音相關(guān)聯(lián)的狀態(tài)使用不同的特征。但是,HMM系統(tǒng)不允許這一能力。
另外,HMM模型不允許特征的幀間相關(guān)性的長度的變化。從而,在每一幀上,特征提供了關(guān)于先前幀的固定量的信息。為有助于區(qū)分語音,可能需要允許對與不同語音相關(guān)聯(lián)的狀態(tài)有不同長度的幀相關(guān)性。
在序列標(biāo)簽領(lǐng)域,使用了條件隨機場模型,它消除了隱藏馬爾可夫模型的某些局限。具體地,條件隨機場模型允許在確定每一幀中標(biāo)簽的概率時在該幀上使用整段話語上進行的觀測。另外,不同的標(biāo)簽可以與不同的特征相關(guān)聯(lián),從而允許對每一標(biāo)簽作更好的特征選擇。
CRF模型的一個問題是CRF要求標(biāo)簽在訓(xùn)練時是已知的。同樣,CRF模型不能夠為隱藏狀態(tài)建模,因為隱藏狀態(tài)在訓(xùn)練時是未知的。同樣,CRF模型沒有在語音識別和語音分類中使用。
最近,提出了一種條件隨機場模型的擴展,它結(jié)合了隱藏狀態(tài)。然而,并沒有提出或顯示該條件隨機場模型的擴展能夠用于語音識別和語音分類。具體地,在該擴展中示出的隱藏狀態(tài)不對應(yīng)于傳統(tǒng)上用于語音識別的、與特定語音單位相關(guān)聯(lián)的隱藏狀態(tài)。
發(fā)明內(nèi)容
提供了一種用于訓(xùn)練和使用隱藏條件隨機場模型用于語音識別和語音分類的方法和裝置。該隱藏條件隨機場模型使用了特征,特征中的至少一個是基于一語音單位上的隱藏狀態(tài)。特征的值由一段語音來確定,且這些值用于為這段語音標(biāo)識語音單位。
圖1是可在其中實現(xiàn)本發(fā)明的一計算環(huán)境的框圖。
圖2是可在其中實現(xiàn)本發(fā)明的一替換計算環(huán)境的框圖。
圖3是在本發(fā)明的一實施例中的語音識別/語音分類器訓(xùn)練和解碼系統(tǒng)的框圖。
圖4是在本發(fā)明中訓(xùn)練隱藏條件隨機場的流程圖。
圖5是在本發(fā)明的實施例中用于訓(xùn)練隱藏條件隨機場模型的約束格狀結(jié)構(gòu)圖,其中語音單位的邊界是已知的。
圖6是在本發(fā)明的實施例中用于訓(xùn)練隱藏條件隨機場模型的約束格狀結(jié)構(gòu)圖,其中語音單位的邊界是未知的。
圖7是在本發(fā)明的實施例中用于訓(xùn)練和解碼的非約束格狀結(jié)構(gòu)。
具體實施例方式
圖1示出了可在其上實現(xiàn)本發(fā)明的合適的計算系統(tǒng)環(huán)境100的示例。計算環(huán)境100僅僅是合適的計算環(huán)境的一個示例,且不意于對于本發(fā)明的使用范圍或功能的提出任何限制。也不應(yīng)該把計算環(huán)境100解釋為對在示例性操作環(huán)境100中示出的任一組件或其組合有任何依賴或要求。
本發(fā)明可與眾多其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置一起操作。適合在本發(fā)明中使用的公知的計算系統(tǒng)、環(huán)境和/或配置的示例包括,但不限于,個人計算機、服務(wù)器計算機、手持或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機頂盒、可編程消費者電子產(chǎn)品、網(wǎng)絡(luò)PC、小型機、大型機、電話系統(tǒng)、包含上述系統(tǒng)或設(shè)備中的任一個的分布式計算機環(huán)境等。
本發(fā)明可在諸如由計算機執(zhí)行的程序模塊等的計算機可執(zhí)行指令通用語境下描述。一般而言,程序模塊包括例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等,它們執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型。本發(fā)明被設(shè)計成可以在分布式計算環(huán)境中實現(xiàn),其中任務(wù)由通過通信網(wǎng)絡(luò)連接的遠程處理設(shè)備執(zhí)行。在分布式計算環(huán)境中,程序模塊可以位于包括存儲器存儲設(shè)備在內(nèi)的本地和遠程計算機存儲介質(zhì)中。
參考圖1,用于實現(xiàn)本發(fā)明的示例性系統(tǒng)100包括計算機110形式的通用計算設(shè)備。計算機110的組件包括,但不限于,處理單元120、系統(tǒng)存儲器130和將包括系統(tǒng)存儲器在內(nèi)的各種系統(tǒng)組件耦合至處理單元120的系統(tǒng)總線121。系統(tǒng)總線121可以是任何類型的總線結(jié)構(gòu)中的任一種,包括存儲器總線或存儲器控制器、外部總線和使用多種總線體系結(jié)構(gòu)中的任一種的局部總線。作為示例,而非限制,這樣的體系結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、微通道體系結(jié)構(gòu)(MCA)總線、擴展ISA(EISA)總線、視頻電子技術(shù)標(biāo)準(zhǔn)協(xié)會(VESA)局部總線和外圍部件互連接口(PCI)總線(也被稱為Mezzanine總線)。
計算機110通常包括各種計算機可讀介質(zhì)。計算機可讀介質(zhì)可以是能夠被計算機110訪問到的任何可用介質(zhì),且包括易失性的和非易失性介質(zhì)、可移動的和不可移動介質(zhì)。作為示例,而非限制,計算機可讀介質(zhì)可以包括計算機存儲介質(zhì)和通信介質(zhì)。計算機存儲介質(zhì)包括以任何方法或技術(shù)實現(xiàn)的用于存儲諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的易失性和非易失性、可移動的和不可移動介質(zhì)。計算機存儲介質(zhì)包括,但不限于,RAM、ROM、EEPROM、閃存或其它存儲器技術(shù),CD-ROM、數(shù)字化多功能盤(DVD)或其它光學(xué)存儲、磁帶盒、磁帶、磁盤存儲或其它磁性存儲設(shè)備、或能用于存儲所需信息且可以由計算機110訪問的任何其它介質(zhì)。通信介質(zhì)通常具體化為諸如載波或其它傳輸機制等已調(diào)制數(shù)據(jù)信號中的計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),且包含任何信息傳遞介質(zhì)。術(shù)語“已調(diào)制數(shù)據(jù)信號”指的是一種信號,其一個或多個特征以在信號中編碼信息的方式被設(shè)定或更改。作為示例,而非限制,通信介質(zhì)包括有線介質(zhì),諸如有線網(wǎng)絡(luò)或直接線連接,和無線介質(zhì),諸如聲學(xué)、射頻、紅外線和其它無線介質(zhì)。上述中任何的結(jié)合也應(yīng)包含在計算機可讀介質(zhì)范圍之內(nèi)。
系統(tǒng)存儲器130包括易失性或非易失性存儲器形式的計算機存儲介質(zhì),諸如只讀存儲器(ROM)131和隨機存取存儲器(RAM)132。基本輸入/輸出系統(tǒng)133(BIOS),包含有助于諸如啟動時在計算機110的元件之間傳遞信息的基本例程,通常存儲在ROM 131中。RAM 132通常包含處理單元120可以立即訪問和/或目前正在操作的數(shù)據(jù)和/或程序模塊。作為示例,而非限制,圖2示出了操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137。
計算機110也可以包括其它可移動/不可移動、易失性/非易失性計算機存儲介質(zhì)。僅作為示例,圖1示出了從不可移動、非易失性磁介質(zhì)中讀取或向其寫入的硬盤驅(qū)動器141,從可移動、非易失性磁盤152中讀取或向其寫入的磁盤驅(qū)動器151,和從諸如CD ROM或其它光學(xué)介質(zhì)等可移動、非易失性光盤156中讀取或向其寫入的光盤驅(qū)動器155??梢栽谑纠圆僮鳝h(huán)境下使用的其它可移動/不可移動、易失性/非易失性計算機存儲介質(zhì)包括,但不限于,盒式磁帶、閃存卡、數(shù)字多功能盤、數(shù)字錄像帶、固態(tài)RAM、固態(tài)ROM等。硬盤驅(qū)動器141通常由不可移動存儲器接口,諸如接口140連接至系統(tǒng)總線121,磁盤驅(qū)動器151和光盤驅(qū)動器155通常由可移動存儲器接口,諸如接口150連接至系統(tǒng)總線121。
以上描述和在圖1中示出的驅(qū)動器及其相關(guān)聯(lián)的計算機存儲介質(zhì)為計算機110提供了對計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲。在圖1中,例如,硬盤驅(qū)動器141被描述為存儲操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147。注意到這些組件可以與操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137相同或不同。操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147在這里被標(biāo)注了不同的編號是為了說明至少它們是不同的副本。
用戶可以通過輸入設(shè)備,諸如鍵盤162、麥克風(fēng)163和定點設(shè)備161(通常指鼠標(biāo)、跟蹤球或觸摸墊)向計算機110輸入命令和信息。其它輸入設(shè)備(未示出)可以包括操縱桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀等。這些和其它輸入設(shè)備通常由耦合至系統(tǒng)總線的用戶輸入接口160連接至處理單元120,但也可以由其它接口或總線結(jié)構(gòu),諸如并行端口、游戲端口或通用串行總線(USB)連接。監(jiān)視器191或其它類型的顯示設(shè)備也經(jīng)由一接口,諸如視頻接口190,連接至系統(tǒng)總線121。除監(jiān)視器以外,計算機也可以包括其它外圍輸出設(shè)備,諸如揚聲器197和打印機196,它們可以通過輸出外圍接口195連接。
計算機110可使用至一個或多個遠程計算機,諸如遠程計算機180的邏輯連接在網(wǎng)絡(luò)化環(huán)境下運行。遠程計算機180可以是個人計算機、手持設(shè)備、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備或其它常見網(wǎng)絡(luò)節(jié)點,且通常包括上文關(guān)于計算機110描述的許多或所有元件。圖1中所示邏輯連接包括局域網(wǎng)(LAN)171和廣域網(wǎng)(WAN)173,但也可以包括其它網(wǎng)絡(luò)。這樣的網(wǎng)絡(luò)環(huán)境在辦公室、企業(yè)范圍計算機網(wǎng)絡(luò)、企業(yè)內(nèi)部互聯(lián)網(wǎng)和因特網(wǎng)中是常見的。
當(dāng)在LAN網(wǎng)絡(luò)環(huán)境中使用時,計算機110通過網(wǎng)絡(luò)接口或適配器170連接至局域網(wǎng)171。當(dāng)在WAN網(wǎng)絡(luò)環(huán)境中使用時,計算機110通常包括調(diào)制解調(diào)器172或通過諸如因特網(wǎng)等WAN 173建立通信的其它裝置。調(diào)制解調(diào)器172可以是內(nèi)部或外部的,它可以通過用戶輸入接口160或其它合適的機制連接至系統(tǒng)總線121。在網(wǎng)絡(luò)化環(huán)境中,相對于計算機110所描述的程序模塊或其部分可以存儲在遠程存儲器存儲設(shè)備中。作為示例,而非限制,圖1示出了遠程應(yīng)用程序185駐留在存儲器設(shè)備181上。可以理解,所示的網(wǎng)絡(luò)連接是示例性的,且可以使用在計算機之間建立通信鏈路的其它手段。
圖2是移動設(shè)備200的框圖,它是一個示例性計算環(huán)境。移動設(shè)備200包括微處理器202、存儲器204、輸入/輸出(I/O)組件206和用于與遠程計算機或其它移動設(shè)備通信的通信接口208。在一實施例中,上述組件為相互通信而通過合適的總線210耦合在一起。
存儲器204被實現(xiàn)為非易失性電子存儲器,諸如帶有備用電池模塊(未示出)的隨機存取存儲器(RAM),這樣當(dāng)移動設(shè)備200的總電源被關(guān)閉時,存儲在存儲器204中的信息也不會丟失。存儲器204的一部分較佳地被分配為用于程序執(zhí)行的可尋址存儲器,而存儲器204的另一部分較佳地用于存儲,諸如模擬硬盤驅(qū)動器上的存儲。
存儲器204包括操作系統(tǒng)212、應(yīng)用程序214和對象存儲216。在操作過程中,操作系統(tǒng)212較佳地由處理器202從存儲器204執(zhí)行。在一較佳實施例中,操作系統(tǒng)212是可從微軟公司購買的WINDOWSCE操作系統(tǒng)。操作系統(tǒng)212較佳地是為移動設(shè)備所設(shè)計的,且實現(xiàn)能夠由應(yīng)用程序214通過一組所展示的應(yīng)用程序編程接口和方法所使用的數(shù)據(jù)庫特征。對象存儲216中的對象由應(yīng)用程序214和操作系統(tǒng)212至少部分地響應(yīng)于對所展示的應(yīng)用程序編程接口和方法的調(diào)用來維護。
通信接口208表示允許移動設(shè)備200發(fā)送和接收信息的眾多設(shè)備和技術(shù)。僅舉幾個示例,這些設(shè)備包括有線的和無線調(diào)制解調(diào)器、衛(wèi)星接收器和廣播調(diào)諧器。移動設(shè)備200也能夠被直接連接至計算機以與其交換數(shù)據(jù)。在這些情況下,通信接口208能夠是紅外線收發(fā)器或者串行或并行通信連接,上述所有都能夠傳輸流信息。
輸入/輸出組件206包括各種數(shù)據(jù)設(shè)備,諸如觸敏屏幕、按鈕、滾輪和麥克風(fēng),并包括多個輸出設(shè)備,包括音頻發(fā)生器、振動器和顯示器。以上列出的設(shè)備僅作為示例,且不需在移動設(shè)備200上全部存在。另外,其它輸入/輸出設(shè)備可以在本發(fā)明的范圍內(nèi)被連接至移動設(shè)備200或與其一同出現(xiàn)。
在本發(fā)明中,語音識別和語音分類是使用帶有隱藏狀態(tài)的條件隨機場模型來實現(xiàn),該模型被稱為隱藏條件隨機場模型。隱藏條件隨機場模型提供了給定一觀察結(jié)果序列和一組參數(shù)時諸如音位身份等標(biāo)簽,或諸如單詞序列等標(biāo)簽序列的概率。具體地,隱藏條件隨機場模型如下定義了這些概率p(l|o1τ;λ)=1z(o1τ;λ)Σs1τ|l(s(1))=lexp(ΣkλkΣt=1τfk(s(t-1),s(t),o1τ,t))]]>公式1p(l1n|o1τ;λ)=1z(o1τ;λ)Σs1τ|l(s1τ)=l1nexp(ΣkλkΣt=1τfk(s(t-1),s(t),o1τ,t))]]>公式2其中,p(l|o1τ;λ)是給定從時間t=1到t=τ的觀察值序列o1τ和一組加權(quán)值(參數(shù))λ時標(biāo)簽l的概率;p(l1n|o1τ;λ)是給定從t=1到t=τ的觀察值序列o1τ和一組加權(quán)值(參數(shù))λ時n個標(biāo)簽的標(biāo)簽序列l(wèi)1n的概率;fk(s(t-1),s(t),o1τ,t)是從前一隱藏狀態(tài)s(t-1)、當(dāng)前狀態(tài)s(t)、觀察值序列o1τ和時間值t的值導(dǎo)出的特征值;λk是第k個特征的加權(quán)值;s1τ|l(s(1))=l]]>指出求和是在所有與標(biāo)簽l相一致的隱藏狀態(tài)序列上進行的;s1τ|l(s1τ)=l1n]]>指出求和是在所有與標(biāo)簽序列-相一致的隱藏狀態(tài)序列上進行的; 是歸一化值。
使用公式1和2,不同標(biāo)簽的概率能夠從一組觀察值和特征權(quán)重中確定,即使特征本身是依賴于隱藏變量的。
圖3提供了用于訓(xùn)練本發(fā)明的隱藏條件隨機場模型的參數(shù)λk和用于使用隱藏條件隨機場模型來實現(xiàn)語音分類和語音識別的系統(tǒng)的框圖。
在圖3中,說話者300向麥克風(fēng)304發(fā)聲,麥克風(fēng)304將音頻信號轉(zhuǎn)換成電信號。將該電信號提供給模數(shù)(A/D)轉(zhuǎn)換器306。
A/D轉(zhuǎn)換器306將從麥克風(fēng)304得到的模擬信號轉(zhuǎn)換成一連串?dāng)?shù)字值。在一實施例中,A/D轉(zhuǎn)換器306以16千赫和每樣值16比特對模擬信號采樣,從而創(chuàng)建每秒32千字節(jié)的語音數(shù)據(jù)。將這些數(shù)字值提供給幀構(gòu)造器307,在一實施例中,幀構(gòu)造器307將這些值組合成25毫秒的幀,這些幀間隔10毫秒開始。在某些實施例中,幀構(gòu)造器307能夠構(gòu)造不同大小的多種幀。
由幀構(gòu)造器307創(chuàng)建的數(shù)據(jù)幀被提供給特征提取器308,特征提取器308從每一幀中提取一組特征。特征提取模塊的示例包括用于實現(xiàn)線性預(yù)測編碼、LPC導(dǎo)出倒譜、感知線性預(yù)測(PLP)聽覺模型特征提取和梅爾頻率倒譜系數(shù)(MFCC)特征提取的模塊。另外,特征提取器308也能夠提取特征,諸如一幀是有聲還是無聲的,以及關(guān)于該幀中的共振峰的值的信息。注意,本發(fā)明不限于這些特征提取模塊,且可以在本發(fā)明的環(huán)境中使用其它模塊和其它特征。
在本發(fā)明的隱藏條件隨機場模型能夠被使用前,它必須由訓(xùn)練器324來訓(xùn)練。訓(xùn)練器324基于來自特征提取器308的特征和訓(xùn)練文本326為隱藏條件隨機場(CRF)模型327確定模型參數(shù)。具體地,訓(xùn)練器324使用一條件最大似然性方法來為隱藏CRF模型327選擇參數(shù),該參數(shù)最大化了當(dāng)說話者300念出訓(xùn)練文本326中的文本時,給定由特征提取器308提供的特征使在訓(xùn)練文本326中找到的標(biāo)簽的概率。
圖4提供了在本發(fā)明的一個實施例中用于訓(xùn)練隱藏CRF模型327的方法的流程圖。在步驟400處,訓(xùn)練器324從訓(xùn)練文本326的訓(xùn)練標(biāo)簽中生成一約束格狀結(jié)構(gòu)。
對于序列識別,該約束格狀結(jié)構(gòu)能夠采用圖5或圖6所示的格狀結(jié)構(gòu)的形式。圖5提供分別代表音位|p|、|e|和|t|的一組有界語音標(biāo)簽506、508和510的約束格狀結(jié)構(gòu)500的示例,其中訓(xùn)練數(shù)據(jù)中的音位的邊界是已知的。圖6提供了一組同樣的有界語音標(biāo)簽506、508和510的約束格狀結(jié)構(gòu)600的示例,但沒有已知音位邊界。
在圖5和6中,時間分別沿著水平軸502和602顯示,而隱藏狀態(tài)分別沿著垂直軸504和604顯示。諸如語音標(biāo)簽506、508和510的每一語音標(biāo)簽在上述兩張圖中各有三個可能的狀態(tài)。
因為在每一時間點上,只有與單個語音標(biāo)簽相關(guān)聯(lián)的那些狀態(tài)可以被占用,因此格狀結(jié)構(gòu)500被認(rèn)為是受約束的。從而,其它語音標(biāo)簽的狀態(tài)在該時間點上是無效的。盡管該格狀結(jié)構(gòu)是受約束的,但是存在能夠基于從特征提取器308所生成的觀察值通過該格狀結(jié)構(gòu)所遵循的多個不同的狀態(tài)序列。因為格600將狀態(tài)之間的轉(zhuǎn)移限于僅與訓(xùn)練文本中的音位序列相一致的那些轉(zhuǎn)移,所以格狀結(jié)構(gòu)600也是受約束的。以圖6為例,僅允許音位序列/p//e//t/的狀態(tài)之間的轉(zhuǎn)移。
對于分類,使用了多個單獨的約束格狀結(jié)構(gòu),其中每一格狀結(jié)構(gòu)限用于單個音位的狀態(tài)。在訓(xùn)練過程中,在一時刻說出單個音位,并選擇適當(dāng)?shù)募s束格狀結(jié)構(gòu),且在圖4的方法中使用該約束格狀結(jié)構(gòu)。
因為語音標(biāo)簽的狀態(tài)被隱藏了,因此圖4的方法通過約束格狀結(jié)構(gòu)中的所有狀態(tài)執(zhí)行前向-后向遞歸,從而對與公式1中的每一標(biāo)簽相關(guān)聯(lián)的狀態(tài)進行了求和。前向和后向遞歸定義如下 公式3 公式4其中,α(s′,t-1)表示在時刻t-1時前一狀態(tài)s′處的前向遞歸得分,其中可能的狀態(tài)限于在約束格狀結(jié)構(gòu)中找到的那些,而β(s′,t+1)表示在時刻t+1時狀態(tài)s′處的后向遞歸得分。
在公式3和4中,特征fk(s′,s,o1τ,t)能夠是任何所需的特征。在一實施例中,特征包括當(dāng)當(dāng)前狀態(tài)與一狀態(tài)值相匹配且前一狀態(tài)與另一狀態(tài)值相匹配時值為1的指示函數(shù)特征;當(dāng)前一狀態(tài)與當(dāng)前狀態(tài)相匹配時值為1的指示函數(shù);當(dāng)前一狀態(tài)與當(dāng)前狀態(tài)相匹配時分別具有特征向量各自的獨立元素的值的一組實值特征;以及當(dāng)前一狀態(tài)與當(dāng)前狀態(tài)相匹配時表示特征向量各自的獨立元素的平方的一組特征。其它特征包括當(dāng)當(dāng)前狀態(tài)與諸如與元音聲相關(guān)聯(lián)的狀態(tài)等特定狀態(tài)值相匹配時,具有共振峰的值的實值特征;以及當(dāng)當(dāng)前狀態(tài)與諸如與摩擦音相關(guān)聯(lián)的狀態(tài)等特定狀態(tài)相匹配時,如果語音信號為有聲則值為1,如果語音信號為無聲則值為0的二元特征。
當(dāng)在步驟402處執(zhí)行了約束格狀結(jié)構(gòu)上的前向-后向遞歸后,圖4的方法在步驟404處繼續(xù)執(zhí)行非約束格狀結(jié)構(gòu)上的前向-后向遞歸。
圖7示出了一非約束格狀結(jié)構(gòu)700的示例。在圖7中,只顯示了與語音單元702、704和706相關(guān)聯(lián)的狀態(tài)的非約束格狀結(jié)構(gòu)。正如圖5和6中所示,時間沿著圖7的水平軸示出,而可用狀態(tài)沿著圖7的垂直軸示出。盡管沒有示出,但是非約束格狀結(jié)構(gòu)含有在每一時間點上每一可能的語音單元的狀態(tài)。
除了將前向-后向遞歸應(yīng)用于非約束格狀結(jié)構(gòu)而不是約束格狀結(jié)構(gòu)之外,前向-后向遞歸計算與公式3和4中的-樣。在眾多實施例中,在步驟404處的前向-后向遞歸中,使用了定向搜索,其中,在前向遞歸和后向遞歸中具有低得分的狀態(tài)被剪除不作進一步考慮。這樣減少了在每一時間點上必須進行的計算的次數(shù)。
在步驟406處,應(yīng)用于約束格狀結(jié)構(gòu)和非約束格狀結(jié)構(gòu)的前向-后向遞歸被用來確定條件對數(shù)似然性和該條件對數(shù)似然性的梯度。在一實施例中,該條件對數(shù)似然性被確定為L(λ)=log(p(l1n|o1τ))=log[α(sF,τ+1)α′(sF,τ+1)]]]>公式5其中α(sF,τ+1)是在時刻τ+1最終單個狀態(tài)sF上使用約束格狀結(jié)構(gòu)的前向遞歸得分,而α′(sF,τ+1)是在時刻τ+1最終狀態(tài)sF上使用非約束格狀結(jié)構(gòu)的前向遞歸得分。
該條件對數(shù)似然性的梯度被確定為▿L(λ)=E[fk(l1n,s1τ,o1τ)|l^1n,o^1t]-E[fk(l1n,s1τ,o1τ)|o^1t]]]>公式6其中E[fk(l1n,s1τ,o1τ)|l^1n,o^1t]=Σz=1τp(sz-1=sk′,sz=sk|l^1n,o^1τ)gk(o^1τ,z)]]>公式7E[fk(l1n,s1τ,o1τ)|,o^1t]=Σz=1τp(sz-1=sk′,sz=sk|o^1τ)gk(o^1τ,z)]]>公式8其中p(sz-1=sk′,sz=sk|l^1n,o^1τ)=1z(l^1n,o^1τ)α(s′,t-1)exp(Σkλkfk(s′,s,o1τ,t)β(s,t))]]>公式9p(sz-1=sk′,sz=sk|o^1τ)=1z(o^1τ)α′(s′,t-1)exp(Σkλkfk(s′,s,o1τ,t)β′(s,t))]]>公式10z(l^1no^1τ)=α(sF,τ+1)=β(s0,0)]]>公式11z(o^1τ)=α′(sF,τ+1)=β′(s0,0)]]>公式12且其中 表示從升到單次冪或平方,或者值為1的函數(shù)的觀察特征向量的個別元素中導(dǎo)出的特征。公式5-12為單個話語示例提供了對數(shù)似然性和梯度。一個更完整的對數(shù)似然性和梯度是通過將來自多個訓(xùn)練示例的各個對數(shù)似然性和梯度值相加來構(gòu)成的。
一旦在步驟406處確定了條件對數(shù)似然性和該條件對數(shù)似然性的梯度,它們被使用在優(yōu)化算法中,以在步驟408處為每一特征fk選擇新的λk值。在一個實施例中,在步驟408處,使用有限存儲器BFGS優(yōu)化算法(limited memory-BFGS)來選擇下一λk值。在步驟410處,該方法判定優(yōu)化是否完成。如果沒有完成,該方法回到步驟402處,并且使用新的λk值重復(fù)步驟402、404和406。當(dāng)在步驟410處完成了優(yōu)化,過程在412處結(jié)束。
一旦隱藏CRF模型327的模型參數(shù)由訓(xùn)練器324使用圖4所示的過程訓(xùn)練后,解碼器/語音分類器312可以進行語音分類和語音識別。
在語音識別過程中,說話者300念出一單詞序列。該音頻信號由麥克風(fēng)304、A/D轉(zhuǎn)換器306、幀構(gòu)造器307和特征提取器308使用與訓(xùn)練信號相同的方式來處理,以生成一組特征。這些特征被提供給解碼器312。在語音分類的情況下,該特征序列限于與單個音位的幀相關(guān)聯(lián)的那些序列。在語音識別的情況下,該特征序列用于整個話語上的幀。
為實現(xiàn)語音分類,為每一語音單元構(gòu)成一獨立的約束格狀結(jié)構(gòu)。在每一格狀結(jié)構(gòu)上進行前向遞歸,以確定公式5中的條件對數(shù)似然性的分子。與提供分子最大值的格狀結(jié)構(gòu)相關(guān)聯(lián)的語音單元而后被選擇作為話語的語音單元。
當(dāng)存在將被識別的可能語音序列的有限組,在語音識別中能夠使用同樣的技術(shù)。在這種情況下,能夠為每一可能的語音序列構(gòu)造諸如圖6所示的格狀結(jié)構(gòu)的約束格狀結(jié)構(gòu)。而后在每一格狀結(jié)構(gòu)上執(zhí)行前向遞歸,以確定公式5中的條件對數(shù)似然性的分子。與提供最大值的格狀結(jié)構(gòu)相關(guān)聯(lián)的語音單元序列而后被選擇作為該話語的語音單元序列。
為實現(xiàn)語音識別,構(gòu)造了類似于圖6所示的格狀結(jié)構(gòu)的非約束格狀結(jié)構(gòu)。而后使用下列公式執(zhí)行前向遞歸 公式13其中,公式13除了前向遞歸是在非約束格狀結(jié)構(gòu)上進行的而不是在先前狀態(tài)s′上求和得到的以外,與公式3類似,最大化α(s,t)值得先前狀態(tài)s′被選擇且被用于計算α(s,t)的值。當(dāng)前向途徑完成后,通過選擇在每一時間點上提供最大得分的狀態(tài),來標(biāo)識通過該非約束格狀結(jié)構(gòu)的單條路徑。通過折回該路徑,可標(biāo)識與輸入語音信號相關(guān)聯(lián)的狀態(tài)序列。在本發(fā)明的實施例中,每一狀態(tài)只被分配給單個標(biāo)簽。由此,狀態(tài)序列能夠被容易地轉(zhuǎn)化為標(biāo)簽序列,從而提供了所識別的輸出或語音分類。
在某些實施例中,剪除是通過消除在α(s,t)值為低的每一時間幀上的狀態(tài)在前向遞歸的過程中進行的。
在某些語音識別的實施例中,用于解碼的格狀結(jié)構(gòu)被約束于在詞典314中找到的容許語音單元序列,詞典314包含該語言中單詞的發(fā)音。在其它實施例中,多個可能的語音單元序列通過使用隱藏條件隨機場模型來標(biāo)識。由隱藏條件隨機場模型為每一序列確定的得分與由語音單元序列表示的單詞序列的語言模型得分組合在一起。這樣的語言模型得分是由語言模型316生成的。提供最高組合得分的語音單元序列被解碼器312選擇作為語音片段的語音單元序列。
在其它的語音識別實施例中,語言模型和詞典與隱藏條件隨機場模型集成在一起。在這樣的實施例中,語言模型是使用忽略聲學(xué)而著眼于不同單詞之間的轉(zhuǎn)移的特征來實現(xiàn)的。類似地,詞典是由只允許對應(yīng)于有效發(fā)音的狀態(tài)序列的轉(zhuǎn)移特征來實現(xiàn)的。該語言模型特征和該詞典特征的參數(shù)可以在隱藏條件隨機場模型訓(xùn)練中被重新訓(xùn)練,或可以使用一獨立訓(xùn)練過程來設(shè)定。
注意到,如果在隱藏條件隨機場模型訓(xùn)練的過程中,語言模型是可用的,那么該隱藏條件隨機場模型的權(quán)重會被訓(xùn)練來僅區(qū)分語言模型看來等可能的那些單詞序列。通過使用這種方式訓(xùn)練,聲學(xué)模型中的建模能力不被浪費在對語言模型能夠解決的區(qū)別進行建模上。
盡管本發(fā)明是參考具體實施例而描述的,然而本領(lǐng)域的技術(shù)人員可以認(rèn)識到,可以在形式和細(xì)節(jié)上進行修改而不背離本發(fā)明的精神和范圍。
權(quán)利要求
1.一種訓(xùn)練一隱藏條件隨機場模型的方法,所述方法包括為多個標(biāo)簽中的每一個定義一組隱藏狀態(tài);標(biāo)識隱藏狀態(tài)組的約束序列,所述序列中的至少一組包含比為所有標(biāo)簽定義的所有隱藏狀態(tài)少的隱藏狀態(tài);以及調(diào)整所述隱藏條件隨機場模型的參數(shù),以使所述隱藏狀態(tài)組的約束序列中的狀態(tài)序列比隱藏狀態(tài)組的非約束序列中的狀態(tài)序列更有可能,所述非約束序列中的每一組包含為所有標(biāo)簽定義的所有藏隱狀態(tài)。
2.如權(quán)利要求1所述的方法,其特征在于,調(diào)整所述隱藏條件隨機場模型的參數(shù)包括,通過確定所述隱藏狀態(tài)組的約束序列的遞歸得分,以及所述隱藏狀態(tài)組的非約束序列的第二遞歸得分,來確定一條件對數(shù)似然性。
3.如權(quán)利要求2所述的方法,其特征在于,確定所述遞歸得分包括,在所述組的約束序列中的每一時間點上,確定所述隱藏狀態(tài)組中的每一隱藏狀態(tài)在該時間點上的得分。
4.如權(quán)利要求3所述的方法,其特征在于,確定隱藏狀態(tài)在一時間點上的得分包括,對前一時間幀上的至少兩個隱藏狀態(tài)的得分求和。
5.如權(quán)利要求1所述的方法,其特征在于,每一標(biāo)簽擁有一組不同的隱藏狀態(tài)。
6.如權(quán)利要求1所述的方法,其特征在于,所述標(biāo)簽表示語音單元。
7.如權(quán)利要求1所述的方法,其特征在于,調(diào)整所述隱藏條件隨機場模型的參數(shù)還包括,確定一條件對數(shù)似然性的梯度。
8.一種計算機可讀介質(zhì),含有用于執(zhí)行以下步驟的計算機可執(zhí)行指令接收一語音信號;從所述語音信號中確定為一隱藏條件隨機場模型定義的特征值,至少一個所述特征是基于語音單元中的一隱藏狀態(tài);以及使用所述隱藏條件隨機場模型中的特征值來標(biāo)識至少一個語音單元。
9.如權(quán)利要求8所述的計算機可讀介質(zhì),其特征在于,確定特征值包括,確定當(dāng)前狀態(tài)與一特定隱藏狀態(tài)相匹配,并將所述特征的值設(shè)為等于一觀察向量中的一個元素。
10.如權(quán)利要求8所述的計算機可讀介質(zhì),其特征在于,確定特征值包括,確定當(dāng)前狀態(tài)與一特定隱藏狀態(tài)相匹配,并將所述特征的值設(shè)為等于一觀察向量中的一個元素的平方。
11.如權(quán)利要求8所述的計算機可讀介質(zhì),其特征在于,確定特征值包括,確定當(dāng)前狀態(tài)與一特定藏隱狀態(tài)相匹配,并將所述特征的值設(shè)定為等于所述語音信號中一共振峰的值。
12.如權(quán)利要求8所述的計算機可讀介質(zhì),其特征在于,確定特征值包括,確定當(dāng)前狀態(tài)與一特定藏隱狀態(tài)相匹配,并且如果所述語音信號是有聲的,則將所述特征值設(shè)為等于1,如果所述語音信號是無聲的,則將所述特征的值設(shè)為等于0。
13.如權(quán)利要求12所述的計算機可讀介質(zhì),其特征在于,確定特征值包括,確定當(dāng)前狀態(tài)與一特定隱藏狀態(tài)不匹配,并將所述特征的值設(shè)為等于0。
14.如權(quán)利要求8所述的計算機可讀介質(zhì),其特征在于,所述隱藏條件隨機場模型是使用一隱藏狀態(tài)的約束格狀結(jié)構(gòu)來訓(xùn)練的,所述格狀結(jié)構(gòu)在多個時間點的每一個上包括一組單獨的隱藏狀態(tài),每一組包括少于所有可能隱藏狀態(tài)的隱藏狀態(tài)。
15.如權(quán)利要求14所述的計算機可讀介質(zhì),其特征在于,所述隱藏條件隨機場模型是使用一非約束格狀結(jié)構(gòu)來訓(xùn)練的。
16.如權(quán)利要求8所述的計算機可讀介質(zhì),其特征在于,所述隱藏條件隨機場模型是通過確定一條件對數(shù)似然性和所述條件對數(shù)似然性的梯度來訓(xùn)練的。
17.一種對語音信號解碼以標(biāo)識至少一個語音單元的方法,所述方法包括使用所述語音信號的一個片段來標(biāo)識一時間點上的第一隱藏狀態(tài)的特征的第一值;使用所述語音信號的片段來標(biāo)識所述時間點上的第二隱藏狀態(tài)的特征的第二值;在一模型中使用所述特征的第一值和所述特征的第二值來標(biāo)識所述語音片段的一語音單元。
18.如權(quán)利要求17所述的方法,其特征在于,所述特征的第一值包括共振峰值,且所述特征的第二值包括0值。
19.如權(quán)利要求17所述的方法,其特征在于,所述特征的第一值包括從所述語音片段中生成的觀察向量的元素,且所述特征的第二值包括0值。
20.如權(quán)利要求17所述的方法,其特征在于,所述特征的第一值包括從所述語音片段中生成的觀察向量的元素的平方,且所述特征的第二值包括0值。
21.如權(quán)利要求17所述的方法,其特征在于,所述特征的第一值包括1值,且所述特征的第二值包括0值。
22.如權(quán)利要求17所述的方法,其特征在于,所述模型包括隱藏條件隨機場模型。
23.如權(quán)利要求17所述的方法,其特征在于,在一模型中使用所述特征的第一值和所述特征的第二值包括,使用所述第一值和所述第二值確定所述第一狀態(tài)的得分。
24.如權(quán)利要求23所述的方法,其特征在于,所述第一狀態(tài)的得分包括在一先前時間點上一組狀態(tài)的總和。
全文摘要
提供了用于訓(xùn)練和使用隱藏條件隨機場模型用于語音識別和語音分類的方法和裝置。該隱藏條件隨機場模型使用特征,至少一個特征是基于在語音單元中的隱藏狀態(tài)。特征的值是從一語音片段來確定的,且這些值被用來標(biāo)識該語音片段的語音單元。
文檔編號G10L15/00GK1760974SQ20051010992
公開日2006年4月19日 申請日期2005年9月15日 優(yōu)先權(quán)日2004年10月15日
發(fā)明者A·阿賽羅, A·J·古納瓦德納, M·V·馬哈詹 申請人:微軟公司