Exercises — Inception - GoogLeNet
This page is a self-test ladder for Inception - GoogLeNet. Work each problem before opening its solution. The levels climb from recognition (spotting what a piece does) to mastery (designing and defending a module). Every arithmetic answer here is machine-checked.
Before we start, one symbol contract so nothing appears un-earned:
See the parallel-branch picture you will keep referring to:

Level 1 — Recognition
Exercise 1.1 (L1)
An Inception module has four parallel branches. Name each branch's job in one phrase, and state what operation joins their outputs at the end.
Recall Solution
- Branch 1 — conv: pure channel mixing, no spatial reach.
- Branch 2 — : bottleneck, then medium receptive field.
- Branch 3 — : bottleneck, then large receptive field.
- Branch 4 — max-pool : keep spatial info, then shrink channels.
- Join: depth-concatenation — stack all branch outputs along the channel axis. Because every branch keeps the same , the grids line up and simply pile up in depth.
Exercise 1.2 (L1)
In one sentence, what question is an Inception module answering that a single fixed stack does not?
Recall Solution
"Which filter size matters at this layer?" — instead of committing to one scale, it runs all scales in parallel and lets backprop weight them.
Exercise 1.3 (L1)
True/False: auxiliary classifiers stay in the network at test time. Justify.
Recall Solution
False. They exist only during training to feed gradient into middle layers (fighting vanishing gradients) and are discarded at test time.
Level 2 — Application
Exercise 2.1 (L2)
A conv turns a volume into . How many ops?
Recall Solution
, so .
Exercise 2.2 (L2)
Direct (no bottleneck) conv, , on a map. Ops?
Recall Solution
Exercise 2.3 (L2)
Same target as 2.2, but first bottleneck with a , then . Total ops? Reduction factor vs. 2.2 (2 d.p.)?
Recall Solution
Step 1 (, ): . Step 2 (, ): . Total . Reduction .

Level 3 — Analysis
Exercise 3.1 (L3)
For the single module in the parent note (input ; branches output , , , ), verify the concatenated depth and give the final volume shape.
Recall Solution
Depth . Spatial size is unchanged (every branch keeps ). Output: .
Exercise 3.2 (L3)
Derive the exact break-even bottleneck size where bottlenecking a conv costs the same as the naive conv. Then evaluate for .
Recall Solution
Set bottleneck cost = naive cost (drop the shared ): Factor on the left:
\;\Rightarrow\; C_{mid} = \frac{k^2 C_{in} C_{out}}{C_{in} + k^2 C_{out}}.$$ Plug in: numerator $=25\cdot256\cdot32 = 204800$; denominator $=256 + 25\cdot32 = 1056$. $$C_{mid} = 204800/1056 \approx 193.94.$$ **Reading:** any $C_{mid} < 194$ saves ops. The paper's choice $C_{mid}=16$ sits far below this, hence the huge saving.Exercise 3.3 (L3)
GoogLeNet's total loss is . If a batch gives , , , compute and the fraction contributed by the auxiliaries.
Recall Solution
Auxiliary fraction , i.e. about .
Level 4 — Synthesis
Exercise 4.1 (L4)
Design a bottleneck for a input feeding a conv to output channels. Pick . Compute naive vs. bottleneck ops and the reduction factor (2 d.p.).
Recall Solution
Naive (, ): . Bottleneck:
- : .
- : .
- Total . Reduction .
Exercise 4.2 (L4)
You must build an Inception module whose output is using four branches with depths . Confirm the depths sum correctly, and explain why the pooling branch needs its own conv rather than outputting the raw pooled volume.
Recall Solution
Depths: ✓. Why the after pooling: max-pool preserves the input's channel count (here whatever is, often large). Concatenating that raw depth would make the module's output balloon layer after layer. The projects it down to the assigned channels, keeping depths controlled and the concatenation on-budget. This is the same dimensionality reduction idea, applied to the pool branch.
Level 5 — Mastery
Exercise 5.1 (L5)
A colleague proposes replacing all Inception bottlenecks with ("don't reduce, just pass through, keep more info"). Using the break-even formula, prove this can only ever increase or equal cost, never reduce it, and explain the practical consequence.
Recall Solution
With the bottleneck total (per position) is versus naive . The difference is . So you pay the full conv plus an extra — strictly worse. Consequence: a bottleneck only helps when ; "not reducing" defeats the entire purpose.
Exercise 5.2 (L5)
Argue, quantitatively where possible, why modern Inception-v2/v3 could remove auxiliary classifiers with no accuracy loss, whereas 2014 GoogLeNet needed them.
Recall Solution
Auxiliaries existed to inject gradient into middle layers when deep-net gradients shrank toward zero. Two later tools solved that at the source:
- BatchNorm normalizes activations so gradient magnitudes stay stable across depth (see Inception-v2/v3).
- Skip connections (ResNet) give gradient a direct additive highway. With gradient flow fixed, the aux classifiers' reason to exist vanishes — hence they were dropped with no accuracy cost. This is the parent note's Mistake 3: aux classifiers were a training crutch, not an accuracy booster. Design choices should be justified by the problem they solve, not copied.
Exercise 5.3 (L5)
Contrast the design philosophy of hand-tuning Inception's branch depths (as in 2014) with automating them. Name the vault topic that automates this and state the trade-off in one line.
Recall Solution
The original branch depths () were hand-tuned by researchers. Neural Architecture Search automates the choice by searching the space of depths/branches. Trade-off: NAS removes human guesswork and can find better configs, but costs enormous compute to search — you trade engineer hours for GPU hours.
Recall Quick self-test (reveal)
Break-even bottleneck formula ::: Total loss with two auxiliaries ::: What joins the four branches ::: depth-concatenation along the channel axis Why pool branch needs a ::: pooling keeps channel depth; the reduces it to budget
Related
- Parent: Inception - GoogLeNet · Hinglish
- Prereqs: 3.4.01-CNN-Basics · 3.4.05-VGG · 3.2.06-Vanishing-Gradients · 2.3.04-Dimensionality-Reduction
- Forward: 3.4.09-ResNet · 3.4.11-Inception-v2v3 · 4.1.03-Neural-Architecture-Search