基于hanlp的es分词插件


摘要:elasticsearch是使用比较普遍的分布式搜索引擎,es提供了一个的单字分词工具,还有一个分词插件ik使用比较普遍,hanlp是一个天然语言处理包,能更好的根据上下文的语义,人名,地名,组织机构名等来切分词java

Elasticsearchgit

默认分词 github

 图1.jpg

输出: jvm

 图2.jpg

IK分词 elasticsearch

图3.jpg 


输出: 分布式

 图4.jpg

hanlp分词 ide

 图5.jpg

输出: 工具

 图6.jpg

ik分词没有根据句子的含义来分词,hanlp能根据语义正确的切分出词测试

安装步骤: 搜索引擎

一、进入https://github.com/pengcong90/elasticsearch-analysis-hanlp,下载插件并解压到es的plugins目录下,修改analysis-hanlp目录下的hanlp.properties文件,修改root的属性,值为analysis-hanlp下的data

目录的地址

二、修改es config目录下的jvm.options文件,最后一行添加

-Djava.security.policy=../plugins/analysis-hanlp/plugin-security.policy

 

重启es

GET /_analyze?analyzer=hanlp-index&pretty=true

{

“text”:”张柏芝士蛋糕店”

}

测试是否安装成功

analyzer有hanlp-index(索引模式)和hanlp-smart(智能模式)

自定义词典

修改plugins/analysis-hanlp/data/dictionary/custom下的 个人词典.txt文件

格式听从[单词] [词性A] [A的频次]

修改完后删除同目录下的CustomDictionary.txt.bin文件

重启es服务

---------------------

做者:pengcong90

相关文章
相关标签/搜索