MATLAB interface for SVM-Light
betaDescription
mex-svm is a set of patches against SVM-Light to compile into "mex" libraries and enable fast Support Vector Machine evaluation from within MATLAB.
Categories
License
Update Notifications
User Ratings
User Reviews
-
The author correctly recognizes that Matlab has a native Compressed Sparse Column (CSC) format for sparse matrices. He assumes that users prefer to store data in row format, so each pattern is a row of the data matrix; but this matrix is stored as a CSC matrix. The underlying data structure for SVM Light uses a sparse data structure for each pattern. To convert between representations, a matrix transpose is needed. This author uses the worst possible algorithm for this (in mexcommon.c)---it takes m x n time! There are much faster and better ways to do this, like just using Matlab's built-in, highly-optimized transpose method. If you have dense data, this code will work fine for you. If you have sparse data, you'll be mostly out of luck. There's a lot of good code here, but I had to completely rewrite mexcommon.c.