¿Cómo utilizar el proyecto de código abierto Java Weka para implementar el árbol de decisión J48 y admitir algoritmos de máquina vectorial y ejecutarlos en 10 conjuntos de datos UCI?
Archivo de entrada;
ArffLoader; cargador; =? nuevo; ArffLoader();
loader.setFile(archivo de entrada);
Instancias?setFile(archivo de entrada); Instancias?insTest?=?loader.getDataSet();
insTest.setClassIndex(insTest.numAttributes()-1);
double?sum?=?insTest.numInstances() ;
int?right?=?0;
Clasificador?clas?=?new?J48();
//Clasificador?clas?=? new?weka.classifiers.bayes.BayesNet();
clas.buildClassifier(insTrain);
for(int?i?=?0;?i?lt;?sum ;?i )?{
if(clas.classifyInstance(insTest.instance(i))?==?insTest.instance(i).classValue())?{
derecha ;
}
System.out.println(clas.classifyInstance(insTest.instance(i)) "? : " insTest.instance(i).classValue());
}
System.out.println("Precisión de clasificación: " derecha/suma);
}
Para svm, por favor Utilice el paquete wlsvm. El código es el mismo, es decir, Classifier class= new J48() usa una instancia de svm aquí.