condconv
**CondConv** (Conditionally Parameterized Convolutions) is a **convolution variant where kernel weights are computed as a linear combination of expert kernels, conditioned on the input** — similar to Dynamic Convolution but introduced independently by Google Brain.
**How Does CondConv Work?**
- **Experts**: $n$ convolutional kernels (experts) ${W_1, ..., W_n}$ with the same shape.
- **Routing**: Input-dependent routing weights $alpha = sigma(r(x))$ where $r$ is a routing function.
- **Combined Kernel**: $W = sum_i alpha_i W_i$.
- **Apply**: Standard convolution with the combined kernel.
- **Paper**: Yang et al. (2019).
**Why It Matters**
- **Capacity Without Depth**: Increases model capacity through kernel mixture instead of adding layers.
- **Efficient Scaling**: Multiple experts increase expressive power with manageable compute increase.
- **EfficientNet**: Used in EfficientNet-EdgeTPU architectures for mobile deployment.
**CondConv** is **mixture-of-experts for convolution kernels** — blending specialized filters based on the input for adaptive feature extraction.