假設向量1爲(a1,a2,...an)
向量2爲(b1,b2,...bn)
1、歐式距離測度
公式爲
d=sqrt((a1-b1)^2+(a2-b2)^2+…+(an-bn)^2)
mahout類爲EuclideanDistanceMeasure
2、平方歐式距離測度
公式爲
d=(a1-b1)^2+(a2-b2)^2+…+(an-bn)^2
mahout類爲SquaredEuclideanDistanceMeasure
3、曼哈頓距離測度
公式爲
d=|a1-b1|+|a2-b2|+…+|an-bn|
mahout類爲ManhattanDistanceMeasure
4、餘弦距離測度(將向量看成幾何中向量,兩個向量的餘弦夾角,即爲它們的距離)
公式爲
d=1-(a1b1+a2b2+…+anbn)/(sqrt(a1^2+a2^2+…+an^2)*sqrt(b1^2+b2^2+…+bn^2))
注意:這種距離測度不考慮兩個向量的長度,只關注從原點到這兩個點的方向。距離測度範圍爲(0.0到2.0)
mahout類爲CosineDistanceMeasure
5、谷本距離測度
餘弦距離測度忽略向量長度,在某些情況下不適應,而谷本距離測度既會考慮向量長度,也會考慮向量夾角
公式爲:
d=1-(a1b1+a2b2+…+anbn)/(sqrt(a1^2+a2^2+…+an^2)*sqrt(b1^2+b2^2+…+bn^2)-(a1b1+a2b2+…+anbn))
mahout類爲TanimotoDistanceMeasure
6、加權距離測度
此種測度可以修改某一維度的權重,比如在x-y座標系中希望x方向的影響力加倍,就可以設置該維度權重爲2。
mahout類爲WeightedDistanceMeasure。