Abb. INB-Logo

Tools + Demos


Zurück / back

The Support Feature Machine: Classification with the Least Number of Features.

 

Purpose

By minimising the zero-norm of the separating hyperplane, the Support Feature Machine (SFM) finds the smallest subspace (the least number of features) of a dataset such that within this subspace two classes are linearly separable without error. This way the dimensionality of the data is more efficiently reduced than with support vector-based feature selection, which can be shown both theoretically and empirically.

 

Toolbox

We provide a MATLAB implementation of the Support Feature Machine and supplementary methods for visualisation and evaluation.


Installation and Usage

  1. Download sfmToolbox.zip.
  2. Unzip sfmToolbox.zip.
  3. Start Matlab.
  4. Change into the extracted directory.
  5. A supplementary file needs to be compiled by executing 
     mex getpid.c
  6. Execute the first example (two-dimensional example with randomly sampled classes (see source code for further details) by executing 
    example1
    Two figures will pop up with the results of the two alternative SFM formulations. Note: Depending on the actual choice of the data points, the separating plane will depend either on a single feature or both features if a separation in one dimension is infeasible.
  7. Execute the point-and-click example (1st class: left mouse button, 2nd class: right mouse button, Escape key: finished): 
    example2

 

Changes

 

Version 0.1, 22. December 2012
  • First experimental release
  • Core SFM implementation using the Matlab internal optimiser
  • Basic test environment (two-dimensional point-and-click examples)

 

Version 0.2, to be released soon

  • Alpha release
  • Support for 4 linear programming toolboxes (Matlab internal, Cplex, Mosek and GLPK)
  • Implementation of the Repetititve Support Feature Machine

 

Contact

Please contact klement (at) inb (dot) uni-luebeck (dot) de for further information.