@Shareable public class SpearmanRankCorrelation extends Object implements VectorSimilarity, Serializable
Similarity function using Spearman rank correlation.
Constructor and Description |
---|
SpearmanRankCorrelation() |
SpearmanRankCorrelation(double damping) |
Modifier and Type | Method and Description |
---|---|
boolean |
isSparse()
Query whether this similarity function is sparse (returns 0 for vectors with disjoint key sets).
|
boolean |
isSymmetric()
Query whether this similarity function is symmetric.
|
double |
similarity(SparseVector vec1,
SparseVector vec2)
Compute the similarity between two vectors.
|
@Inject public SpearmanRankCorrelation(@SimilarityDamping double damping)
public SpearmanRankCorrelation()
public double similarity(SparseVector vec1, SparseVector vec2)
VectorSimilarity
Compute the similarity between two vectors.
similarity
in interface VectorSimilarity
vec1
- The left vector to compare.vec2
- The right vector to compare.public boolean isSparse()
VectorSimilarity
Query whether this similarity function is sparse (returns 0 for vectors with disjoint key sets).
isSparse
in interface VectorSimilarity
true
iff VectorSimilarity.similarity(SparseVector, SparseVector)
will always return true when applied to two vectors with no keys in common.public boolean isSymmetric()
VectorSimilarity
Query whether this similarity function is symmetric. Symmetric similarity functions return the same result when called on (A,B) and (B,A).
isSymmetric
in interface VectorSimilarity
true
if the function is symmetric.