字符串识别的制作方法

文档序号:6429502阅读:216来源:国知局
专利名称:字符串识别的制作方法
技术领域
本发明涉及一种识别由许多手写字符形成的字符串的方法和装置,尤其是涉及手写文本的识别。
背景技术
本说明书中的背景文件不是,也不应被认为是构成了公知知识的一部分的承认或者任何形式的建议。
开发高精度的手写识别系统所面对的一个主要问题是手写物的固有歧义性。人们依靠上下文来正确地识别手写文本。因此,大量的研究工作被定向在应用造句法和语言学的约束来识别手写文本。在语音识别、自然语言的处理以及机器翻译领域中完成相似的工作。
在手写识别系统中,基本的语言元素(primitive)是字符。一些识别系统完全绕过字符识别(已知的整个单词识别),而多数识别系统试图识别输入信号中的单个字符。那些不这样做的系统,在识别过程中过分依靠字典,并且通常不能支持词汇表之外的单词(例如,未收录在字典中的单词)的识别。
在利用字符识别的系统中,字符分类器原始的输出不可避免地包含由于手写物的固有歧义性所导致的错误。因此,基于某种语言的后处理技术通常被用来分辨输入的真正意思。
许多系统都包括简单试探法,所述简单试探法定义了一套手写文本语言规则。因此,例如,大写字母最常出现在单词的起始位置(一个反例是“MacDonald”),多数字符串全部是字母或全部是数字(一个反例是“2nd”),以及规定在一个词中标点符号的可能位置的规则。然而,这些试探法费时并且难以确定,易于改变,而且通常是不完善的。
除了上述试探法,一些识别系统包括字符“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”一文,记录了这样一个例子。
特别是,这些系统利用语言模型来定义遵循给定的先前字符序列的特定字符的概率。例如,字母“e”跟随在‘th’后的可能性大于字母‘q’。也就是说,P(e|th)大于P(q|th)。字符N-grams可以容易地从文本文集(text corpus)中得出,是一种强有力的改进字符识别的技术手段,它不需要将书写者限制在特定的单词列表中。
虽然如此,由于在一种给定的语言中提供许许多多字母组合,这样该系统的使用就受到限制,而且该系统还要求大量的数据处理,因此限制了这种技术的应用范围。
此外,一些情况下,识别系统期望一种特定格式的输入(例如,美国邮政编码,电话号码,街道地址,等等)。
在这些例子中,使用标准表达,简单语言模板和强制字符集可以增加识别的准确度。不过,这些技术的使用局限于需要严格地遵守提供的有限格式的情形。因此,这种技术只适用于邮政编码,或诸如此类等经过训练就可以使用的系统,但是不适用于一般的手写文本。
手写文本表现意义含糊不清不仅体现在字符级,而且在单词级,尤其是在草书中。识别系统通过包含基于单词的语言模型来处理这个问题,最通常的是使用一本预先定义的字典。
单词N-grams,类似于字符N-grams但在单词序列之间而不是字符序列之间定义转换概率,可以用于手写文本的后处理。为了避免组合记忆和大词汇量单词N-grams的处理要求,一些系统使用单词级N-grams,在那里转换概率被定义为单词的部分语言标识(例如,名词或者动词),而不是单个单词。
其他系统使用马尔可夫(Markov)句法模型来消除单词歧义。1998年,在英国桑德兰大学在第1期的CLUK论文集中D.Tugwell所著的“A MarkovModel of Syntax”一文描述了这样的一个例子。
另一种单词制造模型的方法是识别单词组合,即具有句法或者语义单位特征的两个或更多单词的序列,作为例子记录在1999年由美国马萨诸塞州剑桥市的麻省理工出版社出版的C.Manning和H.Schutze所著的“Foundations ofStatistical Natural Language Processing”一文中。
但是,同样,语言后处理的数据量非常庞大,因此限制了该技术的应用。
下面将详细描述以上概述的一些技术方案的例子。
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字符模型的用法。
在这个系统里,″在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月,加拿大多伦多举办的隶属于电气和电子工程师协会(IEEE)的《加拿大电气与计算机工程会议》(Canadian Conference on Electricaland Computer Engineering)上H.Beigi的“Character Prediction for On-LineHandwriting Recognition”一文中提出″N=4是实际在线手写识别中最佳的″。
与此类似,2000年9月11-13日阿姆斯特丹的《关于手写识别的第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在一个隐藏马尔可夫模型手写草书的识别系统中的用法。
单词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”一文中描述了作为美国邮政编码识别的后处理步骤的非稳定马尔可夫Markov模型的用法。在这个例子中,邮政编码具有固定长度,且编码内的每个数字都具有一明确的自然意思这一特定领域知识用于帮助识别。尤其,使用一套美国邮政服务提供的邮政编码的训练集,在数字串内各点的任何一个数字的转换概率都被计算,这知识被用于提高识别性能。
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”一文中,描述了使用各种各样很少应用的语言模拟技术来为一个商业的手写字符识别系统确定词汇的上下文内容。这个计划允许″词汇表,前缀和后缀列表以及标点模型″的定义和结合,包括一些″从正规表达式语法派生来″的内容。字典和词汇的模板可能被并行搜寻,并且每个表达式包括一个事前机率。句法的模板通过手工编码获得,概率则由经验分析而来。
1994年3月在新泽西的普林斯顿举行的《关于人类语言技术上的ARPA研讨会》(ARPA Workshop on Human Language Technology)上,R.Srihari在“Useof Lexical and Syntactic Techniques in Recognizing Handwritten Text”一文中描述了通过使用词汇和句法技术的结合来消除手写识别系统产生的歧义的结果。具体说,这种技术实行词的搭配概率来进一步理解基于上下文内容的话,并且使用了一个基于部分讲话标签的话句法的马尔可夫Markov模型。
美国专利6,137,908,描述使用与其他试探法联合的三连字母(trigram)语言模型来提高字符分割和识别的准确性。
美国专利6,111,985,在识别过程中,使用字符语法和传统最大可能性序列评估算法(即Viterbi识别)来消除用N-gram字符模型的数字串产生的单词歧义。
与此类似,美国专利5,392,363中描述的手写字识别系统,使用字符和单词语法模型消除基于框架概率分类器的单词歧义。
美国专利5,787,197,使用基于字典的后处理技术进行在线手写识别。字典的搜寻剥去了输入句子中与字典不相匹配(matched against)的全部标点。如果搜寻失败,“笔划匹配功能和拼写帮助字典用来创建一个可能的单词列表”。
与此类似,美国专利5,151,950描述使用树结构的字典作为决定性的有限自动机来合并分类器结果与上下文信息。系统“通过隐藏Markov过程从例子字符串中选择最佳匹配的识别字符串”。
美国专利5,680,511,使用一个基于单词的语言模型″识别出现在一段文章内的未被认出或者含糊不清的单词″。这种方法描述在口头或者手写文本上下文识别中。
美国专利5,377,281,利用基于知识的方法来后处理字符识别串。使用的知识源包括单词概率,单词di-gram概率,单词可能性与特殊字符前缀相结合的统计,以及重写建议和成本,以及从一本文本文集中导出的单词。
美国专利5,987,170,使用单词和语法字典的结合识别东方字体。美国专利6,005,973,在识别期间得到字典字符串和最可能的数字串,这些呈现给书写者可供其选择。
美国6,084,985描述一种基于隐藏马尔可夫Markov模型的在线手写识别方法,该专利使用实时检测至少即时手写的一个书写位置,此位置来自遵循时间的(time-conforming)与每一个手写特征向量联合的字符串分区的书写。这种方法使遵循时间的字符与来自一个与书写有关的数据库的各种各样的例子字符串相匹配,通过隐藏Markov过程,从例子字符串中选出一个最相匹配的识别字符串。
因此,显然上述每种方法具有各种各样的缺点。尤其,多数技术倾向于需要大量的数据处理。这限制了技术应用于识别的 场景,主要是因为需要运行大功率的处理器。

