• MMSEG 中文算法说明


    MMSeg算法说明

    首先来理解一下chunk,它是MMSeg分词算法中一个关键的概念。Chunk中包含依据上下文分出的一组词和相关的属性,包括长度(Length)、平均长度(Average Length)、标准差的平方(Variance)和自由语素度(Degree OfMorphemic Freedom)。下面列出了这4个属性:

    属性含义长度(Length)chuck中各个词的长度之和平均长度(Average Length)长度(Length)/词数标准差的平方(Variance)同数学中的定义自由语素度(Degree Of Morphemic Freedom)各单字词词频的对数之和

    Chunk中的4个属性只有在需要该属性的值时才进行计算,而且只计算一次。

    其次来理解一下规则(Rule),它是MMSeg分词算法中的又一个关键的概念。实际上我们可以将规则理解为一个过滤器(Filter),过滤掉不符合要求的chunk。MMSeg分词算法中涉及了4个规则:

    规则1:取最大匹配的chunk (Rule 1: Maximum matching)

    规则2:取平均词长最大的chunk (Rule 2: Largest average word length)

    规则3:取词长标准差最小的chunk (Rule 3: Smallest variance of wordlengths)

    规则4:取单字词自由语素度之和最大的chunk (Rule 4: Largest sum of degree ofmorphemic freedom of one-character words)

    这4个规则符合汉语成词的基本习惯。

    再来理解一下匹配方式复杂最大匹配(Complex maximum matching):

    复杂最大匹配先使用规则1来过滤chunks,如果过滤后的结果多于或等于2,则使用规则2继续过滤,否则终止过滤过程。如果使用规则2得到的过滤结果多于或等于2,则使用规则3继续过滤,否则终止过滤过程。如果使用规则3得到的过滤结果多于或等于2,则使用规则4继续过滤,否则终止过滤过程。如果使用规则 4得到的过滤结果多于或等于2,则抛出一个表示歧义的异常,否则终止过滤过程。

    最后通过一个例句--“研究生命起源来简述”一下复杂最大匹配的分词过程。MMSeg分词算法会得到7个chunk,分别为:

    编号chunk长度0研_究_生31研_究_生命42研究_生_命43研究_生命_起54研究_生命_起源65研究生_命_起56研究生_命_起源6

    使用规则1过滤后得到2个chunk,如下:

    编号chunk长度4研究_生命_起源66研究生_命_起源6

    计算平均长度后为:

    编号chunk长度平均长度4研究_生命_起源626研究生_命_起源62

    使用规则2过滤后得到2个chunk,如下:

    编号chunk长度平均长度4研究_生命_起源626研究生_命_起源62

    计算标准差的平方后为:

    编号chunk长度平均长度标准差的平方4研究_生命_起源6206研究生_命_起源624/9

    使用规则3过滤后得到1个chunk,如下:

    编号chunk长度平均长度标准差的平方4研究_生命_起源620

    匹配过程终止。最终取“研究”成词,以相同的方法继续处理“生命起源”。

    分词效果:

    研究_生命_起源_
    研究生_教育_

    参考:http://technology.chtsai.org/mmseg/

         http://www.coreseek.cn/opensource/mmseg/

         什么是方差:http://zhidao.baidu.com/question/130721061.html?fr=qrl&cid=197&index=1&fr2=query

         http://www.cabit.com.cn/help/read.asp?id=93

  • 相关阅读:
    write(byte[] b, int off, int len)
    getAttribute 与getParmeter 区别
    ServletContext
    SercletConfig 详解
    MYSQL导入数据出现ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
    mybatis在xml文件中处理大于号小于号的方法
    阿里云实名认证接口调试
    js encodeuricomponent base64
    Introspector内存溢出的原理解析
    JVM虚拟机工作原理
  • 原文地址:https://www.cnblogs.com/adodo1/p/4327422.html
Copyright © 2020-2023  润新知