Package edu.uci.jforestsx.learning.trees

Examples of edu.uci.jforestsx.learning.trees.Ensemble


    curValidSet = validSet;
    validPredictions.setSample(curValidSet);
    validPredictions.reset();

    Ensemble ensemble = new Ensemble();
    subLearner.setTreeWeight(treeWeight / bagCount);
    for (int iteration = 1; iteration <= bagCount; iteration++) {
      System.out.println("Iteration: " + iteration);
      Sample subLearnerTrainSet = trainSet.getRandomSubSample(baggingTrainFraction, rnd);
      //((TreeLearner) subLearner).setRnd();
      Sample subLearnerOutOfTrainSet = trainSet.getOutOfSample(subLearnerTrainSet);
      Sample subLearnerValidSet = (validSet == null || validSet.isEmpty() ? subLearnerOutOfTrainSet : validSet);
      Ensemble subEnsemble = subLearner.learn(subLearnerTrainSet, subLearnerValidSet);

      for (int t = 0; t < subEnsemble.getNumTrees(); t++) {
        Tree tree = subEnsemble.getTreeAt(t);
        double curTreeWeight = subEnsemble.getWeightAt(t);
        if (backfit) {
          tree.backfit(subLearnerOutOfTrainSet);
        }
        ensemble.addTree(tree, curTreeWeight);
        System.out.println(tree.numLeaves);
      }

      if (validSet != null && !validSet.isEmpty()) {
        for (int t = 0; t < subEnsemble.getNumTrees(); t++) {
          validPredictions.update(subEnsemble.getTreeAt(t), 1.0 / bagCount);
        }
        lastValidMeasurement = validPredictions.evaluate(evaluationMetric);
        if (printIntermediateValidMeasurements) {
          printValidMeasurement(iteration, lastValidMeasurement, evaluationMetric);
        }
View Full Code Here


    curTrainSet = trainSet;
    curValidSet = validSet;

    preprocess();

    Ensemble ensemble = new Ensemble();
    bestValidationMeasurement = Double.NaN;
    int earlyStoppingIteration = 0;
    int bestIteration = 0;
    int[] treeCounts = new int[numSubModules];
    subLearner.setTreeWeight(treeWeight);
    for (curIteration = 1; curIteration <= numSubModules; curIteration++) {
      Sample subLeanerSample = getSubLearnerSample();
      Ensemble subEnsemble = subLearner.learn(subLeanerSample, validSet);
      if (subEnsemble == null) {
        break;
      }
      for (int t = 0; t < subEnsemble.getNumTrees(); t++) {
        Tree tree = subEnsemble.getTreeAt(t);
        ensemble.addTree(tree, subEnsemble.getWeightAt(t));
        if (validSet != null) {
          LearningUtils.updateScores(validSet, validPredictions, ((RegressionTree) tree), 1.0);
        }
      }
      treeCounts[curIteration - 1] = ensemble.getNumTrees();
View Full Code Here

    if (options.has("validation-file")) {
      configProperties.put(TrainingConfig.VALID_FILENAME, options.valueOf("validation-file"));
    }

    Ensemble ensemble;

    if (options.has("ranking")) {
      RankingApp app = new RankingApp();
      ensemble = app.run(configProperties);
    } else {
View Full Code Here

    /*
     * Load the ensemble
     */
    File modelFile = new File((String) options.valueOf("model-file"));
    Ensemble ensemble = new Ensemble();
    if (options.valueOf("tree-type").equals("RegressionTree")) {
      ensemble.loadFromFile(RegressionTree.class, modelFile);
    } else if (options.valueOf("tree-type").equals("DecisionTree")) {
      ensemble.loadFromFile(DecisionTree.class, modelFile);
    } else {
      System.err.println("Unknown tree type: " + options.valueOf("tree-type"));
    }

    /*
 
View Full Code Here

      createLearner();

      Timer timer = new Timer();
      timer.start();
      Ensemble ensemble = topLearner.learn(trainSet, validSet);
      System.out.println("Time taken to build model: " + (timer.getElapsedMillis() / 1000.0) + " seconds.");
      return ensemble;

    } catch (Exception e) {
      e.printStackTrace();
View Full Code Here

TOP

Related Classes of edu.uci.jforestsx.learning.trees.Ensemble

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.