发明内容
涉及本发明的第一主要方面,本发明提供一种识别由许多手写字符组成的字符串的方法,所述方法包括a)确定字符串中每种字符的字符概率,每种字符概率表示各个字符成为许多预先确定的字符中的一个的可能性;b)确定所述字符串的模板概率,每个模板概率代表字符串与许多模板中的一个模板相符合的可能性,每个模板代表字符类型的各自结合;c)根据确定的字符和模板概率来确定字符串的概率;并且,d)根据确定的字符串的概率来识别字符串。
通常每一个预先确定的字符具有各自的字符类型。
字符类型一般包括至少下述之一a)数字;b)字母;以及,c)标点符号。
确定字符概率的方法通常包括使用字符分类器。
确定模板概率的方法可包括a)确定在字符串中的字符的数量;b)选择具有相同的字符数量的模板;并且,c)对于每一个选定模板,获得其模板概率。
模板的概率可以通过文本全集的统计分析来预先确定。
所述方法一般包括确定与每个模板相符合的一个潜在的字符串,通过下述步骤a)确定来自模板的字符串中每个字符的字符类型;并且,b)为所述模板内的每个字符选择一个预先确定的字符,预先确定的字符是根据确定的字符类型和字符概率来选择。
更可取地,被选择的预先确定字符是具有最高字符概率的预先确定的字符。
识别字符串的方法通常包括a)为每一个潜在的字符串确定字符串概率,所述字符串概率是通过连接每一个被选择字符的字符概率和各自的模板概率来确定;并且,b)确定字符串是具有最高的字符串概率的潜在字符串。
所述方法使用处理系统来执行,所述处理系统包括a)储存器,用于存储至少下述一个i)被预先确定的字符;ii)模板数据代表至少下述一个(1)模板;以及,(2)模板概率;以及,b)处理器,所述处理器用于i)接收字符串;ii)确定字符串中每个字符的字符概率;iii)确定模板概率;iv)根据确定的字符和模板概率来确定字符串概率;并且,v)根据确定的字符串概率来识别字符串。
涉及本发明的第二主要方面,本发明提供识别由许多手写字符组成的字符串的装置,所述装置包括a)储存器,用于存储至少一个
i)许多被预先确定的字符;ii)代表许多模板的模板数据;以及,b)处理器,所述处理器用于i)确定字符串中每种字符的字符概率,每种字符概率表示各个字符成为许多预先确定的字符中的一个的可能性;ii)确定所述字符串的模板概率,每个模板概率代表字符串与许多模板中的一个模板相符合的可能性,每个模板代表字符类型的各自结合;iii)根据确定的字符和模板概率来确定字符串的概率;并且iv)根据确定的字符串的概率来识别字符串。
所述处理器通常连接一输入端,处理器用于通过输入端接收手写字符串。
所述装置,特别是处理器,能因此适用于执行本发明第一个主要方面的方法。
这种情况下,模板数据进一步包括每个模板的模板概率,处理器被用于从模板数据获得模板概率。
涉及本发明的第三个主要方面,本发明提供一种产生用于手写识别中的模板的方法,所述方法包括a)获得文本;b)识别文本中的字符串,每个字符串由一个或多个字符的序列形成,每个字符具有各自的类型;c)确定每个字符串中字符类型序列;并且,d)为每个字符类型序列确定模板。
所述方法通常包括a)统计分析确定的模板;并且,b)根据统计分析确定模板概率,所述模板概率表明在文本中各个字符序列出现的概率。
所述方法通常包括a)确定在文本中每种字符类型序列出现的频率;并且,
b)根据确定的每个字符类型序列的频率来确定模板概率所述方法通常进一步包括修改确定的模板概率来解决有限数量的字符类型序列。这可以根据Lidstone定律完成。
更可取地所述方法包括从大的文本文集中获得文本。所述文本通常也从许多不同的来源中获得。
所述方法采用处理系统来执行,所述处理系统包括a)储存器,用于存储文本;并且,b)处理器,所述处理器用于i)识别文本中的字符串;ii)确定字符类型序列;并且,iii)确定模板。
涉及本发明的第四个主要方面,本发明提供一种产生应用于手写识别的模板的装置,所述装置包括处理器用于a)获得文本;b)识别在文本中的字符串,每字符串由一个或多个字符的序列形成,每个字符具有各自的类型;c)为每个字符串确定字符类型序列;并且,d)为每个字符类型序列确定模板。
所述装置通常包括用于存储文本的存储器,所述处理器用于从存储器中获得文本。
所述处理器通常适用于执行本发明的第3个主要方面的方法。


