prtKernelHyperbolicTangent Hyperbolic tangent kernel
kernelObj = prtKernelHyperbolicTangent; Generates a kernel object
implementing a hyperbolic tangent. Kernel objects are widely used
in several prt classifiers, such as prtClassRvm and prtClassSvm.
Hyperbolic tangent kernels implement the following function for 1 x
N vectors x1 and x2:
k(x1,x2) = tanh(kappa*x1*x2'+c);
KERNOBJ = prtKernelHyperbolicTangent(PROPERTY1, VALUE1, ...) constructs a
prtKernelHyperbolicTangent object KERNOBJ with properties as specified by
PROPERTY/VALUE pairs. prtKernelHyperbolicTangent objects have the following
user-settable properties:
kappa - Positive scalar value specifying the gain on the inner
product between x1 and x2 (default 1)
c - Scalar value specifying DC offset in hyperbolic tangent
function
For more information on these kernels, please refer to:
http://en.wikipedia.org/wiki/Support_vector_machine#Non-linear_classification
prtKernelHyperbolicTangent objects inherit the TRAIN, RUN, and AND
methods from prtKernel.
% Example:
ds = prtDataGenBimodal;
k1 = prtKernelHyperbolicTangent;
k2 = prtKernelHyperbolicTangent('kappa',2);
k1 = k1.train(ds); % Train
g1 = k1.run(ds); % Evaluate
k2 = k2.train(ds); % Train
g2 = k2.run(ds); % Evaluate
subplot(2,2,1); imagesc(g1.getObservations); %Plot the results
subplot(2,2,2); imagesc(g2.getObservations);