Xception
7 memberslucid.models.vision.xceptionXception family — Chollet, 2017.
Chollet, François. "Xception: Deep Learning with Depthwise Separable Convolutions." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2017, pp. 1251–1258.
Xception ("Extreme Inception") interprets the Inception module as an intermediate point on a continuum between an ordinary convolution and a fully decoupled spatial/channel filter. A standard Inception block splits the input into a few parallel branches, each of which is processed by a small pointwise convolution followed by a spatial convolution, and the branch outputs are concatenated. Xception pushes this idea to its limit: instead of a handful of branches, every output channel of the pointwise convolution gets its own independent spatial filter. This is exactly the depthwise separable convolution — a pointwise mix in channel space followed by a per-channel spatial filter.
The architectural hypothesis is that the cross-channel correlations and the spatial correlations in feature maps are sufficiently decoupled that they can — and should — be modeled independently. A regular convolution conflates the two; a depthwise separable convolution separates them, dramatically reducing both the parameter count and the FLOPs:
Xception stacks 36 such layers, organised into 14 modules with linear residual shortcuts around each module (similar to ResNet). With essentially the same parameter budget as Inception-v3, it outperforms it on ImageNet and substantially outperforms it on the much larger JFT dataset. The architecture is designed for a input — the same crop size as Inception-v3 — so the spatial-reduction schedule matches that of its predecessor exactly, isolating the depthwise-separable factorisation as the sole source of accuracy improvement.
Classes
XceptionConfig1 methodsConfiguration for Xception (Extreme Inception).
Xception4 methodsXception feature-extracting backbone (no classification head).
XceptionForImageClassification2 methodsXception with dropout + linear classification head.
XceptionOutput1 methodsForward-return dataclass for XceptionForImageClassification.