Home          Technical  Report       Software      Datasets      Demo 


ManifoldLearn     Matlab Routines for Manifold Regularization

Contact: Vikas Sindhwani  (vikass@cs.uchicago.edu)

ManifoldLearn implements Laplacian Regularized Least Squares and Laplacian Support Vector Machines algorithms. Clustering, semi-supervised and fully supervised learning tasks can be handled within the same conceptual and algorithmic framework.
 

This software was tested with matlab 6.5 R13  running under Linux.  Also tested under windows running cygwin (Put cygwin1.dll in your windows path or invoke matlab from cygwin; mex files were compiled under cygwin using gnumex ).

Download Current  Version  (June 2004)  :   ManifoldLearn.tar.gz


Usage:  Here are some examples to get started. Type "help filename" for more information.

Generate  an options  structure for training
                         options=ml_options('Kernel','rbf','KernelParam',0.5,'NN',6);

Train a Classifier

                         classifier=ml_train(X,Y,options,'lapsvm');

Test a classifier

                         [real_output, binary_labels, error_rate]=ml_test(classifier, Xtest, Ytest);

Computing Kernels

                        K=calckernel('rbf', 1, X);
                        calckernel computes linear, polynomial or RBF kernels.

Computing  Graphs Laplacian
                        
L=laplacian(X,'nn',options)
                        Graphs can be constructed with euclidean or cosine distance measures; with binary  weights or heat kernel weights; normalized or  unnormalized.


Training Algorithms
                     
Implemented in  svm.m, rlsc.m, lapsvm.m, laprlsc.m  -- these routines take gram matrix and graph laplacian matrix, and output expansion coefficients (alphas).  A mex interface to libsvm is used for SVM QP. 

Evaluating  Classifiers
                   
Can use ROC curves, precision-recall breakeven points, etc. Uses some of Jason Rennie's Matlab Code.