CN1609849A - 用于编译两级词法规则的方法和设备 - Google Patents

用于编译两级词法规则的方法和设备 Download PDF

Info

Publication number
CN1609849A
CN1609849A CNA2004100352238A CN200410035223A CN1609849A CN 1609849 A CN1609849 A CN 1609849A CN A2004100352238 A CNA2004100352238 A CN A2004100352238A CN 200410035223 A CN200410035223 A CN 200410035223A CN 1609849 A CN1609849 A CN 1609849A
Authority
CN
China
Prior art keywords
fst
core
rule
state
orthogonal projection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2004100352238A
Other languages
English (en)
Inventor
C·E·胡腾豪尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1609849A publication Critical patent/CN1609849A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)
  • Devices For Executing Special Programs (AREA)
  • Complex Calculations (AREA)

Abstract

一种编译正投影规则的方法包括通过在有限状态转换器模板中插入规则元素,将第一和第二正投影规则编译到各自独立的有限状态转换器中。该各自独立的有限状态转换器组合以形成一个单独的已组合的有限状态转换器。在一个实施例中,有限状态转换器基于有限状态转换器中的共同核心首先被组合。然后,该适合于核心的已组合有限状态转换器被组合以便为该组正投影规则形成一个单独的有限状态转换器。

Description

