Elasticsearch:Shingle过滤器

Elasticsearch 报错 error At least one unigram is required but all tokens were ngrams 【代码】Elasticsearch 报错 error At least one unigram is required but all tokens were ngrams。 阅读详情

Shingle在中文中通常翻译为 “瓦片”。Shingle过滤器在Elasticsearch中是用于创建词汇的组合,类似于n-gram,但针对的是词汇而不是字符。它可以将文本中相邻的词组合在一起,形成更长的词组,这有助于在分析和搜索时捕获词语之间的上下文关系。

功能:

  • 生成Shingles(词组): Shingle过滤器在分词器的结果基础上,将连续的词语组合成指定长度的词组。
  • 可配置的大小: 你可以指定最小和最大的shingle大小(即词组包含的词的数量)。

例子:

假设我们有一句话:“I love ice cream”,并且我们应用了一个设置为min_shingle_size=2和max_shingle_size=3的shingle过滤器。这将产生以下shingles:

  • I
  • I love
  • I love ice
  • love
  • love ice
  • love.ice cream
  • ice
  • ice cream
  • cream

这意味着,除了单独的词(如果分析器配置允许)外,还会生成包含2个和3个连续词的组合。这样,当进行搜索查询时,如果某人搜索“love ice”或者“love ice cream”,即使它们不是完整的独立词,这个shingle过滤器也能帮助文档匹配这些查询。这对于理解文本的上下文特别有用,特别是在处理短语搜索或需要理解词语序列的场景中。

通过这种方式,shingle过滤器增强了Elasticsearch的搜索能力,允许它不仅仅匹配单独的词,也匹配更长的词组,从而提供更丰富和上下文相关的搜索结果。

ES学习记录10.2——ES分析器3(标记过滤器)  作为分析器三大组成部分的另一部分,标记过滤器(token filters)是非必要的。token filters从标记生成器tokenizer那里接受标记输入流,可以用来修改(如将术语转成小写)、删除(如移除段词)或添加(如同义词)token。ES提供给了很多内置的标记过滤器,这些标记过滤器可以在自定义的分析器中使用。 1. 标准标记过滤器(Standard Token Filter)  sta... 阅读详情

相关推荐

ElasticSearch term和match查询机制解析和隐藏的查询问题

2. 关于默认分析使用term查询的问题 之前说过es的默认分析器会讲中文拆分成一个个的单个汉子,搜索条件“内科”会被分析为“内”和“科”,从而进行搜索。而对于搜索我们常用的match搜索类似于数据库的模糊查询,term搜索为精确查询。使用的时候会出现以下情况: 2.1 场景 默认不对索引下的字段进行mapping操作时,使用的是默认分析器,假设有如下数据内容: 内科 内一科 内...

Time_Travel的博客 4335

Elasticsearch: Ngrams, edge ngrams, and shingles

Ngrams 和 edge ngrams 是在 Elasticsearch 中标记文本的两种更独特的方式。 Ngrams是一种将一个标记分成一个单词的每个部分的多个子字符的方法。 ngram和edge ngram过滤器都允许您指定min_gram以及max_gram设置。 这些设置控制单词被分割成的标记的大小。 这可能令人困惑,让我们看一个例子。 假设你想用ngram分析仪分析“spaghetti”这个词,......

Elastic 中国社区官方博客 4561

Zemax实战:20×超高清变焦镜头设计全流程解析(从架构到制造)

本文详细解析了使用Zemax软件设计一款20倍变焦比、恒定F2.8光圈8K超高清镜头的全流程。从应对恒定光圈、宽光谱与8K解析力三大挑战的初始架构规划,到构建多重组态模型、分七阶段进行像差优化与公差分析,最终跨越制造鸿沟,为广播级影视与高精度工业检测应用提供了实战指南。

sun99的博客 552

[Elasticsearch] 邻近匹配 (三) - 性能,关联单词查询以及Shingles

提高性能 短语和邻近度查询比简单的match查询在性能上更昂贵。match查询只是查看词条是否存在于倒排索引(Inverted Index)中,而match_phrase查询则需要计算和比较多个可能重复词条(Multiple possibly repeated)的位置。 在Lucene Nightly Benchmarks中,显示了一个简单的term查询比一个短语查询快大概10倍,比一

不忘初心,好好沉淀 1万+

蛋白质组学实战指南 | (八)从数据到洞见:差异蛋白筛选与功能解析全流程

本文系统阐述了蛋白质组学数据分析中,从原始数据质控到差异蛋白筛选与功能解析的全流程。重点介绍了数据质量评估、差异蛋白筛选的统计方法(包括多重检验校正)、功能注释与富集分析,以及蛋白互作网络构建与关键节点识别。最后,为如何将生物信息学洞见转化为实验验证提供了清晰的规划思路,助力研究者完成从数据到生物学知识的闭环。

weixin_29250573的博客 372

宝塔面板 python管理器2.0安装Mrdoc

