繁体   English   中英

Solr:长度标准化/ omitNorms = false有什么好处?

[英]Solr: What are the benefits of length normalization/omitNorms=false?

我们正在使用Solr搜索各种长度的文章。 我们索引描述性元数据(标题,作者,类别,关键字等)和完整的文章文本。 我们不会在索引时提高相关性 - 所有提升都是在查询时完成的(我们使用dismax,加上各种qf,pf和bf提升)。

目前我们的全文字段使用标准omitNorms = false; 因此,所有其他相同,较短的文章(2-3列英寸文章)将经常具有比较长的特征长度(多页)文章更高的相关性。

在我们的案例中,文章长度是相关性的重要指标,因此我正在考虑在我们的全文字段中设置omitNorms = true。

问题:1。为什么默认的lucene / solr行为可以提高较短的字段长度? 是什么原因? 2.为什么我不想省略游戏? 我不需要在此特定字段上提升查询,也不需要在此字段上使用任何类型的分面。

问题1:

在较高的字段长度上提高较短的字段长度与确定文档相关性的基本概念有关,称为TF-IDF(参见http://en.wikipedia.org/wiki/Tf%E2%80%93idf )。 举个简短​​的例子,考虑你的搜索返回两个文件:第一个是100个单词,第二个是1000个单词。 每个包含您的搜索关键字一次。 由于第一个文档中的关键字是文本的1%,因此短文档被判断为与您的搜索更相关而不是长文档,其中您搜索的关键字仅为文本的0.1%。

问题2:

这听起来像是根据您的要求,您可能想尝试省略规范。 但是,这可能会以您不期望的方式扭曲您的搜索结果。 可能是你从长度归一化的一些很好的属性中受益并且没有意识到它。 另一种方法可能是将文档长度实际存储为某种标记字段,例如将文档标记为“短”,“中”和“长”,然后提升匹配长,中,长等的文档。 这也可以让您的最终用户在搜索时过滤文档长度。

再次,当我提到长度规范化的好属性时,您可能会想到存在超长文章的情况,其中涉及10个不同的主题,其中1个与用户的搜索匹配,或存在仅涉及1个主题的长篇文章,那是被搜查的。 在这种情况下,您可能更喜欢长篇文章而不是超长文章(即使超长文章与搜索关键字匹配的次数更多)。 这完全取决于您的数据和用例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM