class TFIDFSimilarity.TFIDFScorer extends Similarity.SimScorer
Modifier and Type | Field and Description |
---|---|
private float |
boost |
private Explanation |
idf
The idf and its explanation
|
(package private) float[] |
normTable |
private float |
queryWeight |
Constructor and Description |
---|
TFIDFScorer(float boost,
Explanation idf,
float[] normTable) |
Modifier and Type | Method and Description |
---|---|
Explanation |
explain(Explanation freq,
long norm)
Explain the score for a single document
|
private Explanation |
explainScore(Explanation freq,
long encodedNorm,
float[] normTable) |
float |
score(float freq,
long norm)
Score a single document.
|
private final Explanation idf
private final float boost
private final float queryWeight
final float[] normTable
public TFIDFScorer(float boost, Explanation idf, float[] normTable)
public float score(float freq, long norm)
Similarity.SimScorer
freq
is the document-term sloppy
frequency and must be finite and positive. norm
is the
encoded normalization factor as computed by
Similarity.computeNorm(FieldInvertState)
at index time, or
1
if norms are disabled. norm
is never 0
.
Score must not decrease when freq
increases, ie. if
freq1 > freq2
, then score(freq1, norm) >=
score(freq2, norm)
for any value of norm
that may be produced
by Similarity.computeNorm(FieldInvertState)
.
Score must not increase when the unsigned norm
increases, ie. if
Long.compareUnsigned(norm1, norm2) > 0
then
score(freq, norm1) <= score(freq, norm2)
for any legal
freq
.
As a consequence, the maximum score that this scorer can produce is bound
by score(Float.MAX_VALUE, 1)
.
score
in class Similarity.SimScorer
freq
- sloppy term frequency, must be finite and positivenorm
- encoded normalization factor or 1
if norms are disabledpublic Explanation explain(Explanation freq, long norm)
Similarity.SimScorer
explain
in class Similarity.SimScorer
freq
- Explanation of how the sloppy term frequency was computednorm
- encoded normalization factor, as returned by Similarity.computeNorm(org.apache.lucene.index.FieldInvertState)
, or 1
if norms are disabledprivate Explanation explainScore(Explanation freq, long encodedNorm, float[] normTable)