← Open Source
vdumoulin

conv_arithmetic

A technical report on convolution arithmetic in the context of deep learning

Model DevelopmentArchitectureTeX
Open on GitHub
Momentum
+-1stars in 24 hours-0.0%
14.7k
Stars
2.31k
Forks
+-5
This week
2
Contributors
Created 2016-02-24 · Updated 2026-10-05 · #16239 today
Top developers
README

Convolution arithmetic

A technical report on convolution arithmetic in the context of deep learning.

The code and the images of this tutorial are free to use as regulated by the licence and subject to proper attribution:

Convolution animations

N.B.: Blue maps are inputs, and cyan maps are outputs.

No padding, no strides

Arbitrary padding, no strides

Half padding, no strides

Full padding, no strides

No padding, strides

Padding, strides

Padding, strides (odd)

Transposed convolution animations

N.B.: Blue maps are inputs, and cyan maps are outputs.

No padding, no strides, transposed

Arbitrary padding, no strides, transposed

Half padding, no strides, transposed

Full padding, no strides, transposed

No padding, strides, transposed

Padding, strides, transposed

Padding, strides, transposed (odd)

Dilated convolution animations

N.B.: Blue maps are inputs, and cyan maps are outputs.

No padding, no stride, dilation

Generating the Makefile

From the repository's root directory:

$ ./bin/generate_makefile

Generating the animations

From the repository's root directory:

$ make all_animations

The animations will be output to the gif directory. Individual animation steps will be output in PDF format to the pdf directory and in PNG format to the png directory.

Compiling the document

From the repository's root directory:

$ make