我是索尔的新手并研究基本的评分模型。据我所知,基本评分模型使用布尔来生成文档集,然后使用向量空间模型根据相关性对排名进行评分。 我想知道的是,在使用Proximity搜索时,搜索结果是否也会根据生成后的向量空间模型进行排名,或者它们是否仅根据编辑距离进行评分?
答案 0 :(得分:1)
首先,在org.apache.lucene.search.similarities.TFIDFSimilarity
中使用VSM分数(请记住,它不是Lucene最新版本中的默认相似度)。例如,org.apache.lucene.search.similarities.BM25Similarity
实现了类似的东西,而是称为bag of words。
在邻近搜索的情况下,基类org.apache.lucene.search.similarities.Similarity具有嵌套类
Similarity.SimScorer
,负责评估“草率”查询,例如SpanQuery
和PhraseQuery
。通常,有一种计算sloppyFreq
的方法,它是编辑距离的函数,并在公式中作为附加系数添加。
sloppyFreq
的默认实现之一是1.0f / (distance + 1)
,但当然可以根据您的需要进行自定义。