RBFNetwork

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
Class RBFNetwork

    java.lang.Object
      weka.classifiers.Classifier
          weka.classifiers.functions.RBFNetwork

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, CapabilitiesHandler, OptionHandler, RevisionHandler

    public class RBFNetwork

extends Classifier
implements OptionHandler

Class that implements a normalized Gaussian radial basisbasis function network.
It uses the k-means clustering algorithm to provide the basis functions and learns either a logistic regression (discrete class problems) or linear regression (numeric class problems) on top of that. Symmetric multivariate Gaussians are fit to the data from each cluster. If the class is nominal it uses the given number of clusters per class.It standardizes all numeric attributes to zero mean and unit variance.

Valid options are:

     -B <number>
      Set the number of clusters (basis functions) to generate. (default = 2).

     -S <seed>
      Set the random seed to be used by K-means. (default = 1).

     -R <ridge>
      Set the ridge value for the logistic or linear regression.

     -M <number>
      Set the maximum number of iterations for the logistic regression. (default -1, until convergence).

     -W <number>
      Set the minimum standard deviation for the clusters. (default 0.1).

Version:
  $Revision: 1.10 $
Author:
  Mark Hall, Eibe Frank
See Also:
  Serialized Form

Constructor Summary
`RBFNetwork()`

Method Summary
`void` | `buildClassifier(Instances instances)` Builds the classifier
`java.lang.String` | `clusteringSeedTipText()` Returns the tip text for this property
`double[]` | `distributionForInstance(Instance instance)` Computes the distribution for a given instance
`Capabilities` | `getCapabilities()` Returns default capabilities of the classifier, i.e., and "or" of Logistic and LinearRegression.
`int` | `getClusteringSeed()` Get the random seed used by K-means.
`int` | `getMaxIts()` Get the value of MaxIts.
`double` | `getMinStdDev()` Get the MinStdDev value.
`int` | `getNumClusters()` Return the number of clusters to generate.
`java.lang.String[]` | `getOptions()` Gets the current settings of the classifier.
`java.lang.String` | `getRevision()` Returns the revision string.
`double` | `getRidge()` Gets the ridge value.
`java.lang.String` | `globalInfo()` Returns a string describing this classifier
`java.util.Enumeration` | `listOptions()` Returns an enumeration describing the available options
`static void` | `main(java.lang.String[] argv)` Main method for testing this class.
`java.lang.String` | `maxItsTipText()` Returns the tip text for this property
`java.lang.String` | `minStdDevTipText()` Returns the tip text for this property
`java.lang.String` | `numClustersTipText()` Returns the tip text for this property
`java.lang.String` | `ridgeTipText()` Returns the tip text for this property
`void` | `setClusteringSeed(int seed)` Set the random seed to be passed on to K-means.
`void` | `setMaxIts(int newMaxIts)` Set the value of MaxIts.
`void` | `setMinStdDev(double newMinStdDev)` Set the MinStdDev value.
`void` | `setNumClusters(int numClusters)` Set the number of clusters for K-means to generate.
`void` | `setOptions(java.lang.String[] options)` Parses a given list of options.
`void` | `setRidge(double ridge)` Sets the ridge value for logistic or linear regression.
`java.lang.String` | `toString()` Returns a description of this classifier as a String

Methods inherited from class weka.classifiers.Classifier
`classifyInstance, debugTipText, forName, getDebug, makeCopies, makeCopy, setDebug`

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

Constructor Detail

### RBFNetwork

    public RBFNetwork()

Method Detail

### globalInfo

    public java.lang.String globalInfo()

  Returns a string describing this classifier

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

### getCapabilities

    public Capabilities getCapabilities()

  Returns default capabilities of the classifier, i.e., and "or" of Logistic and LinearRegression.

  Specified by:
    `getCapabilities` in interface `CapabilitiesHandler`
  Overrides:
    `getCapabilities` in class `Classifier`
  Returns:
    the capabilities of this classifier
  See Also:
    `Logistic`, `LinearRegression`

### buildClassifier

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

  Builds the classifier

  Specified by:
    `buildClassifier` in class `Classifier`
  Parameters:
    `instances` - the training data
  Throws:
    `java.lang.Exception` - if the classifier could not be built successfully

