Residual Connections

A new layer may only need to improve a representation we already have. A residual connection carries the input forward so the layer can learn a correction rather than having to recreate the entire representation.

10 sections · 10 questions · 4 coding challenges

1 / 10

Why Did Adding More Layers Make Training Worse?

BOTIE

If a network already gives a useful representation, adding layers seems as though it should at least preserve that result. The new layers could simply pass the representation through. In practice, learning that apparently simple behaviour was not always easy, and deeper networks could have worse training error.

He and colleagues addressed this degradation problem in their 2015 residual-network paper. A block was asked to learn a change relative to its input, with a shortcut carrying the input alongside the learned transformation.

The output combines the original representation with the block's proposed adjustment. If little needs changing, a small adjustment is easier to express than rebuilding the whole representation. The shortcut also supplies a direct route for information and derivatives. It helps optimisation, but it does not mean every extra layer improves a model or that incompatible shapes can be added without a projection.

Sources for this history