Class InstancesIndexedSplitsRunsPredictions
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.flow.transformer.indexedsplitsrunspredictions.AbstractIndexedSplitsRunsPredictions<weka.core.Instances>
-
- adams.flow.transformer.indexedsplitsrunspredictions.InstancesIndexedSplitsRunsPredictions
-
- All Implemented Interfaces:
adams.core.Destroyable
,adams.core.GlobalInfoSupporter
,adams.core.logging.LoggingLevelHandler
,adams.core.logging.LoggingSupporter
,adams.core.option.OptionHandler
,adams.core.QuickInfoSupporter
,adams.core.SizeOfHandler
,adams.core.Stoppable
,adams.core.StoppableWithFeedback
,adams.flow.core.FlowContextHandler
,adams.flow.transformer.indexedsplitsrunspredictions.IndexedSplitsRunsPredictions<weka.core.Instances>
,Serializable
public class InstancesIndexedSplitsRunsPredictions extends adams.flow.transformer.indexedsplitsrunspredictions.AbstractIndexedSplitsRunsPredictions<weka.core.Instances>
Trains the referenced classifier on the training splits and generates predictions for the test splits.- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected adams.flow.core.CallableActorReference
m_Classifier
the name of the callable weka classifier.protected weka.classifiers.Classifier
m_ManualClassifier
a programmatically supplied classifier.protected String
m_TestSplitName
the split to use for testing.protected String
m_TrainSplitName
the split to use for training.
-
Constructor Summary
Constructors Constructor Description InstancesIndexedSplitsRunsPredictions()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class
accepts()
The accepted classes.protected Map<String,weka.core.Instances>
applyIndexedSplit(adams.data.indexedsplits.IndexedSplit indexedSplit, weka.core.Instances data)
Applies the splits defined in the indexed split and returns the generated subsets.String
check(weka.core.Instances data, adams.data.indexedsplits.IndexedSplitsRuns runs)
For checking the data.String
classifierTipText()
Returns the tip text for this property.void
defineOptions()
Adds options to the internal list of options.protected adams.data.spreadsheet.SpreadSheet
doGenerate(weka.core.Instances data, adams.data.indexedsplits.IndexedSplitsRuns runs, adams.core.MessageCollection errors)
Generates predictions by applying the indexed splits runs to the data.adams.flow.core.CallableActorReference
getClassifier()
Returns the name of the callable classifier in use.protected weka.classifiers.Classifier
getClassifierInstance(adams.core.MessageCollection errors)
Returns an instance of the callable classifier.weka.classifiers.Classifier
getManualClassifier()
Returns the manual to use instead of obtaining it from the flow.String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.String
getTestSplitName()
Returns the name of the split to use for testing, ie generating predictions.String
getTrainSplitName()
Returns the name of the split to use for training.String
globalInfo()
Returns a string describing the object.boolean
requiresFlowContext()
Returns whether flow context is actually required.void
setClassifier(adams.flow.core.CallableActorReference value)
Sets the name of the callable classifier to use.void
setManualClassifier(weka.classifiers.Classifier value)
Sets the manual classifier to use instead of obtaining it from the flow.void
setTestSplitName(String value)
Sets the name of the split to use for testing, ie generating predictions.void
setTrainSplitName(String value)
Sets the name of the split to use for training.String
testSplitNameTipText()
Returns the tip text for this property.String
trainSplitNameTipText()
Returns the tip text for this property.-
Methods inherited from class adams.flow.transformer.indexedsplitsrunspredictions.AbstractIndexedSplitsRunsPredictions
generate, getFlowContext, isStopped, setFlowContext, stopExecution
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, destroy, finishInit, getDefaultLoggingLevel, getOptionManager, initialize, loggingLevelTipText, newOptionManager, reset, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
-
-
-
Field Detail
-
m_TrainSplitName
protected String m_TrainSplitName
the split to use for training.
-
m_TestSplitName
protected String m_TestSplitName
the split to use for testing.
-
m_Classifier
protected adams.flow.core.CallableActorReference m_Classifier
the name of the callable weka classifier.
-
m_ManualClassifier
protected weka.classifiers.Classifier m_ManualClassifier
a programmatically supplied classifier.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceadams.core.GlobalInfoSupporter
- Specified by:
globalInfo
in classadams.core.option.AbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceadams.core.option.OptionHandler
- Overrides:
defineOptions
in classadams.core.option.AbstractOptionHandler
-
setTrainSplitName
public void setTrainSplitName(String value)
Sets the name of the split to use for training.- Parameters:
value
- the name
-
getTrainSplitName
public String getTrainSplitName()
Returns the name of the split to use for training.- Returns:
- the name
-
trainSplitNameTipText
public String trainSplitNameTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setTestSplitName
public void setTestSplitName(String value)
Sets the name of the split to use for testing, ie generating predictions.- Parameters:
value
- the name
-
getTestSplitName
public String getTestSplitName()
Returns the name of the split to use for testing, ie generating predictions.- Returns:
- the name
-
testSplitNameTipText
public String testSplitNameTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setClassifier
public void setClassifier(adams.flow.core.CallableActorReference value)
Sets the name of the callable classifier to use.- Parameters:
value
- the name
-
getClassifier
public adams.flow.core.CallableActorReference getClassifier()
Returns the name of the callable classifier in use.- Returns:
- the name
-
classifierTipText
public String classifierTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setManualClassifier
public void setManualClassifier(weka.classifiers.Classifier value)
Sets the manual classifier to use instead of obtaining it from the flow.- Parameters:
value
- the classifier
-
getManualClassifier
public weka.classifiers.Classifier getManualClassifier()
Returns the manual to use instead of obtaining it from the flow.- Returns:
- the classifier
-
requiresFlowContext
public boolean requiresFlowContext()
Returns whether flow context is actually required.- Specified by:
requiresFlowContext
in classadams.flow.transformer.indexedsplitsrunspredictions.AbstractIndexedSplitsRunsPredictions<weka.core.Instances>
- Returns:
- true if required
-
accepts
public Class accepts()
The accepted classes.- Returns:
- the array of accepted types
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.- Specified by:
getQuickInfo
in interfaceadams.core.QuickInfoSupporter
- Overrides:
getQuickInfo
in classadams.flow.transformer.indexedsplitsrunspredictions.AbstractIndexedSplitsRunsPredictions<weka.core.Instances>
- Returns:
- null if no info available, otherwise short string
-
check
public String check(weka.core.Instances data, adams.data.indexedsplits.IndexedSplitsRuns runs)
For checking the data.- Overrides:
check
in classadams.flow.transformer.indexedsplitsrunspredictions.AbstractIndexedSplitsRunsPredictions<weka.core.Instances>
- Parameters:
data
- the data to use for evaluationruns
- the indexed splits to use- Returns:
- null if passed checks, otherwise error message
-
getClassifierInstance
protected weka.classifiers.Classifier getClassifierInstance(adams.core.MessageCollection errors)
Returns an instance of the callable classifier.- Parameters:
errors
- for collecting errors- Returns:
- the classifier
-
applyIndexedSplit
protected Map<String,weka.core.Instances> applyIndexedSplit(adams.data.indexedsplits.IndexedSplit indexedSplit, weka.core.Instances data)
Applies the splits defined in the indexed split and returns the generated subsets.- Parameters:
indexedSplit
- the run to applydata
- the data to obtain the subsets from- Returns:
- the generated splits
-
doGenerate
protected adams.data.spreadsheet.SpreadSheet doGenerate(weka.core.Instances data, adams.data.indexedsplits.IndexedSplitsRuns runs, adams.core.MessageCollection errors)
Generates predictions by applying the indexed splits runs to the data.- Specified by:
doGenerate
in classadams.flow.transformer.indexedsplitsrunspredictions.AbstractIndexedSplitsRunsPredictions<weka.core.Instances>
- Parameters:
data
- the data to use for evaluationruns
- the indexed splits to useerrors
- for collecting errors- Returns:
- the generated predictions, null in case of error
-
-