BVDecompose

Overview | Package | Class | Tree | Deprecated | Index | Help | Weka's home

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## weka.classifiers
Class BVDecompose

    java.lang.Object
      weka.classifiers.BVDecompose

All Implemented Interfaces:
  OptionHandler, RevisionHandler, TechnicalInformationHandler

    public class BVDecompose

extends java.lang.Object
implements OptionHandler, TechnicalInformationHandler, RevisionHandler

Class for performing a Bias-Variance decomposition on any classifier using the method specified in:
Ron Kohavi, David H. Wolpert: Bias Plus Variance Decomposition for Zero-One Loss Functions. In: Machine Learning: Proceedings of the Thirteenth International Conference, 275-283, 1996.

BibTeX:

     @inproceedings{Kohavi1996,
        author = {Ron Kohavi and David H. Wolpert},
        booktitle = {Machine Learning: Proceedings of the Thirteenth International Conference},
        editor = {Lorenza Saitta},
        pages = {275-283},
        publisher = {Morgan Kaufmann},
        title = {Bias Plus Variance Decomposition for Zero-One Loss Functions},
        year = {1996},
        PS = {http://robotics.stanford.edu/\~ronnyk/biasVar.ps}
     }

Valid options are:

     -c <class index>
      The index of the class attribute.
      (default last)

     -t <name of arff file>
      The name of the arff file used for the decomposition.

     -T <training pool size>
      The number of instances placed in the training pool.
      The remainder will be used for testing. (default 100)

     -s <seed>
      The random number seed used.

     -x <num>
      The number of training repetitions used.
      (default 50)

     -D
      Turn on debugging output.

     -W <classifier class name>
      Full class name of the learner used in the decomposition.
      eg: weka.classifiers.bayes.NaiveBayes

     Options specific to learner weka.classifiers.rules.ZeroR:

     -D
      If set, classifier is run in debug mode and
      may output additional info to the console

Options after -- are passed to the designated sub-learner.

Version:
  $Revision: 1.15 $
Author:
  Len Trigg (trigg@cs.waikato.ac.nz)

Constructor Summary
`BVDecompose()`

Method Summary
`void` | `decompose()` Carry out the bias-variance decomposition
`double` | `getBias()` Get the calculated bias squared
`Classifier` | `getClassifier()` Gets the name of the classifier being analysed
`int` | `getClassIndex()` Get the index (starting from 1) of the attribute used as the class.
`java.lang.String` | `getDataFileName()` Get the name of the data file used for the decomposition
`boolean` | `getDebug()` Gets whether debugging is turned on
`double` | `getError()` Get the calculated error rate
`java.lang.String[]` | `getOptions()` Gets the current settings of the CheckClassifier.
`java.lang.String` | `getRevision()` Returns the revision string.
`int` | `getSeed()` Gets the random number seed
`double` | `getSigma()` Get the calculated sigma squared
`TechnicalInformation` | `getTechnicalInformation()` Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.
`int` | `getTrainIterations()` Gets the maximum number of boost iterations
`int` | `getTrainPoolSize()` Get the number of instances in the training pool.
`double` | `getVariance()` Get the calculated variance
`java.lang.String` | `globalInfo()` Returns a string describing this object
`java.util.Enumeration` | `listOptions()` Returns an enumeration describing the available options.
`static void` | `main(java.lang.String[] args)` Test method for this class
`void` | `setClassifier(Classifier newClassifier)` Set the classifiers being analysed
`void` | `setClassIndex(int classIndex)` Sets index of attribute to discretize on
`void` | `setDataFileName(java.lang.String dataFileName)` Sets the name of the data file used for the decomposition
`void` | `setDebug(boolean debug)` Sets debugging mode
`void` | `setOptions(java.lang.String[] options)` Parses a given list of options.
`void` | `setSeed(int seed)` Sets the random number seed
`void` | `setTrainIterations(int trainIterations)` Sets the maximum number of boost iterations
`void` | `setTrainPoolSize(int numTrain)` Set the number of instances in the training pool.
`java.lang.String` | `toString()` Returns description of the bias-variance decomposition results.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### BVDecompose

    public BVDecompose()

Method Detail

### globalInfo

    public java.lang.String globalInfo()

  Returns a string describing this object

  Returns:
    a description of the classifier suitable for displaying in the explorer/experimenter gui

### getTechnicalInformation

    public TechnicalInformation getTechnicalInformation()

  Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.

  Specified by:
    `getTechnicalInformation` in interface `TechnicalInformationHandler`
  Returns:
    the technical information about this class

### listOptions

    public java.util.Enumeration listOptions()

  Returns an enumeration describing the available options.

  Specified by:
    `listOptions` in interface `OptionHandler`
  Returns:
    an enumeration of all the available options.

### setOptions

    public void setOptions(java.lang.String[] options)
                    throws java.lang.Exception

  Parses a given list of options.

  Valid options are:

       -c <class index>
        The index of the class attribute.
        (default last)

       -t <name of arff file>
        The name of the arff file used for the decomposition.

       -T <training pool size>
        The number of instances placed in the training pool.
        The remainder will be used for testing. (default 100)

       -s <seed>
        The random number seed used.

       -x <num>
        The number of training repetitions used.
        (default 50)

       -D
        Turn on debugging output.

       -W <classifier class name>
        Full class name of the learner used in the decomposition.
        eg: weka.classifiers.bayes.NaiveBayes

       Options specific to learner weka.classifiers.rules.ZeroR:

       -D
        If set, classifier is run in debug mode and
        may output additional info to the console

  Options after -- are passed to the designated sub-learner.

  Specified by:
    `setOptions` in interface `OptionHandler`
  Parameters:
    `options` - the list of options as an array of strings
  Throws:
    `java.lang.Exception` - if an option is not supported

### getOptions

    public java.lang.String[] getOptions()

  Gets the current settings of the CheckClassifier.

  Specified by:
    `getOptions` in interface `OptionHandler`
  Returns:
    an array of strings suitable for passing to setOptions

### getTrainPoolSize

    public int getTrainPoolSize()

  Get the number of instances in the training pool.

  Returns:
    number of instances in the training pool.

### setTrainPoolSize

    public void setTrainPoolSize(int numTrain)

  Set the number of instances in the training pool.

  Parameters:
    `numTrain` - number of instances in the training pool.

### setClassifier

    public void setClassifier(Classifier newClassifier)

  Set the classifiers being analysed

  Parameters:
    `newClassifier` - the Classifier to use.

### getClassifier

    public Classifier getClassifier()

  Gets the name of the classifier being analysed

  Returns:
    the classifier being analysed.

### setDebug

    public void setDebug(boolean debug)

  Sets debugging mode

  Parameters:
    `debug` - true if debug output should be printed

### getDebug

    public boolean getDebug()

  Gets whether debugging is turned on

  Returns:
    true if debugging output is on

### setSeed

    public void setSeed(int seed)

  Sets the random number seed

  Parameters:
    `seed` - the random number seed

### getSeed

    public int getSeed()

  Gets the random number seed

  Returns:
    the random number seed

### setTrainIterations

    public void setTrainIterations(int trainIterations)

  Sets the maximum number of boost iterations

  Parameters:
    `trainIterations` - the number of boost iterations

### getTrainIterations

    public int getTrainIterations()

  Gets the maximum number of boost iterations

  Returns:
    the maximum number of boost iterations

### setDataFileName

    public void setDataFileName(java.lang.String dataFileName)

  Sets the name of the data file used for the decomposition

  Parameters:
    `dataFileName` - the data file to use

### getDataFileName

    public java.lang.String getDataFileName()

  Get the name of the data file used for the decomposition

  Returns:
    the name of the data file

### getClassIndex

    public int getClassIndex()

  Get the index (starting from 1) of the attribute used as the class.

  Returns:
    the index of the class attribute

### setClassIndex

    public void setClassIndex(int classIndex)

  Sets index of attribute to discretize on

  Parameters:
    `classIndex` - the index (starting from 1) of the class attribute

### getBias

    public double getBias()

  Get the calculated bias squared

  Returns:
    the bias squared

### getVariance

    public double getVariance()

  Get the calculated variance

  Returns:
    the variance

### getSigma

    public double getSigma()

  Get the calculated sigma squared

  Returns:
    the sigma squared

### getError

    public double getError()

  Get the calculated error rate

  Returns:
    the error rate

### decompose

    public void decompose()
                   throws java.lang.Exception

  Carry out the bias-variance decomposition

  Throws:
    `java.lang.Exception` - if the decomposition couldn't be carried out

### toString

    public java.lang.String toString()

  Returns description of the bias-variance decomposition results.

  Overrides:
    `toString` in class `java.lang.Object`
  Returns:
    the bias-variance decomposition results as a string

### getRevision

    public java.lang.String getRevision()

  Returns the revision string.

  Specified by:
    `getRevision` in interface `RevisionHandler`
  Returns:
    the revision

### main

    public static void main(java.lang.String[] args)

  Test method for this class

  Parameters:
    `args` - the command line arguments

Overview | Package | Class | Tree | Deprecated | Index | Help | Weka's home

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD