about
Ensemble Deep Learning with “Snapshot Ensembles: Train 1, Get M for Free” (arxiv.org)
4 points by andreyk on May 15, 2017 | hide | past | pdf | 1 comment on HN

In plain words: Train one network once, cycling the learning rate so it repeatedly settles into a good solution and saving each version; then average the saved versions as an ensemble. This beats a single model at no extra training cost and rivals ensembles trained separately.

Abstract · Snapshot Ensembles: Train 1, get M for free

Ensembles of neural networks are known to be much more robust and accurate than individual networks. However, training multiple deep networks for model averaging is computationally expensive. In this paper, we propose a method to obtain the seemingly contradictory goal of ensembling multiple neural networks at no additional training cost. We achieve this goal by training a single neural network, converging to several local minima along its optimization path and saving the model parameters. To obtain repeated rapid convergence, we leverage recent work on cyclic learning rate schedules. The resulting technique, which we refer to as Snapshot Ensembling, is simple, yet surprisingly effective. We show in a series of experiments that our approach is compatible with diverse network architectures and learning tasks. It consistently yields lower error rates than state-of-the-art single models at no additional training cost, and compares favorably with traditional network ensembles. On CIFAR-10 and CIFAR-100 our DenseNet Snapshot Ensembles obtain error rates of 3.4% and 17.4% respectively.

Gao Huang, Yixuan Li, Geoff Pleiss, Zhuang Liu, John E. Hopcroft, Kilian Q. Weinberger
arXiv:1704.00109 · cs.LG · submitted Apr 1, 2017
abstract · pdf · html

add comment on HN

TLDR is they make an ensemble of models by training once, and once model is trained cycling between raising and lowering learning rate to end up in different local minima, and just snapshot the model at those different local minima.

This strikes me as very cool, their final numbers on the dataset are quite an improvement over one model... neat idea.