專利名稱:用于語言模型切換和自適應的裝置和方法
技術領域:
本發(fā)明通常涉及自然語言處理領域,更具體地,本發(fā)明涉及一種用于語言模型切換和自適應的裝置和方法。
背景技術:
語言模型技術是自然語言處理中的關鍵組成部分,其被廣泛應用于多個領域,例如,語音識別(SR),光學字符識別(OCR),預測文本輸入(PTE,通常針對非英語語言和全句子文本輸入,一般被稱為句子級輸入方法)等。通常,語言模型被用于估計句子的概率。例如,在語音識別中,聲音識別器給出聲學假設序列,所述序列能夠生成不同的候選句子。之后,由語言模型對每個候選句子打分,具有最高得分的候選句子將被看作最佳候選句子。類似地,對于如漢字的非英語語言的文本輸入或對于移動電話之類的十鍵盤裝置的文本輸入較為困難,因為用戶需要輸入編碼序列并從較長的列表中選擇所需的候選對象。語言模型可以幫助用戶自動選擇所述的對象,例如,移動電話上的數(shù)字序列“4663”對應于三個英文候選詞“good/home/gone(好/家/回)”,如果前一個詞是“回”,則語言模型自動預測出“家”是第一候選詞。換句話來說,當語言相關的不確定產(chǎn)生時,可以使用語言模型來選擇候選對象。
但是語言模型的性能是非常依賴于輸入范圍的。如果基于語言模型的應用程序工作的輸入范圍不同于訓練域,則其性能將會自動降低。為了解決這一問題,當輸入范圍改變時,應當改變語言模型。但是,如果應用程序需要在多個不同輸入范圍之間頻繁地進行切換,則語言模型的性能不能夠從語言模型的修改中獲得益處,而修改甚至會使模型不可使用。下面,將解釋這一情形。
如上所述,語言建模中普遍存在的問題是依賴于輸入范圍的問題。如果目的應用程序工作在規(guī)定輸入范圍中,這一問題看起來并不顯著,但是如果應用程序用在彼此不同的多個輸入范圍中時,所存在的問題將會影響語言模型的性能。
通常,存在兩種解決所述依賴于輸入范圍的問題的流行方法。第一種方法是語言模型自適應(LMA),第二種方法是語言模型切換(LMS)。這兩種方法都試圖根據(jù)最近的輸入數(shù)據(jù)(例如,由輸入方法產(chǎn)生的輸入文本)提供的信息來增強語言模型。
傳統(tǒng)的語言模型自適應假設當前的主題是局部穩(wěn)定的,即,在使用語言模型的整個過程中輸入范圍并沒有改變。因此,可以使用當前的輸出文本來修改語言模型,從而該模型在后續(xù)使用中將會更有效。最流行的方法是根據(jù)最近文本建立高速緩存模型,并使用插值法將通用模型和高速緩存模型合并。在某些情況下,例如,對于較長文件的語音識別或對于較長的打印文件的光學字符識別,這一方法是有效的。
傳統(tǒng)的語言模型切換方法也假設當前的主題局部穩(wěn)定(stationary)。但是有時候當前的文本流不足以用于增強語言模型,相反地,當前的文本流用于確定當前的主題并針對當前的主題選擇出預先建立的合適的模型。
由于傳統(tǒng)方法僅將當前的文本流用于進行語言模型自適應和切換,我們稱之為基于文本流的語言模型自適應/切換方法。
如上所述,基于文本流的語言模型自適應/切換方法都是假設當前主題局部穩(wěn)定的,因此當前的文本流可以用于增強模型。但實際上,這種假設并不總是令人滿意的。有時候,文本流的數(shù)量太少而不能用于語言模型自適應,而且對于語言模型自適應來說該文本流基本上沒有用處。有時候,語言模型應用程序頻繁地從一上下文切換至另一上下文,而不提供任何文本流,即,破壞了局部穩(wěn)定特性。因此,語言模型切換或語言模型自適應方法都不能有效運用。
具體地,基于文本流的方法所唯一使用的是當前文本流。由于主題的非穩(wěn)定性質,語言模型自適應或切換方法可能會起到誤導作用。此外,當運行應用程序時,當前的應用程序的輸入范圍可以在多個不同的輸入?yún)^(qū)域中進行切換。目前存在的解決方案通過使用當前的文本流修改模型來解決這一問題。很明顯地,如果輸入范圍的切換非常頻繁,則要不斷地修改語言模型,或者當剛剛選中新的模型時,輸入范圍就改變了。這將導致嚴重的后果之前應用的方法與后續(xù)的輸入請求不一致。模型的性能將會被減弱而不是被改進。
以當前廣泛使用的漢字輸入方法為例,輸入方法僅知道當前的編輯輸入?yún)^(qū)域需要填充文本串,而不關心當前的應用程序或當前的輸入?yún)^(qū)域所具有的特定偏好。實際上,如果用戶在聯(lián)系管理人中添入一項時,編輯輸入?yún)^(qū)域像名稱、地址、位置、愛好和電話號碼是必需的。很明顯地,這些輸入?yún)^(qū)域彼此很不相同,以及根據(jù)名稱輸入自適應的信息并不能夠提高地址輸入的性能,甚至可能會誤導地址輸入。在這種情況下,基于文本流的方法根本不能夠應用。
以用于10鍵盤移動電話的句子級輸入方法作為另一個例子。當用戶輸入短信時,輸入范圍是短信會話。當用戶在地址薄的名稱輸入?yún)^(qū)域中填寫時,所述輸入范圍是名稱。而當用戶通過智能電話上網(wǎng)沖浪時,他/她使用因特網(wǎng)URL填寫瀏覽器的地址欄,以及當用戶撥號其朋友的電話時,輸入?yún)^(qū)域是電話號碼。類似地,在上述情況中,基于文本流的方法也提供不了幫助。
如果語音識別系統(tǒng)使用上述兩個例子中所使用的所述輸入方法,則情況類似。
總之,純基于文本流的方法并不提供一種有效的機制來識別在上述上下文敏感情況中語言模型當前用于哪個輸入范圍(或根本不存在固定的輸入范圍)。此外,在LMB引擎應用程序在多個輸入范圍之間頻繁切換時,該方法也不能有效解決依賴于輸入范圍的問題。此外,由于對輸入范圍的檢測并不精確,可能模型自適應完全是胡亂進行的。
我們發(fā)現(xiàn)有時候,語言模型請求是固定和具體的。例如,移動電話上的聯(lián)系管理人的輸入?yún)^(qū)域請求名稱輸入,可以獲得該請求并用于語言模型切換和自適應。
發(fā)明內容
因此,考慮到上述問題提出本發(fā)明。本發(fā)明的目的是提供一種用于語言模型切換和自適應的方法和裝置。本發(fā)明包括當應用程序的狀態(tài)變化時為特定情形選擇合適的語言模型,并使用反饋的文本流結果修改特定的語言模型。因此,解決了當在不同的語言模型中執(zhí)行切換時依賴于輸入范圍的問題,以及對特定語言模型的自適應改進了語言模型的性能。
根據(jù)本發(fā)明第一方面,提供了一種用于語言模型切換和自適應的裝置,包括通知管理器,用于在目的應用程序的狀態(tài)變化時,將目的應用程序的當前狀態(tài)信息或對語言模型的請求通知語言模型切換部分;語言模型切換部分,用于根據(jù)接收的所述當前狀態(tài)信息或所述請求從語言模型集中選擇一個或多個要被切換的語言模型;基于語言模型的引擎,用于使用一個或多個選中的語言模型對用戶的輸入進行解碼;語言模型自適應部分,用于接收解碼的結果并根據(jù)所述解碼的結果修改一個或多個選中的語言模型。
根據(jù)本發(fā)明第二方面,提供了一種用于語言模型切換和自適應的方法,包括通知步驟,用于在目的應用程序的狀態(tài)變化時,通知目的應用程序的當前狀態(tài)信息或對語言模型的請求;語言模型切換步驟,用于根據(jù)通知的所述當前狀態(tài)信息或所述請求從語言模型集中選擇一個或多個要被切換的語言模型;解碼步驟,用于使用一個或多個選中的語言模型對用戶的輸入進行解碼;語言模型自適應步驟,用于接收解碼的結果并根據(jù)所述解碼的結果修改一個或多個選中的語言模型。
與傳統(tǒng)的對語言模型依賴于輸入范圍的問題的解決方案不同,本發(fā)明針對不同的輸入范圍構建了特定模型,并使用目的應用程序的狀態(tài)以及歷史文本數(shù)據(jù)。此外,LMB引擎與目的應用程序進行通信以交換重要信息。本發(fā)明所獲得的益處如下1.提供一種機制,開發(fā)工作在不同輸入范圍內并在所述輸入范圍內頻繁切換的LMB引擎;2.每種語言模型彼此不同,甚至詞匯也可以完全不同,從而LMB引擎更為靈活;
3.由于語言模型自適應是對當前的特定語言模型執(zhí)行的,從而比通用語言模型自適應更有效且目的明確;4.由于LMB引擎可以與目的應用程序通信,從而可以開發(fā)具有其獨特請求的新的目的應用程序,以及所述通信機制可以用于向語言模型集中增加新的語言模型,以完成新的請求。這意味著該方法向LMB引擎提供了良好的擴展性。
由于本發(fā)明具有上述益處,其可以增強語言模型的功能并改進LMB引擎的性能。
通過以下結合附圖,對優(yōu)選實施例的描述,本發(fā)明的這些和/或其他目的和特征將變得更加清楚而且更為容易理解,其中圖1是根據(jù)本發(fā)明實施例的用于語言模型切換和自適應的裝置的示意方框圖;圖2是根據(jù)本發(fā)明的裝置的執(zhí)行切換和自適應處理的部件的示意方框圖;圖3是描述了用于切換和自適應語言模型的方法的流程圖;圖4示出了本發(fā)明的語言模型集的邏輯結構圖;圖5是根據(jù)本發(fā)明的映射表的示意結構;圖6是描述執(zhí)行語言模型自適應的實例裝置的示意圖;圖7是描述目的應用程序的狀態(tài)變化的示例的示意圖;圖8是根據(jù)本發(fā)明示例的用于語言模型切換和自適應的裝置的示意方框圖;圖9是根據(jù)本發(fā)明另一個示例的用于語言模型切換和自適應的裝置的示意方框圖。
具體實施例方式
圖1示出了根據(jù)本發(fā)明的用于語言模型切換和自適應的裝置的結構圖。所述裝置包括CPU 01,用于對所有應用程序提供計算功能;內部總線02,所述裝置通過內部總線02在內存07和永久存儲器04(可以是硬盤和閃存)之間交換數(shù)據(jù);通用應用程序09,以及用戶接口03,例如可以是用于按鍵輸入的鍵盤和用于語音輸入的麥克風,等等。永久存儲器04存儲有語言模型集05和一些其它數(shù)據(jù)06。所述裝置還包括目的應用程序14,語言模型自適應部分12,語言模型切換部分11,通知管理器13和語言模型相關(LMB)的引擎10。
LMB引擎10通常使用語言模型并為應用程序提供語言模型相關的服務。例如,LMB引擎10是文本輸入引擎或語音識別引擎。目的應用程序14是從LMB引擎10接收語言模型相關的服務的應用程序,例如,筆記本(Notepad),Word引用程序和郵件編輯器等。
語言模型集05管理用于不同狀態(tài)的語言模型集。語言模型切換部分11在不同的語言模型中進行切換。通知管理器13在語言模型切換部分11和目的應用程序14之間傳送通知信息。當目的應用程序的狀態(tài)改變或發(fā)送了對特定語言模型的請求,通知管理器13將察覺這一變化,因此通知管理器13將向語言模型切換部分發(fā)送對特定語言模型的請求或目的應用程序的狀態(tài)信息,從而語言模型切換部分11將當前的語言模型切換到合適的語言模型,以增強語言模型的性能。在接收到狀態(tài)信息時,語言模型切換部分11根據(jù)一映射表將狀態(tài)信息轉換為對語言模型的請求并選擇對應的語言模型。所述映射表作為其它數(shù)據(jù)06存儲在永久存儲器4上,圖5將對其進行描述。
語言模型自適應部分12用于根據(jù)反饋的輸入結果對語言模型執(zhí)行自適應。當LMB引擎10通過使用當前激活的模型解碼用戶輸入時,語言模型自適應部分12接收對輸入解碼的結果并根據(jù)解碼的結果修改當前的激活語言模型。
因此,語言模型自適應部分12提供了使用來自LMB引擎10的獲得的文本的解碼結果的反饋通道,從而對當前激活的模型進行自適應。語言模型切換部分11和語言模型自適應部分12還提供了訪問語言模型集的接口。通知管理器13用作這些組件之間的橋梁。
有時候,語言模型集05,語言模型切換部分11,語言模型自適應部分12以及通知管理器13可以合并為一個模塊,或嵌入在LMB10引擎中。
圖2示出了執(zhí)行切換和自適應處理的圖1所示裝置中的主要部件的示意圖。在圖2中,僅示出了主要部件05,10,11,12,13和14。出于清楚描述的目的,目的應用程序的狀態(tài)由14’表示。每個目的應用程序具有其對應狀態(tài)14’,例如目的應用程序狀態(tài)DAS4 141。當當前的目的應用程序變化(或僅僅是從同一個應用程序的一個輸入?yún)^(qū)域切換到另一個輸入?yún)^(qū)域并產(chǎn)生了新的請求)時,其狀態(tài)變化了,通知管理器13將覺察到這一變化并通知語言模型切換部分,從而選擇合適的模型(一個或多個)或修改當前模型(一個或多個)以適應特定狀態(tài)。一個語言模型可以由多個目的應用程序狀態(tài)(LAM2由DA1和DA2兩者使用)使用,且一種應用程序狀態(tài)也可能需要多種語言模型并將所述多個語言模型組合來完成其請求(LM3和LM4組合在一起為DAS2提供服務)。
在該圖中,DAS4 141是當前激活的目的應用程序狀態(tài),以及語言模型0501是當前激活的語言模型。在DAS4 141和語言模型0501之間的虛線示出了這一關系,以及粗體虛線101和102示出了LMB引擎10使用了應用于當前激活的目的應用程序狀態(tài)的當前激活的語言模型(一個或多個)。在語言模型切換部分11從語言模型集0501中為當前的目的應用程序DAS4 141選擇合適的語言模型(一個或多個)時,反饋結果用于改進當前激活的語言模型0501,以及由語言模型切換部分12執(zhí)行自適應的語言模型被表示為05011。LMB引擎10解碼用戶的輸入并將解碼的輸入結果提供給語言模型自適應部分12,從而語言模型自適應部分12將當前激活的語言模型0501修改為自適應后的語言模型05011。如果反饋結果不可用,則省略所述自適應操作。
現(xiàn)在將參考圖3和圖1描述用于語言模型的切換和自適應的方法。圖3示出了所述方法的總流程圖。在S3010,目的應用程序的當前狀態(tài)變化(意味著激活了當前目的應用程序的新的輸入?yún)^(qū)域或激活了新的應用程序或從目的應用程序發(fā)送了對LM的請求)。在S3011,通知管理器13察覺出這一變化,并在S3012向語言模型切換部分11通知當前的狀態(tài)信息或對語言模型的請求。在S3013,語言模型切換部分接收到這一通知,并在S3014根據(jù)當前的狀態(tài)信息或對語言模型的請求選擇相應的語言模型,其中當接收到狀態(tài)信息時,語言模型切換部分先將所述狀態(tài)信息解譯為對語言模型的請求。在S3015,LMB引擎10使用新的激活的語言模型以便對從用戶接收的輸入進行解碼,并在S3016將解碼后的結果發(fā)送給目的應用程序14。此外,在S3017,將解碼后的結果反饋到語言模型自適應部分12用于進行語言模型切換,因此,增強了相應模型的性能。
按照所述方式,通過執(zhí)行S3015,s3016和S3017完成了解碼和反饋自適應操作的循環(huán)。如果在S3018確定當前的目的應用程序狀態(tài)14’并沒有變化,則所述操作跳轉至S3015并重復所述解碼和自適應循環(huán)。否則如果當前的目的應用程序狀態(tài)1400變化以及在S3019用戶并不希望結束所述程序,則處理跳轉至S3010并重復所述整個操作。
圖4示出了本發(fā)明的語言模型集的邏輯結構。在圖4中,示出了五個語言模型。語言模型LM1被標記為053。LM1 053指示了特定語言I的整個空間(如果需要的話多個語言模型的聯(lián)合也是可以的)。部分052是語言I的空間的子集1?;谒鲎蛹?構造LM1 053并描述其特增。子集是語言子空間,例如,漢語名稱,家庭地址表示,ID身份證號(漢語中,存在針對ID身份證號的一些規(guī)則),等等。如圖4所示,一種語言中可以有多個特定的語言模型,此外,兩個或多個子集之間的重疊也是可以的。
圖5示出了根據(jù)本發(fā)明的映射表的示意結構圖。所述映射表將目的應用程序狀態(tài)映射到對語言模型集中的一個或多個語言模型的請求。所述映射表幫助語言模型切換部分11和語言模型自適應部分12針對特定的目的應用程序狀態(tài)選擇合適的語言模型。
部分1411示出了目的應用程序狀態(tài)。所述目的應用程序狀態(tài)包括應用程序的名稱,輸入?yún)^(qū)域名稱,輸入?yún)^(qū)域ID等等。目的應用程序狀態(tài)被映射到具體的請求,例如,部分11011,部分11012,部分11013等,或者說是映射到了具體的輸入范圍。之后,將請求映射到語言模型集05中用于所述輸入范圍的特定語言模型(例如模型0501,模型0502)。在示例映射表中,請求中的部分11012與單個模型0501對應,而請求中的部分11013與兩個模型0501和0502相對應。如果目的應用程序提供了具體請求(即,對語言模型的請求),則語言模型切換部分將根據(jù)所述請求查找合適的語言模型,如果目的應用程序不能夠提供具體的請求,但是提供了其狀態(tài),則語言模型切換部分先將該狀態(tài)解譯為具體的請求。
圖6示出了執(zhí)行語言模型自適應的示例裝置。該圖示出了在LMB引擎10為目的應用程序(即,短信管理器14)工作時如何執(zhí)行語言模型自適應。
在短信管理器14中,列出了三個視圖。SM(短信)編輯器用于編輯新的消息或應答輸入的消息;SM收件箱和SM發(fā)件箱用于分別存儲從其他人接收到的消息以及發(fā)出的消息。由于該圖僅是為了描述自適應文本如何用于增強特定模型的性能,僅呈現(xiàn)了用于語言模型自適應的主要部件,這里省略了例如通知管理器13和語言模型切換部分11。語言模型切換部分從短信管理器獲取文本流,并根據(jù)所述文本流修改語言模型集05中的當前語言模型0503。LMB引擎10使用增強的語言模型指導對用戶輸入進行的解碼操作。
圖7示出了描述目的應用程序的狀態(tài)變化的示例的示意圖。名片卡管理器是目的應用程序14的一個示例,其具有針對不同輸入?yún)^(qū)域的多個不同的輸入請求。用戶輸入信息填寫名片卡管理器。如圖7所示,部分1411是當前的輸入?yún)^(qū)域,以及它具體地是公司名稱輸入?yún)^(qū)域。該請求將被通知管理器覺察,以及語言模型切換部分11從語言模型集05中選擇合適的語言模型0504,并使用戶的輸入更為精確。
圖8示出了根據(jù)本發(fā)明的一個示例的用于語言模型切換和自適應的裝置的示意圖。裝置100工作在WinCE OS。
該圖中示出的主要部件(通知管理器13)源自Microsoft MSDN文檔,以及下列的描述部分源自MSDN文檔。文本輸入引擎10’是將用戶的物理輸入轉換為有含義的內容,例如,漢字字符被編碼為拼音,實際上,每個拼音是字母表字母的字符串并對應于發(fā)音。由于存在大量的漢字字符,不能夠通過按鍵直接地輸入漢字字符(實際上,不存在具有這么多按鍵的鍵盤)。相反地,用戶輸入拼音串,并從編碼候選結果中選擇所需的字符。由于漢字中存在太多的同音字,語言模型可以用于對所有候選詞進行評分,特別是對于句子等級輸入的方法,語言模型非常必要且有用。
在該圖中,例如,目的應用程序14是Pocket WORD。文本輸入引擎10’利用語言模型切換部分11和自適應部分12使用語言模型集05,從而為目的應用程序預測整個候選句子。文本輸入引擎10’通過通知管理器13與目的應用程序14通信。
通知管理器13包括兩個單元GWES圖形用戶接口1301和軟鍵盤輸入面板(SIP)1302。GWES圖形用戶接口1301是GWES(圖形,窗口,和事件子系統(tǒng),其包括核心MicrosoftWindowsCE大部分功能)模塊,其提供低層系統(tǒng)支持。GWES圖形用戶接口1301為目的應用程序14檢測狀態(tài)變化。SIP1302實際上管理觸摸屏并提供目的應用程序和文本輸入引擎之間的通信支持。SIP1302是WinCE Os的一部分,其用于察覺目的應用程序的狀態(tài)變化。SIP1302具有向文本輸入引擎10’通知狀態(tài)變化和請求來自文本輸入引擎10’的動作和信息的機制。具體地,SIP1302包括功能接口(具體請參考Micrisoft開發(fā)者網(wǎng)絡)并能夠為通信執(zhí)行多種操作。SIP1302可以向文本輸入引擎10’通知目的應用程序14正在改變其狀態(tài),例如,目的應用程序的當前輸入?yún)^(qū)域是請求輸入漢語名稱的名稱輸入?yún)^(qū)域,或當前輸入?yún)^(qū)域是請求輸入漢字古詩(古詩基本上完全不同于現(xiàn)代漢語,其中每個句子通常包括5或7個漢字,而一首詩一般包含4個短句)。此外,如果目的應用程序14知道它的請求奇特且文本輸入引擎10’并不包括這種領輸入范圍的信息時,它還可以向語言模型集中添加特殊字典(lexicon)和新的語言模型,以便為特定輸入范圍增強輸入性能。即,這種機制為文本輸入引擎10’提供了良好的可擴展性。
語言模型切換部分11包括兩個單元。一個單元是接收和解譯單元1101,另一個單元是LM選擇單元1102。接收和解譯單元1101管理目的應用程序14的列表以及目的應用程序的對不同輸入?yún)^(qū)域的相應請求。接收和解譯單元1101接收狀態(tài)信息并分析所述請求,或者將狀態(tài)信息解譯為對語言模型的具體請求。然后,將解譯結果傳送到LM選擇單元以便確定應該使用哪個或哪些模型。
實際上,存在為語言模型切換部分11確定當前輸入?yún)^(qū)域的請求的兩種模式。一種是主動模式,另一種是被動模式。在主動模式中,目的應用程序獲知由語言模型切換部分定義的具體的請求說明,并通過通知管理器13將對語言模型的請求直接發(fā)送到語言模型切換部分11。語言模型切換部分11接收到對語言模型的請求并切換模型。在被動模式中,目的應用程序并不知道語言模型切換部分定義的具體的請求說明,所以什么也不發(fā)送。語言模型切換部分應當查詢目的應用程序的狀態(tài),例如,應用程序標題,輸入?yún)^(qū)域標題,輸入?yún)^(qū)域的ID等等。接收和解譯單元1101獲取所述信息并將該信息解譯為具體的請求。有時候,主動模式和被動模式都用于確定請求。
語言模型自適應部分12對選出的語言模型進行自適應。必須指出語言模型自適應是對激活的模型執(zhí)行的,而不是對整個模型集。在通知管理器13選擇出合適的模型之后,文本輸入引擎10’對來自用戶的輸入信息進行解碼并將其提供給語言模型自適應部分12。因此,語言模型自適應部分12使用所述反饋結果來增強激活的語言模型。
根據(jù)本發(fā)明的所述示例,當目的應用程序的請求變化時,并不需要輸入方法改變軟鍵盤布局,僅需要加載不同的語言模型來完成當前的特定請求。
圖9示出了根據(jù)本發(fā)明另一個示例的用于語言模型切換和自適應的裝置的示意圖。所述裝置包括全局語言模型(LM)映射部分14001,目的應用程序14,通知管理器13,LMB引擎10,語言模型切換部分11,語言模型自適應部分12以及語言模型集05。全局LM映射部分14001根據(jù)其存儲的標準化的語言模型輸入范圍劃分說明將目的應用程序14的狀態(tài)映射到語言模型。在所述說明中,語言域被劃分為一些小域,每一個域分配有唯一的ID。劃分的域對應于對語言模型的請求,以及所述說明中已經(jīng)具體地規(guī)定了所述請求。例如,所述請求是如圖5所示的漢語名稱,英語名稱。全局LM映射部分14001可以嵌入在所述裝置的操作系統(tǒng)中。
因此,當目的應用程序的狀態(tài)變化時,使用全局LM映射部分14001以及標準化請求標志來確定對應的具體請求,從而清楚地表示出所述請求。所述標準化請求標志(未示出)被嵌入在目的應用程序14中。該請求標志指示了在目的應用程序的狀態(tài)發(fā)生變化時對語言模型的請求。通知管理器13與LMB引擎10、語言模型切換部分11以及語言模型自適應部分12一起操作,從而如果需要的話為當前的具體請求選擇相應的語言模型并在需要時對特定語言模型進行自適應。
不同于圖8,語言模型切換部分11包括接收單元1103,而不是接收和解譯單元1101。語言模型接收單元1103僅接收具體請求,以及并不需要進行任何解譯操作,因為目的應用程序利用全局LM映射部分14001知道其自己的請求,并將所述請求直接發(fā)送到通知管理器13。
盡管已經(jīng)示出和描述了本發(fā)明,本領域的技術人員可以理解的是,在不偏離本發(fā)明的原理和精神的前提下,可以在本實施例中進行改變,本發(fā)明的范圍由所附權利要求及其等價物限定。
權利要求
1.一種用于語言模型切換和自適應的裝置,包括通知管理器,用于在目的應用程序的狀態(tài)變化時,將目的應用程序的當前狀態(tài)信息或對語言模型的請求通知語言模型切換部分;語言模型切換部分,用于根據(jù)接收的所述當前狀態(tài)信息或所述請求從語言模型集中選擇一個或多個要被切換的語言模型;基于語言模型的引擎,用于使用一個或多個選中的語言模型對用戶的輸入進行解碼;語言模型自適應部分,用于接收解碼的結果并根據(jù)所述解碼的結果修改一個或多個選中的語言模型。
2.如權利要求1所述的裝置,其中所述基于語言模型的引擎是語音識別引擎。
3.如權利要求1所述的裝置,其中所述基于語言模型的引擎是文本輸入引擎。
4.如權利要求1或3所述的裝置,其中所述語言模型切換部分包括接收和解譯單元,用于從通知管理器接收目的應用程序當前的狀態(tài)信息或對語言模型的請求,并在接收到狀態(tài)信息時通過搜索映射表將所述狀態(tài)信息解譯為對語言模型的請求;和語言模型選擇單元,用于根據(jù)對語言模型的請求或對語言模型的解譯的請求選擇一個或多個要被切換的語言模型。
5.如權利要求1或4所述的裝置,其中所述通知管理器包括GWES圖形用戶接口,用于檢測目的應用程序的狀態(tài)的變化;和軟鍵盤輸入面板,用于將目的應用程序的當前狀態(tài)信息或對語言模型的請求通知語言模型切換部分。
6.如權利要求1所述的裝置,其中語言模型集中的一個語言模型在一個語言域中與另一個語言模型重疊或不和另一個語言模型重疊。
7.如權利要求1所述的裝置,其中還包括全局語言模型映射部分,用于將目的應用程序的狀態(tài)映射到對應的一個或多個語言模型;其中目的應用程序利用請求標志和全局語言模型映射部分獲知對語言模型的請求,并將對語言模型的請求發(fā)送到通知管理器。
8.如權利要求7所述的裝置,其中語言模型切換部分包括接收單元,用于從通知管理器接收目的應用程序的對語言模型的請求;和語言模型選擇單元,用于根據(jù)接收的請求從語言模型集中選擇一個或多個要被切換的語言模型。
9.一種用于語言模型切換和自適應的方法,包括通知步驟,用于在目的應用程序的狀態(tài)變化時,通知目的應用程序的當前狀態(tài)信息或對語言模型的請求;語言模型切換步驟,用于根據(jù)通知的所述當前狀態(tài)信息或所述請求從語言模型集中選擇一個或多個要被切換的語言模型;解碼步驟,用于使用一個或多個選中的語言模型對用戶的輸入進行解碼;語言模型自適應步驟,用于接收解碼的結果并根據(jù)所述解碼的結果修改一個或多個選中的語言模型。
10.如權利要求9所述的方法,其中所述用戶輸入是用于語音識別的輸入。
11.如權利要求9所述的方法,其中所述用戶輸入是文本輸入。
12.如權利要求9或11所述的方法,其中所述語言模型切換步驟包括接收和解譯步驟,用于接收目的應用程序當前的狀態(tài)信息或對語言模型的請求,并在接收到所述狀態(tài)信息時通過搜索映射表將所述狀態(tài)信息解譯為對語言模型的請求;和語言模型選擇步驟,用于根據(jù)對語言模型的請求或對語言模型的解譯的請求選擇一個或多個要被切換的語言模型。
13.如權利要求11或12所述的方法,其中所述通知步驟包括檢測步驟,用于檢測目的應用程序的狀態(tài)的變化;和通信步驟,用于通知目的應用程序的當前狀態(tài)信息或對語言模型的請求。
14.如權利要求9所述的方法,其中語言模型集中的一個語言模型在一個語言域中與另一個語言模型重疊或不和另一個語言模型重疊。
15.如權利要求9所述的方法,其中所述方法還包括全局語言模型映射步驟,用于將目的應用程序的狀態(tài)映射到對應的一個或多個語言模型;其中目的應用程序利用請求標志和全局語言模型映射步驟獲知對語言模型的請求,并將對語言模型的請求發(fā)送到通知步驟。
16.如權利要求15所述的方法,其中語言模型切換步驟包括接收步驟,用于接收目的應用程序對語言模型的請求;和語言模型選擇步驟,用于根據(jù)接收的請求從語言模型集中選擇一個或多個要被切換的語言模型。
全文摘要
一種用于語言模型切換和自適應的裝置,包括通知管理器,用于在目的應用程序的狀態(tài)變化時,將目的應用程序的當前狀態(tài)信息或對語言模型的請求通知語言模型切換部分;語言模型切換部分,用于根據(jù)接收的所述當前狀態(tài)信息或所述請求從語言模型集中選擇一個或多個要被切換的語言模型;基于語言模型的引擎,用于使用一個或多個選中的語言模型對用戶的輸入進行解碼;語言模型自適應部分,用于接收解碼的結果并根據(jù)所述解碼的結果修改一個或多個選中的語言模型。以及一種用于語言模型切換和自適應的方法。從而增強了語言模型的輸入,提高了用戶輸入的準確性。
文檔編號G06F17/20GK101034390SQ20061005478
公開日2007年9月12日 申請日期2006年3月10日 優(yōu)先權日2006年3月10日
發(fā)明者吳根清, 許荔秦 申請人:日電(中國)有限公司