支持基于有限状态机的语义规则的文本分析器及其方法

文档序号:6616054阅读:227来源:国知局
专利名称:支持基于有限状态机的语义规则的文本分析器及其方法
技术领域
本发明涉及自然语言处理过程,更具体地,涉及支持基于有限状态机 的语义规则的文本分析器及其方法以及短消息智能处理系统及其方法。
背景技术
自然语言处理是一个非常热门的研究领域,该领域产生了很多重要的 工业应用。由于语言是用以通信的主要工具以及文化的主要载体,因此, 对人类语言进行分析是非常有益和重要的。随着计算机科技的发展,逐渐 可以开发出用于自动分析人类语言的工具,语言分析器正是这样一种或多 或少理解语言的工具。由此非常明显的是,自然语言分析是自然语言处理 的基础技术之一。性能良好的分析器可以广泛用于诸多方面,例如自然语 言理解、文档分类、机器翻译等等。
我们都知道,语言是世界上最复杂的系统之一,对于本地人来说,误 解语句是非常正常的,更不用说是计算机了。而最重要的一点则是如何用 计算机语言表述人类语言知识以及如何使计算机理解这种语言。通常,人 们尝试让计算机以语言学方式来理解人类语言,或者尝试让计算机理解语 句的语法结构以及词在语句中的语法作用。由此,自然语言分析器常被用 于分析语句(或文档)结构和为文本标记标签,例如主语、谓语、宾语等 等。例如,在英汉机器翻译系统中,使用分析器来提取英文语句中的语法 元素,而系统则采用中文形式来重组这些元素。
分析器的目的(或任务)是提取文本串中的特定元素,换句话说,对 分析器而言,输入是文本,输出的则是结构信息,这其中包括分词、词的 词性标签以及某些可被称为语义规则的高级标记。可以看到,分词是基本 功能,基于分词给出词性标记,此外,基于词及其词性标签提取高级语义对语言分析器来说,其最重要的一点是设计分析框架,这样做将会确 定可处理信息的类型、处理效率以及输出性能。此外,语义规则表述模式 同样是一个有影响的因素。
语言分析器是一个很复杂的模块。关于分析器的现有解决方案大多数
是以Chomsky的形式语言理论及其后续研究为基础的。对自然语言分析 器来说,有两种因素是非常重要的, 一个是语法,另一个则是分析算法。 语法是关于语言的可允许结构的形式规定。随着手动注解了自身结构的语 言建模文本主体(语料库)的出现,现在可以对形式语法迸行归纳,以便 包含精确的概率。此外,在一句话中,词之间的概率关系可以用所谓的随 机语言模型而直接从语料库中推导和模拟,例如n元(n-gram),由此可 以排除对于创建广义覆盖语法的需要。 一般来说,分析算法提供了一个程 序,该程序对用于组合语法语义规则的不同方式进行搜索,以便找出产生 了用于描述输入语句结构的树图的组合方式。在没有统计语言模型的情况 下,传统的分析算法使用的是图表分析模式,该模式可以采用自顶向下或 自底向上模式来分析句子,随着统计语言模型的出现,可以使用维特比算 法而从各种用于组合语法语义规则的方式中选择得分最高的方式。
但是,现有解决方案都是以多步框架为基础的。在这种框架中,处理 过程分为若干个单独步骤,前一个步骤的输出将会是下一个步骤的输入。 更详细的说,系统首先尝试将文本串分成词,然后则尝试为词给出词性标 签,最后则应用某些语义规则来匹配和提取语义规则。可以看出,传统的 分析框架既没有将分析过程视为一个整体,也没有将这个过程视为是不可 分的,这种设计降低了系统复杂度,但是由于在从一个步骤到另一个步骤 的过程中丢弃某些有用的信息,因此这种设计是无法实现最佳性能的。
此外,某些现有分析器只实施了某些过程步骤,例如,某些分析器并 没有考虑分词子任务,并且它们是无法在没有词边界的语言中使用的,例 如中文和日文。
专利文献US2006095250给出了一种由计算机实施并用于开发分 析器的方法。该方法包括访问语句语料库,通过分析语句来产生每个句 子的结构描述。该分析器是基于每个句子的结构描述来训练的。
该文献仅仅用于英语之类的基于词的语言,此外,由于在词之间具有充当但此边界的空格字符,因此,该文献并未提供用于分词的组件。该发 明的详细描述表明它是逐步执行词性标记、名词短语提取以及动词短语提 取的。
专利文献US2003233225提供了一种用于分析语句的方法、计算 机程序产品和设备,其中包括对某个语句进行分析,其中包括符号标记 该语句中的词,并使之经过迭代式归纳处理器。该处理器至少使用第一和 第二规则集合。这些规则将会縮减句子中的词的可能句法解释的范围。在 穷举了第一规则集的应用之后,该程序将会移至第二语义规则集。这个程 序将会在这些语义规则集之间来回迭代,直至无法进一步简化句法解释为 止。此后,如有必要将会执行一个演绎性的标记合并处理。该文献提供了 表示句法解释(可以看作某种语义规则)的更为复杂的框架,但是也将整 个过程分割为多个单独的步骤。
对当前的语言分析器来说,其主要问题如下所述。
首先,整个过程分成了若干个单独的步骤,并且系统是逐一执行这些 步骤的。很明显,这种设计会使分析处理非常不便。前一个步骤完成其工 作并产生其输出,然后则将其输出发送到下一个步骤。由此,相邻步骤之 间的通信将会受限;它们将无法共享某些有用的信息。
其次,传统的框架可以确保最终的输出是所有可能性中的最优候选 者。我们知道,对中文和日文这类没有词边界的语言来说,如果给出语句, 那么分段结果可能有很多种;如果给出的是词,则可以有多种有效的词性 候选词,以及如果给出的是词的词性类型,那么有可能存在一种以上的方 式来将其与其他词相结合。传统的解析框架会将整个过程分成若干个步
骤,并且每一个步骤都会独立完成其工作,由此整个解码过程将会丧失其 连续性,并且前一个步骤带来的差错会使后续步骤的工作丧失意义。举例 来说,如果先前的分词步骤给出的是不正确的分词,那么基于这个不正确 的中间结果的所有工作都会变得毫无意义。
在专利文献US2003233225中,虽然引用了多组规则来匹配句法 解释,但是其语义规则设计并不灵活,并且它会在独立的步骤中执行字元 化工作以及句法信息提取,依照先前的分析,这种处理非常低效和不合理, 甚至是不恰当的。此外,传统的分析框架并未提供用于句法实体提取的灵活机制。现有
技术中的专利文献US2006095250则是这样一个用于对句法实体进行 拙劣处理的专利。