自从python管理器从1.9升级2.0后,导致原教程不能使用。 故关于2.0新开教程如下。 关于python管理器2.0 最大的区别在于: python管理器2.0不再需要进入虚拟环境,直接在当前环境进行操作,但是需要指定python路径及pip路径。 1、新建mrdoc工程目录,下载源码: 新建目录【mrdoc】,进入mrdoc目录,并在宝塔ssh或或远程ssh中执行 ,下载源码 git clone https://gitee.com/yang_lite/MrDoc.git .

debj031634的专栏 5998

Elasticsearch:词干、Shingles 和同义词过滤器

分词器生成的分词可能需要进一步丰富或增强,例如小写(或大写)标记、提供同义词、开发词干词、删除撇号或标点符号等。分词过滤器对分词进行处理以执行此类转换。Elasticsearch 提供了将近 50 个分词过滤器,正如你可以想象的那样,在这里讨论所有这些过滤器是不可行的。我已经设法抓住了一些,但请随时参考官方文档以了解其余的分词过滤器。过滤器接受一个分词过滤器数组;例如,我们在此示例中提供了 uppercase 和 reverse 过滤器)。

Elastic 中国社区官方博客 1924

ArcGIS Maps SDK for Unity实战:把真实世界地形‘搬进’游戏场景的保姆级教程

本文详细介绍了如何使用ArcGIS Maps SDK for Unity将真实世界地形导入游戏场景的完整流程。从高程数据获取、TPKX格式转换到Unity中的地形集成与优化,提供了保姆级教程,帮助开发者快速实现高精度地形建模,特别适用于开放世界游戏和数字孪生项目。

weixin_30621465的博客 349

SHINGLE

shingle是指文档中一组邻近的 有序词。基于shingle的算法要求从文档中选取一系列 shingle,然后把shingle映射到Hash表中,一个 shingle对应一个Hash值,最后统计Hash表中相同的shingle比率,作为判定文本相似度依据,比率越高,相 似度越高。    下面就用维基百科的一个浅显例子来讲解shingle算法的原理,这个比较权威。    比如,一个

zhjw1006的专栏 1133

编程小白的自学笔记四(正则表达式模块search函数)

本文仅仅简单介绍了search的使用,供小白学习探讨。

m0_49914128的博客 2323

3D Slicer肺部CT病灶体积测量:阈值法实操全流程

在医学影像分析中,病灶体积的精准测量是肿瘤评估、疗效随访和科研统计的重要基础。传统逐层手动勾画不仅耗时,且主观差异大,而基于CT值的阈值分割技术,通过设定灰度区间自动提取目标体素,能够快速生成三维分割结果,具有高效、可重复、边界标准统一的优势,尤其适用于肺部实性结节这类与周围肺实质对比度高的病灶。理解体素与CT值的关系,掌握阈值范围的设定逻辑,并配合连通域分析、边缘修正等工程化操作,即可在3D Slicer中稳定获得可靠的体积数据。本文从技术原理出发,系统梳理了DICOM导入、窗宽窗位调节、阈值选择、三维重

weixin_29050271的博客 253

什么是ElasticSearch中的过滤器?

在Elasticsearch中,过滤器(Filters)是一种用于在查询中筛选文档的强大工具。过滤器可以根据特定条件来评估文档是否符合搜索查询。这些条件通常应用于字段数据,并根据匹配结果返回符合条件的文档。使用过滤器时,通常将它们与查询语句中的其他部分(如term查询、match查询等)结合使用。Elasticsearch提供了丰富的查询和过滤功能,可以根据具体需求选择适合的过滤器类型。

qq_33240556的博客 877

AI视频生成提示词工程:结构化公式与实战案例详解

在实际使用 AI 生成视频或图像时,最常遇到的困惑是:为什么我的提示词(Prompt)生成的画面总是不理想?是模型能力不足,还是我的描述有问题?答案往往是后者。提示词工程(Prompt Engineering)并非简单的“翻译”需求,而是一门需要结构化思维和精准描述的技能。它决定了 AI 能否准确理解你的意图,并生成符合预期的视觉内容。 本文将通过两个核心案例,深入拆解提示词的构建逻辑。第一个案例聚焦于“文生视频”,我们将学习如何将一个简单的想法,如“小猫在雪地里玩雪球”,通过结构化公式扩展为一段富有细节和

weixin_30800987的博客 565

【ES】Elasticsearch:词干、Shingles 和同义词过滤器

分词器生成的分词可能需要进一步丰富或增强,例如小写(或大写)标记、提供同义词、开发词干词、删除撇号或标点符号等。分词过滤器对分词进行处理以执行此类转换。Elasticsearch 提供了将近 50 个分词过滤器,正如你可以想象的那样,在这里讨论所有这些过滤器是不可行的。我已经设法抓住了一些,但请随时参考官方文档以了解其余的分词过滤器。过滤器接受一个分词过滤器数组;例如,我们在此示例中提供了 uppercase 和 reverse 过滤器)。

DreamSun的博客 1561

2万字长文:海豚调度器(DolphinScheduler)面试题深入了解

