由于elasticSearch版本更新频繁,此笔记适用ES版本为 7.10.2此笔记摘录自《Elasticsearch搜索引擎构建入门与实战》第一版文中涉及代码适用于kibana开发工具,其他如es-head则语法会不太相同elasticSearch学习笔记03-分词es的分词功能十分强大且复杂,此篇来详细了解此篇不适合小白入门,不对分词基本概念做过多解释1.测试分词器先测试standard分词器
转载
2023-12-31 15:46:57
87阅读
ElasticSearch1、ElasticSearch学习随笔之基础介绍 2、ElasticSearch学习随笔之简单操作 3、ElasticSearch学习随笔之java api 操作 4、ElasticSearch学习随笔之SpringBoot Starter 操作 5、ElasticSearch学习随笔之嵌套操作 6、ElasticSearch学习随笔之分词算法 7、ElasticSear
转载
2024-08-09 15:55:37
14阅读
官方文档位置:https://www.elastic.co/guide/en/elasticsearch/reference/7.5/analysis.html分词分词是指将文本转化成一系列的单词(term or token)的过程,也可以叫文本分析 es里称之为Analysis分词器分词器是es中专门处理分词的组件,英文为Analyzer ,它的组成如下:Character Filters针对原
转载
2024-03-22 13:45:27
103阅读
最近高产似母猪,写了个基于AP的中文分词器,在Bakeoff-05的MSR语料上F值有96.11%。最重要的是,只训练了5个迭代;包含语料加载等IO操作在内,整个训练一共才花费23秒。应用裁剪算法去掉模型中80%的特征后,F值才下降不到0.1个百分点,体积控制在11兆。如果训练一百个迭代,F值可达到96.31%,训练时间两分多钟。数据在一台普通的IBM兼容机上得到:head /proc/
转载
2024-08-08 10:57:26
24阅读
1、es分词:分词是将文本转换成一系列单词的过程,也可以叫文本分析,在ES里面称为Analysis;2、分词器:分词器是ES中专门处理分词的组件,英文为Analyzer,它的组成如下: character filter:字符过滤器,对文本进行字符过滤处理,如处理文本中的html标签字符。处理完后再交给tokenizer进行分词。一个analyzer中可包含0个或多个字符过滤器,多个按配置顺序依次进
转载
2023-09-12 16:52:09
110阅读
引入依赖<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version
转载
2024-06-28 14:11:18
49阅读
前言我们在对英文句子分词的时候,一般采用采用的分词器是WhiteSpaceTokenizerFactory,有一次因业务要求,需要根据某一个特殊字符(以逗号分词,以竖线分词)分词。感觉这种需求可能与WhiteSpaceTokenizerFactory相像,于是自己根据Solr源码自定义了分词策略。业务场景有一次,我拿到的数据都是以竖线“|”分隔,分词的时候,需要以竖线为分词单元。比如下面的这一堆数
转载
2023-09-12 11:51:18
93阅读
1.jieba分词 jieba分词号称是最好的中文分词器,目前Python版本在运维,Java版本很久没有更新了。 jieba能实现什么功能呢?我们通过下面的TEST可以看下: 我们实现一个例子: 如:系统提问“拍拍贷利率是多少”@Test
public void testReadJiebaDict(){
/**JiebaSegmenter:分词器,WordDictionary:词典*/
转载
2024-08-26 13:28:09
20阅读
1、索引原理1.1、倒排索引倒排索引(Inverted Index) 也叫反向索引,有反向索引必有正向索引。通俗来说,正向索引通过key找Value,反向索引是通过value找key。ES底层在检索时底层使用的就是倒排索引1.2、索引模型现有索引和映射如下:{
"products":{
"mappings":{
"properties":{
"descrip
转载
2023-12-21 11:06:23
64阅读
一,倒排索引(Inverted Index)ElasticSearch引擎把文档数据写入到倒排索引(Inverted Index)的数据结构中,倒排索引建立的是分词(Term)和文档(Document)之间的映射关系,在倒排索引中,数据是面向词(Term)而不是面向文档的。一个倒排索引由文档中所有不重复词的列表构成,对于其中每个词,有一个包含它的文档列表 示例: 对以下三个文档去除停用词后构造倒排
转载
2023-10-07 10:16:36
152阅读
一、Es插件配置及下载Es下载地址:https://www.elastic.co/cn/downloads/past-releases/elasticsearch-5-6-9es可视化工具kibana下载地址:https://www.elastic.co/cn/downloads/past-releases/kibana-5-6-91.IK分词器的下载安装关于IK分词器的介绍不再多少,一言以蔽之,
转载
2024-03-07 12:43:54
76阅读
AnalysisAnalysis 解析器由三个模块=character filters(字符过滤器), tokenizers(标记器), and token filters(标记过滤器)组成Analysis 中的自定义分词analysis 基本概念 === 全文索引中会用到Tokenizer(分词器)对文档分词,提取token(词元),讲token进一步处理如大小写转换的算法叫Filter(过滤器
转载
2024-07-01 14:12:12
65阅读
Lucene介绍Lucene简介最受欢迎的java开源全文搜索引擎开发工具包。提供了完整的查询引擎和索引引擎,部分文本分词引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便在目标系统中实现全文检索功能,或者是以此为基础建立起完整的全文检索引擎。 是Apache的子项目,网址:http://lucene.apache.org/Lucene用途
转载
2024-10-18 15:02:10
18阅读
对于分词系统的实现来说,主要应集中在两方面的考虑上:一是对语料库的组织,二是分词策略的制订。1. Tire树Tire树,即字典树,是通过字串的公共前缀来对字串进行统计、排序及存储的一种树形结构。其具有如下三个性质:1) 根节点不包含字符(或汉字),除根节点以外的每个节点只能包含一个字符(汉字)2
转载
2024-07-08 22:15:34
0阅读
分词搜索引擎的核心是倒排索引(这里不展开讲),而倒排索引的基础就是分词。所谓分词可以简单理解为将一个完整的句子切割为一个个单词的过程。在 es 中单词对应英文为 term。我们简单看个例子:ES 的倒排索引即是根据分词后的单词创建,即 我、爱、北京、天安门这4个单词。这也意味着你在搜索的时候也只能搜索这4个单词才能命中该文档。实际上 ES 的分词不仅仅发生在文档创建的时候,也发生在搜索的时候,如下
转载
2023-10-26 22:06:17
114阅读
# 使用Java实现Elasticsearch IK分词查找
在进行文本检索和数据分析时,精准的分词能力是至关重要的。Elasticsearch(ES)作为广泛应用的搜索引擎,提供了强大的分词功能。IK Analyzer是一个高效的中文分词器,它能够帮助我们处理中文文本。在本篇文章中,我们将介绍如何使用Java实现ES IK分词查找,通过代码示例和流程图来讲解实现步骤。
## 什么是IK分词器
ES的默认中文分词效果太差了,稍微长一点的词句就完全匹配不到,于是选择使用安装IK中文分词器来实现索引的分词。参考:https://www.bbsmax.com/A/6pdDqDaXzw/
一、安装官网教程:https://github.com/medcl/elasticsearch-analysis-ik,注意版本对应的问题
1.下载 从此处下载预构建包:
转载
2023-11-23 15:06:52
153阅读
分词查询接口http://localhost:9200/_analyze
{
"analyzer":"ik\_max\_word",
"text":"文档数据库"
}分词解析{
"111": [
{
"111": "文档",
"start\_offset": 0,
"end\_offset": 2
转载
2024-07-19 07:52:36
47阅读
IK Analyzer是基于lucene实现的分词开源框架,下载路径:http://code.google.com/p/ik-analyzer/downloads/list需要在项目中引入:IKAnalyzer.cfg.xmlIKAnalyzer2012.jarlucene-core-3.6.0.jarstopword.dic什么都不用改示例代码如下(使用IK Analyzer):package
转载
2024-08-26 14:47:15
51阅读
前言我们通过前面两篇文章的学习,基本解es,但还不足以应对我们平时的开发任务,因此我们还需要全面深入的学习es技术。本篇文章会讲述很多底层内核级原理,所以我们需要集中精力深入体会。一 ES 内核级原理及相关概念1.1 分词器原理&介绍它指把一段语句,拆分成单个的单词。同时对每个单词进行normalization (时态转换,单复数转换)处理,以提升recall召回率(搜索的时候,增加能够搜
转载
2024-05-05 15:37:04
188阅读