public class ClassifierPanel extends JPanel implements Explorer.CapabilitiesFilterChangeListener, Explorer.ExplorerPanel, Explorer.LogHandler
JPanel.AccessibleJPanelJComponent.AccessibleJComponentContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy| Modifier and Type | Field and Description |
|---|---|
protected PropertyPanel |
m_CEPanel
The panel showing the current classifier selection
|
protected JComboBox |
m_ClassCombo
Lets the user select the class column
|
protected GenericObjectEditor |
m_ClassifierEditor
Lets the user configure the classifier
|
protected CostMatrixEditor |
m_CostMatrixEditor
The cost matrix editor for evaluation costs
|
protected VisualizePanel |
m_CurrentVis
The current visualization object
|
protected JRadioButton |
m_CVBut
Click to set test mode to cross-validation
|
protected JLabel |
m_CVLab
Label by where the cv folds are entered
|
protected JTextField |
m_CVText
The field where the cv folds are entered
|
protected JCheckBox |
m_EvalWRTCostsBut
Check to evaluate w.r.t a cost matrix
|
protected Explorer |
m_Explorer
the parent frame
|
protected JFileChooser |
m_FileChooser
The file chooser for selecting model files
|
protected ResultHistoryPanel |
m_History
A panel controlling results viewing
|
protected Instances |
m_Instances
The main set of instances we're playing with
|
protected Logger |
m_Log
The destination for log/status messages
|
protected FileFilter |
m_ModelFilter
Filter to ensure only model files are selected
|
protected JLabel |
m_OutputAdditionalAttributesLab
Label for the text field with additional attributes in the output
|
protected Range |
m_OutputAdditionalAttributesRange
the range of attributes to output
|
protected JTextField |
m_OutputAdditionalAttributesText
Lists indices for additional attributes to output
|
protected JCheckBox |
m_OutputConfusionBut
Check to output a confusion matrix
|
protected JCheckBox |
m_OutputEntropyBut
Check to output entropy statistics
|
protected JCheckBox |
m_OutputModelBut
Check to output the model built from the training data
|
protected JCheckBox |
m_OutputPerClassBut
Check to output true/false positives, precision/recall for each class
|
protected JCheckBox |
m_OutputPredictionsTextBut
Check to output text predictions
|
protected JCheckBox |
m_OutputSourceCode
Whether to output the source code (only for classifiers importing
Sourcable)
|
protected JTextArea |
m_OutText
The output area for classification results
|
protected JRadioButton |
m_PercentBut
Click to set test mode to generate a % split
|
protected JLabel |
m_PercentLab
Label by where the % split is entered
|
protected JTextField |
m_PercentText
The field where the % split is entered
|
protected FileFilter |
m_PMMLModelFilter |
protected JCheckBox |
m_PreserveOrderBut
Whether randomization is turned off to preserve order
|
protected JLabel |
m_RandomLab
the label for the random seed textfield
|
protected JTextField |
m_RandomSeedText
User specified random seed for cross validation or % split
|
protected Thread |
m_RunThread
A thread that classification runs in
|
protected JButton |
m_SetCostsBut
for the cost matrix
|
protected PropertyDialog |
m_SetCostsFrame
The frame used to show the cost matrix editing panel
|
protected JButton |
m_SetTestBut
The button used to open a separate test dataset
|
protected JFrame |
m_SetTestFrame
The frame used to show the test set selection panel
|
protected JTextField |
m_SourceCodeClass
The name of the generated class (only applicable to Sourcable schemes)
|
protected JButton |
m_StartBut
Click to start running the classifier
|
protected JButton |
m_StopBut
Click to stop a running classifier
|
protected JCheckBox |
m_StorePredictionsBut
Check to save the predictions in the results list for visualizing later on
|
protected Loader |
m_TestLoader
The loader used to load the user-supplied test set (if any)
|
protected JRadioButton |
m_TestSplitBut
Click to set test mode to a user-specified test set
|
protected JRadioButton |
m_TrainBut
Click to set test mode to test on training data
|
static String |
MODEL_FILE_EXTENSION
The filename extension that should be used for model files
|
static String |
PMML_FILE_EXTENSION
The filename extension that should be used for PMML xml files
|
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description |
|---|
ClassifierPanel()
Creates the classifier panel
|
| Modifier and Type | Method and Description |
|---|---|
void |
capabilitiesFilterChanged(Explorer.CapabilitiesFilterChangeEvent e)
method gets called in case of a change event
|
Explorer |
getExplorer()
returns the parent Explorer frame
|
String |
getTabTitle()
Returns the title for the tab in the Explorer
|
String |
getTabTitleToolTip()
Returns the tooltip for the tab in the Explorer
|
protected void |
loadClassifier()
Loads a classifier
|
static void |
main(String[] args)
Tests out the classifier panel from the command line.
|
protected String |
predictionText(Classifier classifier,
Instance inst,
int instNum)
generates a prediction row for an instance
|
protected void |
printPredictionsHeader(StringBuffer outBuff,
Instances inst,
String title)
outputs the header for the predictions on the data
|
static void |
processClassifierPrediction(Instance toPredict,
Classifier classifier,
Evaluation eval,
Instances plotInstances,
FastVector plotShape,
FastVector plotSize)
Process a classifier's prediction for an instance and update a set of
plotting instances and additional plotting info.
|
protected void |
reevaluateModel(String name,
Classifier classifier,
Instances trainHeader)
Re-evaluates the named classifier with the current test set.
|
protected void |
saveBuffer(String name)
Save the currently selected classifier output to a file.
|
protected void |
saveClassifier(String name,
Classifier classifier,
Instances trainHeader)
Saves the currently selected classifier
|
void |
setExplorer(Explorer parent)
Sets the Explorer to use as parent frame (used for sending notifications
about changes in the data)
|
void |
setInstances(Instances inst)
Tells the panel to use a new set of instances.
|
void |
setLog(Logger newLog)
Sets the Logger to receive informational messages
|
protected void |
setTestSet()
Sets the user test set.
|
static Instances |
setUpVisualizableInstances(Instances trainInstances)
Sets up the structure for the visualizable instances.
|
protected void |
startClassifier()
Starts running the currently configured classifier with the current
settings.
|
protected void |
stopClassifier()
Stops the currently running classifier (if any).
|
protected void |
updateCapabilitiesFilter(Capabilities filter)
updates the capabilities filter of the GOE
|
protected void |
updateRadioLinks()
Updates the enabled status of the input fields and labels.
|
protected void |
visualize(String name,
int x,
int y)
Handles constructing a popup menu with visualization options.
|
protected void |
visualizeBayesNet(String XMLBIF,
String graphName)
Pops up a GraphVisualizer for the BayesNet classifier from the currently
selected item in the results list
|
protected void |
visualizeClassifierErrors(VisualizePanel sp)
Pops up a VisualizePanel for visualizing the data and errors for the
classifier from the currently selected item in the results list
|
protected void |
visualizeCostBenefitAnalysis(CostBenefitAnalysis cb,
String classifierAndRelationName)
Pops up the Cost/Benefit analysis panel.
|
protected void |
visualizeTree(String dottyString,
String treeName)
Pops up a TreeVisualizer for the classifier from the currently selected
item in the results list
|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIaddAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateadd, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTreeaction, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleprotected Explorer m_Explorer
public static String MODEL_FILE_EXTENSION
public static String PMML_FILE_EXTENSION
protected GenericObjectEditor m_ClassifierEditor
protected PropertyPanel m_CEPanel
protected JTextArea m_OutText
protected Logger m_Log
protected ResultHistoryPanel m_History
protected JComboBox m_ClassCombo
protected JRadioButton m_CVBut
protected JRadioButton m_PercentBut
protected JRadioButton m_TrainBut
protected JRadioButton m_TestSplitBut
protected JCheckBox m_StorePredictionsBut
protected JCheckBox m_OutputModelBut
protected JCheckBox m_OutputPerClassBut
protected JCheckBox m_OutputConfusionBut
protected JCheckBox m_OutputEntropyBut
protected JCheckBox m_OutputPredictionsTextBut
protected JTextField m_OutputAdditionalAttributesText
protected JLabel m_OutputAdditionalAttributesLab
protected Range m_OutputAdditionalAttributesRange
protected JCheckBox m_EvalWRTCostsBut
protected JButton m_SetCostsBut
protected JLabel m_CVLab
protected JTextField m_CVText
protected JLabel m_PercentLab
protected JTextField m_PercentText
protected JButton m_SetTestBut
protected JFrame m_SetTestFrame
protected PropertyDialog m_SetCostsFrame
protected JTextField m_RandomSeedText
protected JLabel m_RandomLab
protected JCheckBox m_PreserveOrderBut
protected JCheckBox m_OutputSourceCode
protected JTextField m_SourceCodeClass
protected JButton m_StartBut
protected JButton m_StopBut
protected CostMatrixEditor m_CostMatrixEditor
protected Instances m_Instances
protected Loader m_TestLoader
protected Thread m_RunThread
protected VisualizePanel m_CurrentVis
protected FileFilter m_ModelFilter
protected FileFilter m_PMMLModelFilter
protected JFileChooser m_FileChooser
protected void updateRadioLinks()
public void setLog(Logger newLog)
setLog in interface Explorer.LogHandlernewLog - the Logger that will now get info messagespublic void setInstances(Instances inst)
setInstances in interface Explorer.ExplorerPanelinst - a set of Instancesprotected void setTestSet()
public static void processClassifierPrediction(Instance toPredict, Classifier classifier, Evaluation eval, Instances plotInstances, FastVector plotShape, FastVector plotSize)
toPredict - the actual data pointclassifier - the classifiereval - the evaluation object to use for evaluating the classifier on
the instance to predictplotInstances - a set of plottable instancesplotShape - additional plotting information (shape)plotSize - additional plotting information (size)public static Instances setUpVisualizableInstances(Instances trainInstances)
trainInstances - the instances that the classifier is trained onprotected void printPredictionsHeader(StringBuffer outBuff, Instances inst, String title)
outBuff - the buffer to add the output toinst - the data headertitle - the title to printprotected void startClassifier()
protected String predictionText(Classifier classifier, Instance inst, int instNum) throws Exception
classifier - the classifier to use for making the predictioninst - the instance to predictinstNum - the index of the instanceException - if something goes wrongprotected void visualize(String name, int x, int y)
name - the name of the result history list entry clicked on by the
userx - the x coordinate for popping up the menuy - the y coordinate for popping up the menuprotected void visualizeTree(String dottyString, String treeName)
dottyString - the description of the tree in dotty formattreeName - the title to assign to the displayprotected void visualizeBayesNet(String XMLBIF, String graphName)
XMLBIF - the description of the graph in XMLBIF ver. 0.3graphName - the name of the graphprotected void visualizeClassifierErrors(VisualizePanel sp)
sp - the VisualizePanel to pop up.protected void visualizeCostBenefitAnalysis(CostBenefitAnalysis cb, String classifierAndRelationName)
cb - the CostBenefitAnalysis panel to pop upprotected void saveBuffer(String name)
name - the name of the buffer to saveprotected void stopClassifier()
protected void saveClassifier(String name, Classifier classifier, Instances trainHeader)
name - the name of the runclassifier - the classifier to savetrainHeader - the header of the training instancesprotected void loadClassifier()
protected void reevaluateModel(String name, Classifier classifier, Instances trainHeader)
name - the name of the classifier entryclassifier - the classifier to evaluatetrainHeader - the header of the training setprotected void updateCapabilitiesFilter(Capabilities filter)
filter - the new filter to usepublic void capabilitiesFilterChanged(Explorer.CapabilitiesFilterChangeEvent e)
capabilitiesFilterChanged in interface Explorer.CapabilitiesFilterChangeListenere - the associated change eventpublic void setExplorer(Explorer parent)
setExplorer in interface Explorer.ExplorerPanelparent - the parent framepublic Explorer getExplorer()
getExplorer in interface Explorer.ExplorerPanelpublic String getTabTitle()
getTabTitle in interface Explorer.ExplorerPanelpublic String getTabTitleToolTip()
getTabTitleToolTip in interface Explorer.ExplorerPanelpublic static void main(String[] args)
args - may optionally contain the name of a dataset to load.Copyright © 2015 University of Waikato, Hamilton, NZ. All rights reserved.