Class TrainTestSplit
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.gui.tools.wekainvestigator.evaluation.AbstractEvaluation<ClassifyTab,ResultItem>
-
- adams.gui.tools.wekainvestigator.tab.classifytab.evaluation.AbstractClassifierEvaluation
-
- adams.gui.tools.wekainvestigator.tab.classifytab.evaluation.TrainTestSplit
-
- All Implemented Interfaces:
adams.core.GlobalInfoSupporter
,adams.core.logging.LoggingSupporter
,adams.core.SizeOfHandler
,adams.core.StatusMessageHandler
,adams.core.Stoppable
,adams.core.StoppableWithFeedback
,Serializable
public class TrainTestSplit extends AbstractClassifierEvaluation implements adams.core.StoppableWithFeedback
Uses a (random) percentage split to generate train/test.- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static String
KEY_ADDITIONAL
static String
KEY_DATASET
static String
KEY_DISCARDPREDICTIONS
static String
KEY_GENERATOR
static String
KEY_PERCENTAGE
static String
KEY_PRESERVEORDER
static String
KEY_SEED
static String
KEY_USEVIEWS
protected adams.gui.core.BaseCheckBox
m_CheckBoxDiscardPredictions
whether to discard the predictions.protected adams.gui.core.BaseCheckBox
m_CheckBoxPreserveOrder
whether to preserve the order.protected adams.gui.core.BaseCheckBox
m_CheckBoxUseViews
whether to use views.protected adams.gui.core.BaseComboBox<String>
m_ComboBoxDatasets
the datasets.protected StoppableEvaluation
m_Evaluation
the current evaluation.protected adams.gui.goe.GenericObjectEditorPanel
m_GOEGenerator
the split generator.protected weka.classifiers.Classifier
m_Model
the current model.protected DefaultComboBoxModel<String>
m_ModelDatasets
the datasets model.protected adams.gui.core.ParameterPanel
m_PanelParameters
the panel with the parameters.protected adams.gui.chooser.SelectOptionPanel
m_SelectAdditionalAttributes
the additional attributes to store.protected boolean
m_Stopped
whether the build was stopped.protected adams.gui.core.NumberTextField
m_TextPercentage
the split percentage.protected adams.gui.core.NumberTextField
m_TextSeed
the seed value.-
Fields inherited from class adams.gui.tools.wekainvestigator.evaluation.AbstractEvaluation
m_Owner, m_PanelOptions
-
-
Constructor Summary
Constructors Constructor Description TrainTestSplit()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
activate(int index)
Activates the specified dataset.String
canEvaluate(weka.classifiers.Classifier classifier)
Tests whether the classifier can be evaluated.void
deserialize(Map<String,Object> data, adams.core.MessageCollection errors)
Restores the objects.protected void
doEvaluate(weka.classifiers.Classifier classifier, ResultItem item)
Evaluates the classifier and updates the result item.String
getName()
Returns the name of the evaluation (displayed in combobox).String
globalInfo()
Returns a string describing the object.ResultItem
init(weka.classifiers.Classifier classifier)
Initializes the result item.protected void
initGUI()
Initializes the widgets.boolean
isStopped()
Whether the execution has been stopped.Map<String,Object>
serialize(Set<AbstractInvestigatorTab.SerializationOption> options)
Returns the objects for serialization.void
stopExecution()
Stops the execution.void
update()
Updates the settings panel.-
Methods inherited from class adams.gui.tools.wekainvestigator.tab.classifytab.evaluation.AbstractClassifierEvaluation
evaluate, fillWithAttributeNames, getEvaluations, transferAdditionalAttributes
-
Methods inherited from class adams.gui.tools.wekainvestigator.evaluation.AbstractEvaluation
addObjectSize, addToHistory, getOwner, getPanel, getProperties, getTestingUpdateInterval, initialize, isValidDataIndex, listOrArray, setOwner, showStatus, toString
-
-
-
-
Field Detail
-
KEY_DATASET
public static final String KEY_DATASET
- See Also:
- Constant Field Values
-
KEY_PERCENTAGE
public static final String KEY_PERCENTAGE
- See Also:
- Constant Field Values
-
KEY_SEED
public static final String KEY_SEED
- See Also:
- Constant Field Values
-
KEY_PRESERVEORDER
public static final String KEY_PRESERVEORDER
- See Also:
- Constant Field Values
-
KEY_ADDITIONAL
public static final String KEY_ADDITIONAL
- See Also:
- Constant Field Values
-
KEY_USEVIEWS
public static final String KEY_USEVIEWS
- See Also:
- Constant Field Values
-
KEY_GENERATOR
public static final String KEY_GENERATOR
- See Also:
- Constant Field Values
-
KEY_DISCARDPREDICTIONS
public static final String KEY_DISCARDPREDICTIONS
- See Also:
- Constant Field Values
-
m_PanelParameters
protected adams.gui.core.ParameterPanel m_PanelParameters
the panel with the parameters.
-
m_ComboBoxDatasets
protected adams.gui.core.BaseComboBox<String> m_ComboBoxDatasets
the datasets.
-
m_ModelDatasets
protected DefaultComboBoxModel<String> m_ModelDatasets
the datasets model.
-
m_TextPercentage
protected adams.gui.core.NumberTextField m_TextPercentage
the split percentage.
-
m_CheckBoxPreserveOrder
protected adams.gui.core.BaseCheckBox m_CheckBoxPreserveOrder
whether to preserve the order.
-
m_TextSeed
protected adams.gui.core.NumberTextField m_TextSeed
the seed value.
-
m_SelectAdditionalAttributes
protected adams.gui.chooser.SelectOptionPanel m_SelectAdditionalAttributes
the additional attributes to store.
-
m_CheckBoxUseViews
protected adams.gui.core.BaseCheckBox m_CheckBoxUseViews
whether to use views.
-
m_GOEGenerator
protected adams.gui.goe.GenericObjectEditorPanel m_GOEGenerator
the split generator.
-
m_CheckBoxDiscardPredictions
protected adams.gui.core.BaseCheckBox m_CheckBoxDiscardPredictions
whether to discard the predictions.
-
m_Model
protected transient weka.classifiers.Classifier m_Model
the current model.
-
m_Evaluation
protected transient StoppableEvaluation m_Evaluation
the current evaluation.
-
m_Stopped
protected boolean m_Stopped
whether the build was stopped.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceadams.core.GlobalInfoSupporter
- Returns:
- a description suitable for displaying in the gui
-
initGUI
protected void initGUI()
Initializes the widgets.- Overrides:
initGUI
in classAbstractEvaluation<ClassifyTab,ResultItem>
-
getName
public String getName()
Returns the name of the evaluation (displayed in combobox).- Specified by:
getName
in classAbstractEvaluation<ClassifyTab,ResultItem>
- Returns:
- the name
-
canEvaluate
public String canEvaluate(weka.classifiers.Classifier classifier)
Tests whether the classifier can be evaluated.- Specified by:
canEvaluate
in classAbstractClassifierEvaluation
- Returns:
- null if successful, otherwise error message
-
init
public ResultItem init(weka.classifiers.Classifier classifier) throws Exception
Initializes the result item.- Specified by:
init
in classAbstractClassifierEvaluation
- Parameters:
classifier
- the current classifier- Returns:
- the initialized history item
- Throws:
Exception
- if initialization fails
-
doEvaluate
protected void doEvaluate(weka.classifiers.Classifier classifier, ResultItem item) throws Exception
Evaluates the classifier and updates the result item.- Specified by:
doEvaluate
in classAbstractClassifierEvaluation
- Parameters:
classifier
- the current classifieritem
- the item to update- Throws:
Exception
- if evaluation fails
-
update
public void update()
Updates the settings panel.- Specified by:
update
in classAbstractEvaluation<ClassifyTab,ResultItem>
-
activate
public void activate(int index)
Activates the specified dataset.- Specified by:
activate
in classAbstractEvaluation<ClassifyTab,ResultItem>
- Parameters:
index
- the index of the dataset
-
stopExecution
public void stopExecution()
Stops the execution.- Specified by:
stopExecution
in interfaceadams.core.Stoppable
-
isStopped
public boolean isStopped()
Whether the execution has been stopped.- Specified by:
isStopped
in interfaceadams.core.StoppableWithFeedback
- Returns:
- true if stopped
-
serialize
public Map<String,Object> serialize(Set<AbstractInvestigatorTab.SerializationOption> options)
Returns the objects for serialization.- Overrides:
serialize
in classAbstractEvaluation<ClassifyTab,ResultItem>
- Parameters:
options
- what to serialize- Returns:
- the mapping of the objects to serialize
-
deserialize
public void deserialize(Map<String,Object> data, adams.core.MessageCollection errors)
Restores the objects.- Overrides:
deserialize
in classAbstractEvaluation<ClassifyTab,ResultItem>
- Parameters:
data
- the data to restoreerrors
- for storing errors
-
-