JSGD: SGD for large-scale classification

This a Stochastic Gradient Descent algorithm used to train linear multiclass classifiers. It is biased towards large classification problems (many classes, many examples, high dimensional data).

The SGD implementation corresponds to the articles:


The latest source is available here: jsgd-61.tgz

Previous (stable) version: jsgd-56.tgz


The Package includes:

  • A readable Matlab implementation of the SGD method based on the paper;
  • A C implementation of SGD, intended to be fast;
  • Matlab and Python interfaces to the C package;
  • Test scripts;
  • An optimization method that finds the best parameters for the SGD by cross-validation.

Documentation is in the README file of the package.

Data files

Here are a few associated datafiles. They all contain descriptor in .fvecs format, computed on Imagenet subsets.


Feedback is welcome to
  • mattis (dot) paulin (at) inria (dot) fr

Last modified: June 19, 2013.