博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
伍哥原创之用搜狗细胞词库制作mmseg词典
阅读量:6647 次
发布时间:2019-06-25

本文共 1710 字,大约阅读时间需要 5 分钟。

  hot3.png

【伍哥原创】

1,了解mmseg和libmmseg

MMSeg是一个基于最大匹配算法的两种变体的中文单词识别系统。简单来说就是算法。

LibMMSeg 是Coreseek.com为 Sphinx 全文搜索引擎设计的中文分词软件包,其在GPL协议下发行的中文分词法,采用的MMSEG算法。LibMMSeg 采用C++开发,同时支持Linux平台和Windows平台。

2,mmseg词典

mmseg分词算法是依赖于一个词典。丰富强大的词典决定了分词的质量。由于coreseek安装包自带词典是一般通用的,针对网络零售这个领域,需要补充一些词汇。所以有了制作mmseg词典的需求。

3,用搜狗细胞词库制作mmseg词典

操作的前提是安装好了coreseek(sphinx),请参考伍哥之前的文章。

终于入正题了,首先去搜狗拼音官网下载细胞词库。这里已淘宝专用词库为例,下载地址: 。这里假设你把词库放到了/root/test 目录下面。

接着下载这个python脚本 到/root/test。这个脚本伍哥修改了,可以把scel的细胞词库转成mmseg格式的词典。

然后把coreseek安装目录的unigram.txt复制到/root/test,并改名为unigram_taobao.txt,并清空里面的内容 (其实就是要一个UTF8编码的文件,哎~~)。

现在可以转化了:

python scel2mmseg.py

新的词汇就添加到词典后面了。

然后就用mmseg生成真正的词库uni.lib

/usr/local/mmseg3/bin/mmseg -u unigram_taobao.txt

这时候会产生一个unigram_taobao.txt.uni,把它重命名为uni.lib,这样一个新的词库就制作好了。

4,测试新词库

首先找到searchd的配置文件,查找到词库的路径。比如下面是伍哥测试环境的路径:
charset_dictpath = /usr/local/mmseg3/etc/

然后先把里面的uni.lib备份好,接着把新的uni.lib放到对应的目前里面。

接着就是开测了:

先重新生成索引

/usr/local/coreseek/bin/indexer -c /root/test/coreseek/testpack/etc/ecm_goods.conf --all --rotate

然后搜索一把,查看结果是否正确:

/usr/local/coreseek/bin/search -c /root/test/coreseek/testpack/etc/ecm_goods.conf '海尔冰箱'

Coreseek Fulltext 4.1 [ Sphinx 2.0.2-dev (r2922)]

Copyright (c) 2007-2011,
Beijing Choice Software Technologies Inc (http://www.coreseek.com)

using config file ‘/root/test/coreseek/testpack/etc/ecm_goods.conf’…

index ‘mysql’: query ‘海尔冰箱 ‘: returned 2 matches of 2 total in 0.000 sec

displaying matches:

1. document=302, weight=1708, store_id=100059
id=302
goods_name=海尔冰箱
cate_name=生活电器 大家电 空调
store_id=100059
2. document=324, weight=1708, store_id=100059
id=324
goods_name=海尔冰箱
cate_name=生活电器 大家电 冰箱
store_id=100059

words:

1. ‘海尔冰箱’: 2 documents, 2 hits

转载于:https://my.oschina.net/alexwu/blog/71150

你可能感兴趣的文章
程序员出路在何方
查看>>
linux-alias基本用法
查看>>
compose函数
查看>>
Professional C# 6 and .NET Core 1.0 - Chapter 39 Windows Services
查看>>
C# 6 与 .NET Core 1.0 高级编程 - 40 ASP.NET Core(上)
查看>>
(已解决)Xcode 运行cocos2dx弹出内部错误对话框(Internal Error)
查看>>
J2EE 13规范(2)-JNDI
查看>>
模板维护-模板测试
查看>>
django -- 对模式进行调式(pay with the api)
查看>>
SQL Server sp_configure 控制内存使用
查看>>
通读《构建之法》提出问题
查看>>
VB生成xml
查看>>
左值、左值引用、右值、右值引用
查看>>
中转注入
查看>>
ACM 算法目录
查看>>
android 读取SD卡文件
查看>>
Flatten Binary Tree to Linked List
查看>>
Spring(十二)使用Spring的xml文件配置方式实现AOP
查看>>
开源 java CMS - FreeCMS2.3会员个人资料
查看>>
smack 4.1.2+openfire 3.10.2i
查看>>