Another service from Omega

QP Solver for SVMs


In this directory you find a simple solution to the Quadratic Programming problem for Support Vector Machines. The code is in octave, a F.R.E.E. (as in gnu-freedom!) implementation of matlab and uses Ye's interior point general purpose algorithm for QP. Make sure you have the octave-forge-2004 packages. In particular make sure the "sparse.m" from the "fake-sparse" package is found before the regular "sparse" function in your (octave) path. Here is a minimalist example:

yx = [1 0 0; -1 1 1]
toler = 1.0e-5
[l x y w b J0 rho] = svmQP(yx,toler)

The last line calls gnuplot to see the points with the solution. Ye's algorithm is able to handle up to about 500 (max) cases on an average pc in this interpreted mode. For real speed you want plain C and less brute force. There is no need to load the QP solver with ALL the examples!. Only the examples that end up on the margin matter so divide and Kill. The Torch called from within Lush is probably a good way to proceed for large problems.. but Torch's QP solvers are not as cool... can someone point me to something like Ye's (int. pt.) algorithm in C (free)?

Carlos Rodriguez <>
Last modified: 02-08-28