private static void ensembleLearningDemo() { System.out.println(Util.ntimes("*", 100)); System.out.println( "\n Ensemble Decision Demo - Weak Learners co operating to give Superior decisions "); System.out.println(Util.ntimes("*", 100)); try { DataSet ds = DataSetFactory.getRestaurantDataSet(); List stumps = DecisionTree.getStumpsFor(ds, "Yes", "No"); List<Learner> learners = new ArrayList<Learner>(); System.out.println("\nStump Learners vote to decide in this algorithm"); for (Object stump : stumps) { DecisionTree sl = (DecisionTree) stump; StumpLearner stumpLearner = new StumpLearner(sl, "No"); learners.add(stumpLearner); } AdaBoostLearner learner = new AdaBoostLearner(learners, ds); learner.train(ds); int[] result = learner.test(ds); System.out.println( "\nThis Ensemble Learner classifies the data set with " + result[0] + " successes" + " and " + result[1] + " failures"); System.out.println("\n"); } catch (Exception e) { } }
private static void backPropogationDemo() { try { System.out.println(Util.ntimes("*", 100)); System.out.println( "\n BackpropagationDemo - Running BackProp on Iris data Set with 10 epochs of learning "); System.out.println(Util.ntimes("*", 100)); DataSet irisDataSet = DataSetFactory.getIrisDataSet(); Numerizer numerizer = new IrisDataSetNumerizer(); NNDataSet innds = new IrisNNDataSet(); innds.createExamplesFromDataSet(irisDataSet, numerizer); NNConfig config = new NNConfig(); config.setConfig(FeedForwardNeuralNetwork.NUMBER_OF_INPUTS, 4); config.setConfig(FeedForwardNeuralNetwork.NUMBER_OF_OUTPUTS, 3); config.setConfig(FeedForwardNeuralNetwork.NUMBER_OF_HIDDEN_NEURONS, 6); config.setConfig(FeedForwardNeuralNetwork.LOWER_LIMIT_WEIGHTS, -2.0); config.setConfig(FeedForwardNeuralNetwork.UPPER_LIMIT_WEIGHTS, 2.0); FeedForwardNeuralNetwork ffnn = new FeedForwardNeuralNetwork(config); ffnn.setTrainingScheme(new BackPropLearning(0.1, 0.9)); ffnn.trainOn(innds, 10); innds.refreshDataset(); int[] result = ffnn.testOnDataSet(innds); System.out.println(result[0] + " right, " + result[1] + " wrong"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }
private static void decisionListDemo() { try { System.out.println(Util.ntimes("*", 100)); System.out.println( "DecisionList Demo - Inducing a DecisionList from the Restaurant DataSet\n "); System.out.println(Util.ntimes("*", 100)); DataSet ds = DataSetFactory.getRestaurantDataSet(); DecisionListLearner learner = new DecisionListLearner("Yes", "No", new DLTestFactory()); learner.train(ds); System.out.println("The Induced DecisionList is"); System.out.println(learner.getDecisionList()); int[] result = learner.test(ds); System.out.println( "\nThis Decision List classifies the data set with " + result[0] + " successes" + " and " + result[1] + " failures"); System.out.println("\n"); } catch (Exception e) { System.out.println("Decision ListDemo Failed"); } }
private static void perceptronDemo() { try { System.out.println(Util.ntimes("*", 100)); System.out.println( "\n Perceptron Demo - Running Perceptron on Iris data Set with 10 epochs of learning "); System.out.println(Util.ntimes("*", 100)); DataSet irisDataSet = DataSetFactory.getIrisDataSet(); Numerizer numerizer = new IrisDataSetNumerizer(); NNDataSet innds = new IrisNNDataSet(); innds.createExamplesFromDataSet(irisDataSet, numerizer); Perceptron perc = new Perceptron(3, 4); perc.trainOn(innds, 10); innds.refreshDataset(); int[] result = perc.testOnDataSet(innds); System.out.println(result[0] + " right, " + result[1] + " wrong"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }