分词算法整理

分词

1.基于词典

基于词典的分词方法,这种方法又叫做机械分词方法,它是按照一定的策略将待分析的汉字串与一个充分大的机器词典中的词条进行匹配,若在词典中找到某个字符串,则匹配成功(识别出一个词) 。常用的方法:最小匹配算法(Minimum Matching),正向(逆向)最大匹配法(Maximum Matching),逐字匹配算法,神经网络法、联想一回溯法,基于N-最短路径分词算法,以及可以相互组合,例如,可以将正向最大匹配方法和逆向最大匹配方法结合起来构成双向匹配法等。目前机械式分词占主流地位的是正向最大匹配法和逆向最大匹配法。 

1.1基于匹配

1.1.1最小匹配(不再采用)

在所有的分词算法中,最早研究的是最小匹配算法(Minimum Matching),该算法从待比较字符串左边开始比较,先取前两个字符组成的字段与词典中的词进行比较,如果词典中有该词,则分出此词,继续从第三个字符开始取两个字符组成的字段进行比较,如果没有匹配到,则取前3个字符串组成的字段进行比较,依次类推,直到取的字符串的长度等于预先设定的阈值,如果还没有匹配成功,则从待处理字串的第二个字符开始比较,如此循环。

例如,如果还没有匹配成功,取出左边两个字组成的字段与词典进行比较,分出如果;再从开始,取还没,字典中没有此词,继续取还没有,依次取到字段还没有匹配”(假设阈值为 5),然后从开始,取没有,如此循环直到字符串末尾为止。这种方法的优点是速度快,但是准确率却不是很高,比如待处理字符串为中华人民共和国,此匹配算法分出的结果为:中华、人民、共和国,因此该方法基本上已经不被采用。

1.1.2最大匹配

基于字符串的最大匹配,这种方法现在仍比较常用。最大匹配(Maximum Matching)分为正向和逆向两种最大匹配,正向匹配的基本思想是:假设词典中最大词条所含的汉字个数为n个,取待处理字符串的前n个字作为匹配字段,查找分词词典。若词典中含有该词,则匹配成功,分出该词,然后从被比较字符串的n+1处开始再取n个字组成的字段重新在词典中匹配;如果没有匹配成功,则将这n个字组成的字段的最后一位剔除,用剩下的n1个字组成的字段在词典中进行匹配,如此进行下去,直到切分成功为止。

例如,待处理字符串为汉字多为表意文字,取字符串汉语多为表”(假设比较的步长为5,本文步长step都取5)与词典进行比较,没有与之对应的词,去除字,用字段汉语多为进行匹配,直至匹配到汉语为至,再取字符串多为表意,循环到切分出文字一词。目前,正向最大匹配方法作为一种基本的方法已被肯定下来,但是由于错误比较大,一般不单独使用。如字符串处理机器发生的故障,在正向最大匹配方法中会出现歧义切分,该字符串被分为:处理机、发生、故障,但是使用逆向匹配就能得到有效的切分。

    逆向最大匹配RMM(Reverse Directional Maximum Matching Method)的分词原理和过程与正向最大匹配相似,区别在于前者从文章或者句子(字串)的末尾开始切分,若不成功则减去最前面的一个字。比如对于字符串处理机器发生的故障,第一步,从字串的右边取长度以步长为单位的字段发生的故障在词典中进行匹配,匹配不成功,再取字段生的故障进行匹配,依次匹配,直到分出故障一词,最终使用RMM方法切分的结果为:故障、发生、机器、处理。该方法要求配备逆序词典。

 

    一般来说根据汉语词汇构成的特点,从理论上说明了逆向匹配的精确度高于正向匹配,汉语语句的特点一般中心语偏后。有研究数据,单纯使用正向最大匹配的错误率为1/ 169 ,单纯使用逆向最大匹配的错误率为1/245。实际应用中可以从下面几方面改进,同时采取几种分词算法,来提高正确率;改进扫描方式,称为特征扫描或标志切分,优先在待分析字符串中识别和切分出一些带有明显特征的词,以这些词作为断点,可将原字符串分为较小的串再来进机械分词,从而减少匹配的错误率等。

1.1.2.1正向最大匹配

将待分析的文本和一个充分大的词典中的词条进行匹配方向从左向右

1.1.2.2逆向最大匹配

将待分析的文本和一个充分大的词典中的词条进行匹配方向从右向左对汉语,逆向最大匹配比正向最大匹配更有效

1.1.3双向匹配

对比正向最大匹配和逆向最大匹配的结果,从而决定正确的分词

1.1.4逐字匹配