发明内容
为了解决上述问题,本发明提供了用于给出句法解释(可以被视为是 某种语义规则)的更复杂框架。
本发明采用了一体化分析设计方式。在这种设计中使用解码框架,以 此来替换传统的单维特比组件框架。在这个框架中,其中分别为句法实体 和普通词设计了两个解码组件。在分析过程中,当输入(或是从语句中读 取)新字符时,这时将会使用用于词处理的解码器来产生可能的词(分词
子任务)并且给出可能的POS;然后,用于句法实体提取的解码器将搜 索可能的语义规则。在这个过程中,全局搜索路径将被扩展。这个过程将 会随着字符输入而重复执行,换句话说,这两个解码器将会轮流负责该解 码过程,并且在整体上,所有可能的路径都会延伸,由此最终结果将会是 最优的。
其次,为了构造双解码器,本发明采用了一种名为基于规则表述框架 的有限状态机的语义实体框架。这种框架不但可以用于表示基于词的语义 元素,而且还可以表示某些作为词和非词成分组合的实体,例如标点符号、 语句边界、段落边界等等;此外,这种框架可以表述那些区间很长的语义
现象。此外,其基于有限状态机的规则表述框架被设计为符合正常的词表 述,并且将会允许分析器以相同方式来对其进行管理,这样将会减少系统
内存和CPU需求。语义实体表述设计确保了两个维特比组件可以完美地
在一起工作。
本发明可以用于所有的文档分析,其中对短文本分析而言则尤为有
效。由于其对内存和CPU的需求很低,因此它特别适合计算能力低下的
系统,例如移动电话等等。
根据本发明第一方面,提出了一种文本分析器,包括 第一解码器,用于通过利用词搜索树对输入的文本中的每个字符依次
进行第一路径扩展,获得与每次第一路径扩展对应的词;以及第二解码器,用于通过利用语义规则搜索树对第一解码器每次进行第 一路径扩展获得的词依次进行第二路径扩展,获得与每次第二路径扩展对 应的语义规则。
根据本发明第二方面,提出了一种文本分析方法,包括
第一解码步骤,包括
接收输入的文本;
从文本中按照顺序获取一个字符;
利用搜索树对当前的字符进行第一路径扩展,获得与第一路径扩展对
应的当前词;以及
第二解码步骤,包括 接收第一路径扩展获得的当前词;
利用语义规则搜索树对当前词进行第二路径扩展,获得与第二路径扩
展对应的语义规则;以及
重复执行第一解码步骤以及第二解码步骤,直到对文本中的所有字符
执行了第一路径扩展和第二路径扩展。
根据本发明第三方面,提出了一种短消息智能处理系统,包括 短消息上下文检索器,用于从输入的短消息中检索上下文信息; 根据本发明的文本分析器,用于对短消息文本进行分析; 分类器,用于对文本分析器的输出进行分类;
短消息标记器,用于利用标签对来自文本分类器和短消息上下文检索
器的输出进行标记;
短消息管理器,用于根据加标签的输出,对短消息进行管理。 根据本发明第四方面,提出了一种短消息智能处理方法,包括 短消息上下文检索步骤,从输入的短消息中检索上下文信息; 根据本发明所述的文本分析方法,对短消息文本进行分析; 分类步骤,对文本分析方法分析的结果迸行分类; 短消息标记步骤,利用标签对来自文本分类步骤和短消息上下文检索
步骤的输出进行标记;
短消息管理步骤,根据加标签的输出,对短消息进行管理。 与常规的文本分析器不同,根据本发明的文本分析器具有如下特点:1. 双解码器分析框架会使分析处理更为有效,它提高了分析过程的 速度,并且降低了系统需求;
2. 双解码器分析框架保证了最终结果是所有可能结果中的最佳选择, 由此提高了了分析处理的精度;
3. 基于有限状态机的语义规则表述方法是用于双解码器框架的重要 补充。它提供了用于支持嵌套规则、长区间规则和具有非词成分的规则的 灵活机制。


