Class LegacyBM25Similarity
- java.lang.Object
-
- org.apache.lucene.search.similarities.Similarity
-
- org.apache.lucene.search.similarity.LegacyBM25Similarity
-
@Deprecated public final class LegacyBM25Similarity extends Similarity
Deprecated.BM25Similarity
should be used insteadSimilarity that behaves likeBM25Similarity
while also applying the k1+1 factor to the numerator of the scoring formula- See Also:
BM25Similarity
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.lucene.search.similarities.Similarity
Similarity.SimScorer
-
-
Field Summary
Fields Modifier and Type Field Description private BM25Similarity
bm25Similarity
Deprecated.
-
Constructor Summary
Constructors Constructor Description LegacyBM25Similarity()
Deprecated.BM25 with these default values:k1 = 1.2
b = 0.75
LegacyBM25Similarity(float k1, float b)
Deprecated.BM25 with the supplied parameter values.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description long
computeNorm(FieldInvertState state)
Deprecated.Computes the normalization value for a field, given the accumulated state of term processing for this field (seeFieldInvertState
).float
getB()
Deprecated.Returns theb
parameterboolean
getDiscountOverlaps()
Deprecated.Returns true if overlap tokens are discounted from the document's length.float
getK1()
Deprecated.Returns thek1
parameterSimilarity.SimScorer
scorer(float boost, CollectionStatistics collectionStats, TermStatistics... termStats)
Deprecated.Compute any collection-level weight (e.g.void
setDiscountOverlaps(boolean v)
Deprecated.Sets whether overlap tokens (Tokens with 0 position increment) are ignored when computing norm.java.lang.String
toString()
Deprecated.
-
-
-
Field Detail
-
bm25Similarity
private final BM25Similarity bm25Similarity
Deprecated.
-
-
Constructor Detail
-
LegacyBM25Similarity
public LegacyBM25Similarity()
Deprecated.BM25 with these default values:k1 = 1.2
b = 0.75
-
LegacyBM25Similarity
public LegacyBM25Similarity(float k1, float b)
Deprecated.BM25 with the supplied parameter values.- Parameters:
k1
- Controls non-linear term frequency normalization (saturation).b
- Controls to what degree document length normalizes tf values.- Throws:
java.lang.IllegalArgumentException
- ifk1
is infinite or negative, or ifb
is not within the range[0..1]
-
-
Method Detail
-
computeNorm
public long computeNorm(FieldInvertState state)
Deprecated.Description copied from class:Similarity
Computes the normalization value for a field, given the accumulated state of term processing for this field (seeFieldInvertState
).Matches in longer fields are less precise, so implementations of this method usually set smaller values when
state.getLength()
is large, and larger values whenstate.getLength()
is small.Note that for a given term-document frequency, greater unsigned norms must produce scores that are lower or equal, ie. for two encoded norms
n1
andn2
so thatLong.compareUnsigned(n1, n2) > 0
thenSimScorer.score(freq, n1) <= SimScorer.score(freq, n2)
for any legalfreq
.0
is not a legal norm, so1
is the norm that produces the highest scores.- Specified by:
computeNorm
in classSimilarity
- Parameters:
state
- current processing state for this field- Returns:
- computed norm value
-
scorer
public Similarity.SimScorer scorer(float boost, CollectionStatistics collectionStats, TermStatistics... termStats)
Deprecated.Description copied from class:Similarity
Compute any collection-level weight (e.g. IDF, average document length, etc) needed for scoring a query.- Specified by:
scorer
in classSimilarity
- Parameters:
boost
- a multiplicative factor to apply to the produces scorescollectionStats
- collection-level statistics, such as the number of tokens in the collection.termStats
- term-level statistics, such as the document frequency of a term across the collection.- Returns:
- SimWeight object with the information this Similarity needs to score a query.
-
getK1
public final float getK1()
Deprecated.Returns thek1
parameter- See Also:
LegacyBM25Similarity(float, float)
-
getB
public final float getB()
Deprecated.Returns theb
parameter- See Also:
LegacyBM25Similarity(float, float)
-
setDiscountOverlaps
public void setDiscountOverlaps(boolean v)
Deprecated.Sets whether overlap tokens (Tokens with 0 position increment) are ignored when computing norm. By default this is true, meaning overlap tokens do not count when computing norms.
-
getDiscountOverlaps
public boolean getDiscountOverlaps()
Deprecated.Returns true if overlap tokens are discounted from the document's length.- See Also:
setDiscountOverlaps(boolean)
-
toString
public java.lang.String toString()
Deprecated.- Overrides:
toString
in classjava.lang.Object
-
-