prtKernelRbf Radial basis function kernel
KERNOBJ = prtKernelRbf Generates a kernel object implementing a
radial basis function. Kernel objects are widely used in several
prt classifiers, such as prtClassRvm and prtClassSvm. RBF kernels
implement the following function for 1 x N vectors x1 and x2:
k(x1,x2) = exp(-sum((x1-x2).^2)./sigma.^2);
KERNOBJ = prtKernelRbf(PROPERTY1, VALUE1, ...) constructs a
prtKernelRbfNdimensionScale object KERNOBJ with properties as specified by
PROPERTY/VALUE pairs. prtKernelRbf objects have the following
user-settable properties:
KERNOBJ = prtKernelRbf(param,value,...) with parameter value
strings sets the relevant fields of the prtKernelRbf object to have
the corresponding values. prtKernelRbf objects have the following
user-settable properties:
sigma - Positive scalar value specifying the width of the
Gaussian kernel in the RBF function. (Default value is 1)
Radial basis function kernels are widely used in the machine
learning literature. For more information on these kernels, please
refer to:
http://en.wikipedia.org/wiki/Support_vector_machine#Non-linear_classification
prtKernelRbf objects inherit the TRAIN and RUN methods from prtKernel.
% Example
ds = prtDataGenBimodal; % Generate a dataset
k1 = prtKernelRbf; % Create a prtKernel object with
% default value of sigma
k2 = prtKernelRbf('sigma',2); % Create a prtKernel object with
% specified value of sigma
k1 = k1.train(ds); % Train
g1 = k1.run(ds); % Evaluate
k2 = k2.train(ds); % Train
g2 = k2.run(ds); % Evaluate
subplot(2,1,1); imagesc(g1.getObservations); %Plot the results
subplot(2,1,2); imagesc(g2.getObservations);