通过以下参照附图对优选实施例的详细描述,本发明的这些和其他方
案、特征和优点将变得更加清楚。
图1是示出了根据本发明的文本分析器的硬件结构图2是示出了包括本发明的文本分析器中的搜索树构造装置与第一
解码器和第二解码器之间的交互协作的示意图3示出了本发明的基于有限状态机的语义规则的一个示例;
图4a是示出了本发明的词搜索树构造装置的示意图4b是示出了本发明的语义规则搜索树构造装置的示意图5a是示出了本发明的词搜索树构造方法的流程图5b是示出了本发明的语义规则搜索树构造方法的流程图6a示出了中文词典排序表;
图6b是示出了搜索树的一个示例的结构图6c示出了英文词典排序表;
图6d, 6e是示出了搜索树的另一个示例的结构图7a示出了基于有限状态机的语义规则的一个示例表;
图7b示出了基于有限状态机的语义规则的搜索树的一个示例的结构
图8a是示出了本发明的一个实施例的第一解码器和第二解码器的示
意图8b是示出了本发明的一个实施例的文本分析方法的流程图8c是示出了本发明的另一实施例的第一解码器和第二解码器的示意图8d示出了本发明的另一实施例的文本分析方法的流程图9示出了利用本发明的文本分析器执行分析获得的结果的示意图io示出了本发明的文本分析器的另一个实施例的示意图。
图11示出了应用了根据本发明的文本分析器的短消息智能处理系统 的示意图。
图12示出了短消息智能处理系统执行的处理方法的流程图。
具体实施例方式
下面,将参考附图描述本发明的优选实施例。在附图中,相同的元件 将由相同的参考符号或数字表示。此外,在本发明的下列描述中,将省略 对已知功能和配置的具体描述,以避免使本发明的主题不清楚。
图1是示出了包括本发明的文本分析器的硬件结构图。该文本分析器
例如可以是运行特定程序的计算机系统。其中16指示了该系统的关键部 件。所述系统包括CPUOl,用于对应用程序提供计算功能;内部总线02, 所述系统通过内部总线02在内存12和永久性存储器05 (可以是硬盘和 闪存)之间交换数据;用户接口 03,例如可以是用于按键输入的键盘或 用于语音输入的麦克风等等,外围设备04;以及内存12。
永久性存储器05包括分析资源06以及其它的存储器。分析资源包括 普通词词汇07,基于有限状态机(FSM)的语义规则定义08,语言模型 09和词性信息10。其中语言模型(LM) 09与词性信息IO是可选的,此
外也可以使用一元语言模型来减少存储器成本。其它存储器11用于存储 其它的数据。内存12包括多个组件,操作系统13;其它应用程序14,以 及自然语言处理相关应用程序15,该应用程序使用了支持基于有限状态 机的语义规则的综合文本分析器16,综合文本分析器16包括两个关键部 件,部件161是一个多资源组织器和存取器,它对所有用于分析的资源进 行管理,并且对其进行组织,以便保证本发明的一次通过式的分析处理; 部件162是双解码器,包括第一解码器和第二解码器,它接收来自自然语 言处理相关应程序的输入文档17,并且借助部件161来使用所有分析资 源,以及采用一次通过的方式产生分析结果18,然后将结分析结果发送到自然语言处理相关应用程序15。
图2是示出了本发明的文本分析器中的搜索树构造装置与第一解码
器和第二解码器之间的交互关系的示意图。参考图2,多资源组织器和存 取器16具有与永久性存储器中的资源相连的四个数据管道。包括词搜索 树构造装置1611,用于加载来自永久性存储器的普通词词汇07并且将其 构造成词搜索树1614;语义规则搜索树构造装置1612,用于加载基于有 限状态机的语义规则定义08,并且将其构造成语义规则搜索树1615;词 性信息存取器1613以及LM存取器1616。如果词性信息和语言模型很小, 那么它们会分别由词性信息存取器1613和LM存取器1616加载到内存 中,如果其对内存的消耗很大,那么词性信息存取器1613和LM存取器 将在必要的运行时间局部加载这些信息和模型。双解码器包括第一解码器 1621与第二解码器1622,第一解码器1621用于对输入文本中的词进行处 理,第二解码器1622用于对输入文本中的语义规则进行提取,以及第一 解码器与第二解码器相互协作,随后将会对第一解码器与第二解码器之间
的交互工作进行描述。优选地,第一解码器和第二解码器是分别利用维特 比解码器来实现的。
本发明采用了基于语义规则表述框架的有限状态机的语义规则框架。 这种框架不但可以用于表示基于词的语义元素,而且还可以表示某些作为 词和非词成分组合的实体,例如标点符号、语句边界、段落边界等等;此 外,这种框架可以表述那些区间很长的语义现象。此外,其基于有限状态 机的语义规则表述框架被设计为符合正常的词表述,并且这样将会允许分 析器以相同方式来对其进行管理,这样将会减少系统内存和CPU需求。 语义规则表述设计使得第一解码器与第二解码器一起协调工作。
图3示出了本发明的基于有限状态机的语义规则的一个示例。基于有 限状态机的语义规则是由一些节点(与状态相对应)以及变换弧线组成的。 数字071表示语义规则中的起始节点,数字074则表示结束节点。每一 个语义规则都从起始节点开始,并且被用于匹配一个文档。如果文档到达 语义规则中的结束节点,那么这意味着该文档包含了相应语义规则的实 例。数字072指示了一个表示正常词汇中的词的节点。实际上,图3中有 两个普通节点。数字073是表示嵌套式的基于有限状态机的语义规则,它充当的是当前语义规则的状态。通过使用嵌套机制,语义规则的表述能力
将会在相当程度上得到扩展。数字075指示了紧密的链接弧线,它意味着 在弧线的两个节点之间没有任何无用词。而数字076则是一个松散的链接 弧线,它意味着在弧线的两个节点之间存在长距离的区间并且某些无用词 (这些词并不被关注)可以填充这个区间。数字077指示的是一个开始点 与结束点都是相同节点的弧线。这个弧线可用于表述某些重复词,例如组 成数字的重复数位。
根据本发明,所采用的基于有限状态机的语义规则可以满足下列条

