||This website contains the source code for
all figures and a demo library of functions for classification learning.
Please read the disclaimer before you proceed.
Most of the figures have been created using the language R. Note that the
codes are designed to output the graphics directly into a postscript file.
Replace the lines postscript(...) with x11() to redirect the
output to the screen. Moreover, the output is done into the directory
Hypothesis space, Feature space.
Figure 2.2: A
geometrical picture of the update step in the PLA.
Figure 2.3: Mapping
of the unit square, Nine
different decision surfaces. (feature.R)
Figure 2.4: Real valued function for varying
values of σ (σ=0.5,
Figure 2.5: Intensity
plots of normalized Gram matrices when applying string kernels (bow
kernel, subsequence kernel,
substring kernel). (rbf_demo.R,
Figure 2.6: Geometrical
margin of a plane (large margin,
small margin). (demo.R)
Approximation to the Heaviside step function.
Figure 2.8: Largest
inscribable ball in version space (3D,
from top). (bayes_set.m,
Figure 3.1: Effect
of evidence maximization. (demo.R)
Figure 3.2: Gaussian process evidence
maximization for a simple regression problem (log-evidence,
noise fit). (demo.R,
Figure 3.3: A function sampled from the ARD prior
slow variations). (demo.R,
Latent variable model for classification. (demo.R,
Approximation to the zero-one loss by the sigmoidal loss,
Likelihood model induced by the hinge
Figure 3.6: Marginalized log-prior densities (n=1,
Figure 3.7: Five samples obtained by playing
billiards on the sphere (3-D,
Figure 3.8: Fisher
discriminant estimated from 80 data points,
a geometrical interpretation of the Fisher
In addition to the R source code of the figures, I have implemented
all algorithms mentioned in
Appendix D in R. The
code will run with R version 1.3.0; newer versions of R might not work
(thanks to Thomas Gärtner). The PR_LOQO routine was written by
Alexander Smola at
order to use this library, you are required to compile all the C source
codes. If you are running UNIX, e.g. LINUX, just type
R SHLIB kernels.c
R SHLIB kperc.c
R SHLIB pr_loqo.c
In case, you are running Windows 98/NT/2000/XP, you have to replace
At first, you have to download the sources.
You can run several examples to get an idea how to use
the many different algorithms.
(C) Ralf Herbrich. All rights reserved.
Redistribution and use in source and binary forms, with
or without modification, are permitted provided that the following
conditions are met:
- Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS FREE ONLY FOR
NON-COMMERCIAL USE. IT MUST NOT BE MODIFIED AND DISTRIBUTED WITHOUT PRIOR
PERMISSION OF THE AUTHOR. THIS SOFTWARE IS PROVIDED BY "AS IS''
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH