All Packages Class Hierarchy This Package Previous Next Index WEKA's home
Interface weka.experiment.ResultProducer
- public interface ResultProducer
- extends Serializable
This interface defines the methods required for an object
that produces results for different randomizations of a dataset.
Possible implementations of ResultProducer:
- Random test/train splits
- CrossValidation splits
- LearningCurve splits (multiple results per run?)
- Averaging results of other result producers
- Version:
- $Revision: 1.1 $
- Author:
- Len Trigg (trigg@cs.waikato.ac.nz)
-
doRun(int)
- Gets the results for a specified run number.
-
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).
-
getKeyNames()
- Gets the names of each of the key columns produced for a single run.
-
getKeyTypes()
- Gets the data types of each of the key columns produced for a single run.
-
getResultNames()
- Gets the names of each of the result columns produced for a single run.
-
getResultTypes()
- Gets the data types of each of the result columns produced for a
single run.
-
postProcess()
- Perform any postprocessing.
-
preProcess()
- Prepare to generate results.
-
setInstances(Instances)
- Sets the dataset that results will be obtained for.
-
setResultListener(ResultListener)
- Sets the object to send results of each run to.
setInstances
public abstract void setInstances(Instances instances)
- Sets the dataset that results will be obtained for.
- Parameters:
- instances - a value of type 'Instances'.
setResultListener
public abstract void setResultListener(ResultListener listener)
- Sets the object to send results of each run to.
- Parameters:
- listener - a value of type 'ResultListener'
preProcess
public abstract void preProcess() throws Exception
- Prepare to generate results. The ResultProducer should call
preProcess(this) on the ResultListener it is to send results to.
- Throws: Exception
- if an error occurs during preprocessing.
postProcess
public abstract 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. The ResultProducer should call
preProcess(this) on the ResultListener it is to send results to.
- Throws: Exception
- if an error occurs
doRun
public abstract 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, but only
if the ResultListener says the result is required (it may already
have that result). A single run may produce multiple results.
- Parameters:
- run - the run number to generate results for.
- Throws: Exception
- if a problem occurs while getting the results
getKeyNames
public abstract String[] getKeyNames() throws Exception
- Gets the names of each of the key columns produced for a single run.
The names should not contain spaces (use '_' instead for easy
translation.)
- Returns:
- an array containing the name of each key column
- Throws: Exception
- if the key names could not be determined (perhaps
because of a problem from a nested sub-resultproducer)
getKeyTypes
public abstract Object[] getKeyTypes() throws Exception
- Gets the data types of each of the key columns produced for a single run.
- Returns:
- an array containing objects of the type of each key column. The
objects should be Strings, or Doubles.
- Throws: Exception
- if the key types could not be determined (perhaps
because of a problem from a nested sub-resultproducer)
getResultNames
public abstract String[] getResultNames() throws Exception
- Gets the names of each of the result columns produced for a single run.
The names should not contain spaces (use '_' instead for easy
translation.)
- Returns:
- an array containing the name of each result column
- Throws: Exception
- if the result names could not be determined (perhaps
because of a problem from a nested sub-resultproducer)
getResultTypes
public abstract Object[] getResultTypes() throws Exception
- Gets the data types of each of the result columns produced for a
single run.
- Returns:
- an array containing objects of the type of each result column.
The objects should be Strings, or Doubles.
- Throws: Exception
- if the result types could not be determined (perhaps
because of a problem from a nested sub-resultproducer)
getCompatibilityState
public abstract 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 those 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
All Packages Class Hierarchy This Package Previous Next Index WEKA's home