用于编译两级词法规则的方法和设备
技术领域
本发明涉及语言处理。特别地,本发明涉及将表面文本转化成词汇表示。
背景技术
在语言处理中,通常将词的表面形式转换成词汇形式,以便消除由于与语言的不同部分相关联的词法所引起的单词拼写中的变化。例如,表面形式“happiness”将被转换成词汇形式“happy+ness”,“found”通过将过去式的标志器添加到词汇形式而转换成“find”。由于需要支持的单词的变化较少,因此这种转换以后将简化词的处理。
执行这种转换的一般方法包含对有限状态转换器(Finite State Transducer)的使用。在有限状态转换器中,两个状态通过转换相连接,该转换将单词表面形式的字符映射到词汇形式的字符或标记。在许多系统中,有限状态转换器基于一组描述从表面形式的字符到词汇形式的字符映射规则而生成。这些规则中的一些包括左上下文、右上下文或二者均包括,它们需要有限状态转换器中的状态多于两个状态。例如,如果一个从i到y转换的规则包括左上下文“p:p”,该左上下文“p:p”需要在字母i之前具有一个表面形式的“p”,并包括一个右上下文“n:n”,该右上下文需要在字母i之后具有一个“n”,完整的有限状态转换器需包括开始状态、字母p向第二状态的转换、从第二状态到第三状态的转换i:y的转换、和字母“n”从第三状态的转换。
二级词法有限状态转换器用于通过将作为输入的表面形式应用到有限状态转换器来建立单词的词汇形式。在每个状态中,有限状态转换器确定是否输入中的当前字符可以从当前状态转换到下一状态。如果可以转换,那么该有限状态转换器沿着该转换的方向移动到下一状态,并选择输入中的下一字符。如果当前字符与状态外的任何转换不匹配,则有限状态转换器终止并返回到有限状态转换器的开始状态。
在现有技术中,规则的每个部分:左上下文、核心、右上下文,被定义为独立的有限状态转换器。这些有限状态转换器中的每一个分别被转换成二进制表示,该二进制表示可在词法处理期间(也称为运行时)使用。
在运行时,各种有限状态转换器基于使用者的输入进行动态结合,从而产生适合该输入的单个虚拟FST。
虽然在运行时结合有限状态转换器提供了工作词法系统,但是它极大地减慢了词法处理过程。
发明内容
一种编译正投影规则的方法包括为规则的核心建立核心有限状态转换器,并且为规则的上下文建立上下文有限状态转换器。核心有限状态转换器与上下文有限状态转换器相结合以便基于与规则操作符相联系的模板建立一个规则有限状态转换器。该规则有限状态转换器然后用于创建可执行的有限状态转换器。在一个实施例中,规则有限状态转换器基于一个有限状态转换器中的公共核心更进一步地结合,以便形成核心有限状态转换器。核心有限状态转换器然后结合,以便形成适合于一组正投影规则的一组有限状态转换器。该组有限状态转换器然后转换成为可执行有限状态转换器。
附图说明
图1是本发明实施例将在其中实现的通用计算环境的框图。
图2是根据本发明用于建立和使用有限状态转换器的系统框图。
图3是根据本发明建立有限状态转换器的方法的流程图。
图4是针对“可能出现”的有限状态转换器的状态图。
图5是针对“必将出现”的有限状态转换器的状态图。
图6是针对“如果核心表面字符出现则必将出现”的有限状态转换器的状态图。
图7是针对“必将不出现”的有限状态转换器的状态图。
图8提供了针对具有核心的规则的有限状态转换器。
图9提供了针对具有与图8相同核心的第二规则的有限状态转换器。
图10提供了通过将图8和9中有限状态转换器相结合所建立的有限状态转换器。
图11提供了针对具有核心的规则的有限状态转换器。
图12提供了针对具有与图11相同核心的第二规则的有限状态转换器。
图13提供了通过将图11和12中有限状态转换器相结合所建立的有限状态转换器。
图14提供了最小化有限状态转换器的一种方法的流程图。
图15提供了通过将图10和13中有限状态转换器相结合所建立的有限状态转换器。
具体实施方式
图1示出了一个本发明适合在其上执行的计算系统环境100的实例。该计算系统环境100仅是适合的计算环境的一个实例,并不意味着对本发明的使用或功能范围作出任何限定。计算环境100也不应被解释成其具有与示范性的操作环境100中所示出组件中任何一个或它们的组合相关的依赖性或需求。
本发明在许多其他的通用或专用计算系统环境或结构中进行操作。适合于使用本发明的公知的计算系统、环境和/或结构的实例包括(但并不局限于):个人计算机、服务器计算机、手提或膝上装置、多处理器系统、以微处理机为基础的系统、机顶盒、可编程消费电子设备、网络PC、小型机、大型机、电话系统、含有任何以上系统或装置的分布式计算环境,等等。
本发明以在计算机可执行指令的通用范围内进行描述,例如计算机执行的程序模块。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。本发明设计成在分布式计算环境中实现,在该分布式计算环境中,任务通过通信网络所连接的远程处理装置执行。在分布式计算环境中,程序模块位于包括存储器存储装置的本地和远程计算机存储介质中。
参考图1,用于执行本发明的示范系统包括计算机110形式的通用计算装置。计算机110的组件可能包括(但不限定为)处理单元120、系统存储器130和将具有系统存储器的不同系统组件包括系统存储器与处理单元120相耦合的系统总线121。该系统总线121可以是包括存储器总线和存储器控制器、外设总线、使用各种总线结构中任一种的本地总线在内的几种总线结构类型中的任意一个。作为举例,但并不是限定,这样的结构包括工业标准结构(ISA)总线、微通道结构(MCA)总线、扩展ISA(EISA)总线、视频电子标准协会(VESA)本地总线和也被通称为夹层总线(Mezzanine bus)的外设部件互连(PCI)总线。
计算机110一般包括各种计算机可读介质。计算机可读介质可以是任何可用的介质,其可以通过计算机110存取,并包括易失和非易失介质、可拆装和不可拆装介质。作为举例,但并不限定,计算机可读介质可以包含计算机存储介质和通信介质。计算机存储介质包括以任何方法或技术实现的用于信息存储的易失和非易失、可拆装和不可拆装介质,这些信息例如计算机可读指令、数据结构、程序模块或其它数据。计算机存储介质包括,但不限定于,RAM、ROM、EEPROM、闪存或其它存储技术、CD-ROM、数字通用盘(DVD)或其它光盘存储器、盒式磁带、磁带、磁盘存储器或其它磁存储装置、或任何其它可以用于存储期望信息并可通过计算机110存取的介质。通信介质一般包含计算机可读指令、数据结构、程序模块或在已调数据信号例如载波或其它传输机构中的其它数据,还包括任何信息传送介质。术语“已调数据信号”的意思是一个信号,该信号具有一个或更多它的特征集合或者以像在信号中编码信息的方式一样进行改变。作为举例,但并不是限定,通信介质包括有线介质,例如有线网络或直接有线连接,和无线介质,例如音传、RF、红外线和其他无线介质。以上任何的组合也应当包括在计算机可读介质的范围之内。
系统内存130包括以易失和/或非易失存储器形式存在的计算机存储介质,例如只读存储器(RAM)131和随机存储器(RAM)132。基本输入/输出系统133(BIOS)包括帮助在计算机110各元件之间传输信息的基本例程,例如在启动过程中,一般存储在ROM131中。RAM132一般包括由处理单元120立即存取和/或即刻操作的数据和/或程序模块。作为举例,但不是限定,图1示出了操作系统134、应用程序135、其他程序模块136和程序数据137。
计算机110可能还包括其他可拆装/不可拆装、易失/非易失计算机存储介质。仅仅作为举例,图1示出了一个硬盘驱动器141,其从不可拆装、非易失磁介质中读取或写入数据、磁盘驱动器151,其从可拆装、非易失磁盘152中读取或写入数据,和一个光盘驱动器155,其从可拆装、非易失光盘如CD ROM或其他光介质中读取或写入数据。可以在范例操作环境中使用的其他可拆装/不可拆装、易失/非易失计算机存储介质包括(但不是限定)盒式磁带、闪存卡、数字通用盘、数字视频带、固态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和点击装置如鼠标、跟踪球或触摸板向计算机110输入命令和信息。其他输入装置(未示出)可包括操纵杆、游戏垫、叠形卫星天线、扫描仪等。这些和其他输入装置通常通过与系统总线相耦合的用户输入接口160与处理单元120相连接,但也可通过其他接口和总线结构相连接,例如并行端口、博弈端口或通用串行总线(USB)。监视器191或其他类型的显示装置也通过接口,例如视频接口190,与系统总线121相连接。除监视器之外,计算机也可包括其他外围输出设备,例如扬声器197和打印机196,它们可通过输出外设接口195相连接。
计算机110可以利用到一个或多个远程计算机,例如远程计算机180,逻辑连接在网络环境中进行操作。该远程计算机180可以是个人计算机、手提设备、服务器、路由器、网络PC、对等设备或其他公共网络节点、并且一般包括以上所描述的与计算机110有关的许多或所有元件。图1中所描述的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可包括其他网络。这样的网络环境常见于办公室、企业广域计算机网络、企业内联网和互联网。
当在LAN网络环境中使用时,计算机110通过网络接口或适配器170与LAN171相连接。当在WAN网络环境中使用时,计算机110一般包括调制解调器172或其他用于在WAN173上建立通信的工具,例如互联网。可能是内置的或外置的调制解调器172可通过用户输入接口160或其他适当的机构与系统总线121相连接。在网络环境中,描述为与计算机110或其中的部分相关联的程序模块可以存储于远程存储装置中。作为举例,但并不是限定,图1示出了驻留于远程计算机180中的远程应用程序185。可以理解为,所示的网络连接是示范性的,并且其他在计算机间建立通信链接的工具也可以使用。
本发明提供了一种用于创建有限状态变换器的方法,该有限状态转换器在运行时有效地运行,将表面语言形态转换为词汇形式。
图2和3分别提供了一个简单框图和流程图,示出了本发明实施例的基本操作。在图3的步骤300中,一组正投影规则200通过语言学家写入,其用来描述从表面形式到词汇形式的可能的转换。作为默认,假定表面形式中的每一个字符将被映射到词汇形式中的相同字符。每一个规则描述了这种默认映射的例外。
在一个实施例中,每一个规则包括定义非默认映射的核心、左上下文和右上下文。这些元素的每一个以一对通过冒号隔开的字符形式被写入,并且左边的字符表示表面形式的字符,右边的字符表示词汇形式的字符。因此,核心“i:y”表示从表面形式字符“i”到词汇形式字符“y”的映射。同样地,“a:b”的左上下文表示有左表面形式核心字符“a”和左词汇形式核心字符“b”。一般左上下文的表面形式和词汇形式的字符相互匹配,例如“a:a”。右上下文的表面形式和词汇形式的字符同样会相互匹配。
在一个实施例中,基于该规则可能出现、必将出现、如果核心的表面形式被找到则必将出现或必将不出现的情况,存在四种规则。这些规则中的每一个规则通过各自的操作符->,<->,<-,和><表示。一般规则以如下的格式写入:
核心操作符左上下文---右上下文
例如,规则:
a:b->c:c---d:d
表示从“a”到“b”的核心映射,其可能出现于当存在左上下文c:c和右上下文d:d时。
正投影规则200提供给编译器202。在步骤302,通过编译器202中的规则FST构造(formation)204为每一个规则产生有限状态变换器。规则RST构造204在步骤301首先分析每个规则,以识别每个规则的核心、操作符、左上下文和右上下文。在步骤302,规则FST构造204为每个核心、左上下文和右上下文形成独立的FST。每个规则的左上下文FST然后使用与规则操作符相联系的模板与规则各自的核心FST相组合。这个组合的FST然后与各自的用于规则的右上下文FST相组合而形成基于相同模板的规则FST。
由于存在四种不同的可能操作符,因此存在四个独立的模板,每个模板适合一个类型的操作符。
图4示出了可能出现操作符的模板有限状态变换器。该模板包括三个状态400、406和414。状态400和406表示接收状态,当有限状态转换器在那些状态中结束变换时,该接收状态产生一个成功值。状态414是拒绝状态,当有限状态转换器在那个状态中结束转换时,该拒绝状态产生一个失败值。通常,本申请所示的图中,接收状态表示为两个同心圆,拒绝状态表示为单个圆。
在图4所示的模板中,规则的左上下文沿着状态400和状态406之间的转换402插入,通过Ls:L1表示。左上下文也沿着自循环408的方向放置,其从状态406延伸并返回状态406。从而,在有限状态转换器中,如果在表面形式和词汇形式中遇到左上下文而状态转换器处于状态400或状态406时,则有限状态转换器将移动到状态406。状态400也包括默认转换404,其引起有限状态转换器在状态400循环,直至遇到左上下文。
核心Cs:C1然后沿着状态406和状态414之间的转换412插入。核心的表面形式Cs用于形成一个“*”字符对,其表示词汇形式的任何可能的字符。该对然后沿着从状态406到状态412的转换410插入。因此,如果有限状态转换器处在状态406,如果遇到核心它将转换到状态414,如果再次遇到左上下文它将返回状态406,如果遇到任何其他值它将返回状态400。
右上下文Rs:R1插入到状态414和400之间的转换416。如果遇到右上下文而有限状态转换器处在状态414时,则有限状态转换器将返回状态400。然而,如果在状态414遇到任何其他值,则有限状态转换器将失败并在拒绝状态中414结束。
图5提供了必将不出现操作符的模板有限状态转换器。该模板包括三个接收状态500、502、504和一个拒绝状态506。左上下文Ls:L1插入到状态500和502之间的转换508,并处在状态502的自循环转换510。核心Cs:C1插入到状态502和504之间的转换512,并且右上下文Rs:R1在状态504和506之间插入。
在操作中,当在状态500或状态502中遇到左上下文时,图5的有限状态转换器将转换到状态502。如果在状态502中遇到核心,则有限状态转换器将转换到状态504。如果在状态502既未遇到核心也未遇到左上下文,则有限状态转换器将沿着转换512返回状态500。如果在状态504遇到右上下文,则有限状态转换器跟随转换514到拒绝状态506,并且由于其遇到了左上下文、核心和右上下文的序列,有限状态转换器失败。如果在状态504未遇到右上下文,则转换516跟随到状态500。
图6提供了核心的语义形式是遇到的操作符时必将出现的模板。图6的模板包括接收状态600、602和拒绝状态604,它们和图4可能出现模板中的状态400、406和414相似。该模板还包括接收状态606和拒绝状态608。左上下文Ls:L1插入到转换610、612、614,并在状态602结束。核心Cs:C1在转换616插入,并且该核心的表面形式字符Cs与适合于词汇形式的字符“*”相组合,并插入到转换618。右上下文Rs:R1在转换620和622插入。
当执行时,若遇到左上下文,图6的有限状态转换器将从状态600移动到状态602。如果未遇到左上下文,它将沿着转换624在状态600循环。在状态602中,如果遇到核心,有限状态转换器将移动到604;如果再次遇到左上下文,它将在状态602循环;如果它遇到核心表面形式字符具有不同于核心词汇形式字符的任何值,其将转换到状态606;并且对于所有其他情况,其将返回到状态600。在状态604,如果遇到右上下文,有限状态转换器将返回到接收状态600。如果未遇到右上下文,该有限状态转换器将在状态604失败。
在状态606中,如果遇到右上下文,有限状态转换器将转换到失败状态608。从而,如果遇到一个包括左上下文、与不同于核心词汇形式配对的核心表面形式、和右上下文的序列,该模板将在状态608失败。如果在状态606遇到左上下文,该有限状态转换器将返回到状态602。对于在状态606的其他值,有限状态转换器将沿着默认转换626返回到状态600。
图7提供了一个必将出现操作符的模板。该模板与图6的模板相似,包括三个接收状态700、702和706以及两个拒绝状态704和708。左上下文在进入到状态702的转换710、712和714上插入,核心在进入到状态704的转换716上插入,并且右上下文插入进入到状态700的转换718和进入到状态708的转换720上。默认转换722和724在状态702和706之间以及状态706和700之间提供。
在图3的步骤302,通过将规则插入到适当的模板,建立了单独的有限状态转换器,适合于每个核心的单独有限状态转换器以核心对核心为基础由图2的编译器202的规则组合器206加以组合。这样的有限状态转换器的组合的一个实例可参见图8、9和10。图8提供了适合于核心“a:b”的第一有限状态转换器,图9提供了适合于核心“a:b”的第二有限状态转换器。适合于核心“a:b”的有限状态转换器的组合在图10中示出。
图8中示出的有限状态转换器表示了规则:
a:b->c:c---d:d
图9中示出的有限状态转换器表示了规则:
a:b<-d:d---e:e
关于这些规则要注意两件事情。第一,它们包括不同的操作符。根据本发明,适合于任何操作符的有限状态转换器可在步骤304组合。第二,适合于图8有限状态转换器的规则的右上下文形成了图9有限状态转换器的左上下文。从而,规则可顺序地执行。
在组合图8和9的有限状态转换器中,第一步是将初始状态800和900组合成图10有限状态转换器中的单独初始状态1000。图8的状态802和804然后插入到图10的有限状态转换器中,作为状态1002和1004;图9的状态902、904、906和908作为状态1006、1008、1010和1012分别插入。在初始有限状态转换器中找到的状态间的转换保留在已组合的有限状态转换器中,除了一些例外。第一,由于各自独立的初始状态被替换为一个初始状态1000,到达或者从初始状态800和900发出的转换均改为到达或者从初始状态1000发出。第二,由于图8中有限状态转换器的右上下文是图9有限状态转换器的左上下文,因此适合于图8中有限状态转换器右上下文的从状态804到状态800的转换806在已组合的有限状态转换器中改变,从而替代初始状态1000在状态1006终止。通过运行状态1000、1002、1004、1006、1008这允许表面序列“cadae”来描述两个状态“cad”和“dae”并返回到状态1000。
最后,每个先于核心转换的状态必将是从每一个接收状态通过左上下文转换可获得的。为了如此做,加入了附加转换。特别地,进入到状态1002的转换1014和1016被加入以支持左上下文“c:c”,进入到状态1006的转换1018被加入以支持左上下文“d:d”。
注意,为同一核心附加的有限状态转换器可通过分享相同的初始状态与图10的有限状态转换器相组合,确保存在从每个接收状态到核心转换前的状态的左上下文转换,并适当地与右上下文转换相连接以便于规则的级联。
图11、12和13示出了适合于第二核心“h:i”的有限状态转换器的组合的另一个实例。图11中的有限状态转换器适合于规则:
h:i->g:g---j:j
并且图12中的有限状态转换器适合于规则:
h:i->k:k---n:n
像先前实例一样,图11和12中有限状态转换器的各自独立的初始状态1100和1200组合成图13中有限状态转换器的一个单独的初始状态1300。到达或从各自初始状态发出的转换改变成到达或者从单独初始状态1300发出的转换。注意,由于这些规则不是级联的,因此每个规则的右上下文返回到初始状态1300。
另外,为了使得左上下文从任一接收状态发生,增加了到状态1306和1308的转换1302和1304。转换1302支持从接收状态1306到状态1308的左上下文“g:g”。转换1304支持从接收状态1308到状态1306的左上下文“k:k”。
在适合特殊核心的有限状态转换器被组合到一个单独的有限状态转换器上之后,最小化已组合核心有限状态转换器的可选步骤通过图2中的最小化器(minimizer)208在步骤306执行。这样的最小化技术在本领域是公知的,并包含删除不可达状态和组合等价状态,此处等价状态根据相同的输入值转换到同一组状态。
图14提供了一个用于最小化有限状态转换器的现有技术的流程图。该过程在步骤1400开始,基于这些状态是接收状态还是拒绝状态,状态被分到两个组中的一个。在步骤1402,基于该组针对给定的表面形式/词汇形式对转换到何处,每个组中的状态被分为子组。从而,转换到接收组中状态的状态被放入一个子组,转换到拒绝组中状态的状态被放入另一个子组。
在步骤1404,该方法检查对于任意可能的表面形式/词汇形式对是否可以形成至少两个子组。如果可以形成这些子组,则该组在步骤1406被划分,从而每个子组成为一个独立的组。该过程然后返回步骤1402来看是否当前的组能否被进一步划分。当该组在步骤1404不能再划分,每个组中的状态组合成一个单独的状态,并且在步骤1408,到达或者从那些各自独立状态发出的转换被生成到达或者从一个单独的已组合的状态发出。
在步骤306完成最小化核心有限状态转换器之后,核心有限状态转换器通过图2的核心组合器210被组合成一个单独的有限状态转换器。图15示出了一个通过将图10和13的核心有限状态转换器组合形成的单独的有限状态转换器。
像组合有限状态转换器以形成核心有限状态转换器时一样,组合核心状态转换器的步骤包括将每一核心有限状态转换器的初始状态组合成一个单独的状态。从而状态1000和1300成为图15中状态1500,并且到达或者从状态1000和1300发出的转换成为到达或者从状态1500发出的转换。
为了支持左上下文,针对每个左上下文的转换必须在核心转换前从每一接收状态扩展到适当的状态。从而,必须增加一些的转换以支持每一可能的左上下文。例如,增加转换1502和1504以支持到状态1506的左上下文“g:g”。另外,适合于右上下文的转换应当改进以允许规则的级联,就像建立核心有限状态转换器时所做的一样。
注意,图15的有限状态转换器是针对一组规则的单个有限状态转换器的一个小实例。在实际中,单个有限状态转换器将大得多。
在步骤308建立单个有限状态转换器之后,在步骤310使用最小化器212将其最小化。这导致了一组有限状态转换器,它是表示所有正投影规则200的单个有限状态转换器。在步骤312,这组有限状态转换器然后转换成可执行的有限状态转换器。在运行时可执行有限状态转换器可以直接执行。在运行时期间,将表面形式216中的字符序列216应用于可执行有限状态转换器214。基于表面形式,有限状态转换器在状态之间移动并由此产生词汇形式218。由于存在针对所有规则的单个有限状态转换器,所以运行时执行比在现有技术的系统中快得多。
虽然参考特定实施方式对本发明进行了描述,但是本领域的熟练技术人员将会认识到在不脱离本发明精神和范围的情况下可以在形式和细节上进行一些变化。