下面结合附图的描述使本发明变得清晰,但该描述仅通过举例的方式,所述例子是优选的,不仅仅局限于此实施例,其中图1是适于实现本发明的处理系统的实施例。
具体实施例方式
以下通过书面描述和附加的权利要求来更好地理解本发明的主题。
参照图1,描述一个适于实现本发明的装置的实施例,图1示出用于执行手写识别的处理系统10。
特别是,处理系统10通常至少包括处理器20,内存21,以及输入装置22,例如图形输入板和/或键盘,输出装置23,例如显示器,如图所示,通过总线24连接在一起。外部接口也如图中25所示被提供,用于连接处理系统和存储器11,例如数据库。
使用中,处理系统可用于实现两个主要功能。特别是,处理系统可用于从一本文本全集中产生统计模板和/或在手写文本的识别过程中使用统计模板。可以理解,处理系统10可以是任何形式的处理系统,例如一台计算机,一台便携式电脑,服务器,专业化硬件,诸如此类,通过执行存储在内存21中的合适的应用软件来实现这些技术。
就模板产生而论,处理系统适用于分析通常存储在数据库11中的文本。在这方面,所述处理器20识别在文本中的每个单词或者字符串,并且评价字符的序列。所述处理器确定在每个单词或者字符串中的字符类型,例如所述字符是否是字母,数字或者标点符号。
所述处理器确定各个字符串代表的模板。在这方面,所述模板由代表各自的字符类型的标志组成。因此例如,单词“the”的模板可以具有″aaa″形式,其中“a”代表一个字母。
可以理解的是,相同的模板为不同的字符串产生。相应地,例如,单词“cat”和单词“the”会导致相同的模板。
处理器20记录每一个模板在数据库11中被确定的次数。
一旦在文本内全部单词被分析完,也就承认了在文本实例中出现的任何给定的模板的概率被确定。这可使用于手写文本的识别。
特别是,如果处理器20获得手写的文本,例如从输入装置22,或者数据库11中,处理器将进行最初评价来识别字符串,然后试图确定字符串中每字符的身份。
一般地说,处理器20执行字符分类器,所述分类器会结合每个特性概率来决定许多可能的字符身份。
这过程在整个字符串中重复,这样就产生了符合不同潜在字符串的许多潜在的字符识别组合。
如上所述的模板被处理器20访问,处理器20选择与各个字符串的字符数量相同的模板。之后,处理器20确定特殊的字符身份和模板的组合的总概率,来允许确定最可能的字符串。
这些技术将被详细描述。
统计模板的产生本部分描述在文本全集中产生统计模板,并给出由统计导出的模板的例子。
概述字母代表手写文本识别系统分类的基本元素。在英语中,字母可被归类为按字母顺序(‘a’-‘z’,‘A’-‘Z’),按数字顺序(‘0’-‘9’),或者标点符号(其他的)。在一般的字母字符识别中,字典和字符语法经常被用于消除歧义。通常,字典和字符语法包括只是字母字符(尽管有时在模型包括撇号,例如复合词“they’re”和“he’ll”)的。
由于大多数语言模型不包括关于数字和标点符号的字母的早先的信息,识别系统采用试探法从一识别字符串中提取按字母顺序或数值字符的字符串,然后采用语言模型进行处理。然而,试探法通常不可靠,会导致下述的误识别问题,例如·字母字符串被识别为数字,·数值字符串被识别为字母,·包含文本和数值的单词(例如2nd,V8,B2)被误识别为字母的字符串或者数值字符串,·标点符号误识别为按字母顺序或者数字,并且·字母或者数值字被误识别为标点。
然而,在文本序列中存在的特定标点字符可帮助解码所述序列中的其他字符。例如,撇号可指示文本字符串,逗号,货币符号和句号能指示数字字符串。含有破折号的单词(句子)包含数字字符串和字母字符串的混合体(例如“30-year-old”或者“20-pound”)。除此之外,一些标点字符通常出现在字符串中的特定位置(例如后缀标点,比如‘?’,‘!’,或者‘’)。
统计语言模板的处理过程是一种关于书写文本结构的早先信息的编码方法,使用概率模型在按字母字符,数字字符,和标点字符之间互动仿效。模型考虑位置信息,并且能够通过考虑整个输入单词来仿效字母附属物(而不是固定数量的本地先前的形态,如在字符N-grams中)。
字母标志(Tokenisation)使用书面文本文集产生统计模板(从许多来源中收集一大套文本文件)。为了产生模板统计,文集中的每一个文件被作为通过空白处来界定的一套连续的字母来处理(例如,单词、句子和段落标记)。这个字母的序列形成了一个字符串。
在模板产生过程中,单个字母转换成标记,所述标记代表字母所属的种类(或者字符类型)。
字母种类的定义具有明确范围,并且基于需要被解决的含糊意义所选择。下面的讨论基于分类系统大写和小写字母被转换为标志‘a’,全部数字都转换为标志‘d’,并且剩下全部字符(例如标点)不被转换,并且保留其初始值。
代表单词或者字符串的标志序列定义模板。
作为一个例子,字符串“15-years?”被转换为模板“dd-aaaaa?”。需要指出的是,二者择一的标记(tokenisation)系统可用于模拟其它的语言形式,例如大写和小写的区别(例如“MacDonald”作为“ullulllll”,‘u’表示用大写字母排印,‘l’表示小写字母字符)。
处理产生统计语言模板的目的是识别普通书写文本的习语,并且计算在书面文本遇到习语的概率。通过标记(tokenising)在每一个分开的单词的空白处来进行模型的训练,并且在表格里存储结果,通常存储在数据库11内。与每个模板相关的是一个计数,所述计数指示在输入流中特定模板出现的次数。
当文集中的全部文本处理完后,表格就包含了在文本中遇到的全部模板的列表,和每个模板出现次数的数值。显而易见,通常出现的模板(例如模板“aaa”代表“the”,“but”,或者“cat”)与可能性小的模板(例如模板“ada”代表“x1y”或者“b2b”)相比较,包含较高的数值。
计算一个模板事前概率,模板数值除以全部模板计数的总数。这些数值可以作为记录存储以避免数字下溢,并且在识别期间解除处理。模板的记录概率ti是P(ti)=log10(ciΣj=1ncj)]]>其中ci是在训练文本中模板i遇到的次数n是不同模板的总数量计算遇到所有模板的事前概率允许与不同数量的字母的模板相比较。这表明当不知道字母或者单词的分割,或者可能是许多交替的分割路线时,语言模型可对输入解码有所帮助。
但是,如果在识别时知道输入字符串中的字母数量,模板模型可被分开,这样可依据字母数量来分组。于是基于模板组的模板计数的数量,而不是在全组的全部计数,就可计算出事前概率。
过滤上述程序产生基于文本全书的模板概率的最大似然估计(MLE)。即,计算的概率是当用于训练全书时,那些给出的最高概率。没有概率分布被分配到在训练文本过程中没有遇到的模板,因此这些模板被分配为零概率。
既然文本全书只代表潜在的输入语言模型的一个子集,那么过滤模型必须被用于通过小数量来减少观察事件的概率,并且对未出现事件分配大量残余概率。这个程序被通常用于字符和单词N-grams,象1999年由美国马萨诸塞州剑桥市的麻省理工出版社出版的C.Manning和H.Schutze所著的“Foundationsof Statistical Natural Language Processing”中描述的那样。因此在这种情形中,可容易地应用相同的技术。
在这个例子里,如“Foundations of Statistical Natural Language Processing”中描述的前面提到的Lidstones定律,用来过滤产生的概率,因此P(xi)=ci+λΣj=1ncj+Bλ]]>其中B是来自文集中的独特模板的数量;λ是过滤因子(依经验设定为.5)结果是非零概率可被分配到在训练全书中没有出现的单词结构,允许识别稀有的和不平常的单词结构。
也可以理解的是,用于确定概率的文本全书越大,可获得的概率越大。
实施例结果训练过程匆匆浏览全书文本,这样的例子记录在1993年,D.Harman和M.Liberman所著的完整的情报全书(Complete TIPSTER Corpus)中,用来产生一套统计语言模板。在下面列出确定模板的例子。
特别是,表格1包含在书面文本全书中出现频率最高的二十个模板(从而具有最高的事前概率)。
所述表格揭示了书写文本的许多明显的特性,例如短字一般比长字更普通,并且逗号和句号是最可能的标点字符并且作为单词后缀出现。这些通过模板和相应早先记录概率定义的规则是绝对的,并且允许对输入文本进行鲁棒(robust)的以及有统计根据的解码。
在上述表格中模板详述了通过许多简单试探法描述的许多相当明显的语言规则(虽然这些规则的事前概率不太可能容易地并且准确地估计到)。
表1

