Inception (deep learning architecture) 2026-11-05
Inception is a family of convolutional neural network architectures built around modules with parallel processing branches. An early module combines several convolution sizes and a pooling layer, then joins their outputs along the channel dimension. Pointwise convolution can reduce channel counts before more expensive spatial operations.[ref]
Going Deeper with Convolutions by Christian Szegedy and others. §4 and Fig. 2, parallel branches and dimensionality reduction
For a stipulated shape example, let every branch produce a grid, with output channel counts , , and . Joining channels gives a output becauseThe equal spatial grid sizes are an assumption ensured by the branch design. Channel joining does not add corresponding values into one channel; it retains the distinct branch outputs as separate channels of the combined neural network feature map.
A cost example explains the reduction branch. Ignoring biases, a dense three-by-three convolutional layer from input channels to output channels hasweights. Reducing first from to channels with a one-by-one pointwise convolution, then applying the three-by-three layer, usesweights. This own example isolates channel dimensions; it is not a reported layer configuration or a claim that the two computations represent identical functions.
The original paper presents this design in the GoogLeNet network and evaluates image classification and detection. Later Rethinking the Inception Architecture for Computer Vision by Christian Szegedy and others develops additional factorization and training choices. The family name therefore does not identify one immutable list of layers or one universal performance result.[ref]
Going Deeper with Convolutions by Christian Szegedy and others. Abstract; §§4–5, modules and network
[ref] Pointwise convolution 2026-11-05
A pointwise convolution uses a spatial kernel of size one to combine neural network channels independently at each spatial position. For a two-dimensional input this is a one-by-one convolutional layer. In the ordinary dense-channel, unit-stride case, the same affine map acts on the channel vector at every grid point.[ref]
Conv2d in the PyTorch documentation. Opening equation and kernel_size/stride parameters, specialized to kernel size one and groups=1
Let be the channel vector at position . With weight matrix and neural network bias vector , the output isThis is matrix multiplication across channels, not an average of neighboring spatial positions. The same and are reused throughout the grid.
For an example without biases, takeAt a point with input the output is . At another point with input it is . A three-channel neural network feature map has become a two-channel map without mixing the two positions.
There are weights, plus optional biases. Thus three input and two output channels require six weights, or eight parameters including biases. A dense three-by-three filter with the same channel counts requires weights, or fifty-six parameters with biases. This comparison counts parameters for the stated connectivity; it does not claim that the two layers compute equivalent functions.
Channel reduction can make a later spatial convolutional layer cheaper. The original Inception uses one-by-one reductions before some larger filters. A pointwise operation can also increase the channel count; size one refers to its spatial footprint, not to the number of channels.[ref]
Going Deeper with Convolutions by Christian Szegedy and others. §4 and Fig. 2, one-by-one dimension-reduction branches
With no intervening spatial operation, pointwise layers and pointwise activation functions alone do not enlarge the spatial neural network receptive field.