Elasticsearch文本分析与相关性评分详解
1. Ngrams、Edge Ngrams和Shingles
1.1 Ngrams
Ngrams是在Elasticsearch中对文本进行分词的独特方式之一,它将一个词拆分成多个子词。ngram和edge ngram过滤器允许你指定 min_gram 和 max_gram 设置,这些设置控制着词被拆分的大小。
1.1.1 1 - grams(单字符)
以“spaghetti”为例,1 - grams为:s, p, a, g, h, e, t, t, i。每个项目都是一个单字符。
1.1.2 Bigrams(双字符)
将字符串拆分为双字符时,得到:sp, pa, ag, gh, he, et, tt, ti。
1.1.3 Trigrams(三字符)
使用三字符拆分时,得到:spa, pag, agh, ghe, het, ett, tti。
1.1.4 设置min_gram和max_gram
使用此分析器时,需要设置两个不同的大小: min_gram 指定要生成的最小ngrams, max_gram 指定要生成的最大ngrams。例如,当 min_gram 为2, max_gram 为3时,得到的组合标记为:sp, spa, pa, pag, ag, agh, gh, ghe, he, het,
超级会员免费看
订阅专栏 解锁全文
3668

被折叠的 条评论
为什么被折叠?



