@mc_mozer Thank you for the confirmation and the update! I also believe that the backend benchmark won't be affected by the BOS issue. Thanks for such interesting work on Recirculation, it is fantastic to see such effective training-free methods.
(1/6) A reproduction of Recirculation https://t.co/XZ2wH4j6dM on the Gemma 3 1B PPL test and can confirm the initial PPL drop (injecting source layer 11 to dst layer 4 works nicely).
(6/6) Ablation on Gemma 3 show that including the BOS token negates Recirculation's performance gains. Further tests on injected vectors confirm that BOS injection best reproduces the effect.
(5/6) Tried adding the BOS token back to reproduce Table 1, and the results are quite interesting! If we only add BOS to the first window, the PPL roughly matches the paper. But if we add it to every eval window, the PPL drops significantly.
(4/6) I inserted a BOS token into each evaluation window. The baseline PPL scaling returned to normal across all model sizes. (1B → 4B → 12B,arxiv 12.935 → 8.562 → 7.262)
(3/6) Looking at the attention heatmap, it's clear that the BOS token acts as a attention sink. I guess during evaluation, when long sequences were chunked into windows, perhaps only the first eval chunk had a BOS token.
(2/6) However, I noticed a few puzzling details. In Table 1, the 12B model shows a higher PPL than the 1B/4B models, and the method's gain vanishes on the Lambada. Since the eval window is 1024, I checked Lambada dataset, and its average length is indeed < 1024.
(6/6) Ablation on Gemma 3 show that including the BOS token negates Recirculation's performance gains. Further tests on injected vectors confirm that BOS injection best reproduces the effect.
(5/6) Tried adding the BOS token back to reproduce Table 1, and the results are quite interesting! If we only add BOS to the first window, the PPL roughly matches the paper. But if we add it to every eval window, the PPL drops significantly.
(5/6) Tried adding the BOS token back to reproduce Table 1, and the results are quite interesting! If we only add BOS to the first window, the PPL roughly matches the paper. But if we add it to every eval window, the PPL drops significantly.
(4/6) I inserted a BOS token into each evaluation window. The baseline PPL scaling returned to normal across all model sizes. (1B → 4B → 12B,arxiv 12.935 → 8.562 → 7.262)
(4/6) I inserted a BOS token into each evaluation window. The baseline PPL scaling returned to normal across all model sizes. (1B → 4B → 12B,arxiv 12.935 → 8.562 → 7.262)
(3/6) Looking at the attention heatmap, it's clear that the BOS token acts as a attention sink. I guess during evaluation, when long sequences were chunked into windows, perhaps only the first eval chunk had a BOS token.
(3/6) Looking at the attention heatmap, it's clear that the BOS token acts as a attention sink. I guess during evaluation, when long sequences were chunked into windows, perhaps only the first eval chunk had a BOS token.
(2/6) However, I noticed a few puzzling details. In Table 1, the 12B model shows a higher PPL than the 1B/4B models, and the method's gain vanishes on the Lambada. Since the eval window is 1024, I checked Lambada dataset, and its average length is indeed < 1024.
(2/6) However, I noticed a few puzzling details. In Table 1, the 12B model shows a higher PPL than the 1B/4B models, and the method's gain vanishes on the Lambada. Since the eval window is 1024, I checked Lambada dataset, and its average length is indeed < 1024.
(1/6) A reproduction of Recirculation https://t.co/XZ2wH4j6dM on the Gemma 3 1B PPL test and can confirm the initial PPL drop (injecting source layer 11 to dst layer 4 works nicely).
@LalitMaganti Thanks for the corrections! It is a vibed project haha, mostly to make checking complex traces easier for myself since model training traces are absolutely massive. Thanks for building Perfetto!
Vibed a small tool for viewing remote PyTorch traces (Perfetto) right from your local machine: https://t.co/tIxH8VhmWa. Say goodbye to dragging gigabytes of trace files back to your laptop. Parsing is handled entirely on the server side, which saves bandwidth and prevents OOM.
1/ Sharing a new, interesting project I did during my internship at Microsoft AI Frontiers w/ @JohnCLangford
TL;DR: At decoding time, we feed **previous hidden state** into the input together with token embedding, and it boosts performance for free.
https://t.co/za3cZ4UwWV
@wuyang_zhou Our experiments are primarily based on this PR: https://t.co/i9mMgexjs1. We are still evaluating more configurations, thanks for sharing your work!
DeepSeek mHC: dropping the "m" improves performance.
Empirical finding:  identity hres outperforms the original design. Concurrent discoveries by multiple teams confirm this
https://t.co/MsqkS9W9Cs