但是,对结果进一步的检查揭示了许多语言习语,使用试探法准确地模仿将非常困难,如表格2中详述的那样。这些模板在按字母顺序的文字,数字以及标点符号之间相互作用地作效仿,并且隐含地定义了一套关于书写文本结构的规则。
表2


需要注意的是,这种技术优势在于大量模板的产生,以及模板有关的概率。通常,产生数千模板,一同定义一套统计的完整的关于书写文本结构的规则。
统计模板的处理本部分描述了使用统计模板来对手写文本进行解码。给定了通用程序与一些例子的处理。也给定了怎样将本技术与其他语言模型相结合的描述。
概述手写体字符识别的目的是准确把书写者产生的笔尖笔划转变成相应文本。然而,在内在含糊的手写文本中,需要使用上下文的信息来识别输入。如上述描述的那样产生的统计模板对输入的总体结构的识别有所帮助,并且可以在识别过程中与其他语言模型相结合,例如字典和字符语法。
大多数字符分类系统产生一套可能的字母匹配,及与输入字母相结合的置信分值。例如,对字母‘a’分类时,分类字母猜测如下述表格3设置的那样。
表3

这(非正式地)表明分类器60%的置信度是字母‘a’,30%的置信度是字母‘d’,等等。需要指出的是,统计处理,分值应该遵循概率规则,那就是
0≤P(xi)≤1 对全部的i并且,Σi=1nP(xi)=1]]>对分类器来说不产生概率(例如,分类器报告距离值),输出的分值矢量应该正常化以保证上述规章的持续。对于面向神经网络的分类器,一个正常化的转变功能可用来使输出值正常(例如用J.布里德尔描述的softmax激活函数,见1990年纽约施普林格出版社出版的《计算Neuro算法,建筑学和应用》一书的第227-236页的“Probabilistic Interpretation of FeedforwardClassification Network Outputs,with Relationships to Statistical PatternRecognition”一文)。
解码解码是运行在由字符分类器产生的一套字母假说上,代表输入单词或者单词序列。同模板联合的概率意味着诸如字长和标点字符的位置等特征可用于统计单词分割。因为统计模板能估计一个特定单词结构的概率,如果需要,他们可用来帮助单词分割。
但是,下面给出的描述假设已经执行单词分割,并且解码的程序只被要求提供最可能的字母序列,由字符分类器的输出所给出。这是通过查找模板来实现的,通过字符分类器产生的字符概率与模板可能的事前概率相结合给出最大分值P(wi)=P(ti)×Πj=1nP(xij)]]>其中n=输入字符串中的字母的数量P(wi)=字母序列的概率P(xij)=在模板ti的位置j处,分类器的得分标志(见下)P(ti)=模板ti的事前概率在计算P(xij)的值的时候,标志种类中最高的分值成员(在字母位置j使用分类器假说)被使用。例如,如果模板包含‘a’,最高排列分值的字母字符被使用。类似的,如果这个模板包含‘d’,最高排列分值的数字的被使用。对标点来说,被指定的标点字符的分值被使用。
如果记录概率用于模板,分类器输出也必须转换为记录概率,解码程序找到最大值P(wi)=P(ti)+Σj=1nP(xij)]]>举例来说,假设一个分类器已经从字符串“30-day”产生表4所示的分值,对于字符指示。
表4