Claims (21)

1.一种编译正投影规则以形成可执行有限状态转换器的方法,其特征在于,所述方法包括:
为正投影规则的核心形成核心有限状态转换器;
为正投影规则的上下文形成上下文有限状态转换器;
将核心有限状态转换器与上下文有限状态转换器相结合,以形成基于与正投影规则操作符相联系模板的规则有限状态转换器;以及
使用该规则有限状态转换器建立可执行的有限状态转换器。
2.如权利要求1所述的方法,其特征在于,所述方法进一步包括,为正投影规则的第二上下文形成第二上下文有限状态转换器,其中形成规则有限状态转换器包括,将核心有限状态转换器、上下文有限状态转换器和基于模板的第二上下文有限状态转换器相结合。
3.如权利要求2所述的方法,其特征在于,所述正投影规则是第一正投影规则,规则有限状态转换器是第一规则有限状态转换器,并且该方法进一步包括为第二正投影规则形成核心有限状态转换器和上下文有限状态转换器,以及基于与第二规则操作符相联系的模板,将核心有限状态转换器与上下文有限状态转换器结合为第二规则有限状态转换器。
4.如权利要求3所述的方法,其特征在于,所述第二正投影规则的模板与第一正投影规则的模板不同。
5.如权利要求4所述的方法,其特征在于,所述第一正投影规则的操作符与第二正投影规则的操作符不同。
6.如权利要求1所述的方法,其特征在于,所述方法进一步包括,建立多个规则状态转换器,每个规则状态转换器与不同的规则相联系。
7.如权利要求6所述的方法,其特征在于,所述使用规则有限状态转换器包括结合规则有限状态转换器,该有限状态转换器具有相同的核心以便为每个核心形成一个单独的已结合核心有限状态转换器。
8.如权利要求7所述的方法,其特征在于,所述使用规则有限状态转换器更进一步包括为核心结合已结合的核心有限状态转换器以便形成一组有限状态转换器。
9.如权利要求8所述的方法,其特征在于,所述方法进一步包括在形成组有限状态转换器之前,最小化每个已结合的核心有限状态转换器。
10.一种具有计算机可执行指令的计算机可读介质,用于执行的各步骤包括:
确定正投影规则中的操作符;
基于该操作符选择模板;以及
在模板中插入正投影规则的元素以形成有限状态转换器。
11.如权利要求10所述的计算机可读介质,其特征在于,所述正投影规则包括指示从表面形式到词汇形式映射的核心。
12.如权利要求11所述的计算机可读介质,其特征在于,所述正投影规则更进一步包括左上下文和右上下文。
13.如权利要求12所述的计算机可读介质,其特征在于,所述插入正投影规则的元素包括将核心、左上下文和右上下文插入模板中。
14.如权利要求10所述的计算机可读介质,其特征在于,进一步包括为多个规则中的每一个执行确定操作符、选择模板和插入元素的步骤,以形成多个有限状态转换器。
15.如权利要求14所述的计算机可读介质,其特征在于,进一步包括结合有限状态转换器中的至少两个,以形成已结合有限状态转换器。
16.如权利要求15所述的计算机可读介质,其特征在于,所述结合至少两个有限状态转换器中包括结合所有具有相同核心的有限状态转换器。
17.如权利要求16所述的计算机可读介质,其特征在于,所述结合至少两个有限状态转换器中包括通过结合所有具有第一核心的有限状态转换器形成第一已结合有限状态转换器,以及通过结合所有具有第二核心的有限状态转换器形成第二已结合有限状态转换器。
18.如权利要求17所述的计算机可读介质,其特征在于,进一步包括结合第一有限状态转换器和第二有限状态转换器,以形成一组有限状态转换器。
19.如权利要求17所述的计算机可读介质,其特征在于,进一步包括最小化第一已结合有限状态转换器和最小化第二已结合有限状态转换器。
20.如权利要求9或19所述的方法或介质,其特征在于,进一步包括最小化所述有限状态转换器组。
21.如权利要求20所述的方法或介质,其特征在于,进一步包括由有限状态转换器组形成可执行有限状态转换器。
CNA2004100352238A 2003-04-03 2004-03-31 用于编译两级词法规则的方法和设备 Pending CN1609849A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/406,021 US7617089B2 (en) 2003-04-03 2003-04-03 Method and apparatus for compiling two-level morphology rules
US10/406,021 2003-04-03

