Skip to content

jcfgonc/MT-SVM-SMO

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

MT-SVM-SMO is a prototype of a Support Vector Machine written in C++ that served as a playground for a later GPGPU implementation I did for GPUMLib using Nvidia's CUDA. The main features of this implementation is the support for multi-threaded training/classification using OpenMP and the support for five types of kernel functions:

  • linear
  • polynomial
  • radial basis function (RBF)
  • sigmoid
  • universal kernel function (UKF)

This prototype produced a paper that was published in the ICONIP 2012 Neural Information Processing conference. You can find it either in the 'paper' folder as a rough draft or the final published version at Springer.

You can find its abstract below:

Support Vector Machines (SVM) have become indispensable tools in the area of pattern recognition. They show powerful classification and regression performance in highly non-linear problems by mapping the input vectors nonlinearly into a high-dimensional feature space through a kernel function. However, the optimization task is numerically expensive since single-threaded implementations are hardly able to cope up with the complex learning task. In this paper, we present a multi-threaded implementation of the Sequential Minimum Optimization (SMO) which reduces the numerical complexity by parallelizing the KKT conditions update, the calculus of the hyperplane offset and the classification task. Our preliminary performance results in a few benchmark datasets and in a MP3 steganalysis problem are competitive compared to state-of-the-art tools while the execution running times were considerably faster.

Licensing

mapperMO is released under the MIT License, a copy of which is included in this directory.

People

The primary contributors to the MT-SVM-SMO are:

  • João Gonçalves
  • Noel Lopes
  • Bernardete Ribeiro

Please email jcfgonc@gmail.com with questions, comments, and bug reports.

About

Multi-Threaded (binary) Support Vector Machine

Resources

License

Stars

Watchers

Forks