在这个例中,黑色字体示出了正确的解码路径。
如果这些分值转换为记录概率并且适用于与长度相配的全部模板,然后最高分值的模板如表格5所示。
表5

其中P(ti)是从文本文集中统计上导出的模板事前概率。
为了计算模板“dd-aaa”的字母序列的概率P(wi),处理器20执行的计算过程如下
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”是最大可能性顺序)。
语言模型结合在上述例子中,字符串最好匹配的模板被选择为解码字符串。通常,被匹配的模板将与其他语言模型相结合用于另外的处理。
例如,不是从字符串的字母部分取最大可能性字母(例如,“day”),而是将来自这部分的分类器分值传给一本字典或者字符语法来做进一步的解码。
或者,通过用一个附加的语言模型,对来自许多最高分值的模板的文本段进行处理,作为结果的分值被结合产生最后的单词概率。
因此,可以理解的是,如上所述的处理提供一种在手写字符识别中使用统计语言模板用于上下文处理的方法。这包括要求从一文本全集产生模板的过程,以及使用模板对字符分类器输出进行解码的技术。
特别是,与现有技术的方法相比,使用较少处理能力,这些技术一般就能执行更快、更准确的手写识别。
广义上说,在应用的说明书中引用或者表示的本发明包括部分、元素和特征,逐个地或者全体地,两个或者多个所述部分、元素或者特征的一些或者所有组合,在此提到的特定数字在与本发明相关的领域是已知的,即使是分别提出的,这些已知知识与本发明也是融为一体的。
尽管上面对优选实施方式进行了详细地描述,但本领域的普通技术人员仍然可以在不脱离下述请求保护的本发明范围的情况下,做出各种改变、替换和更改。
权利要求
1.一种识别由许多手写字符组成的字符串的方法,包括a)确定字符串中每个字符的字符概率,每个字符概率表示各个字符是许多预先确定的字符中的一个的可能性;b)确定所述字符串的模板概率,每个模板概率代表字符串与许多模板中的一个模板相符合的可能性,每个模板代表字符类型的各自结合;c)根据确定的字符和模板概率来确定字符串概率;以及d)根据确定的字符串概率来识别字符串。
2.根据权利要求1所述的方法,每一个预先确定的字符都具有各自的字符类型。
3.根据权利要求1或2所述的方法,所述字符类型包括至少下述类型之一a)数字;b)字母;以及c)标点符号。
4.根据权利要求1至3中任一项所述的方法,确定字符概率的方法包括使用字符分类器。
5.根据权利要求1至4中任一项所述的方法,确定模板概率的方法包括a)确定字符串中字符的数量;b)选择具有相同的字符数量的模板;以及c)获得每一个选定模板的模板概率。
6.根据权利要求5所述的方法,所述模板概率通过文本文集的统计分析来预先决定。
7.根据权利要求5或6所述的方法,包括确定与每个模板相符合的一个潜在的字符串,通过a)确定来自模板的字符串中每个字符的字符类型;以及b)为所述模板内的每个字符选择一个预先确定的字符,预先确定的字符根据确定的字符类型和字符概率来选择。
8.根据权利要求7所述的方法,所述被选择的预先确定字符是具有最高字符概率的预先确定的字符。
9.根据权利要求7或8所述的方法,所述识别字符串的方法包括a)为每个潜在的字符串确定字符串概率,所述字符串概率是通过连接每一个被选择字符的字符概率和各个模板概率来确定;以及b)确定所述字符串是具有最高的字符串概率的潜在字符串。
10.根据权利要求1至9中任一项所述的方法,其通过处理系统来执行,所述处理系统包括a)存储器,存储至少下述中的一个i)预先确定的字符;ii)模板数据,代表至少下述中的一个(1)模板;以及,(2)模板概率;以及,b)处理器,用于i)接收字符串;ii)确定字符串中每个字符的字符概率;iii)确定模板概率;iv)根据确定的字符和模板概率来确定字符串概率;并且,v)根据确定的字符串概率来识别字符串。
11.一种识别由许多手写字符组成的字符串的装置,包括a)存储器,存储至少下述中的一个i)许多预先确定的字符;ii)代表许多模板的模板数据;以及b)处理器,用于i)确定字符串中每个字符的字符概率,每个字符概率表示各个字符是许多预先确定的字符中的一个的可能性;ii)确定所述字符串的模板概率,每个模板概率代表字符串与许多模板中的一个模板相符合的可能性,每个模板代表字符类型的各自结合;iii)根据确定的字符和模板概率来确定字符串概率;以及iv)根据确定的字符串概率来识别字符串。
12.根据权利要求11所述的装置,所述处理器连接输入端,且进一步用于通过输入端接收手写的字符。
13.根据权利要求10或11所述的装置,所述处理器用于执行权利要求1至9中任一项所述的方法。
14.一种产生用于识别手写体的模板的方法,包括a)获得文本;b)识别文本中的字符串,每个字符串由一个或多个字符的序列形成,每个字符具有各自的类型;c)为每个字符串确定字符类型序列;以及d)为每个字符类型序列确定模板。
15.根据权利要求14所述的方法,包括a)统计分析确定的模板;以及b)根据统计分析确定模板概率,所述模板概率表明在文本中各个字符类型序列出现的概率。
16.根据权利要求14或15所述的方法,包括a)确定在文本中每种字符类型序列出现的频率;以及b)根据确定的每个字符类型序列的频率来确定模板概率。
17.根据权利要求16所述的方法,还包括修改确定的模板概率来解释数量有限的字符类型序列。
18.根据权利要求17所述的方法,包括根据Lidstone定律来修改所述概率。
19.根据权利要求14至18中任一项所述的方法,包括从一大的文本文集中获得文本。
20.根据权利要求14至19中任一项所述的方法,包括从许多不同的来源获得文本。
21.根据权利要求14至20中任一项所述的方法,采用处理系统来执行,所述处理系统具有a)存储器,用于存储文本;以及b)处理器,用于i)识别文本中的字符串;ii)确定字符类型序列;以及iii)确定模板。
22.一种产生用于识别手写体的模板的装置,包括处理器,适用于a)获得文本;b)识别文本中的字符串,每个字符串由一个或多个字符的序列形成,每个字符具有各自的类型;c)为每个字符串确定字符类型序列;以及d)为每个字符类型序列确定模板。
23.根据权利要求22所述的装置,包括用于存储文本的存储器,所述处理器用于从存储器中获得文本。
24.根据权利要求22或23所述的装置,用于执行权利要求14至21中任一项所述的方法。
全文摘要
本发明提供一种识别由许多手写的字符组成的字符串的方法,例如手写单词。为了完成上述目的,所述方法用来确定字符串中的每一个字符的字符概率,也即确定所述字符串符合预先决定模板形式的概率。在这方面,每个模板代表字符类型各自的结合。模板和字符概率结合来确定字符串概率,根据确定的字符串概率来识别字符串。
文档编号G06K9/72GK1571980SQ02820475
公开日2005年1月26日 申请日期2002年10月15日 优先权日2001年10月15日
发明者乔纳森·利·纳珀 申请人:西尔弗布鲁克研究有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1