public abstract class PerFieldSimilarityWrapper extends Similarity
Similarity for different fields.
Subclasses should implement get(String) to return an appropriate
Similarity (for example, using field-specific parameter values) for the field.
Similarity.SimScorer| Constructor and Description |
|---|
PerFieldSimilarityWrapper()
Sole constructor.
|
| Modifier and Type | Method and Description |
|---|---|
long |
computeNorm(FieldInvertState state)
Computes the normalization value for a field, given the accumulated
state of term processing for this field (see
FieldInvertState). |
abstract Similarity |
get(String name)
Returns a
Similarity for scoring a field. |
Similarity.SimScorer |
scorer(float boost,
CollectionStatistics collectionStats,
TermStatistics... termStats)
Compute any collection-level weight (e.g.
|
public PerFieldSimilarityWrapper()
public final long computeNorm(FieldInvertState state)
SimilarityFieldInvertState).
Matches in longer fields are less precise, so implementations of this
method usually set smaller values when state.getLength() is large,
and larger values when state.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 and n2 so that
Long.compareUnsigned(n1, n2) > 0 then
SimScorer.score(freq, n1) <= SimScorer.score(freq, n2)
for any legal freq.
0 is not a legal norm, so 1 is the norm that produces
the highest scores.
computeNorm in class Similaritystate - current processing state for this fieldpublic final Similarity.SimScorer scorer(float boost, CollectionStatistics collectionStats, TermStatistics... termStats)
Similarityscorer in class Similarityboost - 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.public abstract Similarity get(String name)
Similarity for scoring a field.Copyright © 2000-2019 Apache Software Foundation. All Rights Reserved.