N Neurarch All checks Caught bugs Docs Open the app

Checks / pattern

ConvTranspose checkerboard risk

Check R28. Runs in the editor as you build, in CI through the GitHub Action, and over the wire at POST /api/v1/check. Milliseconds, before any GPU is billed.

info pattern R28
TriggerA ConvTranspose2d has kernelSize not divisible by stride (with stride > 1).
WhyUneven kernel overlap during upsampling deposits more weight on some output pixels than others, producing checkerboard artifacts. Make kernelSize a multiple of stride, or upsample with Upsample + Conv (resize-convolution).
SourceOdena et al. 2016, Deconvolution and Checkerboard Artifacts.

Why it is not a lint you can ignore

A structural mistake does not fail at review time and it does not fail at import time. It fails when the module is constructed on the training node, after the job was queued and the dataset was downloaded. That is why this runs before the spend and not after it.
Run this check on your own model Free, no account needed

Every check

41 structural checks: 6 guardrail gates and 35 architecture advisor rules. See the full catalogue.

← R27 Flatten before attention  ยท  R29 GroupNorm channels not divisible by numGroups →