Package org.biojava.stats.svm
Class NormalizingKernel
- java.lang.Object
-
- org.biojava.stats.svm.NestedKernel
-
- org.biojava.stats.svm.NormalizingKernel
-
- All Implemented Interfaces:
Serializable,SVMKernel
public class NormalizingKernel extends NestedKernel
Performs a normalization on the results of a nested kernel.This is equivalent to making the locations in feature space of the nested kernel unit vectors lying on a unit sphere. The dot product in feature space then becomes just
cos thetarather than||a|| * ||b|| * cos thetaas both lengths are 1. The length of a in the feature space of kernel k issqrt( k(a, a) ), so that the normalizing kernel ends up calculatingk(a, b) / sqrt( k(a, a) * k(b, b) ).As the values of k(x, x) are required repeatedly, it may be worth making the nested kernel a DiagonalCachingKernel.
- Author:
- Thomas Down, Matthew Pocock
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description NormalizingKernel()NormalizingKernel(SVMKernel k)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doubleevaluate(Object a, Object b)Return the dot product of two vectors in an arbitrary feature space.StringtoString()-
Methods inherited from class org.biojava.stats.svm.NestedKernel
getNestedKernel, setNestedKernel
-
-
-
-
Constructor Detail
-
NormalizingKernel
public NormalizingKernel()
-
NormalizingKernel
public NormalizingKernel(SVMKernel k)
-
-