Algorithm 不同ElasticSearch相似性算法的简单解释
我正在研究不同的相似性算法,这些算法定义了在搜索过程中如何计算每个文档的分数。以下列出了可用的算法: 我的问题是,在翻阅维基百科文章或LuceneAPI文档中的类描述时,我很难理解它们。我真的很喜欢这里解释TF/IDF相似性算法(ElasticSearch中的默认算法)的答案:(所以我对这个问题有一定的理解) 有没有人能对这里概述的其他算法提供类似的简单解释?这些措施包括:Algorithm 不同ElasticSearch相似性算法的简单解释,algorithm,search,lucene,elasticsearch,scoring,Algorithm,Search,Lucene,elasticsearch,Scoring,我正在研究不同的相似性算法,这些算法定义了在搜索过程中如何计算每个文档的分数。以下列出了可用的算法: 我的问题是,在翻阅维基百科文章或LuceneAPI文档中的类描述时,我很难理解它们。我真的很喜欢这里解释TF/IDF相似性算法(ElasticSearch中的默认算法)的答案:(所以我对这个问题有一定的理解) 有没有人能对这里概述的其他算法提供类似的简单解释?这些措施包括: bm25相似性 drf相似性 ib相似性 提前谢谢。根据链接答案中的描述,您在这里遇到的问题是,Lucene的默认相似
- bm25相似性
- drf相似性
- ib相似性
提前谢谢。根据链接答案中的描述,您在这里遇到的问题是,Lucene的默认相似性和bm25基本相同,因为它们都考虑到:
- 文档中出现的次数越多越好
- 语料库中较少见的术语优先使用
- 较短的文档更重
- 用于调整分数、提升等的其他功能
dfr
实际上仅包含7个不同的基本模型,每个模型使用不同的评分算法,然后是两个高度可配置的标准化步骤。许多配置选项符合上述非常一般的步骤,有些与之不同
类似地,
ib
也允许一些重要的配置,但通常达到相同的高点,即支持更高的术语频率,支持更罕见的术语匹配(根据某些描述),并调整文档长度、提升和其他可能的规范化。谢谢您的回答。我已经假设他们是相似的。我猜dfr
和ib
(与标准TF/IDF相比)的复杂性使得解释它变得更加困难。不过,我仍在寻找更详细的描述。我想知道的是,在ElasticSearch中对数据建模的某些方式是否更适合使用一种或另一种相似性算法。至于Lucene与ElasticSearch对哪种相似性实现更好产生影响,这应该不是问题。使用相同的分析器索引的相同文本在ElasticSearch和raw Lucene中的搜索和得分方式几乎相同。通常,除非您有理由离开默认值,否则应使用默认值。如前所述,BM25可能比Lucene标准更适用于短油田。DFR和IB是非常相似的(文档注意到它们可以在稍后合并),并且提供了许多基于IR理论来考虑的选项。谢谢您的评论。我接受你的回答。