一种基于词库的动态规划中文分词方法.pdf

上传人:t**** 文档编号:4746219 上传时间:2018-11-05 格式:PDF 页数:7 大小:522.66KB
返回 下载 相关 举报
摘要
申请专利号:

CN201410507974.9

申请日:

2014.09.29

公开号:

CN104252542A

公开日:

2014.12.31

当前法律状态:

驳回

有效性:

无权

法律详情:

发明专利申请公布后的驳回IPC(主分类):G06F 17/30申请公布日:20141231|||实质审查的生效IPC(主分类):G06F 17/30申请日:20140929|||公开

IPC分类号:

G06F17/30; G06F17/27

主分类号:

G06F17/30

申请人:

南京航空航天大学

发明人:

孙珂; 田冰川; 张道强

地址:

210000 江苏省南京市南京航空航天大学将军路校区

优先权:

专利代理机构:

南京钟山专利代理有限公司 32252

代理人:

戴朝荣

PDF下载: PDF下载
内容摘要

一种基于词库的动态规划中文分词方法,其特征在于,包括如下步骤:(1)加载常用中文词库;(2)加载非常用中文词库;(3)读入中文文本,获得当前中文文本内容;(4)对于中文文本进行分句,将中文文本分成一个个短句;(5)进行动态规划中文自动分词;(6)从最后一个词开始扫描,得到分词结果进行词性分析加入词性标注,输出结果;(7)将未登录词存入非常用中文词库;(8)判断文本是否结束;若否,转入步骤(4),进行循环处理。本发明的有益效果为:准确率高、效率快,分词精度可达到与人类类似的水平,分词速度可达到每秒2MB以上。

权利要求书

权利要求书
1.  一种基于词库的动态规划中文分词方法,其特征在于,包括如下步骤:(1)加载常用中文词库;(2)加载非常用中文词库;(3)读入中文文本,获得当前中文文本内容;(4)对于中文文本进行分句,将中文文本分成一个个短句;(5)进行动态规划中文自动分词;寻找第一个词的可能位置,记F[i]表示当前分到第i个字分到的最少词数;对于每个字开始转移,从当前字开始寻找转移,寻找他前一个词;当F[i]<F[j]+1,进行转移,从而存储当前最长的词为结果;(6)从最后一个词开始扫描,得到分词结果进行词性分析加入词性标注,输出结果;(7)将未登录词存入非常用中文词库;(8)判断文本是否结束;若否,转入步骤(4),进行循环处理。

2.  如权利要求1所述的中文分词方法,其特征在于,常用中文词库与非常用词库建立双数组字典树;双数组字典树的数据结构由两个整数数组构成,一个是base[],为词语的地址,一个是check[],为字的hash值;设数组下标为i,如果base[i]、check[i]均为0,表示该位置为空,如果base[i]为负值,表示该状态为词语,check[i]表示该状态的前一状态。

3.  如权利要求2所述的中文分词方法,其特征在于,构建双数组字典树,经过四次遍历,将所有的词语放入双数组中,然后遍历一遍词表,修改base值;用负的base值表示该位置为词语,如果状态i对应某一个词,而且base[i]=0,那么令base[i]=(-1)*i;如果base[i]的值不是0,那么另base[i]=(-1)*base[i]。

说明书

