一种基于hash散列表词典结构的中文分词方法

文档序号:6525324阅读:379来源:国知局
一种基于hash散列表词典结构的中文分词方法
【专利摘要】本发明公开了一种基于hash散列表词典结构的中文分词方法,包括以下步骤:A、对待处理文档进行预处理;B、对每一个处理块分别进行正向最大匹配扫描切分和逆向最大匹配扫描切分;C、对每一个处理块的两次扫描结果进行比较,如果两次扫描后的分词结果相同,则输出正向分词结果,如果结果不同,则分别计算正向最大扫描和逆向最大扫描结果的分词个数S、单字字典词数D、非词典词数N和最大词长L;D、结合以下方法对C中产生的数据进行比较分析后输出正确结果。本发明的有益效果为:提高了分词过程中的匹配效率提高正反向扫描后的比较速度,从根本上提高了双向最大匹配算法的效率。
【专利说明】—种基于hash散列表词典结构的中文分词方法
【技术领域】
[0001]本发明涉及中文信息处理【技术领域】,具体涉及一种基于hash散列表词典结构的中文分词方法。
【背景技术】
[0002]中文分词是中文信息处理中最为基础、最为重要的问题,是汉语文本自动标注、搜索引擎、机器翻译、语音识别等工作中的关键步骤,分词的质量直接影响了结果的精确度。中文和英文分词不一样,中文的词与词之间没有一个形式上的分界符,只能将连续的中文汉字序列按照一定的汉语规范重新组合,但汉语句子构成的复杂性和多变性,使得中文分词一直是中文信息处理的难点。而未登录词的发现和歧义的消解是中文分词要解决的两大难题。现有的比较流行的分词算法有三大类:1)基于机械匹配的分词方法;2)基于理解的分词方法;3)基于统计的分词方法。
[0003]目前,占主导地位的是基于机械匹配的分词方法也叫基于字符串匹配的分词方法,它包括正向最大匹配法,逆向最大匹配法,逐词遍历法,设立切分标志法,最佳匹配法。其中正向最大匹配法和逆向最大匹配法因为其切分速度快、简洁、易实现等特点而得到了广泛应用。基于机械匹配的分词方法存在匹配速度慢、交集型和组合型歧义切分问题和缺乏字学习的智能性。基于理解的分词方法又称基于人工智能的分词方法,由于汉语语言知识的笼统、复杂性,难以将各种语言信息组织成机器可直接读取的形式,因此目前基于理解的分词系统还处在试验阶段。基于统计的分词方法在实际应用中一般是将其与基于词典的分词方法结合起来,既发挥匹配分词切分速度快、效率高的特点,又利用了无词典分词结合上下文识别生词、自动消除歧义。

【发明内容】

[0004]本发明的目的在于针对现有技术的缺陷和不足,提供一种具有更高准确率和效率的分词词典结构以及分词方法。
[0005]为实现上述目的,本发明采用的技术方案是:
[0006]本发明所述的一种基于hash散列表词典结构的中文分词方法,其特征在于:包括以下步骤:
[0007]A、对待处理文档进行预处理,将文本以每一句话为单位分为多个处理块,去掉文档中的标点、英文字母等非汉字信息,用分隔符“/”将其替代;
[0008]B、对每一个处理块分别进行正向最大匹配扫描切分和逆向最大匹配扫描切分;
[0009]C、对每一个处理块的两次扫描结果进行比较,如果两次扫描后的分词结果相同,则输出正向分词结果,如果结果不同,则分别计算正向最大扫描和逆向最大扫描结果的分词个数S、单字字典词数D、非词典词数N和最大词长L ;
[0010]D、结合以下方法对C中产生的数据进行比较分析后输出正确结果;
[0011]D1、四组值完全相等时,选择逆向分词结果;[0012]D2、S、L相等,其他不等时,选择N小的一方为正确结果;
[0013]D3、S相等,L不等时,选择D=N=0的一方为正确,如果没有则选择L大的一方;
[0014]D4、S、L都不等时,选择S小且L大的一方正确。
[0015]作为优选的,所述的正向最大匹配扫描切分流程为:假设分词词典中最长词长度是n,每次从待切分串的开始处截取一个长度为η的字串s,让s同词典中的词条依次相匹配,如果某个词条与其完全匹配,则把s作为一个词从待切分串中切分出去,重复与词典中词条相匹配的过程,直到待切分字符串切分完为止,如果在词典中找不到与s匹配的词条,就从s的尾部减去一个字,用η-l长度的字符串继续与词典中词条匹配,如果匹配成功则切分出一个词,否则再从s尾部减去一个字,重复匹配过程,直到匹配成功。
[0016]作为优选的,所述的逆向最大匹配扫描切分的流程为假设分词词典中最长词长度是η,每次从待切分串的末尾处截取一个长度为η的字串s,让s同词典中的词条依次相匹配,如果某个词条与其完全匹配,则把s作为一个词从待切分串中切分出去,重复与词典中词条相匹配的过程,直到待切分字符串切分完为止,如果在词典中找不到与s匹配的词条,就从s的头部减去一个字,用η-l长度的字符串继续与词典中词条匹配,如果匹配成功则切分出一个词,否则再从s头部减去一个字,重复匹配过程,直到匹配成功。
[0017]采用上述结构后,本发明有益效果为:通过提出一种更适合双向最大匹配算法的词典结构,提高了分词过程中的匹配效率,又提出匹配后的判断规则,提高正反向扫描后的比较速度,从根本上提高了双向最大匹配算法的效率。
【专利附图】

