学会偷懒,并懒出效率

如何在mmseg3添加词库。

一、了解几个文件

ll /opt/modules/mmseg3/etc/
mmseg.ini ————-
uni.lib ————- 编译后的词库,给sphinx 用的
unigram.txt ————- 原词库给人看的, 在这里面人工添加自己的词库

二、添加词条,格式如下

邯郸王队 1 ————- [词条]\t[词频率]
x:1 ————- 占位项x:1即可
工信处 1
x:1
女干事 1
x:1

注意:这里一定要是\t分隔,把词库文件下载下来,然后查看所有字符就知道了,直接vi的话不能copy,要手工输入Tab键

三、重新编译

编译词库:

/opt/modules/mmseg3/bin/mmseg -u unigram.txt         生成这个 unigram.txt.uni 文件,把这个文件重命名为uni.lib,给sphinx 用的即可
mv unigram.txt.uni uni.lib
chmod +x /opt/modules/mmseg3/etc/uni.lib 

/opt/modules/coreseek4.1/bin/searchd --stop           关掉searchd 
/opt/modules/coreseek4.1/bin/searchd                  启动searchd
/opt/modules/coreseek4.1/bin/indexer --all --rotate   生成索引

检查是否生效
/opt/modules/coreseek4.1/bin/search 工信处女干事邯郸王队
words:
1. '工信处': 0 documents, 0 hits
2. '女干事': 0 documents, 0 hits
3. '邯郸王队': 0 documents, 0 hits
说明词库生效了

扩展阅读:
https://www.cnblogs.com/en-heng/p/5872308.html MMSeg是蔡志浩(Chih-Hao Tsai)提出的基于字符串匹配(亦称基于词典)的中文分词算法。
http://ictclas.nlpir.org/nlpir/ 中科院计算所NLPIR
https://www.zhihu.com/question/19578687