The Lattice of Transition Laws
Organizations: University of Pennsylvania
Abstract
Diffusion and autoregression (AR) have long been seen as different categories of generative models, with diffusion specialising in continuous fields and AR specialising in discrete tokens. Recent work seeks to combine the advantages of the two models, and each hybrid fixes its decoding schedule by design. In this paper, we ask whether the performance of decoding schedules of one model can be predicted before decoding at a fixed number of steps. We describe diffusion, AR, and models in between as paths on one corruption lattice, and define the cost of a schedule as the dependence its parallel steps discard. The cost shows that the fewest steps of a zero-cost schedule are set by the geometry of the data, in the same way for tokens and for continuous fields. In particular, for data that are Markov on a graph and dependent along its paths, the fewest steps equal the graph's treedepth, which is logarithmic in the length of a sequence and linear in the side length of a grid. With fewer steps than the treedepth, every schedule pays a positive cost, whose ranking we predict before decoding with a kernel of pairwise dependence estimated from pretrained weights. Across text generation, image generation, and video generation, we verify most of the predictions about the rankings of different schedules under different metrics and benchmarks. This work therefore provides a design principle for decoding for future AR models, diffusion models, and anything in between. Our code is available at https://github.com/TSUITUENYUE/The-Lattice-of-Transition-Laws.
Figures & tables
| Principle | Rule | Each step selects | Schedule | text8 | MAR | LLaDA |
| released | contiguous | neighbours, in order (raster) | ✓ | ✓ | ||
| random | random positions | ✓ | ✓ | ✓ | ||
| confidence | the most confident | ✓ | ✓ | |||
| distance | spread | evenly spaced | ✓ | ✓ | ✓ | |
| dilated | a fixed interleaved order | ✓ | ||||
| low-discrepancy | an evenly covering order | ✓ |
| kernel | floor | |||||
|---|---|---|---|---|---|---|
| displacement | information | 8 steps | displacement | information | FID | |
| 1 | 0.330 | 1.449 | raster | 77.1 | 338 | 139.80 |
| 2 | 0.119 | 0.209 | spread, then raster | 46.4 | 182 | 17.44 |
| 3 | 0.051 | 0.048 | random | 8.11 | 14.7 | 13.02 |
| 4 | 0.030 | 0.017 | midpoint | 7.56 | 12.5 | 10.63 |
| 5 | 0.021 | 0.009 | low-discrepancy | 3.87 | 1.57 | 8.32 |
| text8, bpc | 8 | 16 | 32 | 64 | MAR-B, FID | 8 | 16 | 32 | 64 | 256 |
|---|---|---|---|---|---|---|---|---|---|---|
| contiguous | 3.14 | 2.44 | 1.77 | 1.32 | raster | 139.80 | 46.97 | 13.98 | 7.49 | 3.93 |
| confidence | 2.95 | 2.18 | 1.76 | 1.50 | random, the model’s own | 13.02 | 4.10 | 2.48 | 2.32 | 2.33 |
| random | 1.80 | 1.67 | 1.62 | 1.58 | midpoint | 10.63 | 3.63 | 2.48 | 2.36 | 2.31 |
| dilated | 1.66 | 1.60 | 1.59 | 1.59 | spread | 9.44 | 3.27 | 2.40 | 2.34 | 2.28 |
| spread | 1.65 | 1.56 | 1.49 | 1.32 | low-discrepancy | 8.32 | 3.13 | 2.36 | 2.27 | 2.29 |
| separator | 1.63 | 1.52 | 1.38 | 1.47 | nested | 13.73 | 4.26 | 2.37 | — | — |
| Steps | 8 | 16 | 32 | 64 | 128 |
|---|---|---|---|---|---|
| accuracy, min-distance | |||||
| accuracy, separator constraint | |||||
| perplexity, min-distance | — | ||||
| 95% interval | [ , ] | [ , ] | [ , ] | [ , ] |
| estimate / measured | 2 steps | 8 steps | 32 steps |
|---|---|---|---|
| contiguous | 0.83 / 2.64 | 0.62 / 1.82 | 0.33 / 0.44 |
| random | 0.54 / 1.09 | 0.15 / 0.23 | 0.02 / 0.03 |
| spread | 0.32 / 0.78 | 0.06 / 0.09 | 0.00 / 0.01 |
| separator | 0.32 / 0.78 | 0.01 / 0.06 | 0.00 / 0.00 |
| Steps | 8 | 16 | 32 | 64 |
|---|---|---|---|---|
| absorbing, spread | 1.691 | 1.600 | 1.584 | 1.555 |
| graded, class then character | 1.790 | 1.736 | 1.716 | 1.703 |
| graded, character at once | 1.886 | 1.793 | 1.749 | 1.717 |
Appendix figures & tables23 assets
Supplementary material from the paper’s appendix.
Appendix
| slope 4 | slope 16 | ||||||
|---|---|---|---|---|---|---|---|
| sync. | slope 1 | raster | spread | raster | spread | seq. | |
| steps | 128 | 143 | 188 | 188 | 368 | 368 | 2063 |
| iid levels | 15.8 | 15.5 | 15.2 | 14.0 | 13.1 | 12.0 | 13.0 |
| mixed levels | 9.8 | 10.1 | 12.2 | 11.0 | 11.6 | 12.1 | 11.9 |
| at 120K steps | — | — | — | — | 11.1 | 10.5 | — |
| synchronised only | 7.6 | 20.7 | 187.2 | 171.2 | 251.6 | 241.0 | 273.4 |
| synchronised | sequential | |
|---|---|---|
| steps | 249 | 256 |
| lattice, mixed levels | 43.3 | 98.7 |
| synchronised only | 39.9 | 205.5 |
| lattice, synchronised at 16 steps | 54.5 | — |
| prefix, width 1 | interior, width 1 | interior, width 8 | |
|---|---|---|---|
| causal | 1.22 0.11 | — | — |
| bidirectional | 1.41 0.10 | 2.00 1.10 | 1.01 0.31 |
| two-stream | 1.26 0.10 | 2.26 1.13 | 1.31 0.37 |
| Distance | 1 | 2 | 4 | 8 | 16 |
|---|---|---|---|---|---|
| inside one word | 0.996 0.050 | 0.694 0.114 | 0.505 0.030 | 0.187 0.021 | — |
| across a boundary | 0.368 0.086 | 0.269 0.077 | 0.121 0.058 | 0.023 0.032 | 0.009 0.005 |
| Rule | mask rate | width 8 | width 16 | width 32 |
|---|---|---|---|---|
| random | 0.3 | 26.4 12.5 | 63.4 9.8 | 119.7 1.0 |
| random | 0.5 | 73.1 7.7 | 144.6 12.8 | 268.1 18.6 |
| random | 0.7 | 102.7 18.6 | 228.7 9.2 | 420.6 20.0 |
| spread | 0.3 | 2.7 3.2 | 6.7 2.5 | 25.0 3.3 |
| spread | 0.5 | 4.4 1.0 | 13.1 1.1 | 68.6 10.6 |
| spread | 0.7 | 6.1 2.3 | 27.4 8.6 | 130.7 2.7 |
| Mask rate | ||||
|---|---|---|---|---|
| 0.1 | 0.216 | 0.115 | 0.020 | 0.003 |
| 0.2 | 0.298 | 0.162 | 0.051 | 0.000 |
| 0.3 | 0.425 | 0.289 | 0.093 | 0.013 |
| 0.5 | 0.785 | 0.480 | 0.214 | 0.030 |
| 0.7 | 0.936 | 0.646 | 0.331 | 0.118 |
| predicted / measured | 2 steps | 4 steps | 8 steps | 16 steps | 32 steps |
|---|---|---|---|---|---|
| contiguous | 0.92 / 2.64 | 0.80 / 2.34 | 0.71 / 1.82 | 0.59 / 1.12 | 0.39 / 0.44 |
| random | 0.58 / 1.09 | 0.33 / 0.50 | 0.16 / 0.23 | 0.07 / 0.10 | 0.02 / 0.03 |
| spread | 0.31 / 0.78 | 0.11 / 0.27 | 0.07 / 0.09 | 0.04 / 0.03 | 0.01 / 0.01 |
| separator | 0.31 / 0.78 | 0.08 / 0.26 | 0.01 / 0.06 | 0.01 / 0.02 | 0.00 / 0.00 |
| Steps | 2 | 4 | 8 | 16 | 32 |
|---|---|---|---|---|---|
| contiguous | 1.32 | 1.32 | 1.32 | 1.32 | 1.32 |
| confidence | 1.40 | 1.38 | 1.35 | 1.44 | 1.48 |
| random | 1.51 | 1.55 | 1.57 | 1.57 | 1.58 |
| spread | 1.53 | 1.57 | 1.56 | 1.52 | 1.48 |
| separator | 1.53 | 1.57 | 1.56 | 1.50 | 1.38 |
| second-order estimate / measured | 2 steps | 4 steps | 8 steps | 16 steps | 32 steps |
|---|---|---|---|---|---|
| contiguous | 1.28 / 2.64 | 1.07 / 2.34 | 0.90 / 1.82 | 0.69 / 1.12 | 0.33 / 0.44 |
| random | 0.76 / 1.09 | 0.39 / 0.50 | 0.17 / 0.23 | 0.07 / 0.10 | 0.02 / 0.03 |
| spread | 0.48 / 0.78 | 0.12 / 0.27 | 0.06 / 0.09 | 0.03 / 0.03 | 0.00 / 0.01 |
| separator | 0.48 / 0.78 | 0.10 / 0.26 | 0.02 / 0.06 | 0.01 / 0.02 | 0.00 / 0.00 |
| confidence, measured after the decode | 1.12 / 2.13 | 0.94 / 1.96 | 0.81 / 1.60 | 0.42 / 0.74 | 0.16 / 0.28 |
| Distance, pair | ||||
|---|---|---|---|---|
| 2, within a word | 0.83 | 0.51 | — | — |
| 2, across a boundary | 0.34 | 0.17 | — | — |
| 3, within a word | 0.81 | 0.60 | 0.36 | — |
| 3, across a boundary | 0.32 | 0.18 | 0.08 | — |
| 4, within a word | 0.69 | 0.66 | 0.43 | 0.21 |
| 4, across a boundary | 0.25 | 0.16 | 0.12 | 0.04 |
| Rule | 8 steps | 16 steps | 32 steps | |
|---|---|---|---|---|
| separator | first-order reference | 0.01 | 0.01 | 0.00 |
| with the state between | 0.06 | 0.01 | 0.00 | |
| measured | 0.06 | 0.02 | 0.00 | |
| midpoint | first-order reference | 0.01 | 0.00 | 0.00 |
| with the state between | 0.18 | 0.14 | 0.09 | |
| measured | 0.26 | 0.19 | 0.09 |
| Steps | 64 | 32 | 16 | 8 | 4 | 2 |
|---|---|---|---|---|---|---|
| spread | 1.32 0.00 | 1.49 0.00 | 1.56 0.00 | 1.65 0.00 | 1.84 0.00 | 2.31 0.00 |
| random | 1.58 0.00 | 1.62 0.01 | 1.67 0.01 | 1.80 0.00 | 2.05 0.01 | 2.60 0.01 |
| contiguous | 1.32 0.00 | 1.77 0.00 | 2.44 0.00 | 3.14 0.00 | 3.66 0.00 | 3.96 0.00 |
| Selection rule | bpc | separation | pairwise estimate |
|---|---|---|---|
| confidence | 2.18 | 2.0 | 0.34 |
| min-distance | 1.66 | 11.7 | 0.02 |
| random | 1.67 | 13.0 | 0.06 |
| spread | 1.56 | 16.0 | 0.03 |
| contiguous 8 | contiguous 16 | spread 8 | spread 16 | |
|---|---|---|---|---|
| uniform | 3.96 | 3.70 | 1.74 | 1.64 |
| wide first | 3.94 | 3.69 | 1.92 | 1.81 |
| wide late | 3.97 | 3.75 | 1.79 | 1.69 |
| geometric, wide first | 3.94 | 3.84 | 1.95 | 1.91 |
| geometric, wide late | 3.99 | 3.89 | 1.86 | 1.85 |
| Steps | 8 | 16 | 32 | 64 |
|---|---|---|---|---|
| chain, absorbing | 1.586 | 1.564 | 1.545 | 1.542 |
| chain, graded | 1.628 | 1.644 | 1.683 | 1.688 |
| excess, absorbing | 0.105 | 0.036 | 0.039 | 0.012 |
| excess, graded | 0.162 | 0.091 | 0.033 | 0.015 |
| estimate, absorbing | 0.029 | 0.014 | 0.011 | 0.004 |
| estimate, graded (class + character) | 0.057 | 0.013 | 0.008 | 0.007 |
| Distance | 1 | 2 | 4 | 8 |
|---|---|---|---|---|
| absorbing, character | 1.172 / 0.797 | 0.900 / 0.446 | 0.609 / 0.315 | 0.374 / 0.112 |
| graded, class | 0.177 / 0.283 | 0.054 / 0.127 | 0.019 / 0.080 | 0.021 / 0.008 |
| graded, character given classes | 0.494 / 0.006 | 0.560 / 0.016 | 0.455 / 0.054 | 0.262 / 0.026 |
| Rule | 8 | 16 | 64 | 256 | unigram KL |
|---|---|---|---|---|---|
| contiguous | 6.35 .01 | 6.11 .01 | 5.38 .03 | 1.42 .02 | .053 .001 |
| confidence | 6.01 .02 | 5.91 .01 | 4.69 .02 | 1.82 .01 | .048 .001 |
| random | 3.81 .02 | 3.08 .02 | 2.41 .01 | 2.17 .01 | .001 .000 |
| spread | 2.60 .01 | 2.16 .02 | 1.98 .02 | 1.46 .01 | .002 .000 |
| word-aware spread | 2.70 .01 | 2.21 .04 | 2.03 .05 | 1.80 .01 | .002 .000 |
| Steps | 8 | 16 | 32 | 64 |
|---|---|---|---|---|
| pooled | ||||
| controlled | ||||
| 95% interval | [ , ] | [ , ] | [ , ] | [ , ] |
| less repetitive half |
| Steps | 8 | 16 | 32 | 64 |
|---|---|---|---|---|
| random | 283 [246,323] | 147 [123,175] | 54 [47,61] | 27 [23,32] |
| confidence | 375 [331,431] | 212 [182,245] | 180 [142,239] | 97 [74,130] |
| min-distance | 133 [114,157] | 86 [71,105] | 41 [33,52] | 20 [17,24] |
| midpoint | 163 [147,182] | 94 [83,106] | 50 [44,57] | 31 [27,35] |
| spread | 168 [149,190] | 112 [98,130] | 54 [47,64] | 35 [31,41] |
| unigram entropy, bits | ||||
| LLaDA-8B-Base, 64 steps | text8 85M, 16 steps | |||||
|---|---|---|---|---|---|---|
| Rule | forward, ms | select, ms | % | forward, ms | select, ms | % |
| contiguous | — | — | — | 211.3 | 0.09 | 0.04 |
| random | 170.8 | 0.12 | 0.07 | 212.3 | 0.13 | 0.06 |
| confidence | 170.9 | 0.28 | 0.17 | 216.9 | 0.22 | 0.10 |
| min-distance | 170.3 | 1.24 | 0.73 | 217.6 | 1.01 | 0.46 |
| separator constraint | 171.6 | 0.78 | 0.46 | — | — | — |
| Steps | 8 | 16 | 32 | 64 | 128 |
|---|---|---|---|---|---|
| confidence | 1.8 1.0 | 2.4 1.2 | 5.5 1.8 | 11.0 2.4 | 26.2 3.4 |
| min-distance | 7.9 2.1 | 9.1 2.3 | 12.2 2.6 | 17.7 3.0 | 26.8 3.5 |
| separator constraint | 7.9 2.1 | 8.5 2.2 | 13.4 2.7 | 18.3 3.0 | 25.6 3.4 |
| GSM8K, sampling, 64 steps | |||||
| confidence | 41.3 1.4 | ||||
| min-distance | 45.8 1.4 | ||||
| subject | background | motion | imaging | ||
|---|---|---|---|---|---|
| Memory depth | steps | consistency | consistency | smoothness | quality |
| 17 frames, as shipped | 300 | 0.8998 | 0.9505 | 0.9937 | 65.70 |
| 5 frames | 270 | ||||
| 25 frames | 330 | ||||
| 33 frames | 360 | ||||
| 57 frames | 540 |