ElasticSearch IK分词器的安装、词典扩展与停用

🏷️个人主页:牵着猫散步的鼠鼠 

🏷️系列专栏:云原生与服务部署-专栏

🏷️个人学习笔记,若有缺误,欢迎评论区指正 

目录

​编辑

1. 前言

2. IK分词器安装

3. IK分词器词典扩展与停用

4. 总结


1. 前言

我们在前面文章中完成了ElasticSearch服务的部署,但是ES默认的分词器对中文词语分词效果很不好,每个中文都分成了一个词,所以我们需要安装一个支持中文分词的分词器,我们这里选用IK分词器

2. IK分词器安装

我们这里采用在线安装,操作比较简单

进入到ES容器

docker exec -it es /bin/bash

 在线下载并安装IK分词器,这里最后面的版本号需要与你的ES版本对其,否则无法正常安装

bin/elasticsearch-plugin install https://get.infini.cloud/elasticsearch/analysis-ik/7.17.21

 退出容器,重启ES容器

#退出
exit
#重启容器
docker restart elasticsearch

在Kibana Dev tool中测试IK分词器:

IK分词器包含两种模式:ik_smart最小切分,和ik_max最细切分,ik_max模式会将词语切分得更细

GET /_analyze
{"analyzer": "ik_max_word","text": "IK分词器测试"
}GET /_analyze
{"analyzer": "ik_smart","text": "IK分词器测试"
}

3. IK分词器词典扩展与停用

随着网络的发展,各种网络梗层出不穷,出现了很多新的词语,在原有的词汇列表中并不存在。比如:“白嫖”,“开摆”,“乐子人”  等。

IK分词器提供了扩展词汇和停用词汇的功能,我们接下来接着扩展IK分词器

编辑IK分词器配置文件/local/es-config/config/analysis-ik/IKAnalyzer.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties><comment>IK Analyzer 扩展配置</comment><!--用户可以在这里配置自己的扩展字典 --><entry key="ext_dict">ext.dic</entry><!--用户可以在这里配置自己的扩展停止词字典--><entry key="ext_stopwords">stop.dic</entry><!--用户可以在这里配置远程扩展字典 --><!-- <entry key="remote_ext_dict">words_location</entry> --><!--用户可以在这里配置远程扩展停止词字典--><!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties>

同目录下新建ext.dic,添加需要扩展的词汇

同目录新建stop.dic文件,添加需要停用的词汇,比如语气词

 重启ES容器

docker restart es

测试分词,可以看到”牵着猫散步的鼠鼠“被成功分词

4. 总结

ES默认的分词器对中文词语分词效果很不好,每个中文都分成了一个词,所以我们需要安装一个支持中文分词的分词器,使用较多的就是IK分词器。此外我们可以通过修改配置来实现对分词器词典的扩展和停用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/14053.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

汽车整车检测的原由(北重试验平台制造厂家)

汽车整车检测是指对整车系统和构造各部分的性能、可靠性、安全性等方面进行全面检查和评估的过程。它是在汽车生产制造和销售使用环节中&#xff0c;为了保障驾驶安全和质量而必不可少的一项检测和评估工作。 1. 提升行车安全 汽车整车检测能够全面评估车辆的性能和安全性&…

音视频-常用的分析工具介绍-连续补充

目录 1&#xff1a;Audacity 2&#xff1a;MediaInfo 3&#xff1a;MP4Box 4&#xff1a;hexinator 5&#xff1a;Adobe Audition 6&#xff1a;VideoEye 7&#xff1a;YUVplayer &#xff08;YUV/RGB播放器&#xff09; 在做音视频分析时&#xff0c;经常用到各种分析工…

【无标题】思科交换路由中路由引入实验指南

路由引入是网络设计中的一个重要概念&#xff0c;它允许不同路由协议之间的路由信息交换。在思科网络设备中&#xff0c;路由引入可以增强网络的连通性和效率。本文将介绍路由引入的基本概念&#xff0c;并通过一个实验来演示如何在思科路由器中实现路由引入。 ## 路由引入的基…

头歌05-子集树实验-01背包