说明书一种基于词库的动态规划中文分词方法
技术领域
本发明涉及中文信息自动处理技术领域,尤其是一种基于词库的动态规划中文分词方法。
背景技术
随着信息时代的到来,中文信息资源越来越多,如何在浩如烟海的中文信息世界中找到自己需要的资料是一个十分重要的课题。由于数据量剧增,手工处理已经变的不太现实。自动化处理方法帮助人们检索、管理信息,来解决现在社会信息丰富而知识贫乏的现状。目前已经出现了很多自动化的工具诸如自动摘要、自动文件检索等语言处理技术,这些技术的一个核心关键是主题词。对于主题词的提取有助于简化此类工作,而如何找到主题词是需要分词技术的。
中文分词是中文文本信息处理中最为关键的预处理,是文本挖掘的基础。中文分词是其他中文信息处理的基础,例如中文搜索引擎、机器翻译、语音合成、自动分类、自动摘要、自动校对等等,都需要用到分词。对于中文分词技术的研究,对于我国中文信息自动处理的发展有着至关重要的作用。
发明内容
本发明所要解决的技术问题在于,提供一种准确率高、速度快的基于词库的动态规划中文分词方法。
为解决上述技术问题,本发明提供一种基于词库的动态规划中文分词方法,包括如下步骤:(1)加载常用中文词库;(2)加载非常用中文词库;(3)读入中文文本,获得当前中文文本内容;(4)对于中文文本进行分句,将中文文本分成一个个短句;(5)进行动态规划中文自动分词;寻找第一个词的可能位置,记F[i]表示当前分到第i个字分到的最少词数;对于每个字开始转移,从当前字开始寻找转移,寻找他前一个词;当F[i]<F[j]+1,进行转移,从而存储当前最长的词为结果;(6)从最后一个词开始扫描,得到分词结果进行词性分析加入词性标注,输出结果;(7)将未登录词存入非常用中文词库;(8)判断文本是否结束;若否,转入步骤(4),进行循环处理。
常用中文词库与非常用词库建立双数组字典树;双数组字典树的数据结构由两个整数数组构成,一个是base[],为词语的地址,一个是check[],为字的hash值;设数组下标为i,如果base[i]、check[i]均为0,表示该位置为空,如果base[i]为负值,表示该状态为词语,check[i]表示该状态的前一状态。
构建双数组字典树,经过四次遍历,将所有的词语放入双数组中,然后遍历一遍词表,修改base值;用负的base值表示该位置为词语,如果状态i对应某一个词,而且base[i]=0,那么令base[i]=(-1)*i;如果base[i]的值不是0,那么另base[i]=(-1)*base[i]。
本发明的有益效果为:准确率高、效率快,分词精度可达到与人类类似的水平,分词速度可达到每秒2MB以上。
附图说明
图1是本发明的基于词库的动态规划中文分词方法的工作流程图。
图2是本发明的双数组字典树数据结构图例。
图3是本发明的双数组字典树中文词库图例。
具体实施方式
为解决上述技术问题,本发明提供一种基于词库的动态规划中文分词方法,包括如下步骤:(1)加载常用中文词库;(2)加载非常用中文词库;(3)读入中文文本;(4)对于中文文本进行分句,将中文文本分成一个个短句;(5)进行动态规划中文自动分词;(6)得到结果进行词性分析加入词性标注;(7)将未登录词存入非常用中文词库;(8)转入步骤(4),进行循环处理。
中文分词:将一个汉字序列切分成一个一个单独的词,分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。中文分词词典:由中文常用词语组成的词典,应该保证该词典占用内存较小且查询速度较快。未登录词:没有被收录在分词词表中但必须切分出来的词,包括各类专有名词(人名、地名、企业名等)、缩写词、新增词汇等。交集型歧义:因为词语交集形成的歧义,如“提高产品质量”,提高、高产、产品、品质、质量等。组合型歧义:同一个字串既可合又可分,如“个人恩怨”中的“个人”就是一个词,“这个人”中的“个人”就必须拆开;“这扇门的把手”中的“把手”就是一个词,“把手抬起来”中的“把手”就必须拆开。
如图1所示,系统首先要读取已经保存的常用中文词库,以及学习而得的非常用中文词库。为了节省内存空间以及保证中文自动分词的效率,对于这两个词典,建立双数组字典树。系统读取需要中文分词的文本,对于文本按标点符号进行分句。分句之后进入中文分词阶段,寻找第一个词的可能位置,用F[i]表示句子到第i个字为止能分到的词数最少的情况。对于每个字开始转移,从当前字开始寻找转移,寻找他前一个词。当F[i]<=F[j],进行转移,从而存储当前最长的词为结果。从最后一个词开始扫描,得到分词结果,并进行词性标注,输出。判断文本是否结束,若没结束,继续将文本按标点分句,循环进行分词的过程。
记F[i]为分词到第i个字所能分成的最少字数,那么F[i]=min(F[i],F[j]+1),i词的最大长度j<i,F[i]=F[j]+1。其中j的枚举顺序是从大到小更新,若F[i]=F[j]+1即更新的话,此时的j是所能更新的最小的一个,可以认为最后一个词尽可能的长,这符合直观的中文分词算法最大匹配法。每一次状态转移都要保证F[i]>F[j]+1,算法一定保证整个句子分出的是最小词数。基于词库的动态规划中文分词方法将两种方法结合到一起,有效的提升了中文分词的效率。
如图2所示,为双数组字典树。双数组字典树是一种特殊的字典树,相较字典树而言,它的空间利用率更高,消耗的内存更小,查询的效率与普通字典树相同。双数组字典树的数据结构由两个整数数组构成,一个是base[],为词语的地址,一个是check[],为字的hash值。设数组下标为i,如果base[i]、check[i]均为0,表示该位置为空。如果base[i]为负值,表示该状态为词语,check[i]表示该状态的前一状态。
双数组字典树构造分词算法词典,假定词表中只有“啊,阿根廷,阿胶,阿拉伯,阿拉伯人,埃及”这几个词。首先对此表中所有出现的10个汉字进行编码,啊-1、阿-2、唉-3、根-4、胶-5、拉-6、及-7、廷-8、伯-9、人-10。对于每一个汉字,需要确定一个base值,使得对于所有以该汉字开头的词,在双数组中都能放下。例如,现在要确定“阿”字的base值,假设以“阿”开头的词的第二个字序列码依次为a1、a2、a3……an,必须找到一个值i,使得base[i+a1]、check[i+a1]、base[i+a2]、check[i+a2]……base[i+an]、check[i+an]均为0。一旦找到了这个i,“阿”的base值就确定为i。
如图3所示,将上述例子构建双数组字典树,经过四次遍历,将所有的词语放入双数组中,然后遍历一遍词表,修改base值。用负的base值表示该位置为词语,如果状态i对应某一个词,而且base[i]=0,那么令base[i]=(-1)*i;如果base[i]的值不是0,那么另base[i]=(-1)*base[i]。
除此之外,还需维护一些特殊词表,例如单独成词的虚词词表,地名词表,人名词表等未登录词表,进一步提升软件的正确率。
这种基于词库的动态规划中文分词方法,在时间复杂度上仍然是线性级别的,对于每个字只需要找到它的前驱,所以时间复杂度非常小。
使用人民日报1998年1月份语料,在与人工正确分词进行比对后,准确率达到了98.8904%,分词速率为2504kb/s。
尽管本发明就优选实施方式进行了示意和描述,但本领域的技术人员应当理解,只要不超出本发明的权利要求所限定的范围,可以对本发明进行各种变化和修改。

