发明名称 一种决策级中文分词融合方法
摘要 本发明公开了一种决策级中文分词融合方法,属于自然语言处理和智能信息处理领域。本方法首先利用三种分词工具对中文文本中的句子进行分词,并对分词结果进行预处理,利用整型数组保存每个分词工具的分词结果。然后采用决策级分词融合模型进行分词,决策级分词融合模型为分层的融合结构,包括特征级和决策级,最后采用一种基于Web的方法识别句子中的未登录词。本方法通过采用决策级融合方式进行分词结果融合,有效提高了分词结果的准确性。本发明在信息检索、文本分类、主题检测、网络内容监控等领域具有广阔的应用前景。
申请公布号 CN104317882A 申请公布日期 2015.01.28
申请号 CN201410564432.5 申请日期 2014.10.21
申请人 北京理工大学 发明人 张春霞;梁峰;王树良;金福生;牛振东
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 代理人
主权项 一种决策级中文分词融合方法,其特征在于包括以下步骤:步骤一、利用任意三个中文分词工具分别对待处理文本中的句子进行分词;步骤二、对得到的三个分词结果进行预处理,具体如下:将待处理句子保存为字符串数组{s<sub>1</sub>,s<sub>2</sub>,…,s<sub>n</sub>},其中,n为自然数,表示句子中所有字符的个数,每个数组元素s<sub>i</sub>(i=1,2,…,n)代表单个汉字、标点符号、数字或英文字符;获取三个分词工具的分词结果,连续的两个词语之间用一个空格分隔;同时,构建三个整型数组,分别记录三个分词结果中每个非空格字符的位置索引,即,整型数组元素记录字符串数组{s<sub>1</sub>,s<sub>2</sub>,…,s<sub>n</sub>}中s<sub>i</sub>(i=1,2,…,n)在分词结果中的位置索引;步骤三、对字符串数组{s<sub>1</sub>,s<sub>2</sub>,…,s<sub>n</sub>}和三个整型数组,利用决策级分词融合方法进行分词,具体如下:首先,设三个整型数组为A={a<sub>1</sub>,a<sub>2</sub>,…,a<sub>n</sub>}、B={b<sub>1</sub>,b<sub>2</sub>,…,b<sub>n</sub>}、C={c<sub>1</sub>,c<sub>2</sub>,…,c<sub>n</sub>},分别记录第一个、第二个、第三个分词结果中s<sub>1</sub>,s<sub>2</sub>,…,s<sub>n</sub>的位置索引,设三个分词工具的准确率为p<sub>1</sub>,p<sub>2</sub>,p<sub>3</sub>;对于待处理句子的第i个字符s<sub>i</sub>和第i+1个字符s<sub>i+1</sub>,在分词结果中二者之间要么存在词语分隔标记空格,要么不存在空格;对于第i个和第i+1个字符在分词结果中的位置索引a<sub>i</sub>和a<sub>i+1</sub>,只能满足下述关系之一:若第i个字符和第i+1个字符之间不存在空格,则a<sub>i+1</sub>=a<sub>i</sub>+1;若它们之间存在空格,则a<sub>i+1</sub>=a<sub>i</sub>+2;对于第i个和第i+1个字符在三个分词结果中的位置索引a<sub>i</sub>,,b<sub>i</sub>,c<sub>i</sub>和a<sub>i</sub>+<sub>1</sub>,b<sub>i</sub>+<sub>1</sub>,c<sub>i+1</sub>,若a<sub>i</sub>=b<sub>i</sub>=c<sub>i</sub>,由于在分词结果中第i个字符与第i+1个字符之间只能存在空格或者不存在空格,因此a<sub>i+1</sub>,b<sub>i+1</sub>,c<sub>i+1</sub>中任意两者要么相等,要么差值为1,此外,a<sub>i+1</sub>,b<sub>i+1</sub>,c<sub>i+1</sub>中至少存在两者相等;在分词过程中,在判别第i(i=1,2,…,n)个字符的位置索引后,将三个整型数组中记录该字符在三个分词结果中的位置索引都赋值为分词融合方法中第i个字符的位置索引;然后,采用决策级分词融合方法进行分词;过程如下:对于待处理句子的第一个字符s<sub>1</sub>,有a<sub>1</sub>=b<sub>1</sub>=c<sub>1</sub>=1,则判别第1个字符的位置索引为a<sub>1</sub>;对于待处理句子的第i(i=2,…,n)个字符,若a<sub>i</sub>=b<sub>i</sub>=c<sub>i</sub>,则判别第i个字符的位置索引为a<sub>i</sub>;若a<sub>i</sub>=b<sub>i</sub>=c<sub>i</sub>不成立,根据整型数组的特征可知三个整型数组中记录三种分词结果的第i‑1个字符的位置索引相同,即a<sub>i‑1</sub>=b<sub>i‑1</sub>=c<sub>i‑1</sub>,并且a<sub>i</sub>,,b<sub>i</sub>,c<sub>i</sub>中存在两个数组元素的值相等;若a<sub>i</sub>=b<sub>i</sub>,则第i个字符在分词融合结果中的位置索引为a<sub>i</sub>的概率p=p<sub>1</sub>+p<sub>2</sub>+(1‑p<sub>3</sub>);若a<sub>i</sub>=c<sub>i</sub>,则第i个字符在分词融合结果中的位置索引为a<sub>i</sub>的概率p=p<sub>1</sub>+(1‑p<sub>2</sub>)+p<sub>3</sub>;若b<sub>i</sub>=c<sub>i</sub>,则第i个字符在分词融合结果中的位置索引为b<sub>i</sub>的概率p=(1‑p<sub>1</sub>)+p<sub>2</sub>+p<sub>3</sub>;当a<sub>i</sub>=b<sub>i</sub>时,若p≥0.5,则判别第i个字符的位置索引为a<sub>i</sub>;若a<sub>i</sub>&lt;c<sub>i</sub>,根据整型数组的特征,可知a<sub>i</sub>+1=c<sub>i</sub>;将第三个分词结果的整型数组中第i个元素至最后一个元素的值减1;若a<sub>i</sub>&gt;c<sub>i</sub>,根据整型数组的特征可知a<sub>i</sub>=c<sub>i</sub>+1;将第三个分词结果的整型数组中第i个元素至最后一个元素的值加1,然后继续处理第i+1个字符;当a<sub>i</sub>=b<sub>i</sub>时,若p&lt;0.5,则判别第i个字符的位置索引为c<sub>i</sub>;若a<sub>i</sub>&lt;c<sub>i</sub>,根据整型数组的特征,可知a<sub>i</sub>+1=c<sub>i</sub>;将第一个和第二个分词结果的两个整型数组中第i个元素至最后一个元素的值加1;若a<sub>i</sub>&gt;c<sub>i</sub>,根据整型数组的特征,可知a<sub>i</sub>=c<sub>i</sub>+1;将第一个和第二个分词结果的两个整型数组中第i个元素至最后一个元素的值减1;继续处理第i+1个字符;当a<sub>i</sub>=c<sub>i</sub>时,若p≥0.5,则判别第i个字符的位置索引为a<sub>i</sub>;若a<sub>i</sub>&lt;b<sub>i</sub>,根据整型数组的特征,可知a<sub>i</sub>+1=b<sub>i</sub>;将第二个分词结果的整型数组中第i个元素至最后一个元素的值减1;若a<sub>i</sub>&gt;b<sub>i</sub>,根据整型数组的特征,可知a<sub>i</sub>=b<sub>i</sub>+1;将第二个分词结果的整型数组中第i个元素至最后一个元素的值加1,然后继续处理第i+1个字符;当a<sub>i</sub>=c<sub>i</sub>时,若p&lt;0.5,则判别第i个字符的位置索引为b<sub>i</sub>;若a<sub>i</sub>&lt;b<sub>i</sub>,根据整型数组的特征,可知a<sub>i</sub>+1=b<sub>i</sub>;将第一个和第三个分词结果的两个整型数组中第i个元素至最后一个元素的值加1;若a<sub>i</sub>&gt;b<sub>i</sub>,根据整型数组的特征,可知a<sub>i</sub>=b<sub>i</sub>+1;将第一个和第三个分词结果的两个整型数组中第i个元素至最后一个元素的值减1;继续处理第i+1个字符;当b<sub>i</sub>=c<sub>i</sub>时,若p≥0.5,则判别第i个字符的位置索引为b<sub>i</sub>;若b<sub>i</sub>&lt;a<sub>i</sub>,根据整型数组的特征,可知b<sub>i</sub>+1=a<sub>i</sub>;将第一个分词结果的整型数组中第i个元素至最后一个元素的值减1;若b<sub>i</sub>&gt;a<sub>i</sub>,根据整型数组的特征,可知b<sub>i</sub>=a<sub>i</sub>+1;将第一个分词结果的整型数组中第i个元素至最后一个元素的值加1,然后继续处理第i+1个字符;当b<sub>i</sub>=c<sub>i</sub>时,若p&lt;0.5,则判别第i个字符的位置索引为a<sub>i</sub>;若b<sub>i</sub>&lt;a<sub>i</sub>,根据整型数组的特征,可知b<sub>i</sub>+1=a<sub>i</sub>;将第二个和第三个分词结果的两个整型数组中第i个元素至最后一个元素的值加1;若b<sub>i</sub>&gt;a<sub>i</sub>,根据整型数组的特征,可知b<sub>i</sub>=a<sub>i</sub>+1;将第二个和第三个分词结果的两个整型数组中第i个元素至最后一个元素的值减1;继续处理第i+1个字符,重复上述过程直至处理完句子中所有字符;步骤四、对未登录词进行识别,具体如下:设k=1,k为整数;第一步,在对句子分词的结果中,从第k个词语开始,分别将连续两个、三个、四个相邻的词语合并为候选未登录词w<sub>1</sub>,w<sub>2</sub>,w<sub>3</sub>;第二步,将候选未登录词作为关键词提交到网络上搜索候选未登录词;第三步,判断候选未登录词是否为有效的未登录词;判断依据是候选未登录词在网络中存在相应的百科页面;具体而言,在网络页面返回结果的超文本标记语言Html源码中&lt;title&gt;标签包含候选未登录词;若w<sub>3</sub>为未登录词,则设置k=k+4,执行第四步,否则判断w<sub>2</sub>是否为未登录词;若w<sub>2</sub>为未登录词,则设置k=k+3,执行第四步,否则判断w<sub>1</sub>是否为未登录词;若w<sub>1</sub>为未登录词,则设置k=k+2,执行第四步,否则设置k=k+1,执行第四步;第四步,若k&lt;n,则返回第一步执行,否则结束循环。
地址 100081 北京市海淀区中关村南大街5号北京理工大学