### distributionForInstance

    public double[] distributionForInstance(Instance instance)
                                     throws java.lang.Exception

  Computes the distribution for a given instance

  Overrides:
    `distributionForInstance` in class `Classifier`
  Parameters:
    `instance` - the instance for which distribution is computed
  Returns:
    the distribution
  Throws:
    `java.lang.Exception` - if the distribution can't be computed successfully

### toString

    public java.lang.String toString()

  Returns a description of this classifier as a String

  Overrides:
    `toString` in class `java.lang.Object`
  Returns:
    a description of this classifier

### maxItsTipText

    public java.lang.String maxItsTipText()

  Returns the tip text for this property

  Returns:
    tip text for this property suitable for displaying in the explorer/experimenter gui

### getMaxIts

    public int getMaxIts()

  Get the value of MaxIts.

  Returns:
    Value of MaxIts.

### setMaxIts

    public void setMaxIts(int newMaxIts)

  Set the value of MaxIts.

  Parameters:
    `newMaxIts` - Value to assign to MaxIts.

### ridgeTipText

    public java.lang.String ridgeTipText()

  Returns the tip text for this property

  Returns:
    tip text for this property suitable for displaying in the explorer/experimenter gui

### setRidge

    public void setRidge(double ridge)

  Sets the ridge value for logistic or linear regression.

  Parameters:
    `ridge` - the ridge

### getRidge

    public double getRidge()

  Gets the ridge value.

  Returns:
    the ridge

### numClustersTipText

    public java.lang.String numClustersTipText()

  Returns the tip text for this property

  Returns:
    tip text for this property suitable for displaying in the explorer/experimenter gui

### setNumClusters

    public void setNumClusters(int numClusters)

  Set the number of clusters for K-means to generate.

  Parameters:
    `numClusters` - the number of clusters to generate.

### getNumClusters

    public int getNumClusters()

  Return the number of clusters to generate.

  Returns:
    the number of clusters to generate.

### clusteringSeedTipText

    public java.lang.String clusteringSeedTipText()

  Returns the tip text for this property

  Returns:
    tip text for this property suitable for displaying in the explorer/experimenter gui

### setClusteringSeed

    public void setClusteringSeed(int seed)

  Set the random seed to be passed on to K-means.

  Parameters:
    `seed` - a seed value.

### getClusteringSeed

    public int getClusteringSeed()

  Get the random seed used by K-means.

  Returns:
    the seed value.

### minStdDevTipText

    public java.lang.String minStdDevTipText()

  Returns the tip text for this property

  Returns:
    tip text for this property suitable for displaying in the explorer/experimenter gui

### getMinStdDev

    public double getMinStdDev()

  Get the MinStdDev value.

  Returns:
    the MinStdDev value.

### setMinStdDev

    public void setMinStdDev(double newMinStdDev)

  Set the MinStdDev value.

  Parameters:
    `newMinStdDev` - The new MinStdDev value.

### listOptions

    public java.util.Enumeration listOptions()

  Returns an enumeration describing the available options

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

       -B <number>
        Set the number of clusters (basis functions) to generate. (default = 2).

       -S <seed>
        Set the random seed to be used by K-means. (default = 1).

       -R <ridge>
        Set the ridge value for the logistic or linear regression.

       -M <number>
        Set the maximum number of iterations for the logistic regression. (default -1, until convergence).

       -W <number>
        Set the minimum standard deviation for the clusters. (default 0.1).

  Specified by:
    `setOptions` in interface `OptionHandler`
  Overrides:
    `setOptions` in class `Classifier`
  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 interface `OptionHandler`
  Overrides:
    `getOptions` in class `Classifier`
  Returns:
    an array of strings suitable for passing to setOptions

### getRevision

    public java.lang.String getRevision()

  Returns the revision string.

  Specified by:
    `getRevision` in interface `RevisionHandler`
  Returns:
    the revision

### main

    public static void main(java.lang.String[] argv)

  Main method for testing this class.

  Parameters:
    `argv` - should contain the command line arguments to the scheme (see Evaluation)

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