【ElasticSearch】IK分词器中停用词问题

问题描述

在ES中进行部分关键词搜索时,搜索无结果,如搜索 【IT】

环境描述

中文分词插件

这里使用的是 analysis-ik

分词调试

POST test_index/_analyze
{"text":"IT Manager","analyzer": "ik_max_word"
}

分词结果,分词结果中不包含IT

{"tokens": [{"token": "manager","start_offset": 3,"end_offset": 10,"type": "ENGLISH","position": 0}]
}

原因分析

根据项目:lucene
我们可以看到在 cjk(中文、日文和韩文)目录下的停用词中,包含了该停用词,从而导致索引中不会包含该停用词。
在这里插入图片描述
项目:https://github.com/infinilabs/analysis-ik 中的停用词,extra_stopword.dic
在这里插入图片描述

解决方案

在实践过程中,我们通过自定义stopword的方式(如下定义),无法解决该问题

{"settings": {"analysis": {"filter": {"chinese_stop": {"type":       "stop","stopwords":  [] }},"analyzer": {"ik_max_word_custom": {"type":       "custom","tokenizer":  "ik_max_word","filter": ["chinese_stop"]}}}}
}

方案一:
在配置文件中移除相应的停用词
在这里插入图片描述
该方式效果如下:
分词请求:

POST test_index/_analyze
{"text":"IT Manager","analyzer": "ik_max_word"
}

分词结果:

{"tokens": [{"token": "it","start_offset": 0,"end_offset": 2,"type": "ENGLISH","position": 0},{"token": "manager","start_offset": 3,"end_offset": 10,"type": "ENGLISH","position": 1}]
}

方案二:
我们可以将对应的字段使用standard分词器存储到另一个字段,如 field.en ,在匹配的时候,两个字段同时进行匹配即可
值得注意的是,这里我们不能去使用english的分词器,一个是因为 english 中也会过滤掉一些停用词,如这里的【IT】,另外其还会自动索引为词根。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Spring Security基础教程:从入门到实战

作者介绍:✌️大厂全栈码农|毕设实战开发,专注于大学生项目实战开发、讲解和毕业答疑辅导。 推荐订阅精彩专栏 👇🏻 避免错过下次更新 Springboot项目精选实战案例 更多项目:CSDN主页YAML墨韵 学如逆水行舟&#xff0c…

S型曲线的几种设计(图像对比度调节)

一般来讲,图像调色模块都会提供“曲线”工具,这是一个极其灵活的功能,绝大部分的调色都可以通过该工具实现,但是曲线功能的交互相对而言比较复杂。出于简便性和效率方面的考量,调色模块往往还会提供一些具有很强的功能…

初识C语言——第十四天

指针 总结:指针变量是用来干啥的呢,一是用来存放别人的地址的,指针是有类型的,这个类型是如何写的;二是当我有一天通过*(解引用符)找到我所要找的对象,来操作所指向的对象。 #define _CRT_SECUR…

Three.js的几何形状

在创建物体的时候,需要传入两个参数,一个是几何形状【Geometry】,一个是材质【Material】 几何形状主要是存储一个物体的顶点信息,在Three中可以通过指定一些特征来创建几何形状,比如使用半径来创建一个球体。 立方体…

VS2022快捷键修改

VS2022快捷键修改 VS2022快捷键修改 VS2022快捷键修改

芸众商城电商专业版400+插件源码+搭建教程

介绍: 芸众商城社交电商系统SAAS平台前端基于vue开发,后端基于研发积分商城系统源码 php,本文安装芸众商城全插件(400多个)商业版平台源码,可同时支持多端口部署运行;使用宝塔面板一键部署的形…

2022 年全国职业院校技能大赛高职组云计算赛项试卷(私有云)

#需要资源(软件包及镜像)或有问题的,可私聊博主!!! #需要资源(软件包及镜像)或有问题的,可私聊博主!!! #需要资源(软件包…

docker部署常用工具

1.创建mysql docker run -p 3306:3306 --name mysql -v /home/mysql/conf:/etc/mysql/mysql.conf.d -v /home/mysql/log:/var/log/ -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD2022qwer -d mysql:5.7 而后再执行升级: docker update --restar…

React中的高阶组件的封装,高阶函数,HOC的含义及用法:

含义及作用: 高阶函数代码案例: 调用高阶组价:

