我有一个距离矩阵,我想在对数据进行聚类时使用该距离矩阵。
我已经阅读了 ELKI 文档,它声明我可以在扩展类distance
时覆盖该方法。AbstractNumberVectorDistanceFunction
然而distance
,该类返回坐标。所以从坐标 x 到坐标 y。这很麻烦,因为距离矩阵只填充了距离值,我们使用索引来找到从index x
到的距离值index y
。这是文档中的代码:
public class TutorialDistanceFunction extends AbstractNumberVectorDistanceFunction {
@Override
public double distance(NumberVector o1, NumberVector o2) {
double dx = o1.doubleValue(0) - o2.doubleValue(0);
double dy = o1.doubleValue(1) - o2.doubleValue(1);
return dx * dx + Math.abs(dy);
}
}
我的问题是如何在使用 ELKI 进行聚类时正确使用距离矩阵。