基于词典的分词
顾名思义,基于词典的分词就是要有一个词典,分词的过程就是用词典中的词和句子中的词进行比对,然后选出一个最优的切分结果。
显而易见,基于词典的分词必须要维护一个好的词典,且其无法处理未登录词。
最长匹配分词
最长匹配分词指的是使用贪婪算法,从前往后匹配,匹配到最长的字串作为一个词,这种方法一般称为最大正向匹配。
如果是从后往前匹配,也叫做最大反向匹配。
由于汉语组词的多样性,使用最大匹配算法的错误率非常高,而由于汉语词前缀的共性,最大反向匹配的结果要好于最大正向匹配。
最短路径分词/最少词语分词
最短路径分词是在所有的切分过程中选择词语数量最少的分词结果,如果出现词语数量相同的情况,就选择词语长度的方差小的哪个分词结果,所以最短路径分词,又叫做最少词语分词。
为什么把这种分词叫做最短路径分词呢,因为这种分词算法是图的最短路径算法的应用。
我们有一个句子,我们把每个位置当成一个顶点,如果两个位置之间的字串是一个词,那么这两个顶点之间就存在一条边,如果一个顶点没有边和后面的顶点相连,我们就认为其与随后的一个顶点之间存在边,这样,一个句子就变成了一个有向无环图(DAG),于是求最少词语的问题就变成求DAG的最短路径问题了。
全切分词
全切分词是将所有可能的路径都当作结果返回,也就是将上述的DAG中的所有边都当作分词结果返回。
最大概率分词
最大概率分词是最短路径分词的变种,在最短路径中所有边的权重都是1,如果我们把边的权重替换成边对应的词语的概率,把最短路径替换成最大概率路径,分词的算法就变成了最大概率分词了。