What each DeBand fix changes inside MOSS-Image SFT
Computed from the actual weights (Base, SFT, each fix) and the activations recorded during 36 solid-colour and 36 general-prompt SFT renders. Back to the image comparison.
Where each fix changes the weights
Size of each fix's weight change in a layer, as a share of fully reverting that layer to Base (100% = that layer becomes Base). Summed over the layer's 4 matrices (attention qkv and o, MLP up/gate and down); hover for the per-matrix split. x = transformer layer. Not drawn: the reverts, which are 100% on their layers and 0 elsewhere (DeBand 37–41, Quality+ 32–41, exact revert 21–41).
Outcome benchmark: stripe cleanup vs drift on rendered images
What users see. Up = more stripe removed from flat colours (median over 9 solid renders, dB below SFT; Base ≈ 16.6). Right = the faces move further from SFT's (1 − ArcFace similarity over 6 portraits). The line links the fixes nothing else beats on both at once (the Pareto frontier). Every fix is judged on the same renders, so nobody gets a home-field advantage.
Efficiency: stripe cleanup per amount of SFT undone
Up = stripe removed (as above). Right = how much of SFT's fine-tuning change the fix undoes (share of the whole Base−SFT weight change, all 42 layers, log scale). nynxz's 64 gradient-picked directions sit far to the left: comparable cleanup from about a thousandth of the edit.
Selectivity: effect on solid colours vs on general prompts (layers 21–41)
How much each fix changes the layers' outputs, as a share of a full revert's change. Up = more change on the activations SFT produces while drawing solid colours (where the stripes are). Right = more change on ordinary prompts (drift). The grey diagonal is a plain scaled revert, which can't tell the two apart; the further above it a fix sits, the more selective it is. Changing a LoRA's strength slides its point along the straight line from the origin (Kijai @ −0.5 is half way to Kijai @ −1; nynxz @1.5 is 1.5× further out than @1.0).
Per layer: solid colours vs general prompts
Same measure per layer, on horizontal detail when available. Coloured line = solid-colour activations, grey line = general prompts. Where the coloured line sits far above the grey one, the fix changes that layer mostly on stripe-prone inputs.
How to read this
Weight size (top chart) shows where a fix acts, not how much it matters: a large change on a direction the model never uses does nothing. The reverts are flat 100% blocks. The Gram solves cover 21–41 but keep only part of each layer's difference. Kijai's LoRA is a rank-512 approximation, so it is partial everywhere and also touches layers 3–4.
Output effect (charts 2–3) weighs the weight change by how often each input direction actually occurs: tr(D·G·Dᵀ), with G the recorded activation statistics. That is the change in each layer's output on real activations, before the later layers react to it. The output energies of the four matrix types are summed, so the large MLP matrices dominate. Only layers 21–41 have recorded activations, so Kijai's layers 3–4 are not counted in charts 2–3.
In-sample caveat: DeBand Strong (and the μ-protected solves) were fitted to keep the general-prompt detail recording (the same row-centred statistics the "general prompts" axis uses) unchanged, so their low drift on that axis is partly by construction. nynxz's Destripe never saw these recordings, so its position is an out-of-sample measurement. The rendered results (compare page) are the fair test: there Strong drifts more than nynxz (faces 0.83 vs 0.94).
Rendered results in the tooltips (solid HF dB vs SFT, ArcFace vs SFT) are single-seed means from the image comparison, a sanity check on whether the selectivity shows up in pixels.