|
@@ -37,14 +37,41 @@ public class EMClustering extends BasicPacketClassifier {
|
|
@Override
|
|
@Override
|
|
public double classifyInstance(Instance instance, Packet origin) throws Exception {
|
|
public double classifyInstance(Instance instance, Packet origin) throws Exception {
|
|
|
|
|
|
- * Id of the closes cluster centroid
|
|
+ * Id of the closest cluster
|
|
*/
|
|
*/
|
|
int x = clusterer.clusterInstance(instance);
|
|
int x = clusterer.clusterInstance(instance);
|
|
-
|
|
+
|
|
- * centroid instance
|
|
+
|
|
- */
|
|
+ System.out.println(origin.getTextualRepresentation()+": cluster: "+x+" Dens: "+clusterer.logDensityForInstance(instance)+" joined: ");
|
|
- System.out.println(origin.getTextualRepresentation()+": "+clusterer.logDensityForInstance(instance));
|
|
+ double[] joined = clusterer.logJointDensitiesForInstance(instance);
|
|
- return 0.0;
|
|
+ for(int i = 0;i<joined.length;) {
|
|
|
|
+ System.out.print(joined[i]);
|
|
|
|
+ if(++i<joined.length)
|
|
|
|
+ System.out.print(", ");
|
|
|
|
+ else
|
|
|
|
+ System.out.println("");
|
|
|
|
+ }
|
|
|
|
+ System.out.println("Distribution:");
|
|
|
|
+ double[] distribution = clusterer.distributionForInstance(instance);
|
|
|
|
+ for(int i = 0;i<distribution.length;) {
|
|
|
|
+ System.out.print(distribution[i]);
|
|
|
|
+ if(++i<distribution.length)
|
|
|
|
+ System.out.print(", ");
|
|
|
|
+ else
|
|
|
|
+ System.out.println("");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ double[] priors = clusterer.clusterPriors();
|
|
|
|
+ System.out.println("Priors: ");
|
|
|
|
+ for(int i = 0; i<priors.length; i++) {
|
|
|
|
+ System.out.println("i="+i+": "+priors[i]);
|
|
|
|
+ }
|
|
|
|
+ double[][][] rest = clusterer.getClusterModelsNumericAtts();
|
|
|
|
+ double[][] posteriori = rest[x];
|
|
|
|
+ for(int i = 0; i<posteriori.length; i++) {
|
|
|
|
+ System.out.println("Att "+i+": Mean: "+posteriori[i][0]+" Std: "+posteriori[i][1]+" ???: "+posteriori[i][2]+" Real: "+instance.value(i));
|
|
|
|
+ }*/
|
|
|
|
+ return (1-clusterer.distributionForInstance(instance)[x])*800;
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|