生成拼写建议的方法和系统的制作方法

文档序号:6567140阅读:179来源:国知局

专利名称::生成拼写建议的方法和系统的制作方法生成拼写建议的方法和系统发明领域本发明一般涉及拼写检查方法和系统,尤其涉及被配置成基于输入串中的单词对输入串的单词建议替换的拼写检查方法和系统。
背景技术
:文字输入,诸如使用文字处理应用程序所生成的文档中的文字输入可包含众多不同类型的错误,包括拼写错误。导致无效单词的拼写错误一般可由基于词典的拼写检査器来处理。这样的拼写错误可能因排印错误或不知道单词的拼写而发生。基于词典的拼写检查器将文字输入中的单词与单词的词典进行比较,并标识文字输入中未在词典里找到的单词。通常为拼错的单词建议一个或多个替换单词。例如,在文字输入"flyfrmBoston"中,拼写检査器可将"frm"标识为拼错。其它类型的拼写错误会导致使用传统拼写检查应用程序一般无法检测的有效单词。例如,可能由文字处理应用程序的用户因排印错误或不知道想要的单词的拼写而输入不是想要的有效单词。例如,在文字输入"flyformBoston"中,单词"form"是常规拼写检查应用程序不会标记的有效单词,即使该单词是想要的单词"from"的错拼。对这些类型的拼写错误的更正一般需要对使用该单词的上下文作分析。传统的拼写检查应用程序一般基于编辑距离提出对所标识的无效单词所建议的替换单词。编辑距离表示形成有效替换单词所需的改变。词典中与所键入的无效单词编辑距离最短的单词是向用户建议的第一替换单词。例如,在短语"flyfrmBoston"中,大多数拼写检查应用程序在建议正确单词"from"之前都会建议"form"作为替换单词,因为当作出建议时没有考虑单词的上下文。为了为拼写错误建议最合适的替换单词,必须对其中找到拼写错误的上下文进行分析。从而,需要能够分析其中使用单词的上下文以便提供对拼错单词的更好建议以及对不正确使用的有效单词改进的检测的改进的拼写检査方法和系统。本发明的实施例对这些和其它问题提供了解决方案,并提供了优于现有技术的其它优点。发明概述本发明一般涉及利用包括主题单词和候选替换单词对以及每一对的候选得分的候选表并基于该表作出单词替换建议的拼写检査方法和系统。本发明的一个方面涉及对串中单词建议替换单词的计算机实现方法。在该方法中,接收到输入单词的输入串。然后将输入单词与候选表的主题单词进行匹配。接着,从候选表中提取对应于所匹配的主题单词的候选替换单词和候选得分。每一候选得分指示应使用相应的候选替换单词替换输入单词的概率。最后,基于替换单词的候选得分选择性地建议使用其相应的候选替换单词替换输入单词。本发明的另一方面针对用于对输入串中的输入单词建议替换单词的拼写检査系统。该系统包括候选生成器和上下文拼写引擎。候选生成器包括为匹配候选表的主题单词的每一输入单词输出候选替换单词及相应的候选得分。每一候选得分指示应使用相应的候选替换单词替换输入单词的概率。上下文拼写引擎包括基于相应的候选得分为输入单词选择性地输出候选替换单词。本发明的又一方面针对形成供拼写检查系统使用来为输入串中的输入单词建议替换单词的候选表的方法。在该方法中,提供单词的词典。接着,将词典中的主题单词与词典中的其它单词进行比较。然后基于比较为主题单词标识候选替换单词。然后形成包括所标识的主题单词及其相应的候选替换单词对的候选表。最后,在计算机可读介质上存储该候选表。当阅读了以下详细描述并审阅了相关联的附图之后,表现本发明的实施例的其它特征和好处将是显而易见的。附图简述图1是可在其中实现本发明的计算环境的框图。图2是根据本发明的实施例示出为串中的单词建议替换单词的方法的流程图。图3是根据本发明的实施例的拼写检查系统的框图。图4是根据本发明的实施例示出生成供拼写检査系统使用来为输入串的输入单词建议替换单词的候选表的方法的流程图。说明性实施例的详细描述本发明一般涉及用于为输入串中的无效输入单词提供准确的替换单词建议的拼写检查方法和系统。此外,本发明的拼写检査方法和系统可为输入串中不正确使用的有效输入单词提供替换单词建议。本发明的实施例基于使用输入单词的上下文来作出替换单词建议。在详细描述本发明之前,将提供可在其中使用本发明的示例性计算环境的讨论。示例性计算环境图1示出了可在其上实现本发明的合适的计算系统环境100的示例。计算系统环境IOO只是合适的计算环境的一个示例,并不旨在对本发明的使用范围或功能提出任何限制。也不应该把计算环境100解释为对示例性操作环境100中示出的任一组件或其组合有任何依赖性或要求。本发明可用众多其它通用或专用计算系统环境或配置来操作。适合在本发明中使用的公知的计算系统、环境和/或配置的示例包括,但不限于,个人计算机、服务器计算机、手持或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费者电子产品、网络PC、小型机、大型机、包含上述系统或设备中的任一个的分布式计算机环境等。本发明可在诸如程序模块等由计算机执行的计算机可执行指令的通用语境中描述。一般而言,程序模块包括例程、程序、对象、组件、数据结构等,它们执行特定任务或实现特定抽象数据类型。本发明也可以在分布式计算环境中实现,其中任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于包括存储器存储设备在内的本地和远程计算机存储介质中。参考图1,用于实现本发明的一个示例性系统包括计算机110形式的通用计算设备。计算机110的组件可以包括,但不限于,处理单元120、系统存储器130和将包括系统存储器在内的各种系统组件耦合至处理单元120的系统总线121。系统总线121可以是若干类型的总线结构中的任一种,包括存储器总线或存储器控制器、外围总线和使用各种总线体系结构中的任一种的局部总线。作为示例,而非限制,这样的体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、扩展的ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和外围部件互连(PCI)总线(也被称为Mezzanine总线)。计算机110通常包括各种计算机可读介质。计算机可读介质可以是能够被计算机IIO访问的任何可用介质,且包括易失性和非易失性介质、可移动和不可移动介质。作为示例,而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以任何方法或技术实现的用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术;CD-ROM、数字多功能盘(DVD)或其它光盘存储;磁带盒、磁带、磁盘存储或其它磁性存储设备;或能用于存储所需信息且可以由计算机100访问的任何其它介质。通信介质通常具体化为诸如载波或其它传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其它数据,且包含任何信息传递介质。术语"已调制数据信号"指的是这样一种信号,其一个或多个特征以在信号中编码信息的方式被设定或更改。作为示例,而非限制,通信介质包括诸如有线网络或直接线连接的有线介质,以及诸如声学、RF、红外线和其它无线介质的无线介质。上述中任一个的组合也应包括在计算机可读介质的范围之内。系统存储器130包括易失性和/或非易失性存储器形式的计算机存储介质,诸如只读存储器(ROM)131和随机存取存储器(RAM)132。基本输入/输出系统133(BIOS)包含有助于诸如启动时在计算机110中元件之间传递信息的基本例程,它通常被存储在ROM131中。RAM132通常包含处理单元120可以立即访问和/或目前正在操作的数据和/或程序模块。作为示例,而非限制,图1示出了操作系统134、应用程序135、其它程序模块136和程序数据137。计算机110也可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图l示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器141,从可移动、非易失性磁盘152中读取或向其写入的磁盘驱动器151,以及从诸如CDROM或其它光学介质等可移动、非易失性光盘156中读取或向其写入的光盘驱动器155。可以在示例性操作环境下使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括,但不限于,盒式磁带、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器141通常由诸如接口140的不可移动存储器接口连接至系统总线121,磁盘驱动器151和光盘驱动器155通常由诸如接口150的可移动存储器接口连接至系统总线121。以上描述和在图1中示出的驱动器及其相关联的计算机存储介质为计算机110提供了对计算机可读指令、数据结构、程序模块和其它数据的存储。例如,在图1中,硬盘驱动器141被示为存储操作系统144、应用程序145、其它程序模块146和程序数据147。注意,这些组件可以与操作系统134、应用程序135、其它程序模块136和程序数据137相同或不同。操作系统144、应用程序145、其它程序模块146和程序数据147在这里被标注了不同的标号是为了说明至少它们是不同的副本。用户可以通过输入设备,诸如键盘162、麦克风163和定点设备161(诸如鼠标、跟踪球或触摸垫)向计算机110输入命令和信息。其它输入设备(未示出)可以包括操纵杆、游戏垫、圆盘式卫星天线、扫描仪等。这些和其它输入设备通常由耦合至系统总线的用户输入接口160连接至处理单元120,但也可以由其它接口或总线结构,诸如并行端口、游戏端口或通用串行总线(USB)连接。监视器191或其它类型的显示设备也经由接口,诸如视频接口190连接至系统总线121。除监视器以外,计算机也可以包括其它外围输出设备,诸如扬声器197和打印机196,它们可以通过输出外围接口190连接。计算机110可使用至一个或多个远程计算机,诸如远程计算机180的逻辑连接在网络化环境下操作。远程计算机180可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其它常见网络节点,且通常包括上文相对于计算机IIO描述的许多或所有元件。图1中所示逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可以包括其它网络。这样的联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。当在LAN联网环境中使用时,计算机110通过网络接口或适配器170连接至LAN171。当在WAN联网环境中使用时,计算机IIO通常包括调制解调器172或用于在诸如因特网等WAN173上建立通信的其它装置。调制解调器172可以是内置或外置的,它可以通过用户输入接口160或其它合适的机制连接至系统总线121。在网络化环境中,相对于计算机110描述的程序模块或其部分可以存储在远程存储器存储设备中。作为示例,而非限制,图1示出了远程应用程序185驻留在远程计算机180上。可以理解,所示的网络连接是示例性的,且可以使用在计算机之间建立通信链路的其它手段。应注意到,本发明可在诸如参考图1描述的计算机系统上实现。然而,本发明可在服务器、致力于消息处理的计算机、或其中可在分布式计算系统的不同部分实现本发明的不同部分的分布式系统上实现。拼写检查方法和系统如上所述,本发明一般涉及用于对输入串中无效的输入单词提供准确的替换单词建议的拼写检查方法和系统。此外,本发明的拼写检查方法和系统可对输入串中不正确使用的有效输入单词提供替换单词建议。本发明所提供的替换单词建议一般基于使用输入单词的上下文。此外,本发明提供对拼写检查的数据驱动方法。结果,拼写检査方法和系统的实施例不要求与基于分析或基于规则的文法(grammar)检查器相同类型的理论语言学专家程序。该实现比基于规则的系统的实现简单得多,维护和安全性的成本也较低。此外,生成建议的机制一般是独立于语言的,且可容易地扩展到多种语言。将参考图2和3讨论本发明的实施例。图2是根据本发明的实施例对串中的单词建议替换单词的方法的流程图。图3是根据本发明的实施例被配置成实现该方法的拼写检査系统200的框图。在该方法的步骤202处,由拼写检查系统200接收输入单词的输入串204。输入串204—开始可由文字处理应用程序206的用户经由键盘、麦克风(即口述)或其它常规方法来输入。或者,输入串204可从预先存在的文档、网页或从另一源中检索。优选地,应用程序206以完整的句子将输入串204提供给系统200。此外,输入传204可按照标记化(tokenized)的形式或其它可识别格式被提供给拼写检查系统200,或者由系统200转换成所述格式。从系统200的上下文拼写引擎210将输入串提供给候选生成器208。优选地,输入串204仅包含有效(即,正确拼写的)单词。根据该方法的一个实施例,使用基于词典的拼写检查器器212更正输入串204中拼错的输入单词。拼写检查器212将输入串204中的每一输入单词与词典214的单词进行比较。由拼写检查器212根据常规方法生成对未包含在词典214中的输入单词所建议的替换。拼写检查器212生成的所建议的替换可呈现给用户,以便选择拼写检查器212所标识的拼错单词的替换,并依此修改输入串。或者,拼写检查器212为拼错的输入单词生成的所建议的更正被提供给候选生成器208,这形成仅包含有效单词的输入串。然后由候选生成器208分析仅包含有效单词的输入串。候选生成器208的用途在于标识与输入串204中的输入单词类似或相关的候选替换单词。稍后可将候选替换单词提供给应用程序206作为对输入单词所建议的替换单词。候选替换单词和输入单词对被包含在候选表216中。表1是根据本发明的实施例的候选表216的一部分的示例。候选表216包括各自与一候选替换单词相关联的主题单词,以及指示应使用候选替换单词替换该主题单词的概率的候选得分。表l:示例性候选表<table>tableseeoriginaldocumentpage11</column></row><table>候选表216的一个实施例包括描述必须对主题单词执行以形成候选替换单词的变换的每一主题和候选替换单词对的编辑条目。例如,为了将"aback"变换成"alack","aback"中的"b"必须被改变成"1",这被表示为"b:l"。类似地,删除"aback"中的第一个"a"来形成候选替换单词"back"可被表示为"a:"。对abalone's添加"'"可被简单的表示为"A"。同音词候选替换单词,诸如主题单词"break"的"brake",被表示为"H"。也可使用表示必须执行以便将主题单词变换成相应的候选替换单词的各种编辑的其它方法。可由上下文拼写引擎210使用候选表中的编辑条目在输入串的分析期间修改候选替换单词的得分。编辑条目可被分组成多个类,并被分配反映诸如一类编辑类型的频率等不同的值。值越高,编辑类型对候选替换单词的得分的影响越大。这些类或编辑类型得分可附加于候选得分或被包括在候选得分中。例如,删除主题单词的首字符来形成候选替换单词的编辑可导致该候选替换单词的得分增加。根据本发明的一个实施例,候选表216作为二进制文件被存储在计算机可读介质上,它将被加载到计算环境的存储器中以便由拼写检查系统200快速访问。根据本发明的一个实施例,候选表216被存储为二进制文件中的散列表。根据候选表216的另一实施例,词典标识符被用于表示主题和候选替换单词。词典标识符向诸如图3中所示的词典214的词典中的相应单词提供链接。本发明的该实施例用于减少存储大型候选表216所需的存储器量。在该方法的步骤218处,候选生成器208将输入串204中的输入单词与候选表216中的主题单词进行匹配。然后在步骤220处,为输入串204中的每一输入单词基于相应的匹配主题单词从候选表216中提取候选替换单词222和相应的候选得分224。由于可能存在与同一主题或输入单词相关联的众多候选替换单词,候选生成器208可为每一匹配的输入单词生成一个以上的候选替换单词和得分对。候选替换单词222和得分224对被输出给上下文拼写引擎210以便进一步处理。候选表216中的候选得分224—般指示应使用相应的候选替换单词替换输入单词的概率。此外,候选得分224可反映主题单词与相应的候选替换单词222之间的错误的数量。根据本发明的一个实施例,候选得分224基于一个或多个因素,优选地使每一个因素相乘以形成候选表216中该主题单词和候选替换单词对的候选得分。这样的因素包括主题单词与候选替换单词之间的编辑或键入距离、直观推断(heuristics)、主题单词与候选替换单词之间的语音差异、以及可能与候选替换单词应替换主题单词的可能性相关的其它因素。取决于主题单词与候选替换单词之间的差异,基于编辑类型和直观推断的候选得分224可有所变化。例如,单数主题单词应被变换成复数候选替换单词的可能性可能非常小。结果是,应向这样的候选替换单词给予较低的候选得分。另一方面,当从主题单词到候选替换单词的变换仅涉及对首字符的修改,这与更常遇到的拼写错误有关,这样的主题和候选替换单词对会得到较高的候选得分。与编辑距离有关的还有基于通过向主题单词添加空格将主题单词分成两个单词的得分。这样的编辑因其相对较高的频率而被给予较高的候选得分。当候选替换单词是主题单词的同音词或近乎同音词时,该单词对的得分要高于当候选替换词在语音上与主题单词基本上不相似时的得分。在该方法的步骤226处,上下文拼写引擎210为输入串204中的输入单词基于候选替换单词222相应的得分224选择性地产生候选替换单词222的输出230。根据本发明的一个实施例,系统200包括从上下文拼写引擎210接收候选替换串242的语言模型240。候选替换串242是经修改的输出串204,各自包括代替相应的输入单词的候选替换单词222。语言模型240用于为每一候选替换串242输出概率得分244。概率得分244一般基于一大段句子的统计数据246(即,单词相对于其它单词的出现频率数据)给出看到特定候选替换串242的可能性的度量。一般,假定看到特定单词串的可能性越大,则包含在串中的单词以正确方式使用的可能性越大。因此,每一候选替换串242的概率得分244反映了该串中输入单词与候选替换单词的组合的准确程度。可使用统计数据246根据公式l计算给定单词串(即,Wl,w2,W3,...wN)概率得分244(被表示为P(上下文))。一般而言,串的概率等于串中给定其它单词情况下每一单词的概率。因此,串的概率等于第一单词的概率(P(Wl))乘以给定第一单词的情况下第二单词的概率(P(W2|Wl))乘以给定第一和第二单词情况下第三单词的概率(P(w3|w2,Wl))等等。P(上下文)二P(W^P(W2h"P(W3IW2,W^…承P(WnIWn小Wn-2…W2,W!)公式1根据本发明的实施例,使用公式1的三元(trigram)逼近,这在公式2中提供。对串中的每一单词,三元逼近使用前两个单词(如果存在)而非串中所有N个单词。P(上下文)P(W,"P(W2|Wl)*P(W3|W2,W1)*..求P(WnIWn小Wn.2)公式2根据本发明的一个实施例,上下文拼写引擎210基于每一候选替换串的最后得分来选择所建议的候选替换单词或串230以输出给应用程序260。最后得分(表示为P(候选i输入单词,上下文))各自根据公式3通过将候选替换串的概率得分(被表示为P(上下文,候选))乘以对应于替换输入单词以形成候选替换串242的候选替换单词222(候选)的候选得分224计算出。例如,候选生成器208为输入串204"Iseeyouto"的输入单词"to"生成候选替换单词222"too"、"tot"和"two"及其相应的得分224。相应的候选替换串242然后变成"Iseeyoutoo"、"Iseeyoutot"禾口"Iseeyoutwo"。上下文拼写引擎210然后对语言模型240迸行若干调用,后者为每一候选替换串242计算概率得分。候选替换串242的最后得分然后由上下文拼写引擎210通过将其概率得分244乘以其相应的候选得分224来计算出。因此,候选替换串242"Iseeyoutoo"的最后得分等于串"Iseeyoutoo"的概率乘以对应于从候选表216中获取的候选替换单词"too"对输入单词"to"的得分224。根据本发明的一个实施例,由上下文拼写引擎210将具有最高最后得分的候选替换串的候选单词222作为输出230向应用程序206建议。或者,上下文拼写引擎210可仅建议对应于具有最高最后得分的候选替换串242的候选替换单词222,如果最后得分超出一阈值。根据本发明的另一实施例,上下文拼写引擎210将最后得分超出一阈值的多个候选替换单词222作为输出230向应用程序206建议。可根据主题单词和候选单词的概率预定或动态计算阈值。在一个实施例中,阈值由阈值二aP(主题单词)+PP(候选单词)+YlP(输入单词)-P(候选单词)来动态确定。候选表生成图4是根据本发明的实施例示出生成供拼写检查系统200使用的候选表216的方法的流程图。在该方法的步骤250处,提供单词的词典。优选地,该词典非常大(例如,超过100,000个单词)。接着,在步骤252处,将词典中的主题单词与词典中的其它单词进行比较。优选地,词典中的每一单词,或至少词典中最常用的单词各自成为与词典中的其它单词进行比较的主题单词。在步骤254处,基于步骤252中的比较为主题单词标识候选替换单词。根据本发明的一个实施例,对主题单词与词典中的其它单词进行的比较(步骤252)涉及计算词典中每一单词与主题单词的编辑或键入距离,并将编辑距离与阈值编辑距离进行比较。编辑距离满足阈值编辑距离的候选替换单词被标识为主题单词的候选替换单词。应理解,取决于如何计算编辑距离,阈值的"满足"旨在通过达到阈值、超过阈值或落在阈值以下来满足。根据比较步骤252的另一实施例,将词典中每一单词的含义与主题单词进行比较。标识步骤254则包括将词典中含义与主题单词的含义相似的单词标识为候选替换单词。例如,主题单词的同义词可被标识为候选替换单词。根据本发明的一个实施例,针对同义词典(thesaurus)数据检查词典中的主题单词,由此在方法的步骤254处将具有相似含义的候选替换单词标识为候选替换单词。根据比较步骤252的另一实施例,将词典中单词的语音表示与词典中的主题单词进行比较。词典中单词的语音表示优选地通过将单词提交给常规的文字到语音引擎来自动生成。在标号步骤254中,词典中语音表示匹配主题单词的语音表示的单词被表示为主题单词的候选替换单词。这些对的示例包括"bear"和"bare",以及"which"和"witch"。因此,主题单词的同音词被标识为候选替换单词。根据本发明的另一实施例,词典中近乎同音词的单词(即,满足一阈值的单词)也被表示为候选替换单词。本发明的另一实施例包括对一大段句子中找到的二元组(biple)(即,单词对)的分析。分析涉及确定移动或删除位于二元组的第一与第二单词之间的空格是否会生成至少一个有效单词。比较步骤252的一个实施例包括,将主题单词与由空格移动分析生成的有效单词进行比较。优选地,在比较步骤252中仅使用通过移动第一单词的结束字符之前的空格、或第二单词的首字符之后的空格、或删除空格所形成的有效单词,因为它们对应于更常见的排字错误。然后在步骤254中,将匹配主题单词的新形成的有效单词标识为主题单词的候选替换单词。例如,单词对"useswords"的候选替换单词将是"useswords",而单词对"dogsand"的候选替换单词将是"dogsand"。类似地,单词对"anyone"的候选替换单词将是"anyone",反过来,单词对"anyone"的候选替换单词将是"anyone"。在方法的步骤256处,形成包括主题单词对及其所标识的相应的候选替换单词的候选列表216。最后,在步骤258处,在诸如以上参考图l描述的计算机可读介质上存储候选表216。根据本发明的另一实施例,如上所述,在步骤256中基于候选替换单词应替换相应的主题单词的概率来为每一主题和候选替换单词对生成候选得分224。候选得分优选地基于比较步骤252中所分析以及以上讨论的因素中的一个或多个。候选得分被包括在步骤258中存储在计算机可读介质上的候选表216中。候选排除表根据本发明的另一实施例,生成标识候选生成器208不应向上下文拼写引擎210提交作为候选替换单词222的某些候选替换单词的候选排除表260。因此,候选排除表260阻止上下文拼写引擎210向应用程序206建议不适当或不想要的候选替换单词。优选地,候选排除表260包括冒犯性的候选替换单词。此外,难以消除歧义且通常在相似上下文中出现的单词可被包括在候选排除表中,诸如"rough"和"tough"。同一主题单词可接受的拼写变型,诸如"color"和"colour"、或"goodbye"和"good-bye",可通过将其包括在候选排除表260中被去除。而且,由于产生单数输入单词的复数形式的排字错误是罕见的,单数主题单词及其复数对应词优选地被包括在候选排除表260中。根据本发明的一个实施例,周期性地更新候选表216以去除在候选排除表260中具有匹配单词对的主题单词和候选替换单词对。此外,也可去除候选表216中候选替换单词匹配候选排除表260中的单词的主题单词和候选替换单词对。结果得到的对候选表216的大小的减少使拼写检查系统200能更有效地操作。尽管参考特定实施例描述了本发明,但本领域的技术人员可以认识到,可在形式和细节上作出改变,而不背离本发明的精神和范围。权利要求1.一种用于为串中的单词建议替换单词的计算机实现的方法,包括以下步骤a)接收输入单词的输入串;b)将所述输入单词与候选表中的主题单词进行比较;c)从所述候选表中提取对应于所匹配的主题单词的候选替换单词和候选得分,其中每一候选得分指示应使用相应的候选替换单词替换所述输入单词的概率;以及d)基于所述替换单词的候选得分选择性地建议使用相应的候选替换单词替换所述输入单词。2.如权利要求l所述的方法,其特征在于,包括在匹配步骤b)之前更正拼错的输入单词,使所述输入串仅包含正确拼写的输入单词。3.如权利要求l所述的方法,其特征在于,包括使用所述候选替换单词形成候选替换串,这包括使用所述相应的候选替换单词替换所述输入串的所述输入单词o4.如权利要求3所述的方法,其特征在于,包括为所述候选替换串计算概率得分,每一概率得分基于所述输入单词与包含在所述候选替换串中的所述候选替换单词,其中所述建议步骤d)包括建议基于所述概率得分使用所述候选替换串中的所述相应的候选替换单词替换所述输入单词。5.如权利要求4所述的方法,其特征在于,所述建议步骤d)包括将所述概率得分乘以相应的候选得分以获取所述候选替换串的每一个的最后得分,其中所述建议步骤d)包括建议使用具有最高最后得分的所述候选替换串的相应的候选替换单词替换所述输入单词。6.如权利要求l所述的方法,其特征在于,所述候选表中所述主题单词和所述相应的候选替换单词各自是标识词典中的单词的词典标识符形式的。7.如权利要求l所述的方法,其特征在于,所述候选表中的所述候选替换单词包括与相应的主题单词的编辑距离满足一阈值的单词。8.如权利要求l所述的方法,其特征在于,所述候选表中的所述候选替换单词包括含义类似于相应的主题单词的单词。9.如权利要求l所述的方法,其特征在于,所述候选表中的所述候选替换单词包括语音匹配相应的主题单词的单词。10.如权利要求1所述的方法,其特征在于,所述候选表中的所述候选替换单词包括是相应的主题单词的常见更正的单词。11.一种用于生成供拼写检查系统使用来为输入串中的输入单词建议替换单词的候选表的计算机实现的方法,所述方法包括以下步骤3)提供单词的词典;b)将所述词典中的主题单词与所述词典中的单词进行比较;C)基于所述比较步骤b)为所述主题单词标识候选替换单词;d)形成包括所述主题单词及其所标识的相应的候选替换单词对的候选表;以及e)将所述候选表存储在计算机可读介质上。12.如权利要求11所述的方法,其特征在于,所述比较步骤e)包括将所测量的从所述词典中的单词到所述主题单词的编辑距离与阈值编辑距离进行比较,其中所述标识步骤c)包括为每一个主题单词标识与该主题单词的编辑距离满足一阈值编辑距离的候选替换单词。13.如权利要求11所述的方法,其特征在于,所述比较步骤b)包括将所述词典中的每一个其它单词的含义与每一个主题单词进行比较,其中所述标识步骤c)包括为每一个主题单词标识含义类似于该主题单词的候选替换单词。14.如权利要求11所述的方法,其特征在于,所述比较步骤b)包括将所述词典中的每一个单词的语音表示与所述主题单词中的每一个的语音表示进行比较,其中所述标识步骤c)包括为每一个主题单词标识语音表示匹配该主题单词的语音表示的候选替换单词。15.如权利要求11所述的方法,其特征在于,所述形成步骤d)包括基于所述候选替换单词应替换相应的主题单词的概率,为所述主题和候选替换单词对中的每一个生成候选得分,并形成所述候选表来包括所述候选得分。16.如权利要求15所述的方法,其特征在于,所述候选得分基于所述候选替换单词与相应的主题单词之间的编辑距离。17.如权利要求11所述的方法,其特征在于,包括分析一段句子中第一单词与第二单词由空格分开的单词对,包括标识通过删除所述空格、将所述空格移动到所述第一单词的结束字符之前、以及将所述空格移动到所述第二单词的开始字符之后中的一种方式来形成的新有效单词;以及在所述形成步骤d)中,将所述新有效单词添加到所述候选表作为所述第一和第二单词中相应的一个的候选替换单词。18.—种用于为输入串中的输入单词建议替换单词的拼写检查系统,所述系统包括候选生成器,包括用于与候选表中的主题单词匹配的所述输入单词中的每一个的候选替换单词和相应的候选得分的输出,其中每一候选得分指示应使用所述相应的候选替换单词替换所述输入单词的概率;以及上下文拼写引擎,包括基于所述相应的候选得分的用于所述输入单词的候选替换单词的选择性输出。19.如权利要求18所述的系统,其特征在于,包括在所述输入单词中的至少一个以由所述候选生成器输出的所述相应的候选替换单词替换的情况下具有对应于所述输入串的候选替换串的概率得分输出的语言模型,其中所述概率得分输出是所述候选替换串的正确程度的度量,且其中所述上下文拼写引擎产生的所述候选替换单词的选择性输出基于所述概率得分输出以及对应于所述候选替换串中所包含的所述候选替换单词的所述候选得分。20.如权利要求18所述的系统,其特征在于,包括候选排除表,所述表包括从所述候选生成器的输出和所述上下文拼写引擎的输出之一中排除的候选替换单词的列表。全文摘要为串中的单词建议替换单词的一种计算机实现的方法。在该方法中,接收输入单词的输入串。然后将输入单词与候选表中的主题单词匹配。接着,从候选表中提取对应于所匹配的主题单词的候选替换单词和得分。每一得分指示应使用相应的候选替换单词替换输入单词的概率。最后,基于替换单词的得分选择性地建议使用其相应的候选替换单词替换输入单词。本发明的另一方面针对被配置成实现该方法的拼写检查系统。文档编号G06F17/28GK101371253SQ200680013480公开日2009年2月18日申请日期2006年3月14日优先权日2005年4月25日发明者D·W·波特,E·C·小哈特,P·M·舒米德,W·D·拉姆瑟,五十岚久和申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1