专利名称:句子模板自动提取的方法
技术领域:
本发明涉及一种文本分析辅助技术,具体涉及一种从一批文本中研究句子及 结构内在的相似性,并将其抽象为模板的方法。
背景技术:
汉语学研究中往往会研究常用的字词及句子,而常用的句子则更为关注,比 如要做一些类似于英语900句子的相关产品等,从浩瀚的文本中,如何才能出挑 选一些好的句子出来呢?类似于英语900句,其实好的句子,也即是它能包含语 言中常用的句式。而常用的句式,其实就可抽象为句子的模板。而且对于从事语 音研究来说,句子模板的挑选也是很重要的,如进行语音合成时,将常用的句式 抽象成模板,制做成语料,可大大提高合成效果。而以前查找模板通常是釆用人 工的方法,进行提取,存在的缺点就是容易遗漏,不能找到较多的模板,而且当 文章比较长时,更是费力、耗时。发明内容本发明针对现有句子模板提取方法的不足,开发出了可以从大量文本信息 中,自动、高效的统计常用字词、句式的方法。本发明是通过以下技术方案实现的句子模板自动提取的方法,其提取方法包括以下步骤实现(1) 分句按标点符号,将文本分成若干条句子;并按先后顺序在句子前标上 序号;(2) 分词运用分词技术,将分句所得的每条句子,切分成基于每个词的小块;(3) 模板提取在分词结果的基础上,对句子应用LCS算法,得到最长公共子 序列,即得到句子模板。句子模板自动提取的方法,在分词完成后,按句子中词语个数由多到少或由 少到多划分成若干组;将同一组的句子应用LCS算法,得到最长公共子序列。句子模板自动提取的方法,在得到所述最长公共子序列的同时,删除其内部 活动部分长度为零的最长公共子序列。本发明主要通过使用或改进LCS最长公共子序列算法,来实现核心计算部分。LCS (Longest Common Subsequence)算法,是动态规划里著名的算法,可以 高效地获取任意两个字符串(序列)之间相同的部分,并相对其它算法具有较低 的时间复杂度。LCS算法起初出现在1974年R. A. Wagner与M. J. Fischer的一篇 文章的最后,1975年D.S.Hirschberg在其文章中作了进一步的探讨,有了现在 的LCS算法。大部分算法书以及文本处理中都提到了该算法,但并没有具体应用 到句子分析上的融合。本发明以LCS算法为基础,对其进一步深入讨论,以文章中句子以及词为研 究对象,从而得到了其在文本处理方面的具体应用。LCS算法采用递推(归) 的思想,将两个序列看成是通过添加元素而进行子序列扩充的方式,最终形成两 个原序列,在扩充过程中,使用一个长度矩阵(在两个序列中,在每个序列的子 序列扩展过程中,必然有其长度个顺序子序列,使用矩阵正好描述了原两个序列 对应的任意两个子序列的情况,这里我们在矩阵行列的当前位置,记录了行列下 标之前的这两个子序列的LCS长度,因此称该矩阵为长度矩阵),当在两个序列 都添加完最后一个元素时,原序列扩充完毕,长度矩阵也就形成了,而矩阵右下 角的元素即是原来所求的两个序列的LCS长度了,由该元素进行回溯便可得到 LCS。就LCS本身算法来说,最终是得到了 LCS,如有"ABCDE" , " ACDF"两个 字符序列,LCS的结果就是"ACD",但是在文本处理中,我们所需要的不仅仅 是"ACD"信息,我们还需要其在原序列中的位置信息以及如果将"ACD"抽象成 汉字的话,这样得到的序列未必有实际价值,有可能一些词语被拆成两半了,留 下其中一半,是毫无价值的。因此基于在文本分析中的应用,我们将该算法进行 了以下改进。(1) .在文本分析中,我们将每两个句子看作是两个字符序列(串),并以其中每 个词(包括汉语词语以及英文单词)作为一个整体参于比较,从而避免了词语被 拆开的情况。(2) .基于本方法的目的,是从文本中挑选相似的句子的结构出来,即前文所定义 的模板。因此在LCS长度矩阵回溯的过程中,我们将其中不匹配的位置记录下来,用通配符记录下来,标识模板的活动部分,这样得到的LCS在一定程度上就反映 了两个句子其相似的结构特征。(3).模板修正。为了将带通配符的LCS转化成句子模板,在使用长度矩阵分析完 毕后,我们还需要对其头部以及尾部进行检査,以保证模板完全匹配原来的两个 句子。这样即可高效并具有实际价值的完成句子合成模板自动提取、提示音自动提 取和效果自动分析。为了描述,这里定义以下概念模板(LCS)密度 一个模板中所含词语的个数与其来源的每条句子所含词语 比值的平均值。模板相似度将两个模板(此时己添加了通配符,将通配符代替的部分现看成是固定成份),进行第二次LCS运算,得到模板之间的LCS,依次将新的LCS 同原模板求其所含单词(词语)的比值(注这里的词语是含通配符的,因为已 将其看成了固定成份,而模板密度是不含通配符的),将比值最大的定义为模板 相似度。
附图为本发明的流程框图。
具体实施方式
实施例1句子模板自动提取的方法包括以下步骤(1) 分句按标点符号,将文本分成若干条句子;并按先后顺序在句子前标上 序号;(2) 分词运用分词技术,将分句所得的每条句子,切分成基于每个词的小块;(3) 分词完成后,按句子中词语个数由多到少或由少到多划分成若干组;(4) 模板提取将同一组的句子应用LCS算法,得到最长公共子序列,在得到 最长公共子序列的同时,删除其内部活动部分长度为零的最长公共子序列,即得 到句子模板。实施例2包括以下步骤(1) 分句按标点符号,将文本分成若干条句子;并按先后顺序在句子前标上 序号;(2) 分词运用分词技术,将分句所得的每条句子,切分成基于每个词的小块;(3) 模板提取在分词结果的基础上,对句子应用LCS算法,得到最长公共子 序列,即得到句子模板。实施例3句子模板自动提取的方法包括以下步骤-(1) 分句按标点符号,将文本分成若干条句子;并按先后顺序在句子前标上 序号;(2) 分词运用分词技术,将分句所得的每条句子,切分成基于每个词的小块;(3) 分词完成后,按句子中词语个数由多到少或由少到多划分成若干组;(4) 模板提取将同一组的句子应用LCS算法,得到最长公共子序列,即得到 句子模板。
权利要求
1、句子模板自动提取的方法,其特征在于提取方法包括以下步骤(1)分句按标点符号,将文本分成若干条句子;并按先后顺序在句子前标上序号;(2)分词运用分词技术,将分句所得的每条句子,切分成基于每个词的小块;(3)模板提取在分词结果的基础上,对句子应用LCS算法,得到最长公共子序列,即得到句子模板。
2、 根据权利要求l所述的句子模板自动提取的方法,其特征在于所述分词完成 后,按句子中词语个数由多到少或由少到多划分成若干组;将同一组的句子应用 LCS算法,得到最长公共子序列。
3、 根据权利要求1或2所述的句子模板自动提取的方法,其特征在于在得到所 述最长公共子序列的同时,删除其内部活动部分长度为零的最长公共子序列。
全文摘要
本发明涉及句子模板自动提取的方法,包括以下步骤分句按标点符号,将文本分成若干条句子;并按先后顺序在句子前标上序号;分词运用分词技术,将分句所得的每条句子,切分成基于每个词的小块;分词完成后,按句子中词语个数由多到少或由少到多划分成若干组;模板提取将同一组的句子应用LCS算法,得到最长公共子序列,即得到句子模板。本发明可以从大量文本信息中,自动、高效的统计常用字词、句式。
文档编号G06F17/27GK101221558SQ20081001952
公开日2008年7月16日 申请日期2008年1月22日 优先权日2008年1月22日
发明者峻 严, 刘庆峰, 吴晓如, 波 徐, 王仁华, 胡国平, 赵志伟, 陈志刚, 毅 高 申请人:安徽科大讯飞信息科技股份有限公司