जावा में के-मीन्स के साथ कामकाजी सामान्यीकरण उदाहरण यहां है।
final SimpleKMeans kmeans = new SimpleKMeans();
final String[] options = weka.core.Utils
.splitOptions("-init 0 -max-candidates 100 -periodic-pruning 10000 -min-density 2.0 -t1 -1.25 -t2 -1.0 -N 10 -A \"weka.core.EuclideanDistance -R first-last\" -I 500 -num-slots 1 -S 50");
kmeans.setOptions(options);
kmeans.setSeed(10);
kmeans.setPreserveInstancesOrder(true);
kmeans.setNumClusters(25);
kmeans.setMaxIterations(1000);
final BufferedReader datafile = new BufferedReader(new FileReader("/Users/data.arff");
Instances data = new Instances(datafile);
//normalize
final Normalize normalizeFilter = new Normalize();
normalizeFilter.setInputFormat(data);
data = Filter.useFilter(data, normalizeFilter);
//remove class column[0] from cluster
data.setClassIndex(0);
final Remove removeFilter = new Remove();
removeFilter.setAttributeIndices("" + (data.classIndex() + 1));
removeFilter.setInputFormat(data);
data = Filter.useFilter(data, removeFilter);
kmeans.buildClusterer(data);
System.out.println(kmeans.toString());
// evaluate clusterer
final ClusterEvaluation eval = new ClusterEvaluation();
eval.setClusterer(kmeans);
eval.evaluateClusterer(data);
System.out.println(eval.clusterResultsToString());
यदि आप CSV फ़ाइल तो नीचे वर्णित डेटा स्रोत के साथ ऊपर BufferedReader लाइन की जगह है:
final DataSource source = new DataSource("/Users/data.csv");
final Instances data = source.getDataSet();
स्रोत
2017-09-19 04:47:03
सिर्फ मैं उत्पादन सामान्यीकृत arff फ़ाइल के बाद मैं सामान्यीकृत कर दिया है यह और इससे पहले कि classifiers चलाने के लिए कर सकते हैं? (मैं इसे डिस्क पर सहेजना चाहता हूं) – aneuryzm