CS PAPERS DEEP-READ · PAPER 30

Dropout

Srivastava, Hinton, Krizhevsky, Sutskever & Salakhutdinov · University of Toronto · JMLR 2014

中文 →

What did this paper do?

In 2014, Geoffrey Hinton's group in Toronto wrote up a trick that sounds like sabotage: while training a neural network, randomly send some of its neurons home at every single step — pretend, for that step, that they do not exist. The trick is called dropout, it takes a few lines of code, and it treats deep learning's most common disease: the model memorizes the practice questions and falls apart on the real exam. AlexNet, the network that won ImageNet in 2012 and set off this entire wave of AI, used it.

The pain of the old world

A neural network has millions of tunable knobs, and training data is always finite. With that many knobs, it can memorize the accidents that happen to be in this particular batch of data — "the cat photos all had grass in the bottom-right corner" — and then flounders on a photo it has never seen. This is overfitting, and back then it was the single biggest obstacle in the field.

The reliable cure was a committee: train several models and let them vote, so their individual flukes cancel out. The problem is the price — dozens of times the compute to train, and every incoming photo run through every model once deployed.

The idea

Dropout's move is almost crude in its simplicity: at each training step, pick roughly half the neurons at random and erase them, along with every wire going in and out. Let the crippled network that remains learn from that step as usual. Next step, draw again — a different half goes home.

Why does that help?

First, it breaks up the cliques. If a neuron can always count on the one next door to cover for it, whatever it learns only works while that neighbour is present; groups of neurons lean on each other, patch each other's mistakes, and skills like that are brittle on new data. Once anyone might be absent, every neuron has to learn something that stands on its own. The paper's own analogy is lovely: rather than one conspiracy of fifty people, where a single slip sinks everything, run ten conspiracies of five.

Second, it makes the committee cheap. Every draw gives a different crippled network, so a few hundred thousand steps train an enormous family of them — and because they all share the same set of knobs, you paid for exactly one. That expensive voting effect comes free.

And at exam time?

At prediction time you cannot keep drawing lots — the same photo would get different answers twice in a row. The fix is almost comically plain: let everyone show up, but turn each voice down in proportion to how often they used to attend. Only half the room was present on average during training; now that everyone is there, each speaks more softly so the total matches. Remarkably, that single ordinary forward pass lands very close to polling the whole enormous family of crippled networks.

One honest cost: because every step is fighting random noise, reaching the same quality takes roughly two to three times as long to train.

What it brought

After dropout, building a bigger network no longer meant memorizing more. It became a standard part in 2012–2016 — nearly every vision, speech and text model of that era used it, and Transformers still keep a slot for it today. It also opened a whole line of thinking: deliberately inject noise during training and the model is forced to learn something sturdier.

One line to remember

Send half the neurons home at random on every training step, so no neuron can lean on a particular partner; the same trick trains an enormous family of crippled networks inside one shared set of weights, and at test time you bring everyone back and turn the volume down by the attendance rate — one forward pass, approximately the whole committee's vote.

Want the mask, why the weights get scaled by p, and the numbers on each dataset? → Switch to the deep read