org.biojava.stats.svm
Class RadialBaseKernel

java.lang.Object
  extended by org.biojava.stats.svm.NestedKernel
      extended by org.biojava.stats.svm.RadialBaseKernel
All Implemented Interfaces:
Serializable, SVMKernel

public class RadialBaseKernel
extends NestedKernel

This kernel computes the radial base kernel that corresponds to a gausian distribution.

The formula for this is exp( -||a - b|| / (2* width ^ 2)). The term a-b can be represented in an arbitrary feature space by using a nested kernel k, and becomes k(a, a) + k(b, b) - 2 * k(a, b).

As k(x, x) is required repeatedly, I suggest using a DiagonalCachingKernel as the immediately nested kernel function.

Author:
Matthew Pocock
See Also:
Serialized Form

Constructor Summary
RadialBaseKernel()
           
RadialBaseKernel(SVMKernel nested, double width)
           
 
Method Summary
 double evaluate(Object a, Object b)
          Return the dot product of two vectors in an arbitrary feature space.
 double getWidth()
           
 void setWidth(double width)
           
 String toString()
           
 
Methods inherited from class org.biojava.stats.svm.NestedKernel
getNestedKernel, setNestedKernel
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RadialBaseKernel

public RadialBaseKernel()

RadialBaseKernel

public RadialBaseKernel(SVMKernel nested,
                        double width)
Method Detail

evaluate

public double evaluate(Object a,
                       Object b)
Description copied from interface: SVMKernel
Return the dot product of two vectors in an arbitrary feature space. In this implementation, the `vectors' can actually be arbitrary objects.


getWidth

public double getWidth()

setWidth

public void setWidth(double width)

toString

public String toString()
Overrides:
toString in class Object