One feature-map cell is a dot product between one image patch and the kernel. The walkthrough pins the products and running sum.

highlighted = computed this step

One patch meets the kernel

For one output cell, the kernel lines up with one image patch. Multiply matching entries and add the products. The displayed walkthrough pins every product and every running sum.

output cell=kernel entrypatch entry\text{output cell}=\sum \text{kernel entry}\cdot\text{patch entry}
One output cellA patch dot kernel sum is exact.patch row 0, col 1 dot kernelAc1c2c3c4c5c6c7c8c910-110-110-1·xentry000003003products1·0=0Σ=0+0·0=0Σ=0+-1·0=0Σ=0+1·0=0Σ=0+0·0=0Σ=0+-1·3=-3Σ=-3+1·0=0Σ=-3+0·0=0Σ=-3+-1·3=-3Σ=-6result -6output cell = -6kernel is given; valid padding and stride one; one exact forward pass; head softmax is NAMED;NOT training; NOT learning

The exact cell value

For the upper-right patch, the recomputed dot product is -6. This patch makes the subtraction terms visible because the right image column contributes nonzero values.

upper-right output=6\text{upper-right output}=-6
One output cellA patch dot kernel sum is exact.patch row 0, col 1 dot kernelAc1c2c3c4c5c6c7c8c910-110-110-1·xentry000003003products1·0=0Σ=0+0·0=0Σ=0+-1·0=0Σ=0+1·0=0Σ=0+0·0=0Σ=0+-1·3=-3Σ=-3+1·0=0Σ=-3+0·0=0Σ=-3+-1·3=-3Σ=-6result -6output cell = -6kernel is given; valid padding and stride one; one exact forward pass; head softmax is NAMED;NOT training; NOT learning

Summary

A convolution cell is just a dot product between a visible patch and a visible kernel. There is no float and no hidden approximation in this step.

patchkernel=6\text{patch}\cdot\text{kernel}=-6
One output cellA patch dot kernel sum is exact.patch row 0, col 1 dot kernelAc1c2c3c4c5c6c7c8c910-110-110-1·xentry000003003products1·0=0Σ=0+0·0=0Σ=0+-1·0=0Σ=0+1·0=0Σ=0+0·0=0Σ=0+-1·3=-3Σ=-3+1·0=0Σ=-3+0·0=0Σ=-3+-1·3=-3Σ=-6result -6output cell = -6kernel is given; valid padding and stride one; one exact forward pass; head softmax is NAMED;NOT training; NOT learning