weka.classifiers.functions
Class GPD

java.lang.Object
  extended by weka.classifiers.AbstractClassifier
      extended by weka.classifiers.functions.GPD
All Implemented Interfaces:
Serializable, Cloneable, weka.classifiers.Classifier, weka.core.CapabilitiesHandler, weka.core.OptionHandler, weka.core.RevisionHandler, weka.core.TechnicalInformationHandler, weka.core.WeightedInstancesHandler

public class GPD
extends weka.classifiers.AbstractClassifier
implements weka.core.WeightedInstancesHandler, weka.core.OptionHandler, weka.core.TechnicalInformationHandler

// this version: testbed for different solvers ... // this is GaussianProcessesX + "inline" RBFkernel Implements Gaussian Processes for regression without hyperparameter-tuning. For more information see

David J.C. Mackay (1998). Introduction to Gaussian Processes. Dept. of Physics, Cambridge University, UK.

BibTeX:

 @misc{Mackay1998,
    address = {Dept. of Physics, Cambridge University, UK},
    author = {David J.C. Mackay},
    title = {Introduction to Gaussian Processes},
    year = {1998},
    PS = {http://wol.ra.phy.cam.ac.uk/mackay/gpB.ps.gz}
 }
 

Valid options are:

 -D
  If set, classifier is run in debug mode and
  may output additional info to the console
 -L <double>
  Level of Gaussian Noise.
  (default: 1.0)
 -G <double>
  Gamma for the RBF kernel.
  (default: 0.01)
 -N
  Whether to 0=normalize/1=standardize/2=neither.
  (default: 0=normalize)
 -D
  If set, classifier is run in debug mode and
  may output additional info to the console

Author:
Kurt Driessens (kurtd@cs.waikato.ac.nz), Bernhard Pfahringer (bernhard@cs.waikato.ac.nz)
See Also:
Serialized Form

Field Summary
static int FILTER_NONE
          no filter
static int FILTER_NORMALIZE
          normalizes the data
static int FILTER_STANDARDIZE
          standardizes the data
protected  double m_Alin
          The parameters of the linear transforamtion realized by the filter on the class attribute
protected  double m_avg_target
          The training data.
protected  double m_Blin
           
protected  boolean m_checksTurnedOff
          Turn off all checks and conversions? Turning them off assumes that data is purely numeric, doesn't contain any missing values, and has a numeric class.
protected  double[][] m_chol
           
protected  int m_classIndex
          The class index from the training data
protected  double[][] m_data
           
protected  double m_delta
          Gaussian Noise Value.
protected  weka.filters.Filter m_Filter
          The filter used to standardize/normalize all values.
protected  int m_filterType
          Whether to normalize/standardize/neither
protected  double m_gamma
           
protected  double[][] m_L
           
protected  weka.filters.unsupervised.attribute.ReplaceMissingValues m_Missing
          The filter used to get rid of missing values.
protected  weka.filters.unsupervised.attribute.NominalToBinary m_NominalToBinary
          The filter used to make attributes numeric.
protected  int m_NumTrain
          The number of training instances
protected  double[] m_t
          The vector of target values.
static weka.core.Tag[] TAGS_FILTER
          The filter to apply to the training data
 
Fields inherited from class weka.classifiers.AbstractClassifier
m_Debug
 
Constructor Summary
GPD()
           
 
Method Summary
 void buildClassifier(weka.core.Instances insts)
          Method for building the classifier.
 double[][] choleskyDecomposition(double[][] A)
           
 double classifyInstance(weka.core.Instance inst)
          Classifies a given instance.
 String filterTypeTipText()
          Returns the tip text for this property
 String gammaTipText()
          Returns the tip text for this property
 weka.core.Capabilities getCapabilities()
          Returns default capabilities of the classifier.
 weka.core.SelectedTag getFilterType()
          Gets how the training data will be transformed.
 double getGamma()
           
 double getNoise()
          Get the value of noise.
 String[] getOptions()
          Gets the current settings of the classifier.
 weka.core.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.
 String globalInfo()
          Returns a string describing classifier
 Enumeration listOptions()
          Returns an enumeration describing the available options.
static void main(String[] argv)
          Main method for testing this class.
 String noiseTipText()
          Returns the tip text for this property
 double rbfKernel(double[] x, double[] y, double gamma)
           
 void setFilterType(weka.core.SelectedTag newType)
          Sets how the training data will be transformed.
 void setGamma(double v)
           
 void setNoise(double v)
          Set the level of Gaussian Noise.
 void setOptions(String[] options)
          Parses a given list of options.
 double[] solveChol(double[][] L, double[] b)
           
 double squaredDistance(double[] x, double[] y)
           
 String toString()
          Prints out the classifier.
 
Methods inherited from class weka.classifiers.AbstractClassifier
debugTipText, distributionForInstance, forName, getDebug, getRevision, makeCopies, makeCopy, runClassifier, setDebug
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_NominalToBinary

protected weka.filters.unsupervised.attribute.NominalToBinary m_NominalToBinary
The filter used to make attributes numeric.


FILTER_NORMALIZE

public static final int FILTER_NORMALIZE
normalizes the data

See Also:
Constant Field Values

FILTER_STANDARDIZE

public static final int FILTER_STANDARDIZE
standardizes the data

See Also:
Constant Field Values

FILTER_NONE

public static final int FILTER_NONE
no filter

See Also:
Constant Field Values

TAGS_FILTER

public static final weka.core.Tag[] TAGS_FILTER
The filter to apply to the training data


m_Filter

protected weka.filters.Filter m_Filter
The filter used to standardize/normalize all values.


m_filterType

protected int m_filterType
Whether to normalize/standardize/neither


m_Missing

protected weka.filters.unsupervised.attribute.ReplaceMissingValues m_Missing
The filter used to get rid of missing values.


m_checksTurnedOff

protected boolean m_checksTurnedOff
Turn off all checks and conversions? Turning them off assumes that data is purely numeric, doesn't contain any missing values, and has a numeric class.


m_delta

protected double m_delta
Gaussian Noise Value.


m_classIndex

protected int m_classIndex
The class index from the training data


m_data

protected double[][] m_data

m_gamma

protected double m_gamma

m_Alin

protected double m_Alin
The parameters of the linear transforamtion realized by the filter on the class attribute


m_Blin

protected double m_Blin

m_NumTrain

protected int m_NumTrain
The number of training instances


m_avg_target

protected double m_avg_target
The training data.


m_t

protected double[] m_t
The vector of target values.


m_chol

protected double[][] m_chol

m_L

protected double[][] m_L
Constructor Detail

GPD

public GPD()
Method Detail

globalInfo

public String globalInfo()
Returns a string describing classifier

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

getTechnicalInformation

public weka.core.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 weka.core.TechnicalInformationHandler
Returns:
the technical information about this class

getCapabilities

public weka.core.Capabilities getCapabilities()
Returns default capabilities of the classifier.

Specified by:
getCapabilities in interface weka.classifiers.Classifier
Specified by:
getCapabilities in interface weka.core.CapabilitiesHandler
Overrides:
getCapabilities in class weka.classifiers.AbstractClassifier
Returns:
the capabilities of this classifier

buildClassifier

public void buildClassifier(weka.core.Instances insts)
                     throws Exception
Method for building the classifier.

Specified by:
buildClassifier in interface weka.classifiers.Classifier
Parameters:
insts - the set of training instances
Throws:
Exception - if the classifier can't be built successfully

classifyInstance

public double classifyInstance(weka.core.Instance inst)
                        throws Exception
Classifies a given instance.

Specified by:
classifyInstance in interface weka.classifiers.Classifier
Overrides:
classifyInstance in class weka.classifiers.AbstractClassifier
Parameters:
inst - the instance to be classified
Returns:
the classification
Throws:
Exception - if instance could not be classified successfully

squaredDistance

public double squaredDistance(double[] x,
                              double[] y)

rbfKernel

public double rbfKernel(double[] x,
                        double[] y,
                        double gamma)

listOptions

public Enumeration listOptions()
Returns an enumeration describing the available options.

Specified by:
listOptions in interface weka.core.OptionHandler
Overrides:
listOptions in class weka.classifiers.AbstractClassifier
Returns:
an enumeration of all the available options.

setOptions

public void setOptions(String[] options)
                throws Exception
Parses a given list of options.

Valid options are:

 -D
  If set, classifier is run in debug mode and
  may output additional info to the console
 -L <double>
  Level of Gaussian Noise.
  (default: 1.0)
 -G <double>
  Gamma for the RBF kernel.
  (default: 0.01)
 -N
  Whether to 0=normalize/1=standardize/2=neither.
  (default: 0=normalize)
 -D
  If set, classifier is run in debug mode and
  may output additional info to the console

Specified by:
setOptions in interface weka.core.OptionHandler
Overrides:
setOptions in class weka.classifiers.AbstractClassifier
Parameters:
options - the list of options as an array of strings
Throws:
Exception - if an option is not supported

getOptions

public String[] getOptions()
Gets the current settings of the classifier.

Specified by:
getOptions in interface weka.core.OptionHandler
Overrides:
getOptions in class weka.classifiers.AbstractClassifier
Returns:
an array of strings suitable for passing to setOptions

filterTypeTipText

public String filterTypeTipText()
Returns the tip text for this property

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

getFilterType

public weka.core.SelectedTag getFilterType()
Gets how the training data will be transformed. Will be one of FILTER_NORMALIZE, FILTER_STANDARDIZE, FILTER_NONE.2200Instances

Returns:
the filtering mode

setFilterType

public void setFilterType(weka.core.SelectedTag newType)
Sets how the training data will be transformed. Should be one of FILTER_NORMALIZE, FILTER_STANDARDIZE, FILTER_NONE.

Parameters:
newType - the new filtering mode

noiseTipText

public String noiseTipText()
Returns the tip text for this property

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

getNoise

public double getNoise()
Get the value of noise.

Returns:
Value of noise.

setNoise

public void setNoise(double v)
Set the level of Gaussian Noise.

Parameters:
v - Value to assign to noise.

getGamma

public double getGamma()

setGamma

public void setGamma(double v)

gammaTipText

public String gammaTipText()
Returns the tip text for this property

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

toString

public String toString()
Prints out the classifier.

Overrides:
toString in class Object
Returns:
a description of the classifier as a string

main

public static void main(String[] argv)
Main method for testing this class.

Parameters:
argv - the commandline parameters

choleskyDecomposition

public double[][] choleskyDecomposition(double[][] A)

solveChol

public double[] solveChol(double[][] L,
                          double[] b)


Copyright © 2012 University of Waikato, Hamilton, NZ. All Rights Reserved.