1. 基于有限状态机的语义规则与有限状态机对应,其中节点可以是 词典中的词或者是另一个有限状态机的语义规则。即,如果需要的话,基 于有限状态机的语义规则是可以嵌套的。
2. 两个节点之间的链接弧线可以是紧密弧线或松散弧线。对紧密弧 线来说,第一节点即为前一个节点,而对松散链接来说,在两个节点之间 可以存在某些不相关的词或语义规则;
3. 来自某个节点的链接弧线可以引导到同一个节点。也就是说,该 链接弧线代表的是当前节点的一个或多次重复。这个特性对数字表示而言 是非常重要的。
下面将首先对如何生成本发明的词搜索树以及语义规则搜索树进行 描述,之后将结合生成的词搜索树以及语义规则搜索树对本发明的第一解 码器和第二解码器的交互工作进行描述。
图4a示出了本发明的词搜索树构造装置的示意图。参考图4,词搜 索树构造装置1611包括字典排序单元41,用于根据读取的字典中的词串 对词进行排序;词ID分配单元42,用于对排序后的每个词分配一个唯一 的词ID;以及词搜索树构造单元44,用于利用排序后的词与分配的词ID 构造一个词搜索树。
图5a示出了本发明的词搜索树的构造方法的流程图。在S501,字典 排序单元41将读取的字典根据词串来对字典中的词进行排序。在S502, 词ID分配单元42为排序后的每一个词给出一个唯一的词ID。在S503, 词搜索树构造单元44将经过排序的字典中的词构造成词搜索树。图4b示出了本发明的语义规则搜索树构造装置的示意图。参考图4b, 该语义规则搜索树构造装置包括语义规则排序单元46,用于对有限状态
机的语义规则中的所有语义规则进行排序。可以按照预定的方式对语义规
则进行排序,例如R1, R2, R3…等;语义规则ID分配单元48,用于对 排序后的每一个语义规则分配一个唯一的ID;以及根据排序结果来构造 语义规则搜索树的语义规则搜索树构造单元50。其中有限状态机的语义 规则中的语义规则是与字典中的词对应的,因此,需要在构造语义规则搜 索树之前构造词搜索树。
图5b示出了本发明的语义规则搜索树构造方法的流程图。在S504, 语义规则排序单元46对有限状态机的语义规则进行排序。在S505,语义 规则ID分配单元48为排序后的语义规则分配一个唯一的ID。语义规则 的ID与词的ID不同,以免冲突。在S506,语义规则搜索树构造单元根 据排序后的语义规则来构造语义规则搜索树。
图6a中的排序表显示了普通中文字典的排序结果。这些词是按照其 字符串代码来进行排序的。由于每一个中文字符都可以看作为单个的词, 因此在本实例中,所有出现在多字符词中的所有中文字符都被添加到了字 *巾。
图6b示出了搜索树的一个示例结构。参考图6b,每一个节点只保存 了当前节点的字符,以及从根节点到当前节点的字符串则代表的是一个 词。具有实线圆圈的节点是一个停止节点,它意味着来自根节点的字符串 可以在这个节点中停止,或者从根节点到当前节点的字符串是一个有效的 词。具有虚线圆圈的节点是非停止节点,它意味着从根节点到当前节点的 字串不是有效词。非停止节点不能是叶节点。在本实例中,"艾"、"艾滋 病"、"艾滋病毒,,都是有效词,但是"艾滋"在这里则不是有效词,因此非 停止节点用于表示字串"艾滋"。在本实例中,搜索树只用于描述逻辑结构。 实际上,还可以采用其它的实际的树结构来实现这种搜索树。如果字典很 大,并且大多数非叶节点都具有一个以上的子节点,那么在这种情况下, 采用TRIE树将会非常适合。如果有很多只具有单个子节点的非叶和非停 止节点,那么可以使用PAT树来将该节点连同其单个子节点一起整合到 一个节点中,以使所述树更为紧凑。在该图中显示的树是一个TRIE树。由于只有一个节点是可以压縮的,因此在这里没有必要使用PAT树,以 免带来额外的存储器消耗。
图6c示出了英文字典排序表。其中英文字典借助字串来进行排序。
字典中的某些单词实际上是包含了空格字符的短语。
图6d和6e示出了与英文字典排序表对应的搜索树的示例结构图。该 图与图6a非常相似,但是图6d和6e分别具有两种类型的树结构。由于 存在很多分别只具有单个子节点的非叶非停止节点,因此如PAT树所示, 该TRIE树可以被有效压缩。
图7a示出了基于有限状态机的语义规则的一个示例表。在该图中列 举了四个语义规则,第一个语义规则Rl具有两个实例0和1。第二个语 义规则R2是一个或多个重复的"R1",因此R2可以用于表示二进制字串, 例如"1001101010"。语义规则R3是两个词语义规则,并且这两个词之间 的链接是松散链接,或者在这两个词之间可以存在某些无用的词。语义规 则R4是一个紧密链接,它意味着在该链接的两个部分之间没有任何无用 信息。可以使用TR正或PAT树表示这种结构,并且节点需要一些额外比 特来表示重复特性以及紧密或松散链接。
图7b示出了基于有限状态机的语义规则的搜索树的一个示例的结构 图。其中按照语义规则R1, R2, R3和R4的顺序来对图7a的表中的语义
规则进行排序。
下面将结合生成的词搜索树和语义规则搜索树来描述本发明的文本 分析器的第一解码器和第二解码器如何对输入的文本进行分析。
图8a是示出了本发明的第一解码器和第二解码器之间交互协作对输 入的文本分析的示意图。第一解码器1621包括利用词搜索树对输入的文 本中的每个字符依次进行路径扩展以获得搜索的词(与每条路径对应的 词)的第一路径扩展单元81,用于对搜索的词进行记录的词记录单元82, 用于对搜索的词的词性进行标记的词性标记单元83以及用于从第二解码 器分析后的词和语义规则序列中选取合适的词和语义规则序列的词和语 义规则序列选取单元84。第二解码器1622包括利用语义规则搜索树对第 一解码器每次搜索到的词进行路径扩展以搜索到与之完全匹配的语义规
则的第二路径扩展单元86,对利用语义规则搜索树搜索到的语义规则进行记录的语义规则记录单元87以及用于对获得的词和语义规则序列进行
排序的词和语义规则序列排序单元88。通过采用两个解码器分别从词和 语义上对输入的文本进行分析,从而可以将文本解码成词和语义规则序 列。第一解码器和第二解码器可以是维特比解码器,根据输入文本中的每 个字符来记录所有维特比状态。维特比状态表示当输入该字符时所有可能 的词序列或者潜在的词序列。
图8b示出本发明的文本分析方法的流程图。在步骤16201,当接收 到输入的文本之后,例如一句话,第一路径扩展单元81从句子中每次取 出一个字符执行步骤16202, 1621, 1622直到16203的分析。例如,对于 输入的句子"我今天走了",将作为字符序列"我-今-天-走-了"输入到第一路 径扩展单元81。
在步骤16202,判断是否能够取出一个字符。如果不成功,则转到步 骤16204。如果成功,则执行步骤16211。
在步骤16211,第一路径扩展单元81使用输入的这一个字符对其在 词搜索树中可能存在的所有路径进行扩展。例如,当输入"我"时,对词搜 索树执行搜索,搜索到"我"这个节点并记录下从根节点到该节点的路径, 在对当前词"我"执行完步骤16202, 1621, 1622直到16203之后,输入了 "今",第一路径扩展单元81从现有的路径"我"继续进行搜索,但是由于 不能将现有的路径"我"扩展为"我今"(词搜索树中并不存在这样的一个 词),所以将从现有路径中删除这一路径。以及将"今"扩展为搜索词汇树 中的当前路径,。因此,现有的路径包括从根节点到"今"的这一条路径。 在对当前词"今,,执行完步骤16202, 1621, 1622直到16203之后,输入了 "天",通过搜索词搜索树,可以找到从根节点经过节点"今"到叶节点"天" 的路径,因此,"天"可以被扩展为词搜索树中的路径"今天"。此外,可以 将"天,,自身扩展为路径"天"。之后,当输入"走"时,搜索词搜索树,可以 发现该词"走"并不能够被扩展为"今天走"(词典中并不存在这个词),因 此,删除现有路径"今天"。以及"走"可以被扩展为当前路径。最后,当输 入"了"时,搜索词搜索树,发现可以从词搜索树中找到路径"走了",因此, 可以记录当前路径。
在步骤16212,词记录单元82确定哪条路径对应了完整的词(到达词边界),如果完整,则将其作为与搜索到的路径对应的当前词并记录。 例如,对于第一个字符"我",记录为当前词"我"。对于第二个字符"今", 记录为当前词"今",对于第三个字符"天",记录为当前词"天"和"今天"。 最终记录的词包括我,今,天,今天,走,走了。
在步骤16213,词性标记单元83对记录的当前词的词性进行标记,
并将该当前词输入到步骤16221。
在步骤16221,第二解码器中的第二路径扩展单元86通过搜索语义 规则搜索树,对输入的当前词在语义规则搜索树中的所有可能的路径进行 扩展。第二路径搜索单元将输入的当前词与语义规则搜索树中的语义规则 进行匹配,如果输入的词可以与语义规则搜索树中的某一语义规则的至少 一部分匹配,则当前词在语义规则搜索树中具有可扩展的路径,以及记录 下该路径。
在步骤16222,语义规则记录单元87判断语义规则搜索树中的扩展 的路径中对应的语义规则是否是完整的语义规则,如果是,则记录该完整 的语义规则。
在步骤16203,语义规则排序单元88对当前获得的所有可能词和语 义规则序列进行排序。步骤16203可以采用不同的方法对词和语义规则序 列进行排序。方法可以采用将较大的数值分配给最有可能的词序列。例如, 在输入"天"之后,两个可能的词序列是"我"-"今"-"天","我"-"今天".可以 定义针对每个可能的词序列的数值的计算方法并根据计算的数值对每个 可能的词序列进行排序。例如,采用计算每个词(单元)的概率的相乘的 方法。如果对于词"我","今,,,"天","今天",其单元(unigram)分别是0.1, 0.01,0.02, 0.2,则第一词序列的概率是0.1*0.01*0.02=0.00002而第二词序 列的概率是is 0.1*0.2=0.02。因此,第二词序列将被排序在第一位置处。
之后,转向步骤16201,来顺序获取下一个字符。当在步骤16202判 断已经对输入的句子的所有字符进行了分析之后,则进行到步骤16204, 从排序后的词和语义规则序列中选出第一个词和语义规则,作为最终的分 析结果。
继续以输入为"我今天走了"为例,描述第二解码器执行的处理。在步 骤16221,当接收到标记词性后的词"我"之后,第二路径扩展单元86搜索语义规则搜索树,査找与词"我"可以匹配的语义规则。假设语义规则搜索 树中存在语义规则R1:我…走了,则词"我"可以与语义规则R1部分匹配。 第二路径扩展单元86将词"我"扩展为语义规则搜索树中的路径"我"。之
后,执行后续处理16222以及16203。当在步骤16201获取词"今,,后,执 行与词"我"的类似的处理。在步骤16221,第二路径扩展单元86搜索语义 规则搜索树,查找到路径可以扩展为语义规则搜索树中的一部分语义规则 Rl"我..."。对于词"天"和"走",执行与词"今"类似的处理过程。最终当输 入词"了"之后,在步骤16221接收到的词包括"走了"和"了",第二路径扩 展单元86将词"走了"扩展为语义规则搜索树中的路径"我...走了"。在步 骤16222,如果16221所扩展的路径与语义规则搜索树中的某个语义规则 完全一致,则记录该语义规则。对于上述例子,仅当输入了"了"之后,才 记录该完整的语义规则。
图8c是示出了根据本发明的另一实施例的第一解码器和第二解码器 的示意图。与图8a相比,其区别在于第一解码器包括用于在对所有字符 进行了路径扩展之后,对词序列进行排序的词序列排序单元84',而不是 词和语义规则序列选取单元。以及第二解码器包括在对所有词进行第二路 径扩展之后,对语义规则排序的语义规则排序单元88',而不是词和语义 规则序列排序单元。
图8d示出了根据本发明的另一实施例的文本分析方法的流程图,其 与图8b所示的流程类似,区别在于在步骤16204,第一解码器对获得的 词进行排序。以及在步骤16203,第二解码器对所有语义规则进行排序。
图9示出了本发明的文本分析器的分析结果的一个示例。当输入的文 本句子是"下午三点三十分开会"时,采用根据本发明的分析器的最终分析 的结果包括语义规则R8和词"开会",其中语义规则R8是有关时间的描 述"下午三点三十分开会"。
图IO示出了本发明的文本分析器的另一个实施例的示意图。参考图 10,除了该文本分析器并不包括词搜索树构造装置1611,语言语义规则 搜索树构造装置1612,词性信息存取器1613以及LM存取器1616之外, 其结构与图2所示的文本分析器类似。该文本分析器包括第一解码器 1621和第二解码器1622,通过采用己经生成的词搜索树和语义规则搜索树来对输入的文本执行分析。其方法流程与图8b所示的类似。
图11示出了短消息智能处理系统的示意图。在该系统中,采用了本 发明的文本分析器。该系统包括输入装置171,用于输入短消息;短消 息上下文检索器19;文本分析器16;分类器20;短消息标记器21以及
短消息管理器22。其中,短消息上下文检索器19,用于从输入的短消息
中检索上下文信息,其中短消息上下文包括发送方/接收方的电话号码、 发送/接收时间、该号码是否处于地址列表中等等;文本分析器16,用于 对短消息的纯文本进行分析,并输出分析后的语义规则和词;分类器20, 用于对文本分析器的输出进行分类;短消息标记器21,接收来自文本分 类器和短消息上下文检索器的输出,并利用特定标签对该短消息进行标 记,特定标签例如可以是"隐私性"、"家庭"、"工作"等等。短消息管理器 22用于根据短消息标记后的结果对短消息进行管理。
图12示出了短消息智能处理系统执行的处理方法的流程图。参考图 12,在步骤1201,接收输入的短消息。在步骤1202,短消息内容检索器 19从输入的短消息中检索上下文信息。在步骤1203,文本分析器16对短 消息的文本执行分析,以得到语义规则和词。在步骤1204,分类器20对 分析后的短消息执行分类。在步骤1205,短消息标记器21根据短消息上 下文检索器从输入的短消息中检索到的上下文信息以及分类器20分类的 结果对短消息加标签。在步骤1206,短消息管理器22根据短消息的标签 对短消息进行管理。
由于本发明的分析器具有很高的效率,且可以获得较高精度的分析结 果,因此,根据本发明的文本分析器除了可以应用在移动电话上对输入的 短消息进行文本分析之外,还可以应用于其它对文本分析要求较高的系统 中。此外,根据本发明,可知本发明不仅可以对中文文本进行分析,而且 可以对包括英文文本的其它种类的语言文本执行分析。
尽管已经参照附图,对示例实施例进行了描述,应当理解的是,本发 明并不局限于这些实施例,本领域的普通技术人员可以对其进行多种其它 变化和修改,而不偏离本发明的范围或精神。所有这些变化和修改包括在 所附权利要求所限定的本发明的范围内。
权利要求
1. 一种文本分析器,包括第一解码器,用于通过利用词搜索树对输入的文本中的每个字符依次进行第一路径扩展,获得与每次第一路径扩展对应的词;以及第二解码器,用于通过利用语义规则搜索树对第一解码器每次进行第一路径扩展获得的词依次进行第二路径扩展,获得与每次第二路径扩展对应的语义规则。
2. 如权利要求1所述的文本分析器,其中第二解码器在每次第二路径扩展结束之后,对获得的词和语义规则的 序列进行排序;以及第一解码器在已经对所有的字符顺序进行了第一路径扩展之后,从第 二解码器排序后的词和语义规则序列选择出所需的词和语义规则序列,作 为分析结果。
3. 如权利要求2所述的文本分析器,其中第一解码器包括 第一路径扩展单元,用于利用词搜索树对输入的文本中的每个字符依次进行第一路径扩展,获得与每次第一路径扩展对应的词;词记录单元,用于对获得的与每条路径对应的词进行记录;以及 词和语义规则序列选取单元,用于在已经对所有的字符顺序进行了第一路径扩展之后,从第二解码器排序后的词和语义规则序列中选取合适的词和语义规则序列。
4. 如权利要求3所述的文本分析器,其中第一解码器还包括 词性标记单元,用于对每次第一路径扩展获得的词的词性进行标记。
5. 如权利要求2所述的文本分析器,其中第二解码器包括 第二路径扩展单元,用于利用语义规则搜索树对第一解码器每次进行第一路径扩展获得的词依次进行第二路径扩展,获得与每次第二路径扩展对应的语义规则;语义规则记录单元,用于对获得的语义规则进行记录;以及 词和语义规则序列排序单元,用于对获得的词和语义规则序列进行排序。
6. 如权利要求2所述的文本分析器,其中第二解码器通过对词序列中的每个词序列计算词单元来对词序列进 行排序。
7. 如权利要求所述的文本分析器,还包括 词搜索树构造装置,包括词典排序单元,用于对词典中的词进行排序;词ID分配单元,用于为每个排序后的词分配一个唯一的词ID;以及 词搜索树构造单元,用于利用排序后的词和相应的词ID构造词搜索树。
8. 如权利要求1所述的文本分析器,还包括 语义规则搜索树构造装置,包括 语义规则排序单元,用于对语义规则进行排序;语义规则ID分配单元,用于为排序后的每个语义规则分配一个唯一 的语义规则ID;以及语义规则搜索树构造单元,用于利用排序后的语义规则和相应的语义 规则ID构造语义规则搜索树。
9. 如权利要求1所述的文本分析器,其中所述的语义规则是基于有 限状态机的语义规则。
10. 如权利要求6所述的文本分析器,其中语义规则可以是词或者是 一个嵌套的语义规则。
11. 如权利要求l所述的文本分析器,其中第一解码器在对输入的文本中的所有字符依次进行了第一路径扩展 之后,对所获得的词的词序列进行排序;以及第二解码器在对第一路径扩展获得的所有词依次进行第二路径扩展 之后,对获得的与每次第二路径扩展对应的语义规则迸行排序。
12. 如权利要求ll所述的文本分析器,其中第一路径扩展单元,用于利用词搜索树对输入的文本中的每个字符依 次进行第一路径扩展,获得与每次第一路径扩展对应的词;词记录单元,用于对获得的与每条路径对应的词进行记录;以及词序列排序单元,用于在已经对所有的字符依次进行了第一路径扩展 之后,对获得的词的词序列进行排序。
13. 如权利要求ll所述的文本分析器,其中第二解码器包括 第二路径扩展单元,用于利用语义规则搜索树对第一解码器每次进行第一路径扩展获得的词依次进行第二路径扩展,获得与每次第二路径扩展对应的语义规则;语义规则记录单元,用于对获得的语义规则进行记录;以及 语义规则序列排序单元,用于对获得的语义规则序列进行排序。
14. 如权利要求1所述的文本分析器,其中 第一解码器和第二解码器分别是维特比解码器。
15. —种文本分析方法,包括 第一解码步骤,包括 接收输入的文本; 从文本中按照顺序获取一个字符;利用搜索树对当前的字符进行第一路径扩展,获得与第一路径扩展对 应的当前词;以及第二解码步骤,包括 接收第一路径扩展获得的当前词;利用语义规则搜索树对当前词进行第二路径扩展,获得与第二路径扩 展对应的语义规则;以及重复执行第一解码步骤以及第二解码步骤,直到对文本中的所有字符 执行了第一路径扩展和第二路径扩展。
16. 根据权利要求15所述的方法,其中第二解码步骤还包括在执行 完第二路径扩展之后,对当前词和语义规则序列进行排序的步骤;以及在对文本中的所有字符执行了第一路径扩展和第二路径扩展之后,第 一解码步骤还包括从排序后的词和语义规则序列中选择所需的词和语义 规则序列的步骤。
17. 根据权利要求15所述的方法,其中第一解码步骤还包括在对输 入的文本中的所有字符依次进行了第一路径扩展之后,对所获得的词的词 序列进行排序的步骤;以及第二解码步骤还包括在对第一路径扩展获得的所有词依次进行第二 路径扩展之后,对获得的语义规则进行排序的步骤。
18. 如权利要求16所述的文本分析方法,其中 第二解码步骤通过对词序列中的每个词序列计算词单元来对词序列进行排序。
19. 如权利要求15所述的文本分析方法,其中第一解码步骤还包括词记录步骤,对当前词进行记录。
20. 如权利要求18所述的文本分析方法,其中第一解码步骤还包括词性标记步骤,对当前词的词性进行标记。
21. 如权利要求15所述的文本分析方法,其中第二解码步骤还包括在执行第二路径扩展之后,对获得的语义规则进行记录的步骤。
22. 如权利要求15所述的文本分析方法,还包括第一构造步骤,包括词典排序步骤,对词典中的词进行排序;词ID分配步骤,为每个排序后的词分配一个唯一的词ID;以及词搜索树构造步骤,利用排序后的词和相应的词ID构造词搜索树。
23. 如权利要求15所述的文本分析方法,还包括 第二构造步骤,包括碍义规则排序步骤,对语义规则进行排序;语义规则ID分配步骤,为排序后的每个语义规则分配一个唯一的语 义规则ID;以及语义规则搜索树构造步骤,利用排序后的语义规则和相应的语义规则 ID构造语义规则搜索树。
24. 如权利要求15所述的文本分析方法,其中所述的语义规则是基于有限状态机的语义规则。
25. 如权利要求15所述的文本分析方法,其中语义规则可以是词或者是一个嵌套的语义规则。
26. —种短消息智能处理系统,包括短消息上下文检索器,用于从输入的短消息中检索上下文信息; 根据本发明权利要求1所述的文本分析器,用于对短消息文本进行分析;分类器,用于对文本分析器的输出进行分类;短消息标记器,用于利用标签对来自文本分类器和短消息上下文检索 器的输出进行标记;短消息管理器,用于根据加标签的输出,对短消息进行管理。
27. —种短消息智能处理方法,包括短消息上下文检索步骤,从输入的短消息中检索上下文信息; 根据本发明权利要求15所述的文本分析方法,对短消息文本进行分析;分类步骤,对文本分析方法分析的结果进行分类; 短消息标记步骤,利用标签对来自文本分类步骤和短消息上下文检索 步骤的输出进行标记;短消息管理步骤,根据加标签的输出,对短消息进行管理。
全文摘要
本发明提供一种文本分析器,包括第一解码器,用于通过利用词搜索树对输入的文本中的每个字符依次进行第一路径扩展,获得与每次第一路径扩展对应的词;以及第二解码器,用于通过利用语义规则搜索树对第一解码器每次进行第一路径扩展获得的词依次进行第二路径扩展,获得与每次第二路径扩展对应的语义规则。以及本发明提供了一种文本分析方法,以及一种应用本发明分析器的短消息智能处理系统及其方法。
文档编号G06F17/27GK101470701SQ20071030663
公开日2009年7月1日 申请日期2007年12月29日 优先权日2007年12月29日
发明者吴根清, 许荔秦, 靳简明 申请人:日电(中国)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1