Class RegSMO
- java.lang.Object
-
- weka.classifiers.functions.supportVector.RegOptimizer
-
- weka.classifiers.functions.supportVector.RegSMO
-
- All Implemented Interfaces:
java.io.Serializable
,OptionHandler
,RevisionHandler
,TechnicalInformationHandler
- Direct Known Subclasses:
RegSMOImproved
public class RegSMO extends RegOptimizer implements TechnicalInformationHandler
Implementation of SMO for support vector regression as described in :
A.J. Smola, B. Schoelkopf (1998). A tutorial on support vector regression. BibTeX:@misc{Smola1998, author = {A.J. Smola and B. Schoelkopf}, note = {NeuroCOLT2 Technical Report NC2-TR-1998-030}, title = {A tutorial on support vector regression}, year = {1998} }
Valid options are:-P <double> The epsilon for round-off error. (default 1.0e-12)
-L <double> The epsilon parameter in epsilon-insensitive loss function. (default 1.0e-3)
-W <double> The random number seed. (default 1)
- Version:
- $Revision: 1.4 $
- Author:
- Remco Bouckaert (remco@cs.waikato.ac.nz,rrb@xm.co.nz)
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class weka.classifiers.functions.supportVector.RegOptimizer
m_alpha, m_alphaStar
-
-
Constructor Summary
Constructors Constructor Description RegSMO()
default constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
buildClassifier(Instances instances)
learn SVM parameters from data using Smola's SMO algorithm.java.lang.String
epsilonTipText()
Returns the tip text for this propertydouble
getEpsilon()
Get the value of epsilon.java.lang.String[]
getOptions()
Gets the current settings of the classifier.java.lang.String
getRevision()
Returns the revision string.TechnicalInformation
getTechnicalInformation()
Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.java.lang.String
globalInfo()
Returns a string describing classifierjava.util.Enumeration
listOptions()
Returns an enumeration describing the available optionsvoid
optimize()
finds alpha and alpha* parameters that optimize the SVM target functionvoid
setEpsilon(double v)
Set the value of epsilon.void
setOptions(java.lang.String[] options)
Parses a given list of options.-
Methods inherited from class weka.classifiers.functions.supportVector.RegOptimizer
epsilonParameterTipText, getCacheHits, getEpsilonParameter, getKernelEvaluations, getSeed, modelBuilt, seedTipText, setEpsilonParameter, setSeed, setSMOReg, SVMOutput, toString
-
-
-
-
Method Detail
-
globalInfo
public java.lang.String globalInfo()
Returns a string describing classifier- Returns:
- a description suitable for displaying in the explorer/experimenter gui
-
getTechnicalInformation
public TechnicalInformation getTechnicalInformation()
Returns an instance of a TechnicalInformation object, containing detailed information about the technical background of this class, e.g., paper reference or book this class is based on.- Specified by:
getTechnicalInformation
in interfaceTechnicalInformationHandler
- Returns:
- the technical information about this class
-
listOptions
public java.util.Enumeration listOptions()
Returns an enumeration describing the available options- Specified by:
listOptions
in interfaceOptionHandler
- Overrides:
listOptions
in classRegOptimizer
- Returns:
- an enumeration of all the available options
-
setOptions
public void setOptions(java.lang.String[] options) throws java.lang.Exception
Parses a given list of options. Valid options are:-P <double> The epsilon for round-off error. (default 1.0e-12)
-L <double> The epsilon parameter in epsilon-insensitive loss function. (default 1.0e-3)
-W <double> The random number seed. (default 1)
- Specified by:
setOptions
in interfaceOptionHandler
- Overrides:
setOptions
in classRegOptimizer
- Parameters:
options
- the list of options as an array of strings- Throws:
java.lang.Exception
- if an option is not supported
-
getOptions
public java.lang.String[] getOptions()
Gets the current settings of the classifier.- Specified by:
getOptions
in interfaceOptionHandler
- Overrides:
getOptions
in classRegOptimizer
- Returns:
- an array of strings suitable for passing to setOptions
-
epsilonTipText
public java.lang.String epsilonTipText()
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
getEpsilon
public double getEpsilon()
Get the value of epsilon.- Returns:
- Value of epsilon.
-
setEpsilon
public void setEpsilon(double v)
Set the value of epsilon.- Parameters:
v
- Value to assign to epsilon.
-
optimize
public void optimize() throws java.lang.Exception
finds alpha and alpha* parameters that optimize the SVM target function- Throws:
java.lang.Exception
-
buildClassifier
public void buildClassifier(Instances instances) throws java.lang.Exception
learn SVM parameters from data using Smola's SMO algorithm. Subclasses should implement something more interesting.- Overrides:
buildClassifier
in classRegOptimizer
- Parameters:
instances
- the data to learn from- Throws:
java.lang.Exception
- if something goes wrong
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Overrides:
getRevision
in classRegOptimizer
- Returns:
- the revision
-
-