% Self-authored paper-reading deck, based on the arxiv-paper-reader template.
% Main discussion: approximately 25 minutes. Backup slides follow references.
% Compile: python3 build_slides.py slides.en.tex
\documentclass[aspectratio=169,11pt]{beamer}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{amsmath,amssymb,graphicx,booktabs}
\pdfstringdefDisableCommands{\def\translate#1{#1}}

\definecolor{AcademicBlue}{RGB}{26,57,86}
\definecolor{AcademicTeal}{RGB}{0,105,112}
\setbeamercolor{structure}{fg=AcademicBlue}
\setbeamercolor{frametitle}{fg=AcademicBlue,bg=white}
\setbeamercolor{title}{fg=AcademicBlue}
\setbeamercolor{alerted text}{fg=AcademicTeal}
\setbeamercolor{block title}{fg=white,bg=AcademicBlue}
\setbeamercolor{block body}{fg=black,bg=AcademicBlue!5}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{itemize items}[circle]
\setbeamertemplate{footline}{%
  \hfill\usebeamerfont{page number in head/foot}%
  \insertframenumber\,/\,\inserttotalframenumber\hspace{4mm}\vspace{3mm}}
\setbeamersize{text margin left=8mm,text margin right=8mm}
\setbeamerfont{frametitle}{size=\Large,series=\bfseries}
\setbeamerfont{title}{size=\LARGE,series=\bfseries}
\newcommand{\papersource}[1]{\par\smallskip{\scriptsize\color{gray}#1\par}}
\newcommand{\eff}{Efficient-DLM}
\newcommand{\fig}[3]{\includegraphics[width=#2\linewidth,height=#3\textheight,keepaspectratio]{figures/#1.pdf}}
\title[Efficient-DLM]{Efficient-DLM}
\subtitle[From Autoregressive to Diffusion Language Models, and Beyond in Speed]{From Autoregressive to Diffusion Language Models,\\and Beyond in Speed}
\author{Paper by Yonggan Fu, Lexington Whalen, et al.\\[2mm]\small Research group paper discussion}
\date{\href{https://arxiv.org/abs/2512.14067v2}{arXiv:2512.14067v2}\quad\textbar\quad Revised 29 April 2026\\Reading prepared 14 October 2026}

\begin{document}

\begin{frame}
  \titlepage
  \vspace{-5mm}
  \begin{center}
    \alert{Match training structure to block decoding, then learn reliable parallel generation.}
  \end{center}
\end{frame}

\begin{frame}{Parallel generation needs both reuse and reliable predictions}
  \begin{block}{Research question}
    Can a pretrained AR model become a faster dLM while retaining its task abilities?
  \end{block}
  \begin{itemize}
    \item AR decoding reuses KV states, but usually emits one token per forward pass.
    \item Fully bidirectional denoising can predict many positions, but complicates KV reuse.
    \item Small batches expose a practical opportunity: more accepted tokens per pass can amortize weight reads.
  \end{itemize}
  \medskip
  \centering
  AR initialization $\longrightarrow$ block denoising $\longrightarrow$ confidence-based parallel decoding
  \papersource{Paper, Sec. 1, PDF pp. 1--2. Small-batch motivation; not a claim about all serving regimes.}
\end{frame}

\begin{frame}{The recipe addresses two training--inference gaps}
  \begin{columns}[T,onlytextwidth]
    \begin{column}{0.48\textwidth}
      \begin{block}{Across blocks: context state}
        Training on corrupted prefixes differs from decoding after the prefix is complete.
      \end{block}
      \medskip
      \alert{Use clean preceding blocks.}\\
      Retain block causality and enable native KV caching.
    \end{column}
    \begin{column}{0.48\textwidth}
      \begin{block}{Within a block: mask positions}
        Uniform training masks differ from the masks left by confidence-based decoding.
      \end{block}
      \medskip
      \alert{Bias masks toward later positions.}\\
      Strengthen this bias as corruption decreases.
    \end{column}
  \end{columns}
  \medskip
  Keep the AR initialization; adapt its attention, prediction alignment, and masking distribution.
  \papersource{Paper, Secs. 2--3, PDF pp. 2--7. Block diffusion and confidence decoding build on prior work.}
\end{frame}

\begin{frame}{Clean-prefix block attention restricts where answers are visible}
  \centering
  \fig{fig02a-attention-patterns}{0.91}{0.63}
  \par\smallskip
  Noisy queries see their own block and \alert{earlier clean blocks only}.\\
  The clean copy of the target block is hidden from its denoising queries.
  \papersource{Paper, Fig. 2(a--d), PDF p. 3; original panels cropped, labels retained. Orange: noisy; blue: clean prefix; yellow: clean branch.}
\end{frame}

\begin{frame}{The denoising objective conditions each block on a clean prefix}
  \[
  \mathcal L(\theta)=
  \mathbb E_{t\sim\mathcal U[0,1]}
  \,\mathbb E_{\tilde{\mathbf x}_t^b\sim q(\cdot\mid\mathbf x^b)}
  \left[-\frac1t\sum_{b=1}^{B}
  \log p_\theta(\mathbf x^b\mid\tilde{\mathbf x}_t^b,\mathbf x^{<b})\right].
  \]
  \begin{itemize}
    \item $\mathbf x$ has length $L$; $B$ blocks have length $L'=L/B$.
    \item $\tilde{\mathbf x}_t^b$: current corrupted block; $\mathbf x^{<b}$: clean preceding blocks.
    \item $q$: masking process; $t$: noise level; $1/t$: loss weighting.
    \item Initialize $\theta$ from AR weights, then continue pretraining with this objective.
  \end{itemize}
  \begin{block}{Prediction alignment}
    Remove the AR token shift: recover a masked token at its own position.
  \end{block}
  \papersource{Paper, Eq. (1), Secs. 2.1--2.2, PDF pp. 3--4. Block likelihood is the paper's denoising notation.}
\end{frame}

\begin{frame}{Completed blocks remain cacheable during later decoding}
  \begin{block}{Teaching example: denoise the second block}
    \centering
    \texttt{[A B] | [C MASK] | [E F]}\\[2mm]
    Visible: \texttt{A, B, C}\qquad Hidden answers: \texttt{D, E, F}
  \end{block}
  \begin{itemize}
    \item Training concatenates noisy and clean streams with a special attention mask.
    \item At inference, finish one block, retain its prefix KV states, and advance.
    \item Within the active block, accept multiple sufficiently confident predictions per step.
  \end{itemize}
  \medskip
  \alert{Clean means unmasked.} Generated prefix tokens may still contain errors.
  \papersource{Teaching illustration derived from Fig. 2(d) and Sec. 2.1, PDF p. 3; confidence decoding: Appendix A, p. 13.}
\end{frame}

\begin{frame}{Clean context recovers much of the accuracy lost in conversion}
  \centering
  \begin{tabular}{llcr}
    \toprule
    Attention / budget & Prefix & Shift & Avg. (\%)\\
    \midrule
    Original AR & clean & yes & 41.79\\
    Bidirectional, 50B & noisy & yes & 18.10\\
    Bidirectional, 50B & noisy & no & 19.29\\
    Block, 50B & noisy & yes & 28.23\\
    Block, 100B & noisy & yes & 27.73\\
    Block, 50B & clean & yes & 37.69\\
    Block, 50B & clean & no & \textbf{38.41}\\
    \bottomrule
  \end{tabular}
  \medskip
  \begin{itemize}
    \item Clean prefix: \alert{+9.46 pp}; removing shift afterward: +0.72 pp.
    \item Doubling noisy-prefix tokens does not replace a clean-prefix objective.
  \end{itemize}
  \papersource{Paper, Table 1, PDF p. 4. Qwen2.5 1.5B; block size 16; six generation tasks. pp = percentage points.}
\end{frame}

\begin{frame}{Block attention is associated with smaller weight changes}
  \centering
  \fig{fig02e-weight-drift}{0.90}{0.59}
  \begin{itemize}
    \item Full bidirectionality is associated with larger attention-weight changes.
    \item Clean context reduces FFN drift relative to a noisy-prefix block model.
  \end{itemize}
  \papersource{Paper, Fig. 2(e), PDF p. 3. Layer index vs. average weight difference; y-axis scales differ. Association, not an isolated causal test of drift.}
\end{frame}

\begin{frame}{A useful training block size balances context and corruption}
  \centering
  \fig{fig03-acc-block-size}{0.97}{0.58}
  \begin{itemize}
    \item Rows: training block size; columns: evaluation size; cells: six-task accuracy.
    \item The study selects 16 for 1.5B and 64 for 4B; good rows transfer across columns.
    \item Balance richer bidirectional context against heavier corruption.
  \end{itemize}
  \papersource{Paper, Sec. 2.3, Figs. 3--4, PDF pp. 4--5. Budgets: 50B tokens (1.5B), 25B (4B).}
\end{frame}

\begin{frame}{Larger evaluation blocks help when decoding is more aggressive}
  \centering
  \fig{fig05-eval-block-size}{0.85}{0.62}
  \par\smallskip
  At low NFE, more candidate positions can support better parallel choices.\\
  At high NFE, moderate block sizes give similar accuracy.
  \papersource{Paper, Fig. 5, PDF p. 5. x: average model evaluations (NFE); y: six-task accuracy. NFE is not wall-clock throughput.}
\end{frame}

\begin{frame}{Confidence decoding leaves later positions masked for longer}
  \centering
  \fig{fig06-confidence-distribution}{0.99}{0.47}
  \medskip
  \begin{itemize}
    \item Left: later positions need more steps, with or without parallel decoding.
    \item Middle: confidence rises as neighboring tokens become available.
    \item Right: later masked positions have higher average training loss.
  \end{itemize}
  \papersource{Paper, Fig. 6, PDF p. 6. Qwen2.5 1.5B, block size 16; GSM8K decoding; loss averaged over blocks in 200 samples.}
\end{frame}

\begin{frame}{Position-dependent masking tilts a fixed-size mask set}
  \begin{columns}[c,onlytextwidth]
    \begin{column}{0.51\textwidth}
      \[
        w_i(t)=\exp[\beta(1-t)i]
      \]
      \[
        k=\operatorname{round}(tL'),\qquad
        \lambda=\frac{\ln 2}{\beta L'}
      \]
      Normalize weights; sample $k$ distinct positions with Gumbel-top-$k$.
      \begin{itemize}
        \item High noise: nearly uniform weights.
        \item Low noise: favor later positions.
        \item Smaller $\lambda$: stronger tilt.
      \end{itemize}
    \end{column}
    \begin{column}{0.46\textwidth}
      \centering
      \fig{fig07-token-masking}{0.98}{0.55}
    \end{column}
  \end{columns}
  \medskip
  $w_i(t)$ is an \alert{unnormalized sampling weight}, not an independent mask probability.
  \papersource{Paper, Eq. (2), Fig. 7, Secs. 3.2--3.3, PDF pp. 6--7. Final models use $\lambda=0.1$.}
\end{frame}

\begin{frame}{A moderate positional bias helps; an extreme suffix mask fails}
  \centering
  \begin{tabular}{lrrrr}
    \toprule
    Masking & TPF 1 & TPF 2.8 & TPF 4 & TPF 5.6\\
    \midrule
    Uniform & 60.27 & 57.12 & 51.11 & 33.99\\
    $\lambda=0.25$ & 60.41 & 58.56 & 50.97 & 34.55\\
    $\lambda=0.10$ & \textbf{62.02} & \textbf{58.79} & \textbf{53.75} & \textbf{38.37}\\
    $\lambda=0.05$ & 60.51 & 57.68 & 53.06 & 37.38\\
    Rightmost $k$ only & 38.21 & 27.55 & 18.60 & 14.13\\
    \bottomrule
  \end{tabular}
  \medskip
  \begin{itemize}
    \item $\lambda=0.1$: +1.75 pp at TPF 1; \alert{+4.38 pp at TPF 5.6}.
    \item Stronger bias is not monotonically better; preserve context diversity.
    \item TPF 5.6 remains a low-accuracy operating point despite its improvement.
  \end{itemize}
  \papersource{Paper, Table 2, PDF p. 7. Qwen3 4B, 25B tokens, training block 64; six-task mean accuracy (\%).}
\end{frame}

\begin{frame}{Longer training can improve the parallel-decoding frontier}
  \centering
  \fig{fig08ab-dynamics}{0.85}{0.60}
  \begin{itemize}
    \item Likelihood estimation improves overall; fewer evaluations can become sufficient.
    \item Check the full accuracy--NFE curve: individual tasks and checkpoints fluctuate.
  \end{itemize}
  \papersource{Paper, Fig. 8(a--b), PDF p. 7; Qwen2.5 1.5B up to 200B tokens. HumanEval fluctuations appear in Fig. 8(d).}
\end{frame}

\begin{frame}{Final models use 300B--500B additional training tokens}
  \centering
  \begin{tabular}{lclrr}
    \toprule
    Model & Tokens & AR initialization & Train block & Eval block\\
    \midrule
    \eff{} 1.5B & 300B & Qwen2.5 1.5B & 16 & 16\\
    \eff{} 4B & 300B & Qwen3 4B & 64 & 32\\
    \eff{} 8B & 500B & Qwen3 8B & 64 & 32\\
    \bottomrule
  \end{tabular}
  \medskip
  \begin{itemize}
    \item All: clean-prefix block attention, no shift, $\lambda=0.1$; training on 128 H100s.
    \item Quality: 12 tasks = 4 coding + 2 math + MMLU + 5 commonsense tasks.
    \item TPF and throughput: averaged over the six generation tasks, on one H100, batch 1.
  \end{itemize}
  \papersource{Paper, Sec. 5 and Table 3, PDF p. 8; Appendix A, p. 13. Final budget differs from the early accuracy-recovery observation.}
\end{frame}

\begin{frame}{Fast 8B vs. Qwen3 8B: 3.07$\times$ throughput, $-$0.93 pp}
  \centering
  \begin{tabular}{lrrr}
    \toprule
    Model & TPF & Tokens/s & Avg. (\%)\\
    \midrule
    Qwen3 4B & 1.00 & 47.13 & 67.97\\
    Qwen3 8B & 1.00 & 42.51 & 71.58\\
    Dream 7B & 1.00 & 28.11 & 65.30\\
    \eff{} 8B & 1.00 & 39.99 & 71.62\\
    \eff{} 8B & 2.74 & 109.78 & 70.93\\
    \eff{} 8B & 3.27 & \textbf{130.71} & \textbf{70.65}\\
    \bottomrule
  \end{tabular}\par
  \medskip
  Versus Qwen3 4B: \alert{2.77$\times$ throughput and +2.68 pp}.\\
  At TPF 1, accuracy is retained, but throughput is slightly below Qwen3 8B.
  \papersource{Paper, Table 3, PDF p. 8: H100, batch 1. Ratios recomputed from this table. Dream ratio is 4.65$\times$; Sec. 5.1 says 4.50$\times$. Table 6 gives a different Qwen3 4B TPS, so it is not mixed here.}
\end{frame}

\begin{frame}{One set of weights supplies several accuracy--speed choices}
  \centering
  \fig{fig09-flexibility}{0.99}{0.48}
  \medskip
  \begin{itemize}
    \item Change the confidence threshold, not the model weights.
    \item Higher throughput eventually incurs a substantial quality drop.
    \item Inspect task-specific curves: the 12-task mean also includes unchanged likelihood scores.
  \end{itemize}
  \papersource{Paper, Fig. 9 and Sec. 5.2, PDF p. 9; aggregation protocol: Appendix A, p. 13. High-accuracy performance is not best on every task.}
\end{frame}

\begin{frame}{Attention and clean context deliver the largest ablation gain}
  \centering
  \begin{tabular}{lrr}
    \toprule
    Cumulative Qwen3 4B conversion & Avg. (\%) & Gain (pp)\\
    \midrule
    Bidirectional baseline, 25B tokens & 44.59 & ---\\
    + Block attention and clean prefix & 59.01 & +14.42\\
    + Remove token shift & 60.27 & +1.26\\
    + Position-dependent masking & 62.02 & +1.75\\
    + Extend training to 300B tokens & 64.05 & +2.03\\
    \bottomrule
  \end{tabular}
  \medskip
  \begin{itemize}
    \item Fixing the training structure precedes gains from masking and scale.
    \item These are cumulative increments; individual tasks do not all improve at each step.
  \end{itemize}
  \papersource{Paper, Table 5, PDF p. 10. Six coding/math tasks. Adding position bias lowers both math scores in this ablation but raises the overall mean.}
\end{frame}

\begin{frame}{Text embeddings also benefit, with task-dependent gains}
  \centering
  \begin{tabular}{lrrr}
    \toprule
    Model & Category avg. & Pair classification & Retrieval\\
    \midrule
    Qwen2.5 1.5B & 29.54 & 24.59 & 20.69\\
    \eff{} 1.5B & 37.25 & 56.76 & 18.67\\
    Qwen3 4B & 30.79 & 33.94 & 19.46\\
    \eff{} 4B & 40.70 & 65.59 & 20.17\\
    \bottomrule
  \end{tabular}
  \medskip
  \begin{itemize}
    \item Zero-shot MTEB: 15 datasets, six categories; last-layer mean pooling.
    \item Qwen uses causal attention; \eff{} uses fully bidirectional attention here.
    \item Mean gains: +7.71 / +9.91 score points; 1.5B retrieval decreases.
  \end{itemize}
  \papersource{Paper, Table 4, PDF p. 9; Appendix A, p. 13. Avg. equally weights six category scores; metrics vary by task. No embedding fine-tuning.}
\end{frame}

\begin{frame}{Efficient-DLM also beats accelerated dLMs on GSM8K}
  \begin{columns}[c,onlytextwidth]
    \begin{column}{0.52\textwidth}
      \centering
      \fig{fig10-fast-dllm}{0.99}{0.72}
    \end{column}
    \begin{column}{0.44\textwidth}
      \begin{itemize}
        \item Main-table Dream and LLaDA use TPF 1.
        \item This comparison adds Fast-dLLM dual caching and parallel decoding to both.
        \item Efficient-DLM retains a better curve on this task.
      \end{itemize}
    \end{column}
  \end{columns}
  \papersource{Paper, Appendix C, Fig. 10, PDF p. 13. GSM8K-only result; confidence thresholds are varied.}
\end{frame}

\begin{frame}{The relative benefit narrows as serving batches grow}
  \centering
  \fig{fig11-acc-throughput-large-bs}{0.99}{0.54}
  \medskip
  \begin{itemize}
    \item The paper reports favorable trade-offs through batch 16 on GSM8K.
    \item At batch 32, Qwen3 1.7B exceeds Efficient-DLM 8B in throughput.
    \item Small-batch, memory-bound serving is the clearest use case in this study.
  \end{itemize}
  \papersource{Paper, Appendix C, Fig. 11, PDF pp. 13--14. Panel x-axis scales differ; compare accuracy as well as throughput.}
\end{frame}

\begin{frame}{Align training with the intended decoder}
  \begin{enumerate}
    \item \textbf{Preserve useful structure.} Block causality and clean prefixes retain AR abilities and make caching natural.
    \item \textbf{Train on plausible residual masks.} Moderate positional bias improves the parallel-decoding trade-off.
    \item \textbf{Evaluate the entire frontier.} TPF 1 quality, aggressive decoding, and batch scaling answer different questions.
  \end{enumerate}
  \begin{block}{What constrains the result}
    Final training costs 300B--500B tokens; no matched continued-AR training control is reported. Small-model retention and large-batch speed remain weaker points.
  \end{block}
  \papersource{Synthesis of Secs. 2--5 and Appendix C. Cost and comparison interpretation based on the reported protocol.}
\end{frame}

\begin{frame}{Paper identity and resources}
  \textbf{Efficient-DLM: From Autoregressive to Diffusion Language Models, and Beyond in Speed}
  \medskip
  
  {\small Yonggan Fu, Lexington Whalen, Zhifan Ye, Xin Dong, Shizhe Diao, Jingyu Liu, Chengyue Wu, Hao Zhang, Enze Xie, Song Han, Maksim Khadkevich, Jan Kautz, Yingyan (Celine) Lin, and Pavlo Molchanov.}
  \medskip
  \begin{itemize}
    \item Version used: \href{https://arxiv.org/abs/2512.14067v2}{arXiv:2512.14067v2}, revised 29 April 2026.
    \item Model links from the paper: \href{https://huggingface.co/nvidia/Efficient-DLM-4B}{Efficient-DLM-4B}, \href{https://huggingface.co/nvidia/Efficient-DLM-8B}{Efficient-DLM-8B}.
    \item Figures reproduced from the authors' same-version TeX assets; cropped panels are identified.
    \item This is an independent reading presentation. Backup details follow.
  \end{itemize}
\end{frame}

\appendix

\begin{frame}{Backup: retention differs across model sizes}
  \centering
  \begin{tabular}{lrrr}
    \toprule
    Model & TPF & Tokens/s & Avg. (\%)\\
    \midrule
    Qwen2.5 1.5B & 1.00 & 73.03 & 54.47\\
    \eff{} 1.5B & 1.00 & 68.52 & 52.09\\
    \eff{} 1.5B & 2.33 & 158.89 & 52.04\\
    \eff{} 1.5B & 2.69 & 184.48 & 51.77\\
    \midrule
    Qwen3 4B & 1.00 & 47.13 & 67.97\\
    \eff{} 4B & 1.00 & 44.13 & 67.54\\
    \eff{} 4B & 2.52 & 119.33 & 67.39\\
    \eff{} 4B & 3.01 & 130.24 & 67.18\\
    \bottomrule
  \end{tabular}\par
  \medskip
  1.5B at TPF 2.33: 2.18$\times$ throughput, $-$2.43 pp vs. its AR initializer.
  \papersource{Paper, Table 3, PDF p. 8. H100, batch 1; accuracy over 12 tasks, throughput over six generation tasks.}
\end{frame}

\begin{frame}{Backup: quality and speed averages cover different tasks}
  \centering
  \begin{tabular}{lrr}
    \toprule
    Generation task & Shots & Maximum output tokens\\
    \midrule
    GSM8K & 8 & 256\\
    Minerva Math & 4 & 512\\
    HumanEval / HumanEval Plus & 0 & 512\\
    MBPP / MBPP Plus & 3 & 512\\
    \bottomrule
  \end{tabular}
  \medskip
  \[
  \mathrm{Avg}_{12}=\frac{4\,\mathrm{Coding}+2\,\mathrm{Math}+\mathrm{MMLU}+5\,\mathrm{CR}}{12}.
  \]
  \begin{itemize}
    \item TPF / TPS: six generation tasks only.
    \item MMLU and commonsense scores stay fixed across reported decoding thresholds.
    \item AR evaluation uses lm-evaluation-harness; Dream / LLaDA use official code.
  \end{itemize}
  \papersource{Paper, Table 3, PDF p. 8; Appendix A, p. 13. Weighted-average expression describes the reported task aggregation.}
\end{frame}

\begin{frame}{Backup: Gumbel-top-$k$ samples a fixed-size mask set}
  \[
  g_i=-\log(-\log u_i),\quad u_i\sim\mathcal U(0,1),\qquad
  S=\operatorname{TopK}_i\{\log w_i(t)+g_i\}.
  \]
  \begin{itemize}
    \item $|S|=\operatorname{round}(tL')$: the count is fixed at a given noise level.
    \item Weight ratios describe preference, not marginal inclusion probabilities.
  \end{itemize}
  \[
  \frac{w_{i+\Delta}(t)}{w_i(t)}=2^{(1-t)\Delta/(\lambda L')}.
  \]
  \begin{block}{Teaching example}
    $L'=16$, $\lambda=0.25$, $t=0.5$: select eight positions.\\
    Positions eight tokens apart have a weight ratio of two.
  \end{block}
  \papersource{Derivation / sampling explanation from Eq. (2) and its Gumbel-top-$k$ description, PDF p. 6. Not an additional experiment.}
\end{frame}

\begin{frame}{Backup: learning rate and LoRA both affect adaptation}
  \begin{columns}[T,onlytextwidth]
    \begin{column}{0.47\textwidth}
      \textbf{Qwen3 4B, 25B tokens}
      \medskip
      
      \begin{tabular}{lr}
        \toprule
        Initial LR & Avg. (\%)\\
        \midrule
        $10^{-4}$ & 50.95\\
        $3\times10^{-5}$ & 56.59\\
        $10^{-5}$ & \textbf{60.63}\\
        $3\times10^{-6}$ & 60.11\\
        $10^{-6}$ & 54.56\\
        \bottomrule
      \end{tabular}
      \medskip
      
      Too large: greater drift.\\
      Too small: insufficient adaptation.
    \end{column}
    \begin{column}{0.49\textwidth}
      \textbf{Qwen2.5 1.5B conversion}
      \medskip
      
      \begin{tabular}{lr}
        \toprule
        Update & Avg. (\%)\\
        \midrule
        LoRA rank 16 & 27.93\\
        LoRA rank 64 & 30.78\\
        Full model & 38.41\\
        \bottomrule
      \end{tabular}
      \medskip
      
      LoRA also trains embeddings, normalization, and output head.\\[1mm]
      Rank 64 trails full training by \alert{7.63 pp}.
    \end{column}
  \end{columns}
  \papersource{Paper, Appendices D and F, Tables 7--8, PDF pp. 14--15. Both report six-task generation accuracy.}
\end{frame}

\begin{frame}{Backup: block position creates a repeated pattern of difficulty}
  \centering
  \fig{fig12-loss-distrib-full-seq}{0.94}{0.54}
  \medskip
  \begin{itemize}
    \item AR: high loss at sequence start, then a flatter positional profile.
    \item Block dLM: loss rises within blocks and falls again at block boundaries.
    \item The repeated tail difficulty supports studying position-aware masking.
  \end{itemize}
  \papersource{Paper, Appendix E, Fig. 12, PDF p. 14. First 256 training positions; diffusion Qwen2.5 1.5B uses block size 16.}
\end{frame}

\end{document}
