@Shareable public class CosineVectorSimilarity extends Object implements VectorSimilarity, Serializable
| Constructor and Description |
|---|
CosineVectorSimilarity()
Construct an undamped cosine similarity function.
|
CosineVectorSimilarity(double damping)
Construct a new cosine similarity function.
|
| 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.
|
String |
toString() |
public CosineVectorSimilarity()
@Inject public CosineVectorSimilarity(@SimilarityDamping double damping)
damping - The Bayesian damping term (added to denominator), to bias the
similarity towards 0 for low-cooccurance vectors.public double similarity(SparseVector vec1, SparseVector vec2)
VectorSimilaritysimilarity in interface VectorSimilarityvec1 - The left vector to compare.vec2 - The right vector to compare.public boolean isSparse()
VectorSimilarityisSparse in interface VectorSimilaritytrue iff VectorSimilarity.similarity(SparseVector, SparseVector) will always return
true when applied to two vectors with no keys in common.public boolean isSymmetric()
VectorSimilarityisSymmetric in interface VectorSimilaritytrue if the function is symmetric.