EfficientNet-B0 — the inference (frozen-statistics) stages and block graphs #
The eval twin of EfficientNetRenderPC.lean: the batched stage abbreviations at frozen statistics
(cbsBEval / stemBEval / dwbsBEval / dwbsSBEval / projBEval — seB is unchanged, it has
no BN) and the five block graphs with their faithfulness (*GraphBEval_faithful).
EfficientNetFullB0Eval chains them into the shipped sixteen-block eval forward.
⭐ At inference the batch decouples: frozen statistics are constants, so the eval BN is
per-example — batchMap N (bnPerChannelEvalTensor3 oc h w ε γ β μ v), denOp's bnEval arm, read
off by den_batchOp — and every stage is batchMap N of a per-example op or a pointwise map.
⚠ One ε for the whole net, as the render emits, where the training def carries a separate ε per
site. The SSA names extend the training graph's (%sg/%sbt → %smu/%svar, %b1dg/%b1dbt →
%b1dmu/%b1dvar, …); names are pretty-printing metadata and do not enter den. 3-axiom clean.
Batched conv → inference bn → swish (1×1 expand / generic stride-1 conv).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Batched strided (3×3 s2) stem conv → inference bn → swish (halves spatial). At the
XLA-SAME phase, as stemB (EfficientNetRenderPC.lean) and the shipped
efficientnet_fwd_eval.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Batched depthwise (stride-1, k×k) → inference bn → swish.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Batched depthwise (stride-2 downsample, k×k) → inference bn → swish.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Batched project: 1×1 conv → inference bn (no swish — the linear bottleneck).
Equations
- Proofs.projBEval N W b ε γ β μ v = Proofs.StableHLO.batchMap N (Proofs.bnPerChannelEvalTensor3 oc h w ε γ β μ v) ∘ Proofs.StableHLO.batchMap N (Proofs.flatConv W b)
Instances For
MBConv1 (t=1, no expand) at inference: dw-bn-swish → SE → project-bn.
Equations
- Proofs.mbNoExpFwdBEval N ε Wd bd γd βd μd vd Wz₁ bz₁ Wz₂ bz₂ Wp bp γp βp μp vp = Proofs.projBEval N Wp bp ε γp βp μp vp ∘ Proofs.seB N Wz₁ bz₁ Wz₂ bz₂ ∘ Proofs.dwbsBEval N Wd bd ε γd βd μd vd
Instances For
MBConv6 with a stride-2 downsample at inference.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MBConv6 with an identity residual skip at inference.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Head at inference: 1×1 conv-bn-swish → global-avg-pool → dense classifier.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Stem 3×3-s2 conv → inference bn → swish, batched.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MBConv1 (no expand) at inference: dw-bn-swish → SE → project-bn, batched.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MBConv6 strided at inference: expand-bn-swish (at 2h×2w) → strided dw-bn-swish → SE →
project-bn, batched.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MBConv6 with identity residual at inference: addV body skip.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Head at inference: 1×1 conv-bn-swish → GAP → dense, batched.
Equations
- One or more equations did not get rendered due to their size.