§8.7.4–8.7.6Supervised Pretraining · Designing Models to Aid Optimization · Continuation & Curriculum Learning

Part II DL pp. 323–329 · ~5 min read

  • supervised pretraining
  • greedy layer-wise pretraining
  • transfer learning
  • continuation method
  • curriculum learning

§8.7.4 Supervised pretraining

Training a complex model on a hard task directly can be too ambitious. A greedy alternative: break the problem into pieces, solve each in isolation (cheaply, if not optimally), then optionally fine-tune the whole thing jointly — a good greedy solution is often a great starting point. The classic form is greedy supervised layer-wise pretraining (Bengio et al., 2007, fig 8.7): train a shallow supervised net, keep its hidden layer, then train a new shallow net on top of that layer’s output — repeating to build depth:

(a) train shallowxy(c) freeze h¹, add h²xyfrozen(d) fine-tune allxy

It helps by giving better guidance to the intermediate layers of a deep hierarchy. Related ideas: transfer learning (initialize with the first kk layers of a net trained on a related task, then fine-tune — §15.2), and FitNets, where an easy-to-train wide teacher supplies hints (its middle-layer activations) that a deep thin student is trained to predict, dramatically easing the student’s optimization.

§8.7.5 Designing models to aid optimization

Here is a lesson worth internalizing: the best way to improve optimization is often not to improve the optimizer, but to design a model that is easier to optimize. Most of the past 30 years’ gains came from changing the model family — SGD with momentum from the 1980s still trains state-of-the-art nets. Modern architectures deliberately use near-linear pieces (ReLU, maxout, LSTM) so the gradient flows cleanly and points reliably toward better solutions. Two more tricks shorten the path from the loss to the lower layers:

xyskipy_auxauxiliary headboth feed alarge gradientto lower layers

Skip connections shorten the path from a lower layer’s parameters to the output (mitigating vanishing gradients), and auxiliary heads (as in GoogLeNet) attach extra output copies to intermediate layers so those layers receive a strong gradient directly — an alternative to pretraining, discardable once training finishes.

§8.7.6 Continuation methods and curriculum learning

Many optimization difficulties come from the cost’s global structure. A continuation method builds a sequence of objectives J(0),,J(n)=JJ^{(0)}, \dots, J^{(n)}=J, easy to hard, where each solution initializes the next. The traditional way to make an easier J(i)J^{(i)} is to blur the cost (convolve it with a Gaussian): non-convex ripples flatten out, revealing the global basin. Crank up the blur and watch a trapped ball escape its local minimum:

Continuation by blurring: J_σ(θ) = (θ²+σ²)/20 − e^{−σ²/2}cos(θ). Large σ flattens the local minima so the ball reaches the global basin; shrinking σ tracks it to the true minimum
parameter θcost Jstart
ball starts at θ = 6.3 (a side well)
rolls to θ = 0.6
reached the global basin ✓

At σ = 0 the ball is trapped in a side well. Crank up the blur and the ripples flatten — now it rolls to the global minimum. Continuation methods solve the blurred (easy) problem first, then slowly reduce σ, tracking the optimum to the true cost. Curriculum learning is the same idea with easy examples first.

Curriculum learning — and the end of the chapter

Curriculum learning (Bengio et al., 2009) is a continuation method in disguise: plan the training so simple concepts come first and complex ones (which depend on them) later. Making the early J(i)J^{(i)} easier by up-weighting or over-sampling simple examples accelerates learning — and a stochastic curriculum (always a random mix of easy and hard, with the hard fraction rising over time) works better than a strictly deterministic one, mirroring how humans and animals are taught. That closes our tour of the neural-network family and how to regularize (ch 7) and optimize (ch 8) it. The chapters ahead specialize these networks — to images, to sequences, to scale — and the optimization methods here apply to them almost unchanged.

Next: convolutional networks — feedforward nets built for grid-structured data — chapter 9, Convolutional Networks.

Check yourself — pretraining, model design, and continuation learning

1.What is greedy layer-wise supervised pretraining, and why does it help?

2.The book argues the best way to improve optimization is often not a better optimizer. What is it instead?

3.How do skip connections and auxiliary heads aid optimization?

4.In ContinuationLab, why does increasing the blur σ let the ball escape its side well?

5.How is curriculum learning related to continuation methods, and what curriculum works best?

5 questions