이미 클러스터를 계산했으며이 클러스터링에 대한 평가를 수행하기 위해 ELKI 라이브러리 만 사용하려고합니다.Java에서 ELKI를 사용하여 사전 계산 된 클러스터링
그래서 나는이 양식에 데이터가 :
2 데이터베이스를 작성하십시오 결과 레이블 및 참조 레이블 :
double [][] data; String [] reference_labels, result_labels; DatabaseConnection dbc1 = new ArrayAdapterDatabaseConnection(data, result_labels); Database db1 = new StaticArrayDatabase(dbc1, null); DatabaseConnection dbc2 = new ArrayAdapterDatabaseConnection(data, reference_labels); Database db2 = new StaticArrayDatabase(dbc2, null);
을에
0.234 0.923 cluster_1 true_cluster1 0.543 0.874 cluster_2 true_cluster3 ...
내가 시도 각 데이터베이스에 대해 ByLabel 클러스터링 수행 :
조치를 clusterings을 비교하고 얻기를위한Clustering<Model> clustering1 = new ByLabelClustering().run(db1); Clustering<Model> clustering2 = new ByLabelClustering().run(db2);
사용 ClusterContingencyTable을 :
ClusterContingencyTable ct = new ClusterContingencyTable(true, false); ct.process(clustering1, clustering2); PairCounting paircount = ct.getPaircount();
문제는 measuers 계산되지 않은 것입니다.
ContingencyTable 및 PairCounting의 소스 코드를 살펴 보았는데 클러스터링이 다른 데이터베이스에서 왔고 데이터베이스가 레이블 관계를 1 개만 가질 수있는 경우 작동하지 않는 것으로 보입니다.
ELKI에서이를 수행 할 수있는 방법이 있습니까?
3 매개 변수 생성자를 사용하여 트릭을 수행했습니다. 답장을 보내 주셔서 감사합니다. –