What are 1x1 convolutions used for?
easyAnswer
- Three roles: (1) channel-mixing / channel-wise projection — a matrix multiply across channels per spatial location, so it's a cheap way to change the number of channels; (2) bottleneck in ResNet blocks (reduce channels → 3×3 conv → expand channels) to save compute; (3) pointwise conv in depthwise-separable architectures.
- Effectively a per-position linear layer.
Check yourself — multiple choice
- 1x1 convs are useless
- Channel mixing / projection — bottleneck in ResNet, pointwise in MobileNet, cheap depth changes
- Same as pooling
- 1x1 is only for classification heads
1x1 conv = per-position channel mixer — bottleneck, pointwise, projection.
#cnn
Practise Deep Learning
214 interview questions in this topic.
Related questions
- What inductive biases do CNNs have?
- What is the receptive field in a CNN?
- Compute the output shape of a 2D convolution with input (H, W), kernel k, stride s, padding p, dilation d.
- SAME vs VALID vs REFLECT padding — what are the practical differences?
- What is a dilated (atrous) convolution?
- What is a transposed convolution ('deconv') and its checkerboard artifact issue?