專利名稱:字符串識別的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種識別由許多手寫字符形成的字符串的方法和裝置,尤其是涉及手寫文本的識別。
背景技術(shù):
本說明書中的背景文件不是,也不應被認為是構(gòu)成了公知知識的一部分的承認或者任何形式的建議。
開發(fā)高精度的手寫識別系統(tǒng)所面對的一個主要問題是手寫物的固有歧義性。人們依靠上下文來正確地識別手寫文本。因此,大量的研究工作被定向在應用造句法和語言學的約束來識別手寫文本。在語音識別、自然語言的處理以及機器翻譯領(lǐng)域中完成相似的工作。
在手寫識別系統(tǒng)中,基本的語言元素(primitive)是字符。一些識別系統(tǒng)完全繞過字符識別(已知的整個單詞識別),而多數(shù)識別系統(tǒng)試圖識別輸入信號中的單個字符。那些不這樣做的系統(tǒng),在識別過程中過分依靠字典,并且通常不能支持詞匯表之外的單詞(例如,未收錄在字典中的單詞)的識別。
在利用字符識別的系統(tǒng)中,字符分類器原始的輸出不可避免地包含由于手寫物的固有歧義性所導致的錯誤。因此,基于某種語言的后處理技術(shù)通常被用來分辨輸入的真正意思。
許多系統(tǒng)都包括簡單試探法,所述簡單試探法定義了一套手寫文本語言規(guī)則。因此,例如,大寫字母最常出現(xiàn)在單詞的起始位置(一個反例是“MacDonald”),多數(shù)字符串全部是字母或全部是數(shù)字(一個反例是“2nd”),以及規(guī)定在一個詞中標點符號的可能位置的規(guī)則。然而,這些試探法費時并且難以確定,易于改變,而且通常是不完善的。
除了上述試探法,一些識別系統(tǒng)包括字符“N-gram”模型。在1992年9月13-16日,加拿大多倫多的《加拿大電氣與計算機工程會議記錄》(Proceedingsof the Canadian Conference on Electrical and Computer Engineering)第一卷第WA1.27.1-4頁中H.Beigi和T.Fujisaki所著的“A Character Level PredictiveLanguage Model and Its Application to Handwriting Recognition”一文,記錄了這樣一個例子。
特別是,這些系統(tǒng)利用語言模型來定義遵循給定的先前字符序列的特定字符的概率。例如,字母“e”跟隨在‘th’后的可能性大于字母‘q’。也就是說,P(e|th)大于P(q|th)。字符N-grams可以容易地從文本文集(text corpus)中得出,是一種強有力的改進字符識別的技術(shù)手段,它不需要將書寫者限制在特定的單詞列表中。
雖然如此,由于在一種給定的語言中提供許許多多字母組合,這樣該系統(tǒng)的使用就受到限制,而且該系統(tǒng)還要求大量的數(shù)據(jù)處理,因此限制了這種技術(shù)的應用范圍。
此外,一些情況下,識別系統(tǒng)期望一種特定格式的輸入(例如,美國郵政編碼,電話號碼,街道地址,等等)。
在這些例子中,使用標準表達,簡單語言模板和強制字符集可以增加識別的準確度。不過,這些技術(shù)的使用局限于需要嚴格地遵守提供的有限格式的情形。因此,這種技術(shù)只適用于郵政編碼,或諸如此類等經(jīng)過訓練就可以使用的系統(tǒng),但是不適用于一般的手寫文本。
手寫文本表現(xiàn)意義含糊不清不僅體現(xiàn)在字符級,而且在單詞級,尤其是在草書中。識別系統(tǒng)通過包含基于單詞的語言模型來處理這個問題,最通常的是使用一本預先定義的字典。
單詞N-grams,類似于字符N-grams但在單詞序列之間而不是字符序列之間定義轉(zhuǎn)換概率,可以用于手寫文本的后處理。為了避免組合記憶和大詞匯量單詞N-grams的處理要求,一些系統(tǒng)使用單詞級N-grams,在那里轉(zhuǎn)換概率被定義為單詞的部分語言標識(例如,名詞或者動詞),而不是單個單詞。
其他系統(tǒng)使用馬爾可夫(Markov)句法模型來消除單詞歧義。1998年,在英國桑德蘭大學在第1期的CLUK論文集中D.Tugwell所著的“A MarkovModel of Syntax”一文描述了這樣的一個例子。
另一種單詞制造模型的方法是識別單詞組合,即具有句法或者語義單位特征的兩個或更多單詞的序列,作為例子記錄在1999年由美國馬薩諸塞州劍橋市的麻省理工出版社出版的C.Manning和H.Schutze所著的“Foundations ofStatistical Natural Language Processing”一文中。
但是,同樣,語言后處理的數(shù)據(jù)量非常龐大,因此限制了該技術(shù)的應用。
下面將詳細描述以上概述的一些技術(shù)方案的例子。
1992年9月13-16日,加拿大多倫多的《加拿大電氣與計算機工程會議記錄》(Proceedings of the Canadian Conference on Electrical and ComputerEngineering)第一卷第WA1.28.1-4頁中H.Beigi和T.Fujisaki所著的“AFlexible Template Language Model and its Application to HandwritingRecognition”一文中,提出一類適用于“在形式或者詞匯方面非常受限制”的情形下的模板語言模型。在這個例子中,通過使用搜尋試探法集成彈性匹配字符分類得分與模型概率,來應用模板。本例中也描述了用來估算基于先前N-1個字符的字符概率的N-gram字符模型的用法。
在這個系統(tǒng)里,″在N-gram字符預報器中支持一套字符集是A-Z外加空格″,在1992年9月13-16日,加拿大多倫多的《加拿大電氣與計算機工程會議記錄》(Proceedings of the Canadian Conference on Electrical and ComputerEngineering)第一卷第WA1.27.1-4頁中H.Beigi和T.Fujisaki所著的“ACharacter Level Predictive Language Model and Its Application to HandwritingRecognition”一文中對其有詳細的描述。
而且,1992年9月,加拿大多倫多舉辦的隸屬于電氣和電子工程師協(xié)會(IEEE)的《加拿大電氣與計算機工程會議》(Canadian Conference on Electricaland Computer Engineering)上H.Beigi的“Character Prediction for On-LineHandwriting Recognition”一文中提出″N=4是實際在線手寫識別中最佳的″。
與此類似,2000年9月11-13日阿姆斯特丹的《關(guān)于手寫識別的第7屆國際專題論壇研討會的會議記錄》(Proceedings of the Seventh InternationalWorkshop on Frontiers in Handwriting Recognition)中,J.Pitrelli和E.Ratzlaff所著的“Quantifying the Contribution of Language Modeling to Writer-IndependentOn-line Handwriting Recognition”一文中描述了字符N-grams和單詞N-grams在一個隱藏馬爾可夫模型手寫草書的識別系統(tǒng)中的用法。
單詞unigram和bigram語言模型從一本全書派生出來,進行手寫文本的整個單詞的識別,該方法在2000年西班牙巴塞羅那的《第15屆國際模式識別會議記錄》(Proceedings of the 15thInternational Conference on PatternRecognition)中第3卷,第467-470頁U.Marti和H.Bunke所著的“HandwrittenSentence Recognition”一文中有所描述,。在這個例子中,Viterbi算法使用分類器得分和單詞概率來識別輸入文本句子。
在1999年10月《IEEE交易模式分析和機器智能》(IEEE TransactionsPattern Analysis and Machine Intelligence)一書第21卷第10期第990-999頁Bouchaffra等所著的“Post processing of Recognized Strings UsingNon-stationary Markovian Models”一文中描述了作為美國郵政編碼識別的后處理步驟的非穩(wěn)定馬爾可夫Markov模型的用法。在這個例子中,郵政編碼具有固定長度,且編碼內(nèi)的每個數(shù)字都具有一明確的自然意思這一特定領(lǐng)域知識用于幫助識別。尤其,使用一套美國郵政服務提供的郵政編碼的訓練集,在數(shù)字串內(nèi)各點的任何一個數(shù)字的轉(zhuǎn)換概率都被計算,這知識被用于提高識別性能。
AAAI 1998第19卷第1期AI雜志中第73-89頁L.Yaeger,B.Webb,和R.Lyon所著的“Combining Neural Networks and Context-Driven Search forOn-Line,Printed Handwriting Recognition in the Newton”一文中,描述了使用各種各樣很少應用的語言模擬技術(shù)來為一個商業(yè)的手寫字符識別系統(tǒng)確定詞匯的上下文內(nèi)容。這個計劃允許″詞匯表,前綴和后綴列表以及標點模型″的定義和結(jié)合,包括一些″從正規(guī)表達式語法派生來″的內(nèi)容。字典和詞匯的模板可能被并行搜尋,并且每個表達式包括一個事前機率。句法的模板通過手工編碼獲得,概率則由經(jīng)驗分析而來。
1994年3月在新澤西的普林斯頓舉行的《關(guān)于人類語言技術(shù)上的ARPA研討會》(ARPA Workshop on Human Language Technology)上,R.Srihari在“Useof Lexical and Syntactic Techniques in Recognizing Handwritten Text”一文中描述了通過使用詞匯和句法技術(shù)的結(jié)合來消除手寫識別系統(tǒng)產(chǎn)生的歧義的結(jié)果。具體說,這種技術(shù)實行詞的搭配概率來進一步理解基于上下文內(nèi)容的話,并且使用了一個基于部分講話標簽的話句法的馬爾可夫Markov模型。
美國專利6,137,908,描述使用與其他試探法聯(lián)合的三連字母(trigram)語言模型來提高字符分割和識別的準確性。
美國專利6,111,985,在識別過程中,使用字符語法和傳統(tǒng)最大可能性序列評估算法(即Viterbi識別)來消除用N-gram字符模型的數(shù)字串產(chǎn)生的單詞歧義。
與此類似,美國專利5,392,363中描述的手寫字識別系統(tǒng),使用字符和單詞語法模型消除基于框架概率分類器的單詞歧義。
美國專利5,787,197,使用基于字典的后處理技術(shù)進行在線手寫識別。字典的搜尋剝?nèi)チ溯斎刖渥又信c字典不相匹配(matched against)的全部標點。如果搜尋失敗,“筆劃匹配功能和拼寫幫助字典用來創(chuàng)建一個可能的單詞列表”。
與此類似,美國專利5,151,950描述使用樹結(jié)構(gòu)的字典作為決定性的有限自動機來合并分類器結(jié)果與上下文信息。系統(tǒng)“通過隱藏Markov過程從例子字符串中選擇最佳匹配的識別字符串”。
美國專利5,680,511,使用一個基于單詞的語言模型″識別出現(xiàn)在一段文章內(nèi)的未被認出或者含糊不清的單詞″。這種方法描述在口頭或者手寫文本上下文識別中。
美國專利5,377,281,利用基于知識的方法來后處理字符識別串。使用的知識源包括單詞概率,單詞di-gram概率,單詞可能性與特殊字符前綴相結(jié)合的統(tǒng)計,以及重寫建議和成本,以及從一本文本文集中導出的單詞。
美國專利5,987,170,使用單詞和語法字典的結(jié)合識別東方字體。美國專利6,005,973,在識別期間得到字典字符串和最可能的數(shù)字串,這些呈現(xiàn)給書寫者可供其選擇。
美國6,084,985描述一種基于隱藏馬爾可夫Markov模型的在線手寫識別方法,該專利使用實時檢測至少即時手寫的一個書寫位置,此位置來自遵循時間的(time-conforming)與每一個手寫特征向量聯(lián)合的字符串分區(qū)的書寫。這種方法使遵循時間的字符與來自一個與書寫有關(guān)的數(shù)據(jù)庫的各種各樣的例子字符串相匹配,通過隱藏Markov過程,從例子字符串中選出一個最相匹配的識別字符串。
因此,顯然上述每種方法具有各種各樣的缺點。尤其,多數(shù)技術(shù)傾向于需要大量的數(shù)據(jù)處理。這限制了技術(shù)應用于識別的 場景,主要是因為需要運行大功率的處理器。
發(fā)明內(nèi)容
涉及本發(fā)明的第一主要方面,本發(fā)明提供一種識別由許多手寫字符組成的字符串的方法,所述方法包括a)確定字符串中每種字符的字符概率,每種字符概率表示各個字符成為許多預先確定的字符中的一個的可能性;b)確定所述字符串的模板概率,每個模板概率代表字符串與許多模板中的一個模板相符合的可能性,每個模板代表字符類型的各自結(jié)合;c)根據(jù)確定的字符和模板概率來確定字符串的概率;并且,d)根據(jù)確定的字符串的概率來識別字符串。
通常每一個預先確定的字符具有各自的字符類型。
字符類型一般包括至少下述之一a)數(shù)字;b)字母;以及,c)標點符號。
確定字符概率的方法通常包括使用字符分類器。
確定模板概率的方法可包括a)確定在字符串中的字符的數(shù)量;b)選擇具有相同的字符數(shù)量的模板;并且,c)對于每一個選定模板,獲得其模板概率。
模板的概率可以通過文本全集的統(tǒng)計分析來預先確定。
所述方法一般包括確定與每個模板相符合的一個潛在的字符串,通過下述步驟a)確定來自模板的字符串中每個字符的字符類型;并且,b)為所述模板內(nèi)的每個字符選擇一個預先確定的字符,預先確定的字符是根據(jù)確定的字符類型和字符概率來選擇。
更可取地,被選擇的預先確定字符是具有最高字符概率的預先確定的字符。
識別字符串的方法通常包括a)為每一個潛在的字符串確定字符串概率,所述字符串概率是通過連接每一個被選擇字符的字符概率和各自的模板概率來確定;并且,b)確定字符串是具有最高的字符串概率的潛在字符串。
所述方法使用處理系統(tǒng)來執(zhí)行,所述處理系統(tǒng)包括a)儲存器,用于存儲至少下述一個i)被預先確定的字符;ii)模板數(shù)據(jù)代表至少下述一個(1)模板;以及,(2)模板概率;以及,b)處理器,所述處理器用于i)接收字符串;ii)確定字符串中每個字符的字符概率;iii)確定模板概率;iv)根據(jù)確定的字符和模板概率來確定字符串概率;并且,v)根據(jù)確定的字符串概率來識別字符串。
涉及本發(fā)明的第二主要方面,本發(fā)明提供識別由許多手寫字符組成的字符串的裝置,所述裝置包括a)儲存器,用于存儲至少一個
i)許多被預先確定的字符;ii)代表許多模板的模板數(shù)據(jù);以及,b)處理器,所述處理器用于i)確定字符串中每種字符的字符概率,每種字符概率表示各個字符成為許多預先確定的字符中的一個的可能性;ii)確定所述字符串的模板概率,每個模板概率代表字符串與許多模板中的一個模板相符合的可能性,每個模板代表字符類型的各自結(jié)合;iii)根據(jù)確定的字符和模板概率來確定字符串的概率;并且iv)根據(jù)確定的字符串的概率來識別字符串。
所述處理器通常連接一輸入端,處理器用于通過輸入端接收手寫字符串。
所述裝置,特別是處理器,能因此適用于執(zhí)行本發(fā)明第一個主要方面的方法。
這種情況下,模板數(shù)據(jù)進一步包括每個模板的模板概率,處理器被用于從模板數(shù)據(jù)獲得模板概率。
涉及本發(fā)明的第三個主要方面,本發(fā)明提供一種產(chǎn)生用于手寫識別中的模板的方法,所述方法包括a)獲得文本;b)識別文本中的字符串,每個字符串由一個或多個字符的序列形成,每個字符具有各自的類型;c)確定每個字符串中字符類型序列;并且,d)為每個字符類型序列確定模板。
所述方法通常包括a)統(tǒng)計分析確定的模板;并且,b)根據(jù)統(tǒng)計分析確定模板概率,所述模板概率表明在文本中各個字符序列出現(xiàn)的概率。
所述方法通常包括a)確定在文本中每種字符類型序列出現(xiàn)的頻率;并且,
b)根據(jù)確定的每個字符類型序列的頻率來確定模板概率所述方法通常進一步包括修改確定的模板概率來解決有限數(shù)量的字符類型序列。這可以根據(jù)Lidstone定律完成。
更可取地所述方法包括從大的文本文集中獲得文本。所述文本通常也從許多不同的來源中獲得。
所述方法采用處理系統(tǒng)來執(zhí)行,所述處理系統(tǒng)包括a)儲存器,用于存儲文本;并且,b)處理器,所述處理器用于i)識別文本中的字符串;ii)確定字符類型序列;并且,iii)確定模板。
涉及本發(fā)明的第四個主要方面,本發(fā)明提供一種產(chǎn)生應用于手寫識別的模板的裝置,所述裝置包括處理器用于a)獲得文本;b)識別在文本中的字符串,每字符串由一個或多個字符的序列形成,每個字符具有各自的類型;c)為每個字符串確定字符類型序列;并且,d)為每個字符類型序列確定模板。
所述裝置通常包括用于存儲文本的存儲器,所述處理器用于從存儲器中獲得文本。
所述處理器通常適用于執(zhí)行本發(fā)明的第3個主要方面的方法。
下面結(jié)合附圖的描述使本發(fā)明變得清晰,但該描述僅通過舉例的方式,所述例子是優(yōu)選的,不僅僅局限于此實施例,其中圖1是適于實現(xiàn)本發(fā)明的處理系統(tǒng)的實施例。
具體實施例方式
以下通過書面描述和附加的權(quán)利要求來更好地理解本發(fā)明的主題。
參照圖1,描述一個適于實現(xiàn)本發(fā)明的裝置的實施例,圖1示出用于執(zhí)行手寫識別的處理系統(tǒng)10。
特別是,處理系統(tǒng)10通常至少包括處理器20,內(nèi)存21,以及輸入裝置22,例如圖形輸入板和/或鍵盤,輸出裝置23,例如顯示器,如圖所示,通過總線24連接在一起。外部接口也如圖中25所示被提供,用于連接處理系統(tǒng)和存儲器11,例如數(shù)據(jù)庫。
使用中,處理系統(tǒng)可用于實現(xiàn)兩個主要功能。特別是,處理系統(tǒng)可用于從一本文本全集中產(chǎn)生統(tǒng)計模板和/或在手寫文本的識別過程中使用統(tǒng)計模板??梢岳斫?,處理系統(tǒng)10可以是任何形式的處理系統(tǒng),例如一臺計算機,一臺便攜式電腦,服務器,專業(yè)化硬件,諸如此類,通過執(zhí)行存儲在內(nèi)存21中的合適的應用軟件來實現(xiàn)這些技術(shù)。
就模板產(chǎn)生而論,處理系統(tǒng)適用于分析通常存儲在數(shù)據(jù)庫11中的文本。在這方面,所述處理器20識別在文本中的每個單詞或者字符串,并且評價字符的序列。所述處理器確定在每個單詞或者字符串中的字符類型,例如所述字符是否是字母,數(shù)字或者標點符號。
所述處理器確定各個字符串代表的模板。在這方面,所述模板由代表各自的字符類型的標志組成。因此例如,單詞“the”的模板可以具有″aaa″形式,其中“a”代表一個字母。
可以理解的是,相同的模板為不同的字符串產(chǎn)生。相應地,例如,單詞“cat”和單詞“the”會導致相同的模板。
處理器20記錄每一個模板在數(shù)據(jù)庫11中被確定的次數(shù)。
一旦在文本內(nèi)全部單詞被分析完,也就承認了在文本實例中出現(xiàn)的任何給定的模板的概率被確定。這可使用于手寫文本的識別。
特別是,如果處理器20獲得手寫的文本,例如從輸入裝置22,或者數(shù)據(jù)庫11中,處理器將進行最初評價來識別字符串,然后試圖確定字符串中每字符的身份。
一般地說,處理器20執(zhí)行字符分類器,所述分類器會結(jié)合每個特性概率來決定許多可能的字符身份。
這過程在整個字符串中重復,這樣就產(chǎn)生了符合不同潛在字符串的許多潛在的字符識別組合。
如上所述的模板被處理器20訪問,處理器20選擇與各個字符串的字符數(shù)量相同的模板。之后,處理器20確定特殊的字符身份和模板的組合的總概率,來允許確定最可能的字符串。
這些技術(shù)將被詳細描述。
統(tǒng)計模板的產(chǎn)生本部分描述在文本全集中產(chǎn)生統(tǒng)計模板,并給出由統(tǒng)計導出的模板的例子。
概述字母代表手寫文本識別系統(tǒng)分類的基本元素。在英語中,字母可被歸類為按字母順序(‘a(chǎn)’-‘z’,‘A’-‘Z’),按數(shù)字順序(‘0’-‘9’),或者標點符號(其他的)。在一般的字母字符識別中,字典和字符語法經(jīng)常被用于消除歧義。通常,字典和字符語法包括只是字母字符(盡管有時在模型包括撇號,例如復合詞“they’re”和“he’ll”)的。
由于大多數(shù)語言模型不包括關(guān)于數(shù)字和標點符號的字母的早先的信息,識別系統(tǒng)采用試探法從一識別字符串中提取按字母順序或數(shù)值字符的字符串,然后采用語言模型進行處理。然而,試探法通常不可靠,會導致下述的誤識別問題,例如·字母字符串被識別為數(shù)字,·數(shù)值字符串被識別為字母,·包含文本和數(shù)值的單詞(例如2nd,V8,B2)被誤識別為字母的字符串或者數(shù)值字符串,·標點符號誤識別為按字母順序或者數(shù)字,并且·字母或者數(shù)值字被誤識別為標點。
然而,在文本序列中存在的特定標點字符可幫助解碼所述序列中的其他字符。例如,撇號可指示文本字符串,逗號,貨幣符號和句號能指示數(shù)字字符串。含有破折號的單詞(句子)包含數(shù)字字符串和字母字符串的混合體(例如“30-year-old”或者“20-pound”)。除此之外,一些標點字符通常出現(xiàn)在字符串中的特定位置(例如后綴標點,比如‘?’,‘!’,或者‘’)。
統(tǒng)計語言模板的處理過程是一種關(guān)于書寫文本結(jié)構(gòu)的早先信息的編碼方法,使用概率模型在按字母字符,數(shù)字字符,和標點字符之間互動仿效。模型考慮位置信息,并且能夠通過考慮整個輸入單詞來仿效字母附屬物(而不是固定數(shù)量的本地先前的形態(tài),如在字符N-grams中)。
字母標志(Tokenisation)使用書面文本文集產(chǎn)生統(tǒng)計模板(從許多來源中收集一大套文本文件)。為了產(chǎn)生模板統(tǒng)計,文集中的每一個文件被作為通過空白處來界定的一套連續(xù)的字母來處理(例如,單詞、句子和段落標記)。這個字母的序列形成了一個字符串。
在模板產(chǎn)生過程中,單個字母轉(zhuǎn)換成標記,所述標記代表字母所屬的種類(或者字符類型)。
字母種類的定義具有明確范圍,并且基于需要被解決的含糊意義所選擇。下面的討論基于分類系統(tǒng)大寫和小寫字母被轉(zhuǎn)換為標志‘a(chǎn)’,全部數(shù)字都轉(zhuǎn)換為標志‘d’,并且剩下全部字符(例如標點)不被轉(zhuǎn)換,并且保留其初始值。
代表單詞或者字符串的標志序列定義模板。
作為一個例子,字符串“15-years?”被轉(zhuǎn)換為模板“dd-aaaaa?”。需要指出的是,二者擇一的標記(tokenisation)系統(tǒng)可用于模擬其它的語言形式,例如大寫和小寫的區(qū)別(例如“MacDonald”作為“ullulllll”,‘u’表示用大寫字母排印,‘l’表示小寫字母字符)。
處理產(chǎn)生統(tǒng)計語言模板的目的是識別普通書寫文本的習語,并且計算在書面文本遇到習語的概率。通過標記(tokenising)在每一個分開的單詞的空白處來進行模型的訓練,并且在表格里存儲結(jié)果,通常存儲在數(shù)據(jù)庫11內(nèi)。與每個模板相關(guān)的是一個計數(shù),所述計數(shù)指示在輸入流中特定模板出現(xiàn)的次數(shù)。
當文集中的全部文本處理完后,表格就包含了在文本中遇到的全部模板的列表,和每個模板出現(xiàn)次數(shù)的數(shù)值。顯而易見,通常出現(xiàn)的模板(例如模板“aaa”代表“the”,“but”,或者“cat”)與可能性小的模板(例如模板“ada”代表“x1y”或者“b2b”)相比較,包含較高的數(shù)值。
計算一個模板事前概率,模板數(shù)值除以全部模板計數(shù)的總數(shù)。這些數(shù)值可以作為記錄存儲以避免數(shù)字下溢,并且在識別期間解除處理。模板的記錄概率ti是P(ti)=log10(ciΣj=1ncj)]]>其中ci是在訓練文本中模板i遇到的次數(shù)n是不同模板的總數(shù)量計算遇到所有模板的事前概率允許與不同數(shù)量的字母的模板相比較。這表明當不知道字母或者單詞的分割,或者可能是許多交替的分割路線時,語言模型可對輸入解碼有所幫助。
但是,如果在識別時知道輸入字符串中的字母數(shù)量,模板模型可被分開,這樣可依據(jù)字母數(shù)量來分組。于是基于模板組的模板計數(shù)的數(shù)量,而不是在全組的全部計數(shù),就可計算出事前概率。
過濾上述程序產(chǎn)生基于文本全書的模板概率的最大似然估計(MLE)。即,計算的概率是當用于訓練全書時,那些給出的最高概率。沒有概率分布被分配到在訓練文本過程中沒有遇到的模板,因此這些模板被分配為零概率。
既然文本全書只代表潛在的輸入語言模型的一個子集,那么過濾模型必須被用于通過小數(shù)量來減少觀察事件的概率,并且對未出現(xiàn)事件分配大量殘余概率。這個程序被通常用于字符和單詞N-grams,象1999年由美國馬薩諸塞州劍橋市的麻省理工出版社出版的C.Manning和H.Schutze所著的“Foundationsof Statistical Natural Language Processing”中描述的那樣。因此在這種情形中,可容易地應用相同的技術(shù)。
在這個例子里,如“Foundations of Statistical Natural Language Processing”中描述的前面提到的Lidstones定律,用來過濾產(chǎn)生的概率,因此P(xi)=ci+λΣj=1ncj+Bλ]]>其中B是來自文集中的獨特模板的數(shù)量;λ是過濾因子(依經(jīng)驗設(shè)定為.5)結(jié)果是非零概率可被分配到在訓練全書中沒有出現(xiàn)的單詞結(jié)構(gòu),允許識別稀有的和不平常的單詞結(jié)構(gòu)。
也可以理解的是,用于確定概率的文本全書越大,可獲得的概率越大。
實施例結(jié)果訓練過程匆匆瀏覽全書文本,這樣的例子記錄在1993年,D.Harman和M.Liberman所著的完整的情報全書(Complete TIPSTER Corpus)中,用來產(chǎn)生一套統(tǒng)計語言模板。在下面列出確定模板的例子。
特別是,表格1包含在書面文本全書中出現(xiàn)頻率最高的二十個模板(從而具有最高的事前概率)。
所述表格揭示了書寫文本的許多明顯的特性,例如短字一般比長字更普通,并且逗號和句號是最可能的標點字符并且作為單詞后綴出現(xiàn)。這些通過模板和相應早先記錄概率定義的規(guī)則是絕對的,并且允許對輸入文本進行魯棒(robust)的以及有統(tǒng)計根據(jù)的解碼。
在上述表格中模板詳述了通過許多簡單試探法描述的許多相當明顯的語言規(guī)則(雖然這些規(guī)則的事前概率不太可能容易地并且準確地估計到)。
表1
但是,對結(jié)果進一步的檢查揭示了許多語言習語,使用試探法準確地模仿將非常困難,如表格2中詳述的那樣。這些模板在按字母順序的文字,數(shù)字以及標點符號之間相互作用地作效仿,并且隱含地定義了一套關(guān)于書寫文本結(jié)構(gòu)的規(guī)則。
表2
需要注意的是,這種技術(shù)優(yōu)勢在于大量模板的產(chǎn)生,以及模板有關(guān)的概率。通常,產(chǎn)生數(shù)千模板,一同定義一套統(tǒng)計的完整的關(guān)于書寫文本結(jié)構(gòu)的規(guī)則。
統(tǒng)計模板的處理本部分描述了使用統(tǒng)計模板來對手寫文本進行解碼。給定了通用程序與一些例子的處理。也給定了怎樣將本技術(shù)與其他語言模型相結(jié)合的描述。
概述手寫體字符識別的目的是準確把書寫者產(chǎn)生的筆尖筆劃轉(zhuǎn)變成相應文本。然而,在內(nèi)在含糊的手寫文本中,需要使用上下文的信息來識別輸入。如上述描述的那樣產(chǎn)生的統(tǒng)計模板對輸入的總體結(jié)構(gòu)的識別有所幫助,并且可以在識別過程中與其他語言模型相結(jié)合,例如字典和字符語法。
大多數(shù)字符分類系統(tǒng)產(chǎn)生一套可能的字母匹配,及與輸入字母相結(jié)合的置信分值。例如,對字母‘a(chǎn)’分類時,分類字母猜測如下述表格3設(shè)置的那樣。
表3
這(非正式地)表明分類器60%的置信度是字母‘a(chǎn)’,30%的置信度是字母‘d’,等等。需要指出的是,統(tǒng)計處理,分值應該遵循概率規(guī)則,那就是
0≤P(xi)≤1 對全部的i并且,Σi=1nP(xi)=1]]>對分類器來說不產(chǎn)生概率(例如,分類器報告距離值),輸出的分值矢量應該正?;员WC上述規(guī)章的持續(xù)。對于面向神經(jīng)網(wǎng)絡(luò)的分類器,一個正?;霓D(zhuǎn)變功能可用來使輸出值正常(例如用J.布里德爾描述的softmax激活函數(shù),見1990年紐約施普林格出版社出版的《計算Neuro算法,建筑學和應用》一書的第227-236頁的“Probabilistic Interpretation of FeedforwardClassification Network Outputs,with Relationships to Statistical PatternRecognition”一文)。
解碼解碼是運行在由字符分類器產(chǎn)生的一套字母假說上,代表輸入單詞或者單詞序列。同模板聯(lián)合的概率意味著諸如字長和標點字符的位置等特征可用于統(tǒng)計單詞分割。因為統(tǒng)計模板能估計一個特定單詞結(jié)構(gòu)的概率,如果需要,他們可用來幫助單詞分割。
但是,下面給出的描述假設(shè)已經(jīng)執(zhí)行單詞分割,并且解碼的程序只被要求提供最可能的字母序列,由字符分類器的輸出所給出。這是通過查找模板來實現(xiàn)的,通過字符分類器產(chǎn)生的字符概率與模板可能的事前概率相結(jié)合給出最大分值P(wi)=P(ti)×Πj=1nP(xij)]]>其中n=輸入字符串中的字母的數(shù)量P(wi)=字母序列的概率P(xij)=在模板ti的位置j處,分類器的得分標志(見下)P(ti)=模板ti的事前概率在計算P(xij)的值的時候,標志種類中最高的分值成員(在字母位置j使用分類器假說)被使用。例如,如果模板包含‘a(chǎn)’,最高排列分值的字母字符被使用。類似的,如果這個模板包含‘d’,最高排列分值的數(shù)字的被使用。對標點來說,被指定的標點字符的分值被使用。
如果記錄概率用于模板,分類器輸出也必須轉(zhuǎn)換為記錄概率,解碼程序找到最大值P(wi)=P(ti)+Σj=1nP(xij)]]>舉例來說,假設(shè)一個分類器已經(jīng)從字符串“30-day”產(chǎn)生表4所示的分值,對于字符指示。
表4
在這個例中,黑色字體示出了正確的解碼路徑。
如果這些分值轉(zhuǎn)換為記錄概率并且適用于與長度相配的全部模板,然后最高分值的模板如表格5所示。
表5
其中P(ti)是從文本文集中統(tǒng)計上導出的模板事前概率。
為了計算模板“dd-aaa”的字母序列的概率P(wi),處理器20執(zhí)行的計算過程如下
P(wi)=-3.782-0.060-0.319-0.013-0.276-0.237-0.276=-4.963用模板“aaaaaa”計算P(wi),計算過程是P(wi)=-1.171-1.097-0.301-1.699-0.276-0.237-0.276=-5.056用模板“dddddd”計算P(wi),計算過程是P(wi)=-4.549-0.060-0.319-2.000-1.155-1.699-1.699=-6.932找到最高分值的模板(“dd-aaa”),相應的文本作為正確的字串(“30-day”)被選擇。
需要指出的是,最大可能性解碼(例如,在每一個位置取最可能的字符)將不找到正確的文本(如“3o-day”是最大可能性順序)。
語言模型結(jié)合在上述例子中,字符串最好匹配的模板被選擇為解碼字符串。通常,被匹配的模板將與其他語言模型相結(jié)合用于另外的處理。
例如,不是從字符串的字母部分取最大可能性字母(例如,“day”),而是將來自這部分的分類器分值傳給一本字典或者字符語法來做進一步的解碼。
或者,通過用一個附加的語言模型,對來自許多最高分值的模板的文本段進行處理,作為結(jié)果的分值被結(jié)合產(chǎn)生最后的單詞概率。
因此,可以理解的是,如上所述的處理提供一種在手寫字符識別中使用統(tǒng)計語言模板用于上下文處理的方法。這包括要求從一文本全集產(chǎn)生模板的過程,以及使用模板對字符分類器輸出進行解碼的技術(shù)。
特別是,與現(xiàn)有技術(shù)的方法相比,使用較少處理能力,這些技術(shù)一般就能執(zhí)行更快、更準確的手寫識別。
廣義上說,在應用的說明書中引用或者表示的本發(fā)明包括部分、元素和特征,逐個地或者全體地,兩個或者多個所述部分、元素或者特征的一些或者所有組合,在此提到的特定數(shù)字在與本發(fā)明相關(guān)的領(lǐng)域是已知的,即使是分別提出的,這些已知知識與本發(fā)明也是融為一體的。
盡管上面對優(yōu)選實施方式進行了詳細地描述,但本領(lǐng)域的普通技術(shù)人員仍然可以在不脫離下述請求保護的本發(fā)明范圍的情況下,做出各種改變、替換和更改。
權(quán)利要求
1.一種識別由許多手寫字符組成的字符串的方法,包括a)確定字符串中每個字符的字符概率,每個字符概率表示各個字符是許多預先確定的字符中的一個的可能性;b)確定所述字符串的模板概率,每個模板概率代表字符串與許多模板中的一個模板相符合的可能性,每個模板代表字符類型的各自結(jié)合;c)根據(jù)確定的字符和模板概率來確定字符串概率;以及d)根據(jù)確定的字符串概率來識別字符串。
2.根據(jù)權(quán)利要求1所述的方法,每一個預先確定的字符都具有各自的字符類型。
3.根據(jù)權(quán)利要求1或2所述的方法,所述字符類型包括至少下述類型之一a)數(shù)字;b)字母;以及c)標點符號。
4.根據(jù)權(quán)利要求1至3中任一項所述的方法,確定字符概率的方法包括使用字符分類器。
5.根據(jù)權(quán)利要求1至4中任一項所述的方法,確定模板概率的方法包括a)確定字符串中字符的數(shù)量;b)選擇具有相同的字符數(shù)量的模板;以及c)獲得每一個選定模板的模板概率。
6.根據(jù)權(quán)利要求5所述的方法,所述模板概率通過文本文集的統(tǒng)計分析來預先決定。
7.根據(jù)權(quán)利要求5或6所述的方法,包括確定與每個模板相符合的一個潛在的字符串,通過a)確定來自模板的字符串中每個字符的字符類型;以及b)為所述模板內(nèi)的每個字符選擇一個預先確定的字符,預先確定的字符根據(jù)確定的字符類型和字符概率來選擇。
8.根據(jù)權(quán)利要求7所述的方法,所述被選擇的預先確定字符是具有最高字符概率的預先確定的字符。
9.根據(jù)權(quán)利要求7或8所述的方法,所述識別字符串的方法包括a)為每個潛在的字符串確定字符串概率,所述字符串概率是通過連接每一個被選擇字符的字符概率和各個模板概率來確定;以及b)確定所述字符串是具有最高的字符串概率的潛在字符串。
10.根據(jù)權(quán)利要求1至9中任一項所述的方法,其通過處理系統(tǒng)來執(zhí)行,所述處理系統(tǒng)包括a)存儲器,存儲至少下述中的一個i)預先確定的字符;ii)模板數(shù)據(jù),代表至少下述中的一個(1)模板;以及,(2)模板概率;以及,b)處理器,用于i)接收字符串;ii)確定字符串中每個字符的字符概率;iii)確定模板概率;iv)根據(jù)確定的字符和模板概率來確定字符串概率;并且,v)根據(jù)確定的字符串概率來識別字符串。
11.一種識別由許多手寫字符組成的字符串的裝置,包括a)存儲器,存儲至少下述中的一個i)許多預先確定的字符;ii)代表許多模板的模板數(shù)據(jù);以及b)處理器,用于i)確定字符串中每個字符的字符概率,每個字符概率表示各個字符是許多預先確定的字符中的一個的可能性;ii)確定所述字符串的模板概率,每個模板概率代表字符串與許多模板中的一個模板相符合的可能性,每個模板代表字符類型的各自結(jié)合;iii)根據(jù)確定的字符和模板概率來確定字符串概率;以及iv)根據(jù)確定的字符串概率來識別字符串。
12.根據(jù)權(quán)利要求11所述的裝置,所述處理器連接輸入端,且進一步用于通過輸入端接收手寫的字符。
13.根據(jù)權(quán)利要求10或11所述的裝置,所述處理器用于執(zhí)行權(quán)利要求1至9中任一項所述的方法。
14.一種產(chǎn)生用于識別手寫體的模板的方法,包括a)獲得文本;b)識別文本中的字符串,每個字符串由一個或多個字符的序列形成,每個字符具有各自的類型;c)為每個字符串確定字符類型序列;以及d)為每個字符類型序列確定模板。
15.根據(jù)權(quán)利要求14所述的方法,包括a)統(tǒng)計分析確定的模板;以及b)根據(jù)統(tǒng)計分析確定模板概率,所述模板概率表明在文本中各個字符類型序列出現(xiàn)的概率。
16.根據(jù)權(quán)利要求14或15所述的方法,包括a)確定在文本中每種字符類型序列出現(xiàn)的頻率;以及b)根據(jù)確定的每個字符類型序列的頻率來確定模板概率。
17.根據(jù)權(quán)利要求16所述的方法,還包括修改確定的模板概率來解釋數(shù)量有限的字符類型序列。
18.根據(jù)權(quán)利要求17所述的方法,包括根據(jù)Lidstone定律來修改所述概率。
19.根據(jù)權(quán)利要求14至18中任一項所述的方法,包括從一大的文本文集中獲得文本。
20.根據(jù)權(quán)利要求14至19中任一項所述的方法,包括從許多不同的來源獲得文本。
21.根據(jù)權(quán)利要求14至20中任一項所述的方法,采用處理系統(tǒng)來執(zhí)行,所述處理系統(tǒng)具有a)存儲器,用于存儲文本;以及b)處理器,用于i)識別文本中的字符串;ii)確定字符類型序列;以及iii)確定模板。
22.一種產(chǎn)生用于識別手寫體的模板的裝置,包括處理器,適用于a)獲得文本;b)識別文本中的字符串,每個字符串由一個或多個字符的序列形成,每個字符具有各自的類型;c)為每個字符串確定字符類型序列;以及d)為每個字符類型序列確定模板。
23.根據(jù)權(quán)利要求22所述的裝置,包括用于存儲文本的存儲器,所述處理器用于從存儲器中獲得文本。
24.根據(jù)權(quán)利要求22或23所述的裝置,用于執(zhí)行權(quán)利要求14至21中任一項所述的方法。
全文摘要
本發(fā)明提供一種識別由許多手寫的字符組成的字符串的方法,例如手寫單詞。為了完成上述目的,所述方法用來確定字符串中的每一個字符的字符概率,也即確定所述字符串符合預先決定模板形式的概率。在這方面,每個模板代表字符類型各自的結(jié)合。模板和字符概率結(jié)合來確定字符串概率,根據(jù)確定的字符串概率來識別字符串。
文檔編號G06K9/72GK1571980SQ02820475
公開日2005年1月26日 申請日期2002年10月15日 優(yōu)先權(quán)日2001年10月15日
發(fā)明者喬納森·利·納珀 申請人:西爾弗布魯克研究有限公司