lucence 文档评分公式

原创 2016年06月01日 11:18:01

1.简介

分值计算方式为查询语句query中每个项term与文档doc的评分之和。公式表示见1-1。

score(query,doc)=termqueryscore(term,doc)(1-1)

2.term与doc的评分

2.1 基于tf-idf

score(t,d)=tf(t,d)idf(t)2boost(t,d)lengthNorm(t,d)coord(q,d)queryNorm(q)(2-1)

符号 说明 备注
t term /
d doc /
q term 所在query /
tf(t,d) term在doc中的频率 /
idf(t) 1termdoc /
boost(t,d) 域和文档的加权 在索引期间设置。可以用该方法对某个域或文档进行静态单独加权
lengthNorm(t,d) 域的归一化值 域的归一化(normalization)值,更短的域获得更大的加权。该值在索引期间计算,并保存在索引norm中。
coord(q,d) 协调因子(Coordination factor) 基于doc与query的term的交集的数量。该因子会对包含更多搜索项的文档进行类似AND 的加权。
queryNorm(q) 查询的归一化值 每个term权重的平方和

2.2 基于BM25

score(t,d)=idf(t)(k1+1)tf(t,d)k1((1b)+bdlavgdl)+tf(t,d)(2-2)

k1,b为调节因子,根据经验设置,一般取k1=2,b=0.75,dl为文档长度,avgdl为所有文档的平均长度。

Lucene TFIDFSimilarity评分公式详解

TFIDFSimilarity曾经是Lucene/Solr默认评分公式,想知道Lucene的评分过程就得先了解Lucene的评分公式,接下来将深刻剖析公式每个部分推导过程以及它的含义。...
  • zteny
  • zteny
  • 2017年02月26日 17:34
  • 980

Lucene TFIDFSimilarity

读了Lucene打分文档之后,有必要了解一下TFIDFSimilarity中的调用堆栈。 public abstract class TFIDFSimilarity extends Similari...
  • jollyjumper
  • jollyjumper
  • 2014年04月20日 22:38
  • 2034

Lucene学习总结之七:Lucene搜索过程解析

一、Lucene搜索过程总论 搜索的过程总的来说就是将词典及倒排表信息从索引中读出来,根据用户输入的查询语句合并倒排表,得到结果文档集并对文档进行打分的过程。 其可用如下图示: 总共包括以下...
  • jediael_lu
  • jediael_lu
  • 2014年06月25日 14:23
  • 6577

Lucene使用详解

转载自:http://blog.chinaunix.net/uid-20648927-id-1907275.html 1.  引言 编写目的 介绍开源软件搜索引擎——lucene的各...
  • lkx94
  • lkx94
  • 2015年03月16日 01:15
  • 1023

lucene打分公式

lucene利用余弦相似度进行计算,并进行了改进 coord(q,d):文档d匹配q的词越多,此值越大,在查询的时候计算的,匹配的词/查询的总词数(可能不一样) queryNorm(q):...
  • asd7010
  • asd7010
  • 2017年02月27日 18:04
  • 116

Lucene评分score计算

文档Document和域Field加权 调用set
  • doublecj
  • doublecj
  • 2014年11月17日 10:01
  • 926

Lucene学习总结之四:Lucene索引过程分析

对于Lucene的索引过程,除了将词(Term)写入倒排表并最终写入Lucene的索引文件外,还包括分词(Analyzer)和合并段(merge segments)的过程,本次不包括这两部分,将在以后...
  • jediael_lu
  • jediael_lu
  • 2014年06月25日 14:18
  • 5033

lucene整理4 -- 各种Query

1.    各种Query1.1. 概述query.toString()查看原子查询1.2. 使用特定的分析器搜索IndexSearcher searcher = new IndexSearcher(...
  • xiaoping8411
  • xiaoping8411
  • 2010年03月24日 22:10
  • 7768

Lucene4.10使用教程(七):Lucene的自定义评分

自定义评分的第一种实现方式,详细内容可以查看代码注释 package com.johnny.lucene04.advance_search.selfScore; import java.io.IOE...
  • seven_zhao
  • seven_zhao
  • 2015年01月14日 13:56
  • 8359

lucene打分机制

最终匹配分值score = 查询语句在N个域中的得分之和 * coord的值 每个域中的得分 = queryWeight * fieldWeight queryWeight = idf * qu...
  • hu948162999
  • hu948162999
  • 2015年11月12日 16:49
  • 1200
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:lucence 文档评分公式
举报原因:
原因补充:

(最多只允许输入30个字)