All Packages  Class Hierarchy  This Package  Previous  Next  Index  WEKA's home

Class weka.experiment.CrossValidationResultProducer

java.lang.Object
   |
   +----weka.experiment.CrossValidationResultProducer

public class CrossValidationResultProducer
extends Object
implements ResultProducer, OptionHandler
Generates for each run, carries out an n-fold cross-validation, using the set SplitEvaluator to generate some results. If the class attribute is nominal, the dataset is stratified. Results for each fold are generated, so you may wish to use this in addition with an AveragingResultProducer to obtain averages for each run.

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

Variable Index

 o DATASET_FIELD_NAME
 o FOLD_FIELD_NAME
 o RUN_FIELD_NAME
 o TIMESTAMP_FIELD_NAME

Constructor Index

 o CrossValidationResultProducer()

Method Index

 o doRun(int)
Gets the results for a specified run number.
 o getCompatibilityState()
Gets a description of the internal settings of the result producer, sufficient for distinguishing a ResultProducer instance from another with different settings (ignoring those settings set through this interface).
 o getKeyNames()
Gets the names of each of the columns produced for a single run.
 o getKeyTypes()
Gets the data types of each of the columns produced for a single run.
 o getNumFolds()
Get the value of NumFolds.
 o getOptions()
Gets the current settings of the result producer.
 o getResultNames()
Gets the names of each of the columns produced for a single run.
 o getResultTypes()
Gets the data types of each of the columns produced for a single run.
 o getSplitEvaluator()
Get the SplitEvaluator.
 o getTimestamp()
Gets a Double representing the current date and time.
 o listOptions()
Returns an enumeration describing the available options.
 o main(String[])
 o postProcess()
Perform any postprocessing.
 o preProcess()
Prepare to generate results.
 o setInstances(Instances)
Sets the dataset that results will be obtained for.
 o setNumFolds(int)
Set the value of NumFolds.
 o setOptions(String[])
Parses a given list of options.
 o setResultListener(ResultListener)
Sets the object to send results of each run to.
 o setSplitEvaluator(SplitEvaluator)
Set the SplitEvaluator.
 o toString()
Gets a text descrption of the result producer.

Variables

 o DATASET_FIELD_NAME
 public static String DATASET_FIELD_NAME
 o RUN_FIELD_NAME
 public static String RUN_FIELD_NAME
 o FOLD_FIELD_NAME
 public static String FOLD_FIELD_NAME
 o TIMESTAMP_FIELD_NAME
 public static String TIMESTAMP_FIELD_NAME

Constructors

 o CrossValidationResultProducer
 public CrossValidationResultProducer()

Methods

 o setInstances
 public void setInstances(Instances instances)
Sets the dataset that results will be obtained for.

Parameters:
instances - a value of type 'Instances'.
 o setResultListener
 public void setResultListener(ResultListener listener)
Sets the object to send results of each run to.

Parameters:
listener - a value of type 'ResultListener'
 o getTimestamp
 public static Double getTimestamp()
Gets a Double representing the current date and time. eg: 1:46pm on 20/5/1999 -> 19990520.1346

Returns:
a value of type Double
 o preProcess
 public void preProcess() throws Exception
Prepare to generate results.

Throws: Exception
if an error occurs during preprocessing.
 o postProcess
 public void postProcess() throws Exception
Perform any postprocessing. When this method is called, it indicates that no more requests to generate results for the current experiment will be sent.

Throws: Exception
if an error occurs
 o doRun
 public void doRun(int run) throws Exception
Gets the results for a specified run number. Different run numbers correspond to different randomizations of the data. Results produced should be sent to the current ResultListener

Parameters:
run - the run number to get results for.
Throws: Exception
if a problem occurs while getting the results
 o getKeyNames
 public String[] getKeyNames()
Gets the names of each of the columns produced for a single run. This method should really be static.

Returns:
an array containing the name of each column
 o getKeyTypes
 public Object[] getKeyTypes()
Gets the data types of each of the columns produced for a single run. This method should really be static.

Returns:
an array containing objects of the type of each column. The objects should be Strings, or Doubles.
 o getResultNames
 public String[] getResultNames()
Gets the names of each of the columns produced for a single run. This method should really be static.

Returns:
an array containing the name of each column
 o getResultTypes
 public Object[] getResultTypes()
Gets the data types of each of the columns produced for a single run. This method should really be static.

Returns:
an array containing objects of the type of each column. The objects should be Strings, or Doubles.
 o getCompatibilityState
 public String getCompatibilityState()
Gets a description of the internal settings of the result producer, sufficient for distinguishing a ResultProducer instance from another with different settings (ignoring those settings set through this interface). For example, a cross-validation ResultProducer may have a setting for the number of folds. For a given state, the results produced should be compatible. Typically if a ResultProducer is an OptionHandler, this string will represent the command line arguments required to set the ResultProducer to that state.

Returns:
the description of the ResultProducer state, or null if no state is defined
 o getNumFolds
 public int getNumFolds()
Get the value of NumFolds.

Returns:
Value of NumFolds.
 o setNumFolds
 public void setNumFolds(int newNumFolds)
Set the value of NumFolds.

Parameters:
newNumFolds - Value to assign to NumFolds.
 o getSplitEvaluator
 public SplitEvaluator getSplitEvaluator()
Get the SplitEvaluator.

Returns:
the SplitEvaluator.
 o setSplitEvaluator
 public void setSplitEvaluator(SplitEvaluator newSplitEvaluator)
Set the SplitEvaluator.

Parameters:
newSplitEvaluator - new SplitEvaluator to use.
 o listOptions
 public Enumeration listOptions()
Returns an enumeration describing the available options.

Returns:
an enumeration of all the available options
 o setOptions
 public void setOptions(String options[]) throws Exception
Parses a given list of options. Valid options are:

-X num_folds
The number of folds to use for the cross-validation.

-W classname
Specify the full class name of the split evaluator.

All option after -- will be passed to the split evaluator.

Parameters:
options - the list of options as an array of strings
Throws: Exception
if an option is not supported
 o getOptions
 public String[] getOptions()
Gets the current settings of the result producer.

Returns:
an array of strings suitable for passing to setOptions
 o toString
 public String toString()
Gets a text descrption of the result producer.

Returns:
a text description of the result producer.
Overrides:
toString in class Object
 o main
 public static void main(String args[])

All Packages  Class Hierarchy  This Package  Previous  Next  Index  WEKA's home