# Batching: A Growing-Batch Quasi-Newton Method

By Mark
Schmidt
(2011)

Last updated 7 July 2019.
## Summary

This code contains a Matlab implementation of a growing-batch quasi-Newton method, described in the following paper:
Clicking on the image belows gives a presentation giving an overview of this work:

The code also contains a variant that exploits sparsity in the sum ("support vectors") described in an addendum here
## Download and Examples

To use the code, download and
unzip hybrid.zip.
Once this is done, type the following in Matlab:

**>> cd hybrid % Change to the unzipped directory
>> addpath(genpath(pwd)) % Add all sub-directories to the path
>> mexAll % Compile mex files (not necessary on all systems)
>> example_batching % An example of using the method
>> example_batchingL2SVM % An example of using the sparse variant
**

To produce the plots in the paper, run *expBatching_plotAll*. If you delete the results files, you can re-run the experiments from the paper using *expBatching_runAll* (this is slow because some operations are not implemented efficiently in the loss functions, and because the methods that do not use the full batch frequently evaluate the objective function for tracking purposes).

Mark Schmidt > Software > batching