atlas

Research map / Architectures and efficiency / CNN design

Convolutions and More as Einsum: A Tensor Network Perspective with Advances for Second-Order Methods

NeurIPS 2024 · Architectures and efficiency › CNN design · approach: Efficient CNN scaling and dynamic inference · 0 citations (OpenAlex)

Read the paperCheck your idea against 108,967 papers

AI-extracted summary. Written by AI from the paper's full text. Numbers and claims can be wrong or missing context, so check the paper before you cite or build on it.

Views convolutions as tensor networks to derive einsum expressions for autodiff, KFAC-type curvature approximations (including for transpose convolution), and structure-based simplifications, yielding up to 4.5x faster KFAC-reduce with lower memory.

Problem

Convolutions are hard to analyze and implement for less standard routines (higher-order autodiff, Kronecker-factored curvature, transpose convolution) across all hyper-parameters, batching, groups and dimensions, and existing implementations are inefficient or missing.

Approach

Represent convolution as a tensor network with index pattern tensors encoding connectivity, derive Jacobians, VJPs and KFAC factors by diagrammatic manipulation, express them as einsum strings, and apply convolution-specific index-pattern simplifications (dense, down-sampling, kernel-output swap) before contraction.

Key results

Measured effects reported in the paper

What was changedWhereMeasuredEffect
Use the TN implementation instead of input unfolding to compute SINGD's KFAC-reduce factorsSINGD on ResNet18 · ImageNet-like synthetic data (3, 256, 256), batch size 128peak memory (GiB): 4.5 -> 3.6Helped
Use the TN implementation instead of input unfolding to compute SINGD's KFAC-reduce factorsSINGD on VGG19 · ImageNet-like synthetic data (3, 256, 256), batch size 128peak memory (GiB): 32 -> 16Helped
Use the TN implementation instead of input unfolding to compute SINGD's KFAC-reduce factorsSINGD on ResNet18 · ImageNet-like synthetic data (3, 256, 256), batch size 128per-iteration time (s): 0.19 -> 0.16Helped
Use the TN implementation instead of input unfolding to compute SINGD's KFAC-reduce factorsSINGD on VGG19 · ImageNet-like synthetic data (3, 256, 256), batch size 128per-iteration time (s): 1.0 -> 0.80Helped
Avoid explicitly unfolding the input when computing KFAC-reduceKFAC-reduce convolution implementation · Convolutions across 9 CNNsruntime ratio (TN vs. standard implementation): 0.22\,xHelped
Subsample spatial pixels rather than input channels for randomized weight-VJP computationTN randomized autodiff · Real and synthetic datagradient approximation error: 75\,\% of channels -> 35\,\% of pixelsHelped

Surprising findings

Limitations

Experimental setup

Datasets: ImageNet-like synthetic data (3x256x256)

Benchmarks: convolutions of 9 CNN architectures (ImageNet and smaller datasets)

Metrics: run time ratio peak memory per-iteration time

Baselines: standard PyTorch convolution implementation standard KFAC-reduce implementation SINGD SGD

Builds on: KFAC KFC KFAC-reduce opt_einsum column-row sampling

Closest papers by meaning

Writing a paper in this area? scime draft is a free LaTeX editor with AI included, real-time co-authors and a check of your references and venue rules before you submit. It also imports OpenAI Prism projects.

Open scime draft

Get the next scime Dispatch and a monthly field update

Free. We send a confirmation link first; every email has a one-click unsubscribe. Privacy