Publications (1)

Publication Number Publication Date
CN1609849A true CN1609849A (zh) 2005-04-27

Family

ID=32850637

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2004100352238A Pending CN1609849A (zh) 2003-04-03 2004-03-31 用于编译两级词法规则的方法和设备

Country Status (5)

Country Link
US (1) US7617089B2 (zh)
EP (1) EP1465081A3 (zh)
JP (2) JP2004334848A (zh)
KR (1) KR20040086825A (zh)
CN (1) CN1609849A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140136210A1 (en) * 2012-11-14 2014-05-15 At&T Intellectual Property I, L.P. System and method for robust personalization of speech recognition
US8972243B1 (en) * 2012-11-20 2015-03-03 Amazon Technologies, Inc. Parse information encoding in a finite state transducer
US11145296B1 (en) * 2019-03-25 2021-10-12 Amazon Technologies, Inc. Language and grammar model adaptation

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6032111A (en) * 1997-06-23 2000-02-29 At&T Corp. Method and apparatus for compiling context-dependent rewrite rules and input strings
US6760636B2 (en) * 2000-04-03 2004-07-06 Xerox Corporation Method and apparatus for extracting short runs of ambiguity from finite state transducers
US7010476B2 (en) * 2000-12-18 2006-03-07 Xerox Corporation Method and apparatus for constructing finite-state networks modeling non-concatenative processes
US20040193399A1 (en) 2003-03-31 2004-09-30 Microsoft Corporation System and method for word analysis

