我有一个包含标题和说明的文档。其中一个项目描述包含“使用Amazon Prime免费送货”等字样。
我使用perl Lucene在字段标题和说明中使用lucene搜索“使用Amazon Prime免费送货”
my $analyzer = new Lucene::Analysis::SimpleAnalyzer();
my @fields = ('title', 'description');
my $parser = new Lucene::MultiFieldQueryParser(\@fields, $analyzer);
我的得分仅为0.4。我的猜测是我的标题为0(不匹配),0.8为描述(完全匹配),平均为0.4。
如何在标题和/或描述上进行匹配,在这种情况下会给我0.8或更高的分数?
答案 0 :(得分:4)
首先,您需要查看一些Lucene scoring theory。接下来,explain()解释了查询如何得分。我相信Plucene也有解释。第三,为什么得分必须是0.8或更高? Lucene分数是相对的,并且在特定查询的上下文中有效。它们的主要用途是命令点击。除非您需要将分数用于其他目的,并且只要相对顺序保持不变,我就不会关心绝对分数。