System.out.println("\nFirst sample classified by C45 from Rseslib:"); learner.open(); System.out.println(learner.next()); learner.close();
/////////////////////////////////////////////////////////////////////// // HOWTO: train and use Weka classifier //
learner =newWekaClassifier("J48"); System.out.println("\nParameters available in J48 from Weka [default value]:"); System.out.print(learner.getAvailableParams());
// 2nd method: Parameters par =newParameters(); par.set("filename","data/glass.arff"); par.set("decisionAttr","last"); arff.setParameters(par); System.out.println("\nParameters of the ARFF reader:"); System.out.println(arff.getParameters());
/////////////////////////////////////////////////////////////////////// // HOWTO: evaluate a classifier through train & test //
EvaluatorCell tt =newTrainAndTest(learner); tt.setSource(filter); tt.set("repetitions","10");// run 10 independent trials of train & test tt.set("trainPercent","70");// in each trial, use randomly selected 70% of data for training tt.setRandomSeed(123);// fix random seed to use the same data splits in every run of tt.learn() tt.learn();// go! System.out.println("\nResult of Train+Test:\n"+ tt.report());
/////////////////////////////////////////////////////////////////////// // HOWTO: run cross-validation for a regression problem //
// already done: Cell arff = new ArffReader(); arff.set("filename","data/cloud.arff");// decision attribute in cloud.arff is real-valued arff.set("decisionAttr","last"); learner =newWekaClassifier("SMOreg");
EvaluatorCell cv =newCrossValidation(learner); cv.setSource(arff); cv.set("folds","5");// 5-fold cross-validation cv.set("score","RMSE");// use Root Mean Squared Error to measure quality cv.learn(); System.out.println("\nResult of Cross-Validation: RMSE = "+ cv.result()[0]);