美文网首页
新词发现

新词发现

作者: 云彩修建站站长 | 来源:发表于2019-10-08 20:33 被阅读0次

    前言

    先列出来几个概念:

    1. 信息熵:变量的混乱程度,公式\sum_{i=1}^{n}p_ilog(p_i),熵越大表示混乱程度越大。
    2. 互信息:表示两个变量X与Y相关性的强弱,越大表示X和Y的相关性越强。
    3. 点互信息:点互信息表示两个元素相关性的强弱,越大表示两个元素相关性越强,点互信息公式PMI(x:y) = log(\frac{p(x,y)}{p(x)p(y)}) 点互信息加权就是互信息。

    正文

    对于一句话,“你回家了嘛”,会中文的我们知道“回家”是一个词汇,假设我们在不懂中文的情况下,如何从中识别出“回家”这个词呢。
    直观上思考,如果要使“回家”单独成词,那么需要包含如下特征:

    1. 回家 这个词在大规模语料中出现的频次高。
    2. 回|家 必须比较牢固(凝合度够大)。不能是两个没有关系的词,比如“你的”这个词出现的频率很高,但是并不牢固。
    3. 回家 这个词的左边和右边可以有大批组合词(自由度够大)。比如我爱俄罗斯;我不爱吃俄罗斯的食物。

    对于上面这些直观的想法,我们把它转换成数学语言:

    1. 统计在大规模语料中,“回家”这个词出现的频率。
    2. 统计“回家”这个词的点互信息衡量聚合度,这个聚合度要足够大。回家的点互信息公式:PMI(回:家) = log(\frac{p(回家)}{p(回)p(家)})
    3. 统计“回家”左边和右边较小的熵衡量自由度,这个自由度要足够大。比如回家左边跟着一堆的字,这些字的熵是a;右边跟着一堆的字,这些字的熵是b,取min(a,b)作为结果。

    得到了上面三个值:频率,聚合度,自由度。接下来要做的就是根据设定的阈值来进行筛选了。

    下面这个是参考别人的阈值选择:

    具体阈值选择,不同语料会有较大差异。
    网络blog上介绍的经验公式(30M文本,字母 n 表示 n-gram 即相关新词包含的字数):
    词频>200, 凝固度>10^{(n-1)},自由度>1.5
    词频>30, 凝固度>20^{(n-1)}也能发现很多低频的词汇

    相关文章

      网友评论

          本文标题:新词发现

          本文链接:https://www.haomeiwen.com/subject/bfybpctx.html