我正在使用 Mahout 的 CosineDistanceMeasure 类来计算向量之间的距离,表示为 DenseVectors。
DenseVector vector1 = ... //initialized to some values
DenseVector vector2 = ... //initialized to some values
CosineDistanceMeasure cos = new CosineDistanceMeasure();
cos.distance(vector1, vector2);
现在,对于一些向量,方法 distance() 返回大于 1 的值,而我认为余弦距离应该包含在 0 和 1 之间。
任何人都可以解释这种行为吗?
先感谢您!