jieba与N-gram结合进行新词发现
- 使用jieba作为基础分词组件
- 针对新的文本,利用信息熵进行新词发现
- 使用字典树存储单词和统计词频
- 取TopN作为新词
此方法主要依托互信息和左右信息熵
互信息表示的是两个词的凝聚力,或者说是两个词在一起表示一个可被接收的常用词的概率
左右熵:表示预选词的自由程度,或者说可与其他词搭配组成新词的概率越高,其也就更可能是一个单独的词
左右熵=min(左熵,右熵)
代码实现可参考:https://github.com/zhanzecheng/Chinese_segment_augment
补充:
jieba并行分词,采用Python自带的multiprocessing模块,在Windows下不适用
# 开启并行分词模式,参数为并发执行的进程数
jieba.enable_parallel(5)
santi_words = [x for x in jieba.cut(santi_text) if len(x) >= 2]
# 关闭并行分词模式
jieba.disable_parallel()