词之所以成词,其外部需要有比较丰富的上文和下文,其内部要足够稳固一般不可再分。
针对新词成词的特点, 在实际应用中,我们为每一个备选单词计算了一个分数,表示在当前上下文成为新词的可能性。分数计算公式如下: 分数由三个对应部分组成:
1)点间互信息:点间互信息越高,内部聚合程度越高 ;
2)两个单词片段信息熵 h_r_l 和 h_l_r 的最小值:这个数值越大,则意味着两个单词一起出现的可能性越小;
3)单词左右信息熵的最小值:这个数值越大就表示着候选词出现的语境越多,越有可能成词 因此,分数越高表示成词的可能性越大。
一、新词发现算法基础
本文用到的新词发现基于目前比较成熟的三种特征:词频(freq),凝固度(solid)和自由度(freedeg)。其中词频体现的是候选词出现的次数;凝固度solid=P(w)/P(wi)P(wj)(wi和wj是候选词子词的出现概率)体现的是候选词的子词多大程度上适合组合在一起;自由度freedeg=Max(Entropy(wi), Entropy(wj))体现的是候选词多大程度上适合独立成词。有了这三个特征就可以构建目标词是否是新词的分类器。
整个新词发现的工程实践流程如下:
1.原始语料准备:整理了2000w用户评论语料用于新词发现
2.提取所有的N元字组合:设定N=5,只考虑5个字的成词可能
3.从候选词中过滤已有词库的旧词
4.对每个候选词统计三指标:freq、solid、freedeg
5.训练新词分类器
二、新词分类器
有了三个特征作为输入,就可以训练新词分类器了,这里采用逻辑回归模型,并且分别对三种特征进行了深入分析:
图示是三种特征两两组合的可视化展示图,可以看出freq和solid特征具有强烈的相关性,因此在实际工程实践中可以直接用solid+freedeg作为特征训练模型。
在实践中还有一个小技巧,即在最后的结果里,可以直接基于规则找出存在子词关系的候选词,经验发现结果集中的父词相比其子词更适合成词。
网友评论