專利名稱:用于對表意字符的輸入字符串進行自動糾錯的方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及光學(xué)字符識別和語音識別系統(tǒng),具體來說,涉及 光學(xué)字符和語音識別過程中的糾錯。
背景技術(shù):
借助于光學(xué)字符識別(OCR)和自動語音識別(ASR)系統(tǒng),可 以進行各式各樣的重要的數(shù)據(jù)處理和人機交互?,F(xiàn)代的高效率的 OCR和ASR系統(tǒng)可以使用復(fù)雜性降低的算法來進行操作,這些算 法使系統(tǒng)能集成到諸如移動電話和個人數(shù)字助理(PDA)之類處理器 和的存儲器有限的手持設(shè)備中。然而,這些OCR和ASR系統(tǒng)有時 會產(chǎn)生用戶無法接受的識別錯誤率。因此,后處理糾錯技術(shù)對于提高 識別準確度是很有用的。
對單詞進行準確的分段是許多OCR和ASR過程的重要方 面。在諸如英語之類的許多語言中,對輸入的文本字符串的自動分段 是一個簡單的過程,因為單詞是由輕松地定義的空格符來分隔的。然 而,在諸如中文及其他基于表意字符的語言之類的中未分段的語言 中,沒有使用空格或其他分隔符來分隔文本字符串中的單個單詞。因 此,這些語言需要在OCR和ASR后處理單詞分段糾錯中有其他方 法,包括形態(tài)學(xué)和詞法技術(shù)。
形態(tài)學(xué)技術(shù)包括使用隱藏馬爾可夫模型(HMM)的n-gram技 術(shù)。HMM是統(tǒng)計描述,包括平均和方差矢量,描述了諸如單詞和音 素之類的語音單位。在使用n-grams對文本字符串進行分析時,單 詞被模型化,以便每一個n-gram都包括n個單詞。然而,在諸如 移動電話之類的處理器和存儲器有限的手持設(shè)備中,n —般被限于非常低的數(shù)字,這會抑制分析精確度。
詞法技術(shù)包括使用上下文特定的詞典來實現(xiàn)單詞分段糾錯。然 而,只依賴于個別的上下文特定的詞典術(shù)語來對文本字符串進行分段
會大大地限制OCR或ASR系統(tǒng)的功能。
為了可以輕松地理解本發(fā)明并使本發(fā)明產(chǎn)生經(jīng)濟效果,現(xiàn)在將參 考示范性實施例并參考附圖,其中,在各個單獨的視圖中,類似的參 考編號表示相同的或功能上類似的元件。附圖與下面的詳細描述一 起,構(gòu)成了說明書的一部分,用于進一步顯示各個實施例,并說明根 據(jù)本發(fā)明的各種原理和優(yōu)點,其中
圖1是顯示了根據(jù)本發(fā)明的某些實施例的呈現(xiàn)移動電話的形式 的電子設(shè)備的示意圖。
圖2是顯示了根據(jù)本發(fā)明的某些實施例的用于對表意字符的輸 入字符串的進行自動糾錯的方法的流程圖3是顯示了根據(jù)本發(fā)明的某些實施例的用于對表意字符的輸
入字符串的進行自動糾錯的方法的一般流程圖4是才艮據(jù)本發(fā)明的某些實施例的識別目標子字符串的步驟的 分步驟的一般流程圖;以及
圖5顯示了根據(jù)本發(fā)明的某些實施例的根據(jù)多個糾正候選字符 串確定優(yōu)選的糾正候選字符串的步驟的分步驟的一般流程圖。
本領(lǐng)域技術(shù)人員將理解,圖中的元素是簡明而清晰地顯示的,不 一定是按比例繪制的。例如,圖中的某些元素的維可以相對于其他元 素而放大,以幫助改善對本發(fā)明的實施例的理解。
具體實施例方式
在詳細描述根據(jù)本發(fā)明的實施例之前,應(yīng)該注意,實施例主要地 組合了涉及對表意字符的輸入字符串進行自動糾錯的方法步驟和設(shè) 備組件。相應(yīng)地,設(shè)備組件和方法步驟在適當?shù)那闆r下通過圖形中的慣用符號來代表,只顯示了與本發(fā)明的實施例有關(guān)的那些具體細節(jié),
以便不會用對對那些精通具有這里的描述的優(yōu)點的技術(shù)的人員顯而
易見的細節(jié)使本說明書模糊。
在此文檔中,諸如第一和第二、頂部和底部、之前和之后等等關(guān) 系術(shù)語可以只用于區(qū)別一個實體或操作與另一個實體或操作,而不一 定需要或暗示這樣的實體或操作之間的任何實際這樣的關(guān)系或順序。 術(shù)語"包括"或其任何其他變體,用于涵蓋非排他性的包含,以便包括 元件列表的過程、方法、產(chǎn)品或設(shè)備不只包括那些元件而是可以包括 沒有明確地列出的其他元件或這樣的過程、方法、產(chǎn)品或設(shè)備固有的 其他元件。前面有"包括一個"的元件沒有更多約束地,不排除包括該 元件的過程、方法、產(chǎn)品或設(shè)備中的另外的相同元件的存在。
請參看圖l,示意圖顯示了根據(jù)本發(fā)明的某些實施例的呈現(xiàn)移動
電話100的形式的電子設(shè)備。移動電話100包括與處理器103的 公用數(shù)據(jù)和地址總線117通信的射頻通信單元102。電話100還具 有與處理器103進行通信的小鍵盤106和顯示屏幕105 (如觸摸 屏)。
處理器103還包括具有用于存儲數(shù)據(jù)的關(guān)聯(lián)的代碼只讀存儲器 (ROM) 112的編碼器/解碼器111,用于對可以由移動電話100傳輸 的或接收到的語音或其他信號進行編碼和解碼。處理器103進一步 包括微處理器113,該微處理器通過公用數(shù)據(jù)和地址總線117連接 到編碼器/解碼器111、字符只讀存儲器(ROM) ll4、隨機存取存儲 器(RAM) l(M、可編程序存儲器ll6和用戶身份模塊(SIM)接口 118??删幊绦虼鎯ζ?16和SIM可操作地連接到SIM接口 118, 它們各自都可以存儲,其中,電話號碼數(shù)據(jù)庫(TND)(包括電話號 碼的號碼字段,與電話號碼中的電話號碼唯一地關(guān)聯(lián)的標識符的名稱 字段)。
射頻通信單元102是具有共用天線107的組合接收器和發(fā)射 器。通信單元102具有通過射頻放大器109連接到天線107的收 發(fā)器108。收發(fā)器108還連接到組合調(diào)制器/解調(diào)器110,而該組合調(diào)制器/解調(diào)器110又連接到編碼器/解碼器111。
微處理器113具有用于連接到小鍵盤106和顯示屏幕105 的端口。微處理器113進一步具有用于連接到警告模塊115 (該模 塊通常包含警告揚聲器、振動器電動機和關(guān)聯(lián)的驅(qū)動程序)、連接到 麥克風(fēng)120;以及連接到通信揚聲器122的端口。字符ROM 114存 儲了用于對可以由通信單元102傳輸或接收到的諸如控制信道消息 之類的數(shù)據(jù)進行解碼或進行編碼的代碼。在本發(fā)明的某些實施例中, 字符ROM 114、可編程序存儲器116或SIM還可以存儲微處理器 113的操作代碼(OC)和用于執(zhí)行與移動電話100關(guān)聯(lián)的功能的代 碼。例如,可編程序存儲器116可以包括自動糾錯程序代碼組件 125,這些組件被配置為導(dǎo)致對表意字符的輸入字符串的進行自動糾 錯的方法的執(zhí)行。
如此,本發(fā)明的某些實施例包括使用移動電話100來自動地糾 正表意字符的輸入字符串中的錯誤的方法。例如,這樣的輸入字符串 可以是在移動電話100上執(zhí)行的光學(xué)字符識別(OCR)過程的輸出 或自動語音識別(ASR)過程的輸出。所述方法包括使用主題詞典來 將輸入字符串分段以提供第一分段的字符串,其中,所述第一分段的 字符串包括至少一個不匹配的主題詞典子字符串。然后,使用一般詞 典來對不匹配的主題詞典子字符串進行分段,以提供第二分段的字符 串。然后,識別第二分段的字符串的目標子字符串,并生成目標子字 符串的多個糾正候選字符串。然后,根據(jù)多個糾正候選字符串確定優(yōu) 選的糾正候選字符串。最后,通過用優(yōu)選的糾正候選字符串替換目標 子字符串,來糾正輸入字符串中的錯誤。
因此,本發(fā)明的某些實施例能基于對主題詞典和一般詞典的內(nèi)容 的考慮,使從光學(xué)字符識別(OCR)過程或從自動語音識別(ASR) 過程輸出的一組表意字符得到糾正。主題詞典可以包括與特定OCR 或ASR任務(wù)關(guān)聯(lián)的單詞,如響應(yīng)在麥克風(fēng)120中接收到的ASR 語音命令,檢索存儲在移動電話100中的可編程序存儲器116中的 地址簿項。請參看圖2,流程圖顯示了根據(jù)本發(fā)明的某些實施例的對表意字 符的輸入字符串進行自動糾錯的方法200。首先,從識別過程的輸出 中獲取輸入字符串205。例如,輸入字符串205可以是從光學(xué)字符 識別過程或從自動語音識別過程輸出的表意字符的文本字符串,如多 個漢語字符。然后,使用主題詞典對輸入字符串205進行分段,以 提供第一分段的字符串210。第一分段的字符串210包括兩個匹配 的主題詞典子字符串215、 220和至少一個不匹配的主題詞典子字符 串225。
主題詞典可以包括各種文件或數(shù)據(jù)庫中的任何一種,大概包括單 詞或短語,或輸入字符串205中包括的表意字符的圖像或表述。例 如,假設(shè)移動電話100的可編程序存儲器116包括電子地址簿文 件,該文件包括與移動電話100的用戶關(guān)聯(lián)的人們的姓名和地址。 此外,假設(shè)輸入字符串205是移動電話100的語音識別過程的輸 出,該過程對由移動電話100的用戶向麥克風(fēng)120發(fā)出的音頻命令 進行處理。因此,從統(tǒng)計學(xué)上來講,比較可能輸入字符串205可以 包括來自移動電話100的電子地址簿的單詞或短語,而不是來自一 般詞典的任意單詞或短語。因此,從統(tǒng)計學(xué)上來講,兩個匹配的主題 詞典子字符串215、 220比只基于一般詞典的分段更加可能代表輸入 字符串205的正確的分段。
然后,使用一般詞典來對不匹配的主題詞典子字符串225進行 分段,以提供第二分段的字符串230。例如,這樣的一般詞典可以包 括存儲在移動電話100的可編程序存儲器116的壓縮的標準詞典, 并還可以包括表意字符的圖像或表述。
接下來,識別第二分段的字符串230的目標子字符串235。如 下面比較詳細地描述的,可以通過識別與不匹配的主題詞典子字符串 225相鄰的實詞表意字符,來識別目標子字符串235。實詞表意字符 一般包括普通名詞和動詞;而所有格和定冠詞和不定冠詞 一般被視為 非實詞表意字符。例如,在中文中,諸如"花"("flower")之類的名 詞和諸如"跳"("jump")之類的動詞是實詞;而諸如"的"(英語中的所有格"S")被視為非實詞。
然后,對于目標子字符串235,生成多個糾正候選字符串240。 例如,可以對目標子字符串235進一步進行分段,以生成多個糾正 候選字符串240。
然后,根據(jù)多個糾正候選字符串240確定優(yōu)選的糾正候選字符 串245。接下來,目標子字符串235被替換為優(yōu)選的糾正候選字符 串245。最后,方法200通過識別新的目標子字符串來進行重復(fù)。
請參看圖3,一般流程圖進一步顯示了根據(jù)本發(fā)明的某些實施例 的用于對表意字符的輸入字符串205進行自動糾錯的方法200。在 步驟305中,使用主題詞典來對輸入字符串205進行分段,以提供 第一分段的字符串210,其中,第一分段的字符串210包括至少一 個不匹配的主題詞典子字符串225。
在步驟310中,使用一般詞典來對不匹配的主題詞典子字符串 225進行分段,以提供第二分段的字符串230。
在步驟315中,識別第二分段的字符串230的目標子字符串
235。
在步驟320中,生成目標子字符串235的多個糾正候選字符串
240。
在步驟325中,根據(jù)多個糾正候選字符串240確定優(yōu)選的糾正 候選字符串245。
在步驟330中,通過用優(yōu)選的糾正候選字符串245替換目標子 字符串235,來糾正輸入字符串205中的錯誤。然后,方法200返 回到步驟315,在該步驟中,識別新的目標子字符串。
請參看圖4, 一般流程圖顯示了根據(jù)本發(fā)明的某些實施例的識別 目標子字符串235的步驟315的分步驟。在步驟405中,識別至 少兩個相鄰的實詞表意字符。
在步驟410中,識別至少兩個相鄰的實詞表意字符之前且相鄰 的第 一觀察點單詞,以及至少兩個相鄰的實詞表意字符之后且相鄰的 第二觀察點單詞。在步驟415中,目標子字符串235被確定為包括第一觀察點單 詞、至少兩個相鄰的實詞表意字符,以及第二觀察點單詞。
例如,假設(shè)輸入字符串205包括下列漢字我們是摩托羅泣公司。 進一步假設(shè)使用主題詞典的分段結(jié)果是我們l是l摩托l(wèi)羅泣l公司,而使 用一般詞典的分段結(jié)果是我們I是I摩托I羅l泣I公司。單詞"羅"和"泣"是
連續(xù)的單字符實詞,如此,這些單詞和它們的左邊的鄰居"摩托,,和右
邊的鄰居"公司,,被用來將目標子字符串235識別為
"摩托+羅+泣+公司"。
請參看圖5,一般流程圖顯示了根據(jù)本發(fā)明的某些實施例的根據(jù) 多個糾正候選字符串確定優(yōu)選的糾正候選字符串的步驟325的分步 驟。在步驟505中,統(tǒng)計多個糾正候選字符串中的每一個糾正候選
字符串中的單詞數(shù)量。例如,再次考慮下列漢字輸入字符串205:
摩托+羅+泣+公司n
輸入字符串205包括下列六個糾正候選字符串
摩托羅+泣+公司,摩托+羅泣+公司,摩托+羅+泣公司,摩托羅泣+公司, 摩托+羅泣公司,和摩托羅泣公司.
因此,六個糾正候選字符串中的每一個的字數(shù)miwW分別是 3, 3, 3, 2, 2,和I,
在步驟510中,通過在每一個糾正候選字符串中添加多個單詞 的最小編輯距離,生成每一個糾正候選字符串的總的編輯距離。;f艮據(jù) 本發(fā)明的某些實施例,最小編輯距離是將糾正候選字符串轉(zhuǎn)換為目標 子字符串所需的諸如"插入"、"刪除"或"修改"之類的編輯器操作的最 小數(shù)量。例如,對于糾正候選字符串"ac"和目標子字符串"abc",最 小編輯距離是1。這是因為將"ac"轉(zhuǎn)換為"abc"只需要一個"插入,,操 作(即,在"a,,和"c"之間插入"b,,)。
在上文涉及漢字的示例中,假設(shè)主題詞典包括下列單詞
摩托,公司和摩托羅拉公司.
上文的漢字的輸入字符串205的一個可能的分段結(jié)果是上文的 六個糾正候選字符串240中的第一個摩托羅+泣+公司,其中,單詞摩托羅,泣,和公的最小編輯距離分別是ij,和o。因此,這些最小編輯
距離的總和是1+1+0 = 2。類似地,上文的漢字的輸入字符串205的
另一個可能的分段結(jié)果是上文的六個糾正候選字符串240中的第二 個摩托+羅泣+公司,其中,單詞摩托,羅泣,和公司的最小編輯距離分別是
0,2,0。這些最小編輯距離的總和是0+2+0-2。那么,剩余的四個糾 正候選字符串的最小編輯距離的總和分別是0+1 + 1 = 2, 2+0 = 2, 0+2 =2和1。根據(jù)本發(fā)明的某些實施例,使用主題詞典和一般詞典兩者 生成每一個糾正候選字符串240的總的編輯距離。
在步驟515中,基于每一個糾正候選字符串中的單詞的數(shù)量并 基于每一個糾正候選字符串的總的編輯距離,生成包括每一個糾正候 選字符串的實用成本的實用成本組。例如,基于每一個糾正候選字符 串240中的單詞的數(shù)量并基于每一個糾正候選字符串240的總的 編輯距離,生成包括每一個糾正候選字符串240的實用成本的實用 成本組是基于下列公式進行的 <formula>formula see original document page 11</formula>
其中,P是糾正候選字符串,W"附(P)和《是P中的單詞數(shù)
量,『, 是P的第i個單詞,min^/(WV是『;的最小編輯距離。
在步驟520中,通過確定實用成本組中的最小實用成本來確定
優(yōu)選的糾正候選字符串。例如,使用公式1中的函數(shù)argpmin,可
以確定最小實用成本。考慮上文所描述的漢字的六個糾正候選字符串
<formula>formula see original document page 11</formula>
240中的每一個, " 分另'j是3+2 = 5,3+2=5,3+2 = 5,
2+2 = 4, 2+2 = 4和1 + 1 =2。因此,是2,因此,第六糾正候
選字符串240被判斷為優(yōu)選的糾正候選字符串245。
因此,本發(fā)明的某些實施例的優(yōu)點包括改善了光學(xué)字符識別
(OCR)或自動語音識別(ASR)過程的識別準確度。主題詞典可以包
括與特定OCR或ASR任務(wù)關(guān)聯(lián)的單詞,如響應(yīng)ASR語音命令,
檢索存儲在移動電話中的地址簿項。然后,糾錯過程可以使用主題詞
典和一般詞典兩者來確定優(yōu)選的糾正候選字符串并糾正輸入字符串中的錯誤。因此,可以改善總的OCR或ASR性能,特別是在諸如 移動電話和個人數(shù)字助理(PDA)之類的資源有限的手持設(shè)備中。
應(yīng)該理解,這里所描述的本發(fā)明的實施例可以包括一個或多個常 規(guī)處理器和唯一存儲的程序指令,這些指令控制一個或多個處理器與 某些非處理器電路一起實現(xiàn)這里所描述的對表意字符的輸入字符串 的進行自動糾錯的某些、大多數(shù)或所有功能。非處理器電路可以包括, 但不僅限于,無線電接收器、無線電發(fā)射器、信號驅(qū)動器、時鐘電路、 電源電路,以及用戶輸入設(shè)備。因此,這些功能可以被解釋為對表意 字符的輸入字符串進行自動糾錯的方法的步驟?;蛘撸?一些或所有功 能可以通過沒有存儲程序指令的狀態(tài)機來實現(xiàn),或以一個或多個專用 集成電路(ASIC)來實現(xiàn),其中,每一個功能或某些功能的某種組合 作為自定義邏輯來實現(xiàn)。當然,也可以使用兩種方法的組合。如此, 這里描述了這些功能的方法和裝置。此外,可以預(yù)期,本領(lǐng)域技術(shù)人 員,盡管可能花費大量的努力和可用的時間、當前技術(shù),以及經(jīng)濟方 面的考慮所推動的許多設(shè)計選擇,當由這里所說明的概念和原理來指
導(dǎo)時,將輕松地能夠角最r少量的實驗生成這樣的軟件指令和程序和IC。
在前面的說明中,描述了本發(fā)明的特定實施例。然而,那些本領(lǐng) 域技術(shù)人員將理解,在不偏離如下面的權(quán)利要求所闡述的本發(fā)明的范 圍的情況下,可以進行各種修改和更改。相應(yīng)地,說明和圖形應(yīng)被視 為說明性的,而不是限制性的,所有這樣的修改方案都包括在本發(fā)明 的范圍內(nèi)。優(yōu)點、優(yōu)勢、對問題的解決方案,以及可能導(dǎo)致任何優(yōu)點、 優(yōu)勢,或解決方案發(fā)生或變得更加明顯的任何元素不應(yīng)該被理解為任 何或所有權(quán)利要求的關(guān)鍵的、必需的或基本特點或元素。本發(fā)明只由 所附權(quán)利要求進行定義,包括在本申請的待審批過程中作出的任何修 改以及這些權(quán)利要求的所有等效內(nèi)容。
權(quán)利要求
1.一種用于對表意字符的輸入字符串進行自動糾錯的方法,所述方法包括使用主題詞典將所述輸入字符串分段以提供第一分段的字符串,其中,所述第一分段的字符串包括至少一個不匹配的主題詞典子字符串;使用一般詞典對所述不匹配的主題詞典子字符串進行分段,以提供第二分段的字符串;識別所述第二分段的字符串的目標子字符串;生成所述目標子字符串的多個糾正候選字符串;根據(jù)所述多個糾正候選字符串確定優(yōu)選的糾正候選字符串;以及通過用所述優(yōu)選的糾正候選字符串替換所述目標子字符串,糾正所述輸入字符串中的錯誤。
2. 根據(jù)權(quán)利要求1所述的方法,其中,識別所述第二分段的 字符串的目標子字符串的步驟包括識別至少兩個相鄰的實詞表意字符;識別所述至少兩個相鄰的實詞表意字符之前且相鄰的第 一觀察 點單詞,以及所述至少兩個相鄰的實詞表意字符之后且相鄰的第二觀 察點單詞;以及將所述目標子字符串識別為包括所述第一觀察點單詞、所述至少 兩個相鄰的實詞表意字符以及所述第二觀察點單詞。
3. 根據(jù)權(quán)利要求1所述的方法,其中,生成所述目標子字符 串的多個糾正候選字符串的步驟包括將所述目標子字符串分段。
4. 根據(jù)權(quán)利要求1所述的方法,其中,根據(jù)所述多個糾正候 選字符串確定優(yōu)選的糾正候選字符串的步驟包括統(tǒng)計所述多個糾正候選字符串中的每一個糾正候選字符串中的 單詞數(shù)量;通過在每一個糾正候選字符串中添加多個單詞的最小編輯距離,生成每一個糾正候選字符串的總的編輯距離;基于每一個糾正候選字符串中的單詞數(shù)量并基于每一個糾正候 選字符串的所述總的編輯距離,生成包括每一個糾正候選字符串的實 用成本的實用成本組;以及通過確定所述實用成本組中的最小實用成本確定優(yōu)選的糾正候 選字符串。
5. 根據(jù)權(quán)利要求4所述的方法,其中,基于每一個糾正候選 字符串中的單詞數(shù)量并基于每一個糾正候選字符串的所述總的編輯 距離,生成包括每一個糾正候選字符串的實用成本的所述實用成本組 是基于下列公式進行的<formula>formula see original document page 3</formula>其中,戶是糾正候選字符串,和w是i>中的單詞數(shù)量,W是P的第i個單詞,min^/(^V是^的最小編輯距離。
6. 根據(jù)權(quán)利要求4所述的方法,其中,使用所述主題詞典和 所述一般詞典兩者,生成每一個糾正候選字符串的所述總的編輯距 離。
7. 根據(jù)權(quán)利要求1所述的方法,其中,所述輸入字符串包括 多個漢語字符。
8. 根據(jù)權(quán)利要求1所述的方法,其中,所述主題詞典包括表 意字符的圖像或表述。
9. 根據(jù)權(quán)利要求1所述的方法,其中,所述一般詞典包括表 意字符的圖像或表述。
10. 根據(jù)權(quán)利要求1所述的方法,其中,所述輸入字符串是光 學(xué)字符識別過程的輸出或自動語音識別過程的輸出。
全文摘要
一種用于對表意字符的輸入字符串進行自動糾錯的方法能夠改善光學(xué)字符識別或自動語音識別。所述方法包括使用主題詞典將輸入字符串分段以提供第一分段的字符串,其中,第一分段的字符串包括至少一個不匹配的主題詞典子字符串(步驟305)。然后,使用一般詞典對不匹配的主題詞典子字符串進行分段,以提供第二分段的字符串(步驟310)。然后,識別第二分段的字符串的目標子字符串(步驟315),并生成目標子字符串的多個糾正候選字符串(步驟320)。然后,根據(jù)多個糾正候選字符串確定優(yōu)選的糾正候選字符串(步驟325)。最后,通過用優(yōu)選的糾正候選字符串替換目標子字符串,糾正輸入字符串中的錯誤(步驟330)。
文檔編號G10L15/18GK101295293SQ20071010113
公開日2008年10月29日 申請日期2007年4月29日 優(yōu)先權(quán)日2007年4月29日
發(fā)明者陳桂林, 韓客松 申請人:摩托羅拉公司