Abstract
ResNeXt (Xie, Girshick, Dollár, Tu, and He, 2017) adds one idea to ResNet: a third design axis it calls cardinality, the number of parallel transformation paths inside a block. Each ResNet bottleneck is replaced by a set of identical parallel bottlenecks whose outputs are summed, which is exactly a grouped convolution. At the same parameter and compute budget as ResNet, the extra paths buy more accuracy than making the network deeper or wider. The name is a pun: ResNeXt is ResNet plus the next dimension.
The next dimension: cardinality
A convolutional network has long had two axes to scale: depth (how many layers) and width (how many channels per layer). ResNeXt names and exploits a third, cardinality: the number of parallel paths a block splits its computation into.
A ResNet bottleneck squeezes a -channel input to , transforms it with one convolution, and expands it back to . ResNeXt replaces that single path with identical parallel bottlenecks (the slide’s ), each operating on a thin slice of the channels, and sums their outputs before adding the residual shortcut. is the cardinality.
Aggregated transformations
The block computes an aggregated transformation, a sum of small networks plus the shortcut:
where each is a small bottleneck (a reduce, a , a expand) of the same shape, and the paths differ only in their learned weights. This is the split-transform-merge pattern: split the input across paths, transform each, merge by summation.
Inception's idea, made uniform
Split-transform-merge is exactly what the Inception module does, but Inception’s branches are hand-designed and heterogeneous: a , a , a , a pooling, each chosen by the architect. ResNeXt keeps the multi-branch power but makes every branch identical, so there is nothing to tune per branch, only one number to set: the cardinality. It recovers Inception’s strength with VGG-and-ResNet simplicity, stacking one repeated block and turning a single knob.
A neuron is the simplest aggregated transformation
The paper frames the block through the neuron itself. An ordinary neuron computes , a sum of the simplest possible transformations, each input scaled by one weight. ResNeXt replaces each scalar transform with a small network and keeps the sum. Cardinality is then just the number of terms in that sum, exactly as a neuron’s fan-in is the number of terms in . So “aggregated transformations” is just a neuron with a small network in place of each weight.
Which is just a grouped convolution
The parallel bottlenecks sound expensive to build, but they collapse into something the hardware already does cheaply. Because the paths are identical and their inputs are disjoint slices of the channels, the whole set of parallel convolutions is exactly one grouped convolution with groups. The paper draws the block three equivalent ways; the grouped-convolution form is the one actually run.
The two blocks side by side make the change concrete:
- the ResNet bottleneck (left): ;
- the ResNeXt bottleneck (right, ): .
Same parameters, more feature maps
The grouped is far cheaper than a dense one ( groups of channels cost a thirty-second of a dense -wide convolution), and ResNeXt spends the freed budget on wider layers: its bottleneck carries channels where ResNet’s carries . The two changes nearly cancel in parameter count, so a ResNeXt block costs about the same as a ResNet block but moves twice as many feature maps through its middle, split into independent groups. More capacity, same budget, which is exactly what the slide means by “same number of parameters, but with more feature maps”.
Why cardinality matters
Cardinality beats width and depth
ResNeXt’s central result is empirical: at a fixed parameter and compute budget, raising cardinality improves accuracy more than raising width or depth. Many small transformations aggregated outperform one large transformation of the same total size. A ResNeXt clearly beats the ResNet of equal cost and reaches the accuracy of substantially deeper ones, by spending its budget on parallel paths rather than extra layers. Cardinality joined depth and width as a knob worth turning, and the same split-into-groups idea runs through the efficient backbones that followed.
Reading " "
The two numbers are the cardinality and the per-path width. ResNeXt-50 () has paths, each channels wide (), so the grouped carries channels in groups. ResNeXt-101 () widens to paths. The "" and "" are the layer counts inherited from the matching ResNet: ResNeXt is ResNet’s skeleton with every bottleneck’s made grouped.
The lasting idea
ResNeXt’s contribution is less a network than a principle: capacity is not only depth and width, but also the number of parallel, low-dimensional paths a layer is split into. Its mechanism, a grouped convolution wrapped in a residual block, is simple; its lesson, that aggregating many small transformations is an efficient way to grow a network, is the same intuition that the Inception module reached for and that the mobile architectures after it took to the extreme.