一种基于词库的动态规划中文分词方法.pdf_第1页
第1页 / 共7页
一种基于词库的动态规划中文分词方法.pdf_第2页
第2页 / 共7页
一种基于词库的动态规划中文分词方法.pdf_第3页
第3页 / 共7页
点击查看更多>>
资源描述

《一种基于词库的动态规划中文分词方法.pdf》由会员分享,可在线阅读,更多相关《一种基于词库的动态规划中文分词方法.pdf(7页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 104252542 A (43)申请公布日 2014.12.31 CN 104252542 A (21)申请号 201410507974.9 (22)申请日 2014.09.29 G06F 17/30(2006.01) G06F 17/27(2006.01) (71)申请人 南京航空航天大学 地址 210000 江苏省南京市南京航空航天大 学将军路校区 (72)发明人 孙珂 田冰川 张道强 (74)专利代理机构 南京钟山专利代理有限公司 32252 代理人 戴朝荣 (54) 发明名称 一种基于词库的动态规划中文分词方法 (57) 摘要 一种基于词库的动态规划中文分词方。

2、法, 其 特征在于, 包括如下步骤 :(1)加载常用中文词 库 ;(2) 加载非常用中文词库 ;(3) 读入中文文本, 获得当前中文文本内容 ;(4) 对于中文文本进行 分句, 将中文文本分成一个个短句 ;(5) 进行动态 规划中文自动分词 ;(6) 从最后一个词开始扫描, 得到分词结果进行词性分析加入词性标注, 输出 结果 ;(7) 将未登录词存入非常用中文词库 ;(8) 判断文本是否结束 ; 若否, 转入步骤 (4) , 进行循 环处理。本发明的有益效果为 : 准确率高、 效率 快, 分词精度可达到与人类类似的水平, 分词速度 可达到每秒 2MB 以上。 (51)Int.Cl. 权利要求书。

3、 1 页 说明书 3 页 附图 2 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书3页 附图2页 (10)申请公布号 CN 104252542 A CN 104252542 A 1/1 页 2 1. 一种基于词库的动态规划中文分词方法, 其特征在于, 包括如下步骤 :(1) 加载常用 中文词库 ;(2) 加载非常用中文词库 ;(3) 读入中文文本, 获得当前中文文本内容 ;(4) 对于 中文文本进行分句, 将中文文本分成一个个短句 ;(5) 进行动态规划中文自动分词 ; 寻找第 一个词的可能位置, 记Fi表示当前分到第i个字分到的最少词数 ; 对于每个字。

4、开始转移, 从当前字开始寻找转移, 寻找他前一个词 ; 当 FiFj+1, 算法一定保证整个 句子分出的是最小词数。基于词库的动态规划中文分词方法将两种方法结合到一起, 有效 的提升了中文分词的效率。 0016 如图 2 所示, 为双数组字典树。双数组字典树是一种特殊的字典树, 相较字典树而 言, 它的空间利用率更高, 消耗的内存更小, 查询的效率与普通字典树相同。双数组字典树 的数据结构由两个整数数组构成, 一个是 base, 为词语的地址, 一个是 check, 为字的 hash 值。设数组下标为 i, 如果 basei、 checki 均为 0, 表示该位置为空。如果 basei 说 明。

5、 书 CN 104252542 A 4 3/3 页 5 为负值, 表示该状态为词语, checki 表示该状态的前一状态。 0017 双数组字典树构造分词算法词典, 假定词表中只有 “啊, 阿根廷, 阿胶, 阿拉伯, 阿 拉伯人, 埃及” 这几个词。 首先对此表中所有出现的10个汉字进行编码, 啊-1、 阿-2、 唉-3、 根 -4、 胶 -5、 拉 -6、 及 -7、 廷 -8、 伯 -9、 人 -10。对于每一个汉字, 需要确定一个 base 值, 使 得对于所有以该汉字开头的词, 在双数组中都能放下。例如, 现在要确定 “阿” 字的 base 值, 假设以 “阿” 开头的词的第二个字序列。

6、码依次为 a1、 a2、 a3an, 必须找到一个值 i, 使得 basei+a1、 checki+a1、 basei+a2、 checki+a2basei+an、 checki+an 均为 0。一旦找到了这个 i,“阿” 的 base 值就确定为 i。 0018 如图 3 所示, 将上述例子构建双数组字典树, 经过四次遍历, 将所有的词语放入双 数组中, 然后遍历一遍词表, 修改 base 值。用负的 base 值表示该位置为词语, 如果状态 i 对应某一个词, 而且 basei=0, 那么令 basei=(-1) *i ; 如果 basei 的值不是 0, 那么 另 basei=(-1) 。

7、*basei。 0019 除此之外, 还需维护一些特殊词表, 例如单独成词的虚词词表, 地名词表, 人名词 表等未登录词表, 进一步提升软件的正确率。 0020 这种基于词库的动态规划中文分词方法, 在时间复杂度上仍然是线性级别的, 对 于每个字只需要找到它的前驱, 所以时间复杂度非常小。 0021 使用人民日报 1998 年 1 月份语料, 在与人工正确分词进行比对后, 准确率达到了 98.8904%, 分词速率为 2504kb/s。 0022 尽管本发明就优选实施方式进行了示意和描述, 但本领域的技术人员应当理解, 只要不超出本发明的权利要求所限定的范围, 可以对本发明进行各种变化和修改。 说 明 书 CN 104252542 A 5 1/2 页 6 图 1 说 明 书 附 图 CN 104252542 A 6 2/2 页 7 图 2 图 3 说 明 书 附 图 CN 104252542 A 7 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1