Class AbstractExperiment.AbstractExperimentJob<T extends AbstractExperiment>
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.multiprocess.AbstractJob
-
- adams.gui.tools.wekamultiexperimenter.experiment.AbstractExperiment.AbstractExperimentJob<T>
-
- Type Parameters:
T
- the type of experiment
- All Implemented Interfaces:
adams.core.CleanUpHandler
,adams.core.logging.LoggingLevelHandler
,adams.core.logging.LoggingSupporter
,adams.core.SizeOfHandler
,adams.core.Stoppable
,adams.core.StoppableWithFeedback
,adams.multiprocess.Job
,Serializable
- Direct Known Subclasses:
CrossValidationExperiment.CrossValidationExperimentJob
,TrainTestSplitExperiment.TrainTestSplitExperimentJob
- Enclosing class:
- AbstractExperiment
public abstract static class AbstractExperiment.AbstractExperimentJob<T extends AbstractExperiment> extends adams.multiprocess.AbstractJob
For evaluating a single classifier/dataset combination.- Version:
- $Revision$
- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected weka.classifiers.Classifier
m_Classifier
the classifier.protected adams.core.Index
m_ClassLabelIndex
the class label index.protected weka.core.Instances
m_Data
the dataset.protected T
m_Owner
the owner.protected adams.data.spreadsheet.SpreadSheet
m_Results
the generated results.protected int
m_Run
the run.
-
Constructor Summary
Constructors Constructor Description AbstractExperimentJob(T owner, int run, weka.classifiers.Classifier classifier, weka.core.Instances data)
Initializes the run.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
addMetric(adams.data.spreadsheet.SpreadSheet results, String name, Object value)
Adds the metric to the results, automatically expands spreadsheet.protected void
addMetrics(adams.data.spreadsheet.SpreadSheet results, int currentRun, weka.classifiers.Classifier cls, weka.core.Instances data, weka.classifiers.Evaluation eval)
Adds the metrics from the Evaluation object to the results.protected abstract void
evaluate()
Performs the evaluation.protected String
postProcessCheck()
Checks whether all post-conditions have been met.protected String
preProcessCheck()
Checks whether all pre-conditions have been met.protected void
process()
Does the actual execution of the job.String
toString()
Returns a string representation of this job.-
Methods inherited from class adams.multiprocess.AbstractJob
cleanUp, execute, getAdditionalErrorInformation, getExecutionError, getJobCompleteListener, getJobInfo, getProgressInfo, hasExecutionError, isComplete, isStopped, jobCompleted, setJobCompleteListener, setJobInfo, setProgressInfo, stopExecution
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
-
-
-
Field Detail
-
m_Owner
protected T extends AbstractExperiment m_Owner
the owner.
-
m_Run
protected int m_Run
the run.
-
m_Classifier
protected weka.classifiers.Classifier m_Classifier
the classifier.
-
m_Data
protected weka.core.Instances m_Data
the dataset.
-
m_ClassLabelIndex
protected adams.core.Index m_ClassLabelIndex
the class label index.
-
m_Results
protected adams.data.spreadsheet.SpreadSheet m_Results
the generated results.
-
-
Constructor Detail
-
AbstractExperimentJob
public AbstractExperimentJob(T owner, int run, weka.classifiers.Classifier classifier, weka.core.Instances data)
Initializes the run.- Parameters:
owner
- the owning experimentrun
- the current runclassifier
- the classifier to evaluatedata
- the data to use for evaluation
-
-
Method Detail
-
addMetric
protected void addMetric(adams.data.spreadsheet.SpreadSheet results, String name, Object value)
Adds the metric to the results, automatically expands spreadsheet.- Parameters:
results
- the results to add the metrics toname
- the namevalue
- the value
-
addMetrics
protected void addMetrics(adams.data.spreadsheet.SpreadSheet results, int currentRun, weka.classifiers.Classifier cls, weka.core.Instances data, weka.classifiers.Evaluation eval)
Adds the metrics from the Evaluation object to the results.- Parameters:
results
- the results to add the metrics tocurrentRun
- the current runcls
- the classifier to evaluatedata
- the dataset to evaluate oneval
- the Evaluation object to add
-
preProcessCheck
protected String preProcessCheck()
Checks whether all pre-conditions have been met.- Specified by:
preProcessCheck
in classadams.multiprocess.AbstractJob
- Returns:
- null if everything is OK, otherwise an error message
-
evaluate
protected abstract void evaluate()
Performs the evaluation.
-
process
protected void process() throws Exception
Does the actual execution of the job.- Specified by:
process
in classadams.multiprocess.AbstractJob
- Throws:
Exception
- if fails to execute job
-
postProcessCheck
protected String postProcessCheck()
Checks whether all post-conditions have been met.- Specified by:
postProcessCheck
in classadams.multiprocess.AbstractJob
- Returns:
- null if everything is OK, otherwise an error message
-
toString
public String toString()
Returns a string representation of this job.- Specified by:
toString
in classadams.multiprocess.AbstractJob
- Returns:
- the job as string
-
-