逐字匹配算法,基于TRIE索引树的逐字匹配算法,是建立在树型词典机制上,匹配的过程是从索引树的根结点依次同步匹配待查词中的每个字,可以看成是对树某一分枝的遍历。因此,采用该算法的分词速度较快,但树的构造和维护比较复杂。一种改进的算法是和最大匹配算法相结合,吸取最大匹配算法词典结构简单、 TRIE索引树算法查询速度快的优点。因此词典结构和最大匹配词典构造机制相似,区别在于词典正文前增加了多级索引。匹配过程类似TRIE索引树进行逐字匹配,在性能上和TRIE索引树相近。

1.2神经网络

神经网络分词算法,尹峰等提出了以神经网络理论(BP模型)为基础的汉语分词模型,为汉语分词研究开辟了新途径。在实用中,BP算法存在收敛速度慢、易陷入局部最小等缺点,严重妨碍了分词速度。一种改进算法采用Levenbery2Marquart 算法来加速收敛速度,加快了收敛速度利用神经网络的基本原理进行分词。

1.3最佳匹配

将词典中的单词按照它们在文本中出现的频度大小排列,高频的单词排在前面,低频的排在后面,从而提高匹配速度

 

 

1.4联想-回溯

   联想回溯法(AssociationBacktracking Method,简称 AB )。这种方法要求建立三个知识库——特征词词库、实词词库和规则库。首先将待切分的汉字字符串序列按特征词词库分割为若干子串,子串可以是词,也可以是由几个词组合而成的词群;然后,再利用实词词库和规则库将词群再细分为词。切词时,要利用一定的语法知识,建立联想机制和回溯机制。联想机制由联想网络和联想推理构成,联想网络描述每个虚词的构词能力,联想推理利用相应的联想网络来判定所描述的虚词究竟是单独成词还是作为其他词中的构词成分。回溯机制主要用于处理歧义句子的切分。联想回溯法虽然增加了算法的时间复杂度和空间复杂度,但这种方法的切词正确率较高,是一种行之有效的方法。

1.5N-最段路径分词算法

基于N-最短路径分词算法,其基本思想是根据词典,找出字串中所有可能的词,构造词语切分有向无环图。每个词对应图中的一条有向边,并赋给相应的边长(权值)。然后针对该切分图,在起点到终点的所有路径中,求出长度值按严格升序排列(任何两个不同位置上的值一定不等,下同)依次为第1,第2,第 i,第N的路径集合作为相应的粗分结果集。如果两条或两条以上路径长度相等,那么他们的长度并列第 i,都要列入粗分结果集,而且不影响其他路径的排列序号,最后的粗分结果集合大小大于或等于NN一最短路径方法实际上是最短路径方法和全切分的有机结合。该方法的出发点是尽量减少切分出来的词数,这和最短路径分词方法是完全一致的;同时又要尽可能的包含最终结果,这和全切分的思想是共通的。通过这种综合,一方面避免了最短路径分词方法大量舍弃正确结果的可能,另一方面又大大解决了全切分搜索空间过大,运行效率差的弊端。N一最短路径方法相对的不足就是粗分结果不唯一,后续过程需要处理多个粗分结果。但是,对于预处理过程来讲,粗分结果的高召回率至关重要。因为低召回率就意味着没有办法再作后续的补救措施。预处理一旦出错,后续处理只能是一错再错,基本上得不到正确的最终结果。而少量的粗分结果对后续过程的运行效率影响不会太大,后续处理可以进一步优选排错,如词性标注、句法分析等。

 

1.6最大概率

1)一个待切分的汉字串可能包含多种分词结果

2)将其中概率最大的那个作为该字串的分词结果

1.7最短路径

基本思想:在词图上选择一条词数最少的路径

优点:好于单向的最大匹配方法

最大匹配:独立自主/和平//互利//原则(6)

最短路径:独立自主//平等互利//原则(5)

缺点:同样无法解决大部分歧义

1.2基于统计

基于统计的分词方法,基于统计的方法是基于(两个或多个) 汉字同时出现的概率,通过对语料库(经过处理的大量领域文本的集合)中的文本进行有监督或无监督的学习.可以获取该类文本的某些整体特征或规律。如果能够充分地利用这些统计现象、规律.就可以构造基于语料库的统计学信息抽取算法统计的分析方法多种多样.近来研究的热点主要集中于由随机过程发展而来的理论和方法,其中最重要的是应用隐马尔科夫模型(HMM) 进行自然语言处理的方法。隐马尔科夫模型,在语音识别领域已经取得了很好的成效,在信息抽取领域的应用也正在不断的尝试和推广中。

 

 

支持向量机(SVM

最大熵(Maximum Entropy

隐马模型(HMM

最大熵隐马模型(MEMM

条件随机场(CRFs

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值