Class RandomCommittee

All Implemented Interfaces:
Serializable, Cloneable, CapabilitiesHandler, OptionHandler, Randomizable, RevisionHandler, WeightedInstancesHandler

public class RandomCommittee extends RandomizableIteratedSingleClassifierEnhancer implements WeightedInstancesHandler
Class for building an ensemble of randomizable base classifiers. Each base classifiers is built using a different random number seed (but based one the same data). The final prediction is a straight average of the predictions generated by the individual base classifiers.

Valid options are:

 -S <num>
  Random number seed.
  (default 1)
 -I <num>
  Number of iterations.
  (default 10)
 -D
  If set, classifier is run in debug mode and
  may output additional info to the console
 -W
  Full name of base classifier.
  (default: weka.classifiers.trees.RandomTree)
 
 Options specific to classifier weka.classifiers.trees.RandomTree:
 
 -K <number of attributes>
  Number of attributes to randomly investigate
  (<1 = int(log(#attributes)+1)).
 -M <minimum number of instances>
  Set minimum number of instances per leaf.
 -S <num>
  Seed for random number generator.
  (default 1)
 -depth <num>
  The maximum depth of the tree, 0 for unlimited.
  (default 0)
 -D
  If set, classifier is run in debug mode and
  may output additional info to the console
Options after -- are passed to the designated classifier.

Version:
$Revision: 1.13 $
Author:
Eibe Frank (eibe@cs.waikato.ac.nz)
See Also:
  • Constructor Details

    • RandomCommittee

      public RandomCommittee()
      Constructor.
  • Method Details

    • globalInfo

      public String globalInfo()
      Returns a string describing classifier
      Returns:
      a description suitable for displaying in the explorer/experimenter gui
    • buildClassifier

      public void buildClassifier(Instances data) throws Exception
      Builds the committee of randomizable classifiers.
      Overrides:
      buildClassifier in class IteratedSingleClassifierEnhancer
      Parameters:
      data - the training data to be used for generating the bagged classifier.
      Throws:
      Exception - if the classifier could not be built successfully
    • distributionForInstance

      public double[] distributionForInstance(Instance instance) throws Exception
      Calculates the class membership probabilities for the given test instance.
      Overrides:
      distributionForInstance in class Classifier
      Parameters:
      instance - the instance to be classified
      Returns:
      preedicted class probability distribution
      Throws:
      Exception - if distribution can't be computed successfully
    • toString

      public String toString()
      Returns description of the committee.
      Overrides:
      toString in class Object
      Returns:
      description of the committee as a string
    • getRevision

      public String getRevision()
      Returns the revision string.
      Specified by:
      getRevision in interface RevisionHandler
      Overrides:
      getRevision in class Classifier
      Returns:
      the revision
    • main

      public static void main(String[] argv)
      Main method for testing this class.
      Parameters:
      argv - the options