DAG图(有向无环图)是海豚调度器中表示工作流任务依赖关系的一种方式。在DolphinScheduler中,每个任务是一个节点,任务之间的依赖关系通过有向边连接这些节点来表示。无环:保证了工作流的执行顺序是确定的,避免了无限循环的问题。有向:箭头指示了任务的执行方向,即上一个任务的输出可以作为下一个任务的输入。依赖表示:通过图形化界面,用户可以通过拖拽连接线来定义任务之间的先后顺序和依赖关系。并行处理:DAG图可以表示出任务的并行关系,允许多个任务在没有直接依赖关系的情况下同时执行。条件分支。

大模型大数据攻城狮的专栏 1333

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Elasticsearch:分词器中的 token 过滤器使用示例

​分词器在 Elasticsearch 的使用中非常重要。分词器中的过滤器可以帮我们对最终的分词进行处理,从而使得我们得到的最终分词会影响存储的大小和搜索的方式。在今天的文章中,我来分享一下一些常用的分词器中的 token 过滤器。更多有关过滤器的内容可以在 Elastic 的官方文档查询。有关更多关于 analyzer 的阅读,请参考我之前的文章 “Elasticsearch: analyzer”。

Elastic 中国社区官方博客 2570

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Elasticsearch:创建一个简单的 “你的意思是?” 推荐搜索

“你的意思是” 是搜索引擎中一个非常重要的功能,因为它们通过显示建议的术语来帮助用户,以便他可以进行更准确的搜索。比如,在百度中,我们进行搜索时,它通常会显示一些更为常用推荐的搜索选项来供我们选择:为了创建 “你的意思是”,我们将使用,因为通过它我们将能够建议句子更正,而不仅仅是术语。在我之前的文章 “”,我有涉及到这个问题。首先,我们将使用一个 shingle 过滤器,因为它将提供一个分词,短语建议器将使用该标记来进行匹配并返回更正。有关 shingle 过滤器的描述,请阅读之前的文章 “

Elastic 中国社区官方博客 953

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

es - elasticsearch 自定义分析器 - 内建分词过滤器 - 11

世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。 自定义分析器 : Character filters :     1. 作用 : 字符的增、删、改转换     2. 数量限制 : 可以有0个或多个     3. 内建字符过滤器 :     &nbs.

我的博客 518

elasticsearch7.x+---搜索建议设计与实现

在7.0+版本中es官方贴心的为我们提供了一个新的字段类型来帮我实现开箱即用的搜索建议功能,官方文档中提到它的工作原理是创建一系列子字段,这些子字段被分析为索引词,可以通过部分匹配整个索引文本值的查询进行有效匹配。在早之前官方也为我们提供了,suggests_completion、suggests_phrase、suggest_term等实现自动补全纠错等功能。

池海 1116

elasticSearch Analysis Token Filters作用及相关样例

1.Standard Token Filterstandard 目前什么都不做;2.ASCII Folding Token Filterasciifolding 类型的词元过滤器,将不在前127个ASCII字符(“基本拉丁文”Unicode块)中的字母,数字和符号Unicode字符转换为ASCII等效项(如果存在)。3.Length Token Filterlength用于去掉过长或者过短的单词;...

wangzhuo0978的专栏 5966

Elasticsearch-通过分析器进行分词

例如,一个字段可以被索引为`text`类型,使用`standard`分析器进行全文搜索,同时也可以被索引为`keyword`类型,使用精确匹配。4. **内置分析器**:Elasticsearch提供了多种内置分析器,如`standard`、`simple`、`whitespace`、`keyword`等,它们适用于不同的文本处理场景。9. **索引时分析器和搜索时分析器**:可以在索引时使用一个分析器,在搜索时使用另一个分析器。10. **分析器的配置**:分析器可以在索引模板或映射中配置。

靡不有初,鲜克有终 594

ES中的分词器

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34342992的博客 749

php 创建es 索引,elasticsearch创建索引时的一些选项问题

我想用elasticsearch为博客的文章做站内搜索,后台用的php。文章表articles的全部字段如下:id title content user_id created_at updated_at现在我想为文章表的title字段、content字段、updated_at字段,共三个字段创建索引。下面是我参照elasticsearch-php客户端的官方文...

weixin_34931370的博客 360

ES中文分词并使用滑动窗口

何谓滑动窗口分词: 比如原句:woods data hadoop 分词后为: woods woods data woods data hadoop data data hadoop hadoop 创建索引,自定义分词方式: 使用ik_smart中文分词,并使用shingle过滤器(滑动窗口模式) put test { "settings": { "index": { "analysis": {

woods的博客 806

elasticSearch之API:文本分词,分词器的使用(中)

书接上文。

秃了也弱了 932

es - elasticsearch 内建分析器 自定义分析器 - 分类总结 - 1

世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。 es内建分析器的学习告一段落,今天做一个总结,希望对大家有所帮助 : 内建分析器 : 1. standard : 标准分析器,根据绝大部分标点分析,并转为小写,中文以字分 2. simple : 简单分析器,根据所有标点分析,并转为小写 3. whitespace : 空格分析器,根据空格分析 4. stop : 停用词分析器,根据所有标点分析,并转为小.

我的博客 663
上一篇: Mac上使用pyenv安装python报错
下一篇: Elasticsearch:reverse过滤器
ken_coding
博客等级 码龄4年 239粉丝 69原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值