pyhanlp用户自定义词典添加

简介:

pyhanlp是python版封装的的HanLP,项目地址:https://github.com/hankcs/pyhanlp

经过测试,HanLP比nltk在中文分词和实体识别方面都更好用。

如何向pyhanlp添加自定义的词典?以python 2.7.9为例:

1.安装pyhanlp:pip install pyhanlp

2.在字典路径下添加自定义的词典:CustomDictionary主词典文本路径是data/dictionary/custom/CustomDictionary.txt,用户可以在此增加自己的词语(不推荐);也可以单独新建一个文本文件,通过配置文件;CustomDictionaryPath=data/dictionary/custom/CustomDictionary.txt; 我的词典.txt;来追加词典(推荐)。

具体绝对路径可用hanlp --version获取:

hanlp --version

jar  1.6.3: /usr/local/lib/python2.7/site-packages/pyhanlp/static/hanlp-1.6.3.jar
data 1.6.2: /usr/local/lib/python2.7/site-packages/pyhanlp/static/data

config    : /usr/local/lib/python2.7/site-packages/pyhanlp/static/hanlp.properties

cat /usr/local/lib/python2.7/site-packages/pyhanlp/static/hanlp.properties | grep "CustomDictionaryPath"

3.建议在该路径下添加自己的词典文件例如 我的词典.txt,并将其加入上面的properties文件里的CustomDictionaryPath下面。

cat 我的词典.txt  

codis集群 nz 1000

今日头条 nz 1000

第一列为词条,第二列为词性(默认为n),第三列为词频

4.然后需要删除缓存文件,这样python才会重新加载新增的文件:

rm -f CustomDictionary.txt.bin

5.测试新增的词典:

python -c "from pyhanlp import *;print(HanLP.segment('codis集群,今日头条'))"

五月 16, 2018 4:43:14 下午 com.hankcs.hanlp.corpus.io.IOUtil readBytes

警告: 读取/usr/local/lib/python2.7/site-packages/pyhanlp/static/data/dictionary/custom/CustomDictionary.txt.bin时发生异常java.io.FileNotFoundException: /usr/local/lib/python2.7/site-packages/pyhanlp/static/data/dictionary/custom/CustomDictionary.txt.bin (没有那个文件或目录)

报这个错误没有关系,只是个warning,重新加载缓存文件而已。

文章来源于明月三千里68的博客

相关文章
|
3月前
|
存储 自然语言处理 数据库
Python字典操作实现文章敏感词检索
Python字典操作实现文章敏感词检索
38 0
|
机器学习/深度学习 存储 自然语言处理
Jieba分词模式详解、词库的添加与删除、自定义词库失败的处理
Jieba(结巴)是一个中文分词第三方库,它可以帮助我们将一段中文文本分成一个个独立的词语。Jieba具有以下特点: 简单易用:Jieba提供了简洁的API接口,易于使用和扩展。可以快速地实现中文分词功能。 高效准确:Jieba采用了基于前缀词典和动态规划算法的分词方法,能够高效准确地处理各种中文文本。 支持多种分词模式:Jieba提供了三种分词模式:精确模式、全模式和搜索引擎模式,可以根据不同的应用场景选择合适的模式。
Jieba分词模式详解、词库的添加与删除、自定义词库失败的处理
|
自然语言处理 搜索推荐 Python
jieba分词器(应用及字典的补充)及文档高频词提取实战
jieba分词器(应用及字典的补充)及文档高频词提取实战
|
自然语言处理 索引
elasticsearch hanlp插件自定义分词配置(停用词)
简述elasticsearch hanlp插件自定义分词配置,涉及停用词,专有名词
elasticsearch hanlp插件自定义分词配置(停用词)
|
自然语言处理 Windows
ik分词器配置自定义词典+追加写入文件
ik分词器配置自定义词典+追加写入文件
ik分词器配置自定义词典+追加写入文件
|
自然语言处理 算法
HanLP用户自定义词典源码分析详解
HanLP作者在HanLP issue783:上面说:词典不等于分词、分词不等于自然语言处理;推荐使用语料而不是词典去修正统计模型。由于分词算法不能将一些“特定领域”的句子分词正确,于是为了纠正分词结果,把想要的分词结果添加到自定义词库中,但最好使用语料来纠正分词的结果。
1730 0
|
自然语言处理
hanlp添加自定义字典的步骤介绍
本篇分享一个hanlp添加自定义字典的方法,供大家参考!总共分为两步:第一步:将自定义的字典放到custom目录下,然后删除CustomDicionary.txt.bin,因为分词的时候会读这个文件。
924 0
|
自然语言处理 应用服务中间件 nginx
hanlp 加载远程词库示例
说明 ·目前的实现方式是以远程词库的内容重新构建CustomDictionary.trie,demo主要是为了实现同步远程词库,对性能暂不作考虑,对性能要求要以CustomDictionary.dat为基础实现 按hanlp作者述 trie后期可能会取消   目前CustomDictionary使用DAT储存词典文件中的词语,用BinTrie储存动态加入的词语,前者性能高,后者性能低 之所以保留动态增删功能,一方面是历史遗留特性,另一方面是调试用;来可能会去掉动态增删特性。
1221 0
|
自然语言处理 分布式计算 Java
Hanlp分词1.7版本在Spark中分布式使用记录
新发布1.7.0版本的hanlp自然语言处理工具包差不多已经有半年时间了,最近也是一直在整理这个新版本hanlp分词工具的相关内容。不过按照当前的整理进度,还需要一段时间再给大家详细分享整理的内容。昨天正好看到的这篇关于关于1.
1642 0
|
自然语言处理
在Hanlp词典手动添加未登录词的方式介绍
在使用Hanlp词典进行分词的时候,会出现分词不准的情况,原因是内置词典中并没有收录当前这个词,也就是我们所说的未登录词,只要把这个词加入到内置词典中就可以解决类似问题,如何操作呢,
1143 0

热门文章

最新文章