CP AUTOSAR之CANXL Driver详细说明(正在更新中)

本文遵循autosar标准:R22-11 1 简介及功能概述 本规范描述了AUTOSAR 基础软件模块CAN XL 驱动程序的功能、API和配置。   本文档的基础是[1,CiA610-1]和[2,CiA611-1]。假设读者熟悉这些规范。本文档不会再次描述CAN XL 功能。   CAN XL 驱动程序是最低层的一部…

算法提高之玉米田

算法提高之玉米田 核心思想&#xff1a;状态压缩dp 将图存入g数组 存的时候01交换一下方便后面判断即g数组中0为可以放的地方 state中1为放的地方 这样只要state为1 g为0就可以判断不合法 #include <iostream>#include <cstring>#include <algorithm>#includ…

Read timed out. (python 安装第三方库超时)

不少人在安装python第三方库的时候经常发生下面情况 解决方法就是往上找 我这里就是 jupyterlab-4.1.8-py3-none-any.whl安装时间过长&#xff0c;失败 那就去国内镜像网站下载下来离线安装 https://pypi.tuna.tsinghua.edu.cn/simple/xxx&#xff08;xxx就是你的包名&#…

Linux内核之获取文件系统超级块:sget用法实例(六十八)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

【Linux 命令操作】如何在 Linux 中使用多行注释呢?

文章目录 1. 给代码进行多行注释2. 给代码取消多行注释 1. 给代码进行多行注释 &#x1f427;① 首先用 vim 打开代码&#xff0c;按 Esc进入命令模式(Normal mode)&#xff1b; &#x1f427;② 然后按住 ctrl v 进入列模式&#xff1b; &#x1f427;③ 再通过按 h(左)、j(…

PHP 匿名函数和闭包在数据结构中的应用

匿名函数和闭包在数据结构处理中的应用php 中的匿名函数和闭包可用于处理数组、链表和队列等数据结构。针对数组&#xff0c;匿名函数可用于过滤元素&#xff1b;针对链表&#xff0c;闭包可用于创建节点&#xff1b;针对队列&#xff0c;匿名函数和闭包可实现 fifo 队列操作。…

数仓分层——ODS、DW、ADS

一、什么是数仓分层 数据仓库分层是一种组织和管理数据仓库的结构化方法&#xff0c;它将数据仓库划分为不同的层次或级别&#xff0c;每个层次具有特定的功能和目的。这种分层方法有助于管理数据仓库中的数据流程、数据处理和数据访问&#xff0c;并提供一种清晰的结构来支持…

NVIDIA_SMI has failed because it couldn’t communicate with the NVIDIA driver

参考&#xff1a;https://www.zhihu.com/question/474222642/answer/3127013936 https://blog.csdn.net/ZhouDevin/article/details/128265656 nvidia-smi查看报错&#xff0c;nvcc正常 1&#xff09;查看nvidia版本 ls /usr/src | grep nvidia nvidia-550.78 2&#xff09;…

【大模型】LLaMA-1 模型介绍

文章目录 一、背景介绍二、模型介绍2.1 模型结构2.2 模型超参数2.3 SwiGLU 三、代码分析3.1 模型结构代码3.2 FairScale库介绍 四、LLaMA家族模型4.1 Alpaca4.2 Vicuna4.3 Koala(考拉)4.4 Baize (白泽)4.5 Luotuo (骆驼&#xff0c;Chinese)4.6 其他 参考资料 LLaMA&#xff08…

自动化运维管理工具----------Ansible模块详细解读

目录 一、自动化运维工具有哪些&#xff1f; 1.1Chef 1.2puppet 1.3Saltstack 二、Ansible介绍 2.1Ansible简介 2.2Ansible特点 2.3Ansible工作原理及流程 2.3.1内部流程 2.3.2外部流程 三、Ansible部署 3.1环境准备 3.2管理端安装 ansible 3.3Ansible相关文件 …

【算法】数字接龙 走迷宫问题的一般处理思路

前言 其实走迷宫就是一个普普通通的深搜回溯嘛&#xff0c;但是我之前做的很多题都是在一个二维的地图上&#xff0c;只能上下左右四个方向走迷宫&#xff0c;在做数字接龙这道题的时候&#xff0c;相当于可以往8个方向走&#xff0c;虽然逻辑上不变&#xff0c;但按照我之前的…