Overview | Package | Class | Tree | Deprecated | Index | Help | Weka's home
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## weka.classifiers.functions.supportVector
Class RegSMOImproved

    java.lang.Object
      weka.classifiers.functions.supportVector.RegOptimizer
          weka.classifiers.functions.supportVector.RegSMO
              weka.classifiers.functions.supportVector.RegSMOImproved

All Implemented Interfaces:
  java.io.Serializable, OptionHandler, RevisionHandler, TechnicalInformationHandler

    public class RegSMOImproved

extends RegSMO
implements TechnicalInformationHandler

Learn SVM for regression using SMO with Shevade, Keerthi, et al. adaption of the stopping criterion.
For more information see:
S.K. Shevade, S.S. Keerthi, C. Bhattacharyya, K.R.K. Murthy: Improvements to the SMO Algorithm for SVM Regression. In: IEEE Transactions on Neural Networks, 1999.
S.K. Shevade, S.S. Keerthi, C. Bhattacharyya, K.R.K. Murthy (1999). Improvements to the SMO Algorithm for SVM Regression. Control Division, Dept. of Mechanical Engineering.

BibTeX:

     @inproceedings{Shevade1999,
        author = {S.K. Shevade and S.S. Keerthi and C. Bhattacharyya and K.R.K. Murthy},
        booktitle = {IEEE Transactions on Neural Networks},
        title = {Improvements to the SMO Algorithm for SVM Regression},
        year = {1999},
        PS = {http://guppy.mpe.nus.edu.sg/\~mpessk/svm/ieee_smo_reg.ps.gz}
     }

     @techreport{Shevade1999,
        address = {Control Division, Dept. of Mechanical Engineering},
        author = {S.K. Shevade and S.S. Keerthi and C. Bhattacharyya and K.R.K. Murthy},
        institution = {National University of Singapore},
        number = {CD-99-16},
        title = {Improvements to the SMO Algorithm for SVM Regression},
        year = {1999},
        PS = {http://guppy.mpe.nus.edu.sg/\~mpessk/svm/smoreg_mod.ps.gz}
     }

Valid options are:

     -T <double>
      The tolerance parameter for checking the stopping criterion.
      (default 0.001)

     -V
      Use variant 1 of the algorithm when true, otherwise use variant 2.
      (default true)

     -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
`static int` | `I0`
`static int` | `I0a`
`static int` | `I0b`
`static int` | `I1`
`static int` | `I2`
`static int` | `I3`

Fields inherited from class weka.classifiers.functions.supportVector.RegOptimizer
`m_alpha, m_alphaStar`

Constructor Summary
`RegSMOImproved()`

Method Summary
`void` | `buildClassifier(Instances instances)` learn SVM parameters from data using Keerthi's SMO algorithm.
`java.lang.String[]` | `getOptions()` Gets the current settings of the object.
`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.
`double` | `getTolerance()` returns the current tolerance
`java.lang.String` | `globalInfo()` Returns a string describing the object
`boolean` | `isUseVariant1()` Whether variant 1 is used
`java.util.Enumeration` | `listOptions()` Returns an enumeration describing the available options
`void` | `setOptions(java.lang.String[] options)` Parses a given list of options.
`void` | `setTolerance(double d)` sets the tolerance
`void` | `setUseVariant1(boolean b)` Sets whether to use variant 1
`java.lang.String` | `toleranceTipText()` Returns the tip text for this property
`java.lang.String` | `useVariant1TipText()` Returns the tip text for this property

Methods inherited from class weka.classifiers.functions.supportVector.RegSMO
`epsilonTipText, getEpsilon, optimize, setEpsilon`

Methods inherited from class weka.classifiers.functions.supportVector.RegOptimizer
`epsilonParameterTipText, getCacheHits, getEpsilonParameter, getKernelEvaluations, getSeed, modelBuilt, seedTipText, setEpsilonParameter, setSeed, setSMOReg, SVMOutput, toString`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### I0

    public static final int I0

See Also:
  Constant Field Values

### I0a

    public static final int I0a

See Also:
  Constant Field Values

### I0b

    public static final int I0b

See Also:
  Constant Field Values

### I1

    public static final int I1

See Also:
  Constant Field Values

### I2

    public static final int I2

See Also:
  Constant Field Values

### I3

    public static final int I3

See Also:
  Constant Field Values

Constructor Detail

### RegSMOImproved

    public RegSMOImproved()

Method Detail

### globalInfo

    public java.lang.String globalInfo()

  Returns a string describing the object

  Overrides:
    `globalInfo` in class `RegSMO`
  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 interface `TechnicalInformationHandler`
  Overrides:
    `getTechnicalInformation` in class `RegSMO`
  Returns:
    the technical information about this class

### listOptions

    public java.util.Enumeration listOptions()

  Returns an enumeration describing the available options

  Specified by:
    `listOptions` in interface `OptionHandler`
  Overrides:
    `listOptions` in class `RegSMO`
  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:

       -T <double>
        The tolerance parameter for checking the stopping criterion.
        (default 0.001)

       -V
        Use variant 1 of the algorithm when true, otherwise use variant 2.
        (default true)

       -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 interface `OptionHandler`
  Overrides:
    `setOptions` in class `RegSMO`
  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 object.

  Specified by:
    `getOptions` in interface `OptionHandler`
  Overrides:
    `getOptions` in class `RegSMO`
  Returns:
    an array of strings suitable for passing to setOptions

### toleranceTipText

    public java.lang.String toleranceTipText()

  Returns the tip text for this property

  Returns:
    a description suitable for displaying in the explorer/experimenter gui

### getTolerance

    public double getTolerance()

  returns the current tolerance

  Returns:
    the tolerance

### setTolerance

    public void setTolerance(double d)

  sets the tolerance

  Parameters:
    `d` - the new tolerance

### useVariant1TipText

    public java.lang.String useVariant1TipText()

  Returns the tip text for this property

  Returns:
    a description suitable for displaying in the explorer/experimenter gui

### isUseVariant1

    public boolean isUseVariant1()

  Whether variant 1 is used

  Returns:
    true if variant 1 is used

### setUseVariant1

    public void setUseVariant1(boolean b)

  Sets whether to use variant 1

  Parameters:
    `b` - if true then variant 1 is used

### buildClassifier

    public void buildClassifier(Instances instances)
                         throws java.lang.Exception

  learn SVM parameters from data using Keerthi's SMO algorithm. Subclasses should implement something more interesting.

  Overrides:
    `buildClassifier` in class `RegSMO`
  Parameters:
    `instances` - the data to work with
  Throws:
    `java.lang.Exception` - if something goes wrong

### getRevision

    public java.lang.String getRevision()

  Returns the revision string.

  Specified by:
    `getRevision` in interface `RevisionHandler`
  Overrides:
    `getRevision` in class `RegSMO`
  Returns:
    the revision

Overview | Package | Class | Tree | Deprecated | Index | Help | Weka's home
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD