use of de.lmu.ifi.dbs.elki.data.DoubleVector in project elki by elki-project.
the class FourCTest method testFourCResults.
/**
* Run 4C with fixed parameters and compare the result to a golden standard.
*/
@Test
public void testFourCResults() {
Database db = makeSimpleDatabase(UNITTEST + "hierarchical-3d2d1d.csv", 600);
Clustering<Model> result = //
new ELKIBuilder<FourC<DoubleVector>>(FourC.class).with(DBSCAN.Parameterizer.EPSILON_ID, //
0.30).with(DBSCAN.Parameterizer.MINPTS_ID, //
50).with(LimitEigenPairFilter.Parameterizer.EIGENPAIR_FILTER_DELTA, //
0.5).with(FourC.Settings.Parameterizer.LAMBDA_ID, //
1).build().run(db);
testFMeasure(db, result, 0.7052);
testClusterSizes(result, new int[] { 218, 382 });
}
use of de.lmu.ifi.dbs.elki.data.DoubleVector in project elki by elki-project.
the class KMedoidsEMTest method testKMedoidsEM.
/**
* Run KMedoidsEM with fixed parameters and compare the result to a golden
* standard.
*/
@Test
public void testKMedoidsEM() {
Database db = makeSimpleDatabase(UNITTEST + "different-densities-2d-no-noise.ascii", 1000);
Clustering<MedoidModel> result = //
new ELKIBuilder<KMedoidsEM<DoubleVector>>(KMedoidsEM.class).with(KMeans.K_ID, //
5).with(KMeans.INIT_ID, //
PAMInitialMeans.class).build().run(db);
testFMeasure(db, result, 0.998005);
testClusterSizes(result, new int[] { 199, 200, 200, 200, 201 });
}
use of de.lmu.ifi.dbs.elki.data.DoubleVector in project elki by elki-project.
the class XMeansTest method testXMeans.
/**
* A very basic X-means test run.
*/
@Test
public void testXMeans() {
Database db = makeSimpleDatabase(UNITTEST + "3clusters-and-noise-2d.csv", 330);
Clustering<?> result = //
new ELKIBuilder<XMeans<DoubleVector, ?>>(XMeans.class).with(XMeans.Parameterizer.K_MIN_ID, //
2).with(KMeans.K_ID, //
20).with(XMeans.Parameterizer.INNER_KMEANS_ID, //
KMeansLloyd.class).with(XMeans.Parameterizer.INFORMATION_CRITERION_ID, //
BayesianInformationCriterion.class).with(KMeans.SEED_ID, // // Initializer seed
0).with(XMeans.Parameterizer.SEED_ID, // // X-means seed
0).build().run(db);
testFMeasure(db, result, 0.95927231008);
testClusterSizes(result, new int[] { 1, 2, 2, 2, 3, 5, 5, 51, 106, 153 });
}
use of de.lmu.ifi.dbs.elki.data.DoubleVector in project elki by elki-project.
the class ParallelLloydKMeansTest method testParallelKMeansLloyd.
/**
* Run KMeans with fixed parameters and compare the result to a golden
* standard.
*/
@Test
public void testParallelKMeansLloyd() {
Database db = makeSimpleDatabase(UNITTEST + "different-densities-2d-no-noise.ascii", 1000);
Clustering<?> result = //
new ELKIBuilder<ParallelLloydKMeans<DoubleVector>>(ParallelLloydKMeans.class).with(KMeans.K_ID, //
5).with(KMeans.SEED_ID, //
7).build().run(db);
testFMeasure(db, result, 0.998005);
testClusterSizes(result, new int[] { 199, 200, 200, 200, 201 });
}
use of de.lmu.ifi.dbs.elki.data.DoubleVector in project elki by elki-project.
the class AffinityPropagationClusteringAlgorithmTest method testAffinityPropagationClusteringAlgorithmOnSingleLinkDataset.
/**
* Run AffinityPropagationClusteringAlgorithm with fixed parameters and
* compare the result to a golden standard.
*/
@Test
public void testAffinityPropagationClusteringAlgorithmOnSingleLinkDataset() {
Database db = makeSimpleDatabase(UNITTEST + "single-link-effect.ascii", 638);
Clustering<MedoidModel> result = //
new ELKIBuilder<AffinityPropagationClusteringAlgorithm<DoubleVector>>(AffinityPropagationClusteringAlgorithm.class).build().run(db);
testFMeasure(db, result, 0.351689882);
testClusterSizes(result, new int[] { 24, 27, 29, 34, 36, 36, 37, 38, 41, 43, 43, 44, 46, 47, 56, 57 });
}
Aggregations