""" 题目&#xff1a;有n个重量分别为w{w_1,w_2,…,w_n}的物品&#xff0c;他们的价值分别为v{v_1,v_2,…,v_n}&#xff0c;给定一个容量为G的背包。 设计从这些物品中选取一部分物品放入该背包的方案&#xff0c;每个物品要么选中要么不选中&#xff0c;要求选…

读书笔记整理

1.对天才而言&#xff0c;任何努力都如做游戏般容易和有趣&#xff0c;兴趣是发展的原动力。从这个角度来看&#xff0c;通过普通人的劳动是无法创造天才的。 2.让孩子理解语法是很困难的。苦背不如练才是行之有效的办法。孩子们永远是故事迷&#xff0c;在教孩子们外语时&…

sqlserver查看正在执行的语句,锁,内存,cpu占用多等

sqlserver查看正在执行的语句 SELECT [Spid] session_Id ,ecid ,[Database] DB_NAME(sp.dbid) ,[User] nt_username ,[Status] er.STATUS ,[Wait] wait_type ,[Individual Query] SUBSTRING(qt.TEXT, er.statement_start_offset / 2, ( CASE WHEN er.statement_end_offs…

【有手就行】使用你自己的声音做语音合成,CPU都能跑,亲测有效

此文介绍在百度飞桨上一个公开的案例&#xff0c;亲测有效。 厌倦了前篇一律的TTS音色了吗&#xff1f;打开短视频听来听去就是那几个声音&#xff0c;快来试试使用你自己的声音来做语音合成吧&#xff01;本教程非常简单&#xff0c;只需要你能够上传自己的音频数据就可以(建议…

OpenLayers中实现对ImageStatic图层的扩展以支持平铺WrapX功能

地图平铺技术概述 地图平铺&#xff08;Tiling&#xff09;是一种将大尺寸地图数据分割成小块&#xff08;瓦片&#xff09;的技术&#xff0c;这在地图服务中非常常见。它使得地图数据能高效加载和展示&#xff0c;尤其适合网络环境。通过仅加载当前视图窗口所需的地图瓦片&a…

Spring Boot Web 开发:MyBatis、数据库连接池、环境配置与 Lombok 全面解析

推荐一个AI网站&#xff0c;免费使用豆包AI模型&#xff0c;快去白嫖&#x1f449;海鲸AI 1.0 MyBatis 概述 MyBatis 是一个优秀的持久层框架&#xff0c;它支持自定义 SQL、存储过程以及高级映射。MyBatis 可以帮助我们将数据库操作抽象出来&#xff0c;使得我们的代码更加简洁…

SERVER ——查询(二)

目录 5. top 6. null 7. order by 8. 模糊查询&#xff1a; 9. 聚合函数 5. top top查询&#xff1a;查询表的前几行&#xff1b;下面是代码演示&#xff1a; --top&#xff08;前面的几个记录&#xff09; select top 2 * from emp; --查询表的前两列 select top 20 percent *…

Altium Designer 软件下载与安装

AD学习之旅&#xff08;1&#xff09;— Altium Designer 20 软件下载与安装 一、前言 本次软件安装参考自&#xff1a;Altium Designer 20 AD20软件安装详解教程 凡亿 Altium公司推荐的系统配置如下&#xff1a; 64位操作系统&#xff0c;不支持32位系统&#xff1b;Windows …

MoonDream2微调指南【最小VLM】

在本指南中&#xff0c;我们将探讨如何使用计算机视觉数据集对完全开源的小型视觉语言模型 Moondream2 进行微调&#xff0c;以计数项目&#xff08;这是 GPT-4V 一直表现不一致的任务&#xff09;&#xff0c;并以一种可以依赖输出用于生产应用程序的方式进行微调。 视觉语言…

FFmpeg操作命令 - 精简版

PS&#xff1a;&#xff08;因为我只需要简单的操作&#xff0c;所以我整理出了这份笔记&#xff09; 原网址&#xff1a;30分钟带你入门&#xff0c;20个 FFmpeg操作命令&#xff0c;包你学会 - 知乎 大佬零声Github整理库整理的笔记非常的全面&#xff0c;想看完整版去上面…

求二叉树的最大深度(oJ题)

一、题目链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 二、题目思路 如果结点为空&#xff0c;则返回0。否则该树的深度为 :左子树 和右子树 中深度大的那个再加上1&#xff0c;依次类推&#xff0c;递归下去 三、题目代码 //树的深度计算方法是: 左子树 和…

MySql:多表设计-关联查询

目录 多表设计 代码 运行 数据库设计范式 设计三范式 1、第一范式&#xff1a; 2、第二范式&#xff1a; 3、第三范式&#xff1a; 多表设计_关联查询 外键 外键约束 代码 运行 注意&#xff1a; 应用 代码 运行 代码 运行 关联查询 含义&#xff1a; …

「动态规划」下降路径最小和

力扣原题链接&#xff0c;点击跳转。 有一个nn的方阵matrix。从这个矩阵的最上面那一行的某一个元素开始&#xff0c;下降到最下面那一行的某一个元素。每次只能走到左下方、正下方和右下方这三者之一&#xff0c;也就是说&#xff0c;从(i,j)只能到达(i1,j-1)、(i1,j)和(i1,j…

Unity修改Project下的Assets的子文件的图标

Unity修改文件夹的图标 示例&#xff1a; 在右键可以创建指定文件夹。 github链接 https://github.com/SeaeeesSan/SimpleFolderIconCSDN资源的链接 https://download.csdn.net/download/GoodCooking/89347361 去GitHub下载支持原作者哦。重要的事情 截图来自GitHub 。 U…

【高阶数据结构】跳表

文章目录 跳表1. 什么是跳表-skiplist2. skiplist的效率如何保证&#xff1f;3.skiplist的实现4.skiplist跟平衡搜索树和哈希表的对比 跳表 1. 什么是跳表-skiplist skiplist本质上也是一种查找结构&#xff0c;用于解决算法中的查找问题&#xff0c;跟平衡搜索树和哈希表的价…

Docker安装MongoDB(Linux版)

文章目录 前言一、Docker环境的准备1.安装依赖2.安装Docker 二、使用Docker安装MongoDB1.mongo版本选取2.拉取合适的镜像3.宿主机创建MongoDB需要挂载的文件夹4.第一次无认证创建mongo用户5.启动需要认证的mongo容器 问题汇总总结 前言 本文章主要介绍在Centos系统&#xff0c…

java中的TreeMap类和Hashtable类+Map集合遍历+集合小结

一、TreeMap类 实现了Map接口&#xff0c;元素为键值对、键不可重复、值可重复 特点&#xff1a;可排序 要求&#xff1a;Key类必须实现Comparable接口 底层结构&#xff1a;红黑树 1、可排序 2、常用方法 与HashMap一致 二、Hashtable类 实现了Map接口&#xff0c;元素…