Deep Residual Learning for Image Recognition

The paper introduced residual learning as a practical architecture pattern for training very deep convolutional networks.

Metadata

FieldValue
PaperDeep Residual Learning for Image Recognition
AuthorsKaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun
Year2015 preprint; 2016 conference
VenueCVPR 2016
arXiv1512.03385
Statusverified

Question

Before ResNet, simply stacking more convolutional layers often made optimization worse even when overfitting was not the only issue. The question was whether a deep network could be parameterized so that additional layers could learn refinements instead of having to relearn the full mapping.

The paper is not only about making networks larger. It identifies the degradation problem: beyond some depth, a plain deep network can have higher training error than a shallower network, even though the deeper model should in principle be able to represent the shallower solution.

That observation suggests an optimization and parameterization problem:

The residual hypothesis is that it is easier to learn a correction to an identity mapping than to learn the full mapping from scratch.

Main Claim

Residual blocks make very deep CNNs easier to optimize by learning a residual function around an identity path.

Narrowed claim:

where the block learns rather than forcing the stacked layers to learn directly.

This is an architecture and optimization claim, not just a computer vision benchmark claim.

Equivalently, if the desired mapping is , the residual branch learns:

If the best extra layers are unnecessary, the residual branch can move toward zero and the block can approximate identity:

This identity fallback is the core design idea.

Architecture Contract

ItemContract
Inputimage tensor or intermediate feature map
Outputfeature map with same or changed spatial/channel dimensions
Main unitresidual block
Token/grid assumption2D image grid with convolutional locality
Shortcut pathidentity or projection
Residual pathstack of convolution, normalization, activation layers
Main promisedeeper CNNs become easier to optimize

For a feature map:

a same-shape residual block returns:

When spatial size or channel count changes:

where is usually a projection shortcut.

Method

The core block adds a skip connection around a small stack of convolution, normalization, and activation layers:

When dimensions change, the identity path may use a projection:

The key idea is not that the skip path is expressive. The key idea is that the network can keep an identity-like solution available while learning residual corrections.

Basic Block

For shallower ImageNet ResNets and CIFAR-style networks, the basic residual block uses two convolutions:

and then:

where denotes convolution, is batch normalization, and is usually ReLU in the original architecture.

The important point is that the residual branch does the nonlinear transformation, while the shortcut preserves a direct signal path.

Bottleneck Block

For deeper ImageNet models, the paper uses a bottleneck design:

The first convolution reduces channel dimension, the convolution performs spatial processing, and the final convolution restores channel dimension.

LayerRole
reducelower channel cost before spatial convolution
convlocal spatial feature extraction
expandrestore output channel width
shortcutpreserve direct signal path

The bottleneck block makes very deep networks computationally practical.

Shortcut Types

The shortcut path is not always identical.

ShortcutUseTradeoff
identitysame shapeno extra parameters
zero-padding shortcutchannel increase without projectioncheap, less expressive
projection shortcutshape/channel mismatch or stronger shortcutadds parameters and compute

When feature map size changes, a projection is needed for addition to be well-defined:

This is an architecture contract, not an implementation detail. Residual addition requires shape alignment.

Why Residuals Help Optimization

Residual networks improve gradient flow because the shortcut creates direct paths through the network.

For one block:

The local derivative is:

The identity term gives the gradient a direct route, even if the residual branch is poorly conditioned.

Across many blocks:

This additive view makes depth behave like a sequence of refinements rather than a completely new transformation at every layer.

Relation to Plain CNNs

ArchitectureMain ComputationFailure Mode Addressed
VGG-style plain CNNstack convolutions directlydeeper stacks can become harder to optimize
Inception-style CNNmulti-branch compute-efficient moduleswidth and receptive-field diversity
ResNetresidual blocks with shortcut pathsdegradation and gradient flow

ResNet does not remove convolutional inductive bias. It changes how convolutional layers are composed.

Evidence

ClaimEvidence in paperCaveat
Residual networks optimize better than plain deep networkscomparisons between plain and residual networks at increasing depthevidence is centered on vision benchmarks
Very deep CNNs can improve recognition accuracyImageNet and CIFAR experiments with deep residual networkslater results depend on training recipes and data
Residual learning generalizes beyond classificationobject detection experiments using residual backbonesdetection pipeline includes other components

Ablation Reading

The paper’s strongest evidence is the plain-vs-residual comparison at similar depth.

Ablation AxisWhat it testsReading
plain vs residual networkwhether shortcuts improve optimizationthe core evidence for residual learning
increasing depthwhether very deep networks remain trainableresidual parameterization makes depth useful
shortcut optionidentity vs projection behaviorprojection can help shape matching and capacity
CIFAR and ImageNet settingsrobustness across dataset scalesstill vision-centered evidence
detection transferbackbone reuse beyond classificationdownstream system includes other design choices

The key reading is that the residual network does not merely reduce test error; it also reduces training error compared with plain deep networks. That supports an optimization claim, not only a regularization claim.

Benchmark Card

FieldValue
Main taskimage classification
Main datasetsImageNet, CIFAR
Secondary taskobject detection
Main comparisonplain CNNs and prior CNN backbones
Main metricclassification error and detection metrics
Not directly testedsequence modeling, graph learning, language modeling, molecular modeling

What Later Models Kept and Changed

KeptChanged Later
skip/residual pathspre-activation residual blocks
additive identity routegated, scaled, or normalized residual variants
bottleneck block ideawider bottlenecks, grouped convolution, depthwise convolution
deep backbone reusemodern detection/segmentation/self-supervised backbones
residual compositionTransformers and MLP-style models adopted residual blocks

The residual connection became architecture-neutral. Transformers, diffusion U-Nets, graph networks, and many protein/structure models now use residual composition even when the original CNN setting is absent.

Implementation Notes

  • Addition requires shape alignment; channel or stride changes need a projection or other matching rule.
  • BatchNorm mode matters: training/eval mismatch can change residual block behavior.
  • Initialization affects whether residual branches start near identity or perturb strongly.
  • Pre-activation ResNets changed the ordering of BN/ReLU/conv and often improve optimization.
  • Residual connections help optimization but do not guarantee numerical stability at arbitrary depth.
  • In transfer learning, early convolutional locality and later semantic features behave differently; freezing all layers may not be ideal.

Limitations

  • Residual connections do not remove the need for normalization, initialization, data augmentation, or training recipe choices.
  • The paper does not prove that deeper is always better; it shows a practical parameterization that makes depth more useful.
  • Later residual architectures changed block ordering, bottleneck design, normalization, activation, and width-depth tradeoffs.
  • Skip connections can make attribution harder because information flows through multiple paths.
  • The evidence is mostly image classification and detection, so claims about other modalities require separate support.
  • Residual paths can hide weak residual branches; a deep model may behave like a shallower model if residual functions contribute little.
  • Compute, memory, and latency still grow with depth even when optimization improves.

Why It Matters

ResNet made residual connections a default architectural primitive. In this wiki, it is the anchor paper for:

The general reusable pattern is:

This pattern appears in:

AreaResidual-like Role
CNNstrain deeper visual backbones
Transformersstabilize repeated attention/FFN blocks
diffusion U-Netscompose denoising features across depth
neural ODEsview depth as incremental dynamics
graph networksavoid oversmoothing and preserve node states

Connections