【附图说明】
[0018]为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0019]图1是本发明方法流程图;
[0020]图2为本发明具体实施例图。
【具体实施方式】
[0021]下面结合附图对本发明作进一步的说明。
[0022]如图1所示,首先我们需要建立词典结构,将本发明中的hash散列表以链表的方式存放于内存中,同时,我们还需要建立索引表,便于后续程序中的查询。
[0023]在预处理阶段,我们要做的是将待处理文本中的每一句话以句号为结束符进行分害I],以便降低后面双向扫描的复杂度。
[0024]接下来系统需要进行的是对每一个待处理的文本块进行正向和逆向最大匹配。正向最大匹配法的基本流程是:假设分词词典中最长词长度是n,每次从待切分串的开始处截取一个长度为η的字串s,让s同词典中的词条依次相匹配,如果某个词条与其完全匹配,则把s作为一个词从待切分串中切分出去,重复与词典中词条相匹配的过程,直到待切分字符串切分完为止。如果在词典中找不到与s匹配的词条,就从s的尾部减去一个字,用η-l长度的字符串继续与词典中词条匹配,如果匹配成功则切分出一个词,否则再从s尾部减去一个字,重复匹配过程,直到匹配成功。正向最大匹配算法的错误切分率是1/169。逆向最大匹配法与正向法的不同之处在于,每次从带切分串的末尾处开始匹配,匹配不成功则从S的头部减去一个字再进行匹配,直至匹配结束。逆向最大匹配算法的错误切分率是1/245。双向最大匹配算法则是在这两种分词结果中选择更准确的作为最终结果。
[0025]当待处理文本块的正向和逆向最大匹配分词结果相同时,将输出正向(逆向)分词结果作为最终的结果。当待处理文本块的正向和逆向最大匹配分词结果不同时,就需要分别计算每一个文本块的正向和逆向分词结果中的S、D、N和L,其中D和N的值完全取决于字典内容本身,然后利用
[0026]D1、四组值完全相等时,选择逆向分词结果;
[0027]D2、S、L相等,其他不等时,选择N小的一方为正确结果;
[0028]D3、S相等,L不等时,选择D=N=0的一方为正确,如果没有则选择L大的一方;
[0029]D4、S、L都不等时,选择S小且L大的一方正确。
[0030]这4条判断规则进行深入判断,来决定哪一种方法是正确的并输出最终结果。为了验证本发明提出的上述四条规则的可靠性与正确性,我们用几个有代表性的实施例来证明,如图2所示。
[0031]以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
【权利要求】
1.一种基于hash散列表词典结构的中文分词方法,其特征在于:包括以下步骤:A、对待处理文档进行预处理,将文本以每一句话为单位分为多个处理块,去掉文档中的标点、英文字母等非汉字信息,用分隔符“/”将其替代;B、对每一个处理块分别进行正向最大匹配扫描切分和逆向最大匹配扫描切分;C、对每一个处理块的两次扫描结果进行比较,如果两次扫描后的分词结果相同,则输出正向分词结果,如果结果不同,则分别计算正向最大扫描和逆向最大扫描结果的分词个数S、单字字典词数D、非词典词数N和最大词长L ;D、结合以下方法对C中产生的数据进行比较分析后输出正确结果,具体分析步骤如下:D1、四组值完全相等时,选择逆向分词结果;D2、S、L相等,其他不等时,选择N小的一方为正确结果;D3、S相等,L不等时,选择D=N=0的一方为正确,如果没有则选择L大的一方;D4、S、L都不等时,选择S小且L大的一方正确。
2.根据权利要求1所述的一种基于hash散列表词典结构的中文分词方法,其特征在于:所述的正向最大匹配扫描切分流程为:假设分词词典中最长词长度是n,每次从待切分串的开始处截取一个长度为η的字串s,让s同词典中的词条依次相匹配,如果某个词条与其完全匹配,则把s作为一个词从待切分串中切分出去,重复与词典中词条相匹配的过程,直到待切分字符串切分完为止,如果在词典中找不到与s匹配的词条,就从s的尾部减去一个字,用η-l长度的字符串继续与词典中词条匹配,如果匹配成功则切分出一个词,否则再从s尾部减去一个字,重复匹配过程,直到匹配成功。
3.根据权利要求1所述的一种基于hash散列表词典结构的中文分词方法,其特征在于:所述的逆向最大匹配扫描切分的流程为假设分词词典中最长词长度是n,每次从待切分串的末尾处截取一个长度为η的字串s,让s同词典中的词条依次相匹配,如果某个词条与其完全匹配,则把s作为一个词从待切分串中切分出去,重复与词典中词条相匹配的过程,直到待切分字符串切分完为止,如果在词典中找不到与s匹配的词条,就从s的头部减去一个字,用η-l长度的字符串继续与词典中词条匹配,如果匹配成功则切分出一个词,否则再从s头部减去一个字,重复匹配过程,直到匹配成功。
【文档编号】G06F17/27GK103646018SQ201310720277
【公开日】2014年3月19日 申请日期:2013年12月20日 优先权日:2013年12月20日
【发明者】盖荣丽, 高菲 申请人:大连大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1