Also Published As

Publication number Publication date
JP2004334848A (ja) 2004-11-25
KR20040086825A (ko) 2004-10-12
EP1465081A2 (en) 2004-10-06
US7617089B2 (en) 2009-11-10
EP1465081A3 (en) 2006-07-26
US20040199376A1 (en) 2004-10-07
JP2008108266A (ja) 2008-05-08

Similar Documents

Publication Publication Date Title
US7831911B2 (en) Spell checking system including a phonetic speller
CN1667699A (zh) 为字母-声音转换生成有互信息标准的大文法音素单元
CN100543740C (zh) 查询拼写更正方法和系统
CN1680935A (zh) 通过用户建模的有效大写化
CN1571013A (zh) 从文本中预测误词率的方法和设备
CN1255224A (zh) 使用上下文无关文法的文本规范化方法
CN1838148A (zh) 电子设备和记录介质
CN101371253A (zh) 生成拼写建议的方法和系统
CN1670728A (zh) 具有标记数据的完全形式词典及其构建和使用方法
CN1815471A (zh) 信息检索系统、方法和程序
CN1627300A (zh) 学习并使用广义串模式用于信息提取
Knuth Examples of formal semantics
CN1750119A (zh) 创建用于字母数字概念的语音识别语法
WO2007016808A1 (en) A compiling and translating method and apparatus
CN1619546A (zh) 文本的标号系统-翻译和在运行时间的多语言支持以及设计
CN110211562B (zh) 一种语音合成的方法、电子设备及可读存储介质
CN1790335A (zh) Xml文件数据存取的方法
CN1877531A (zh) 一种嵌入式编译体系扫描器的实现方法
CN1542648A (zh) 用于词分析的系统和方法
CN1945692A (zh) 一种在语音合成系统中提升提示音匹配效果的智能方法
CN1855052A (zh) 一种从树型结构数据和一组代码片断结构体生成目标源代码的方法
CN1609849A (zh) 用于编译两级词法规则的方法和设备
CN1290886B (zh) 优化单字节字符处理的方法和系统
CN112328258A (zh) 一种编程语言的转换方法及系统
CN1243431C (zh) 宽带网络通信产品的通用路由平台命令行的解析方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20050427