This file is part of the MathematicaSVM Software.
MathematicaSVM is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation.
MathematicaSVM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with MathematicaSVM. If not, see <http://www.gnu.org/licenses/>.
One of the most successful machine learning tools used to solve classification and regression problems is the Support Vector Machine (SVM) [1].
This project presents the very basic theory of linear classifiers, max-margin classifiers and Support Vector Machines and explores the use of Mathematica (c) to solve the optimization problems that arise.
Following the presentation in [1], we explicitly derive, implement and compare several classifiers, demonstrating them on synthetic 2D-data generated by the user, with visualizations involving direct hyper-parameters manipulations. This project can thus be considered a hands-on introduction to the topic.
[1] Nello Cristianini and John Shawe-Taylor. An introduction to Support Vector Machines and other kernel-based learning methods. Cambridge university press, 2000
Open MathematicaSVM.nb with Mathematica (c) and follow the instructions. The main algorithms and implementations are also synthetically presented in Presentation.nb. A pdf version of the notebook is also available for previewing the material.