Deep Learning · TEE · section

Faculty Assignment2 Q5 · 32×32 three-convolution CNN

Faculty Assignment 2 · worked practice

Question

Question. Input32×32×1; conv3,8same; pool2stride2; conv5,16valid; pool2stride2; conv3,32same; dense64; output5. Find shapes and parameters. (Faculty assignment: no marks printed)

Answer — step by step

Given

Input=[32, 32, 1]

LayerKernelStridePaddingFilters / units
Conv3118
Pool2200
Conv51016
Pool2200
Conv31132
Dense00064
Dense0005

To find

Each output shape and all trainable weights plus biases.

Formula: which one and why

O=\left\lfloor\frac{N+2P-F}{S}\right\rfloor+1LaTeX: O=\left\lfloor\frac{N+2P-F}{S}\right\rfloor+1
P_{conv}=(F_hF_wC_{in}+1)C_{out},\quad P_{dense}=(n_{in}+1)n_{out}LaTeX: P_{conv}=(F_hF_wC_{in}+1)C_{out},\quad P_{dense}=(n_{in}+1)n_{out}

Each filter/unit has one bias. Pooling has zero learned parameters. Flatten preserves the number of values, then a dense layer connects every input value to every output unit.

Step 1. Work layer by layer

LayerInputFull substitution and reasonOutputParameters
Conv32×32×1⌊(32+2×1−3)/1⌋+1=32; parameters=(3×3×1+1)×8=8032×32×880
Pool32×32×8⌊(32−2)/2⌋+1=16; channels stay 8; no trainable weights16×16×80
Conv16×16×8⌊(16+2×0−5)/1⌋+1=12; parameters=(5×5×8+1)×16=321612×12×163216
Pool12×12×16⌊(12−2)/2⌋+1=6; channels stay 16; no trainable weights6×6×160
Conv6×6×16⌊(6+2×1−3)/1⌋+1=6; parameters=(3×3×16+1)×32=46406×6×324640
Dense6×6×32Flatten/input length=6×6×32=1152; parameters=(1152+1)×64=737926473792
Dense1×1×64Flatten/input length=1×1×64=64; parameters=(64+1)×5=3255325

Step 2. Sum only trainable parameters

80 + 3216 + 4640 + 73792 + 325 = 82053

Final answer

Total parameters=82053. Shape and parameter count are separate results.