Diffusion LLM Part 2: Discrete Diffusion -- 텍스트에 노이즈를 어떻게 추가하나
D3PM, Transition Matrix, Absorbing State, MDLM -- 연속 Diffusion을 이산 토큰 세계로 옮기는 방법을 설명합니다.

Diffusion LLM Part 2: Discrete Diffusion -- 텍스트에 노이즈를 어떻게 추가하나
Part 1에서 우리는 연속 공간에서 작동하는 Diffusion의 원리를 살펴봤습니다. 이미지 픽셀에는 Gaussian 노이즈를 자연스럽게 더할 수 있지만, 텍스트 토큰은 이산(discrete) 데이터입니다. "hello"에 노이즈 0.3을 더하면 무엇이 될까요?
이 글에서는 Diffusion을 이산 공간으로 옮기는 방법을 다룹니다. D3PM의 Transition Matrix에서 시작해, MDLM의 Masked Diffusion까지 -- LLaDA의 직접적인 선조들입니다.
D3PM: 이산 공간의 Diffusion
Austin et al. (2021)은 D3PM(Discrete Denoising Diffusion Probabilistic Models)에서 핵심 질문을 제기합니다: Gaussian 노이즈를 더할 수 없는 이산 데이터에서 forward process를 어떻게 정의할 것인가?
답: Transition Matrix를 사용합니다.
연속 Diffusion에서 Gaussian 노이즈가 하는 역할을, 이산 Diffusion에서는 transition matrix Q_t가 대신합니다. 각 단계 t에서 토큰 x_{t-1}이 x_t로 바뀔 확률을 행렬로 정의합니다:
q(x_t | x_{t-1}) = Cat(x_t; p = x_{t-1} * Q_t)
여기서 Cat은 Categorical 분포이고, Q_t는 K x K 행렬입니다 (K는 vocabulary 크기). Q_t[i][j]는 토큰 i가 토큰 j로 바뀔 확률을 나타냅니다.
연속 Diffusion과의 대응 관계:
관련 포스트

Paper of the Week #3 — FLOP이 절반이라고 시간이 절반은 아닙니다
정수 하나로 MoE expert 연산을 절반으로 줄이는 논문(arXiv 2609.04575)의 표 5를 A100 한 장에서 1점 안쪽으로 재현했습니다. 논문에 없는 속도를 쟀더니 HF transformers에서는 0, 지금 쓰는 순정 vLLM의 batch 1에서도 0, batch 8에서 1.35배였습니다. 재정규화 없이 학습된 OLMoE 대조군과 2호가 약속한 iso-cost 정산도 실었습니다.

논문은 절반에서 멈췄습니다. 4분의 1은 30점이 아니라 4점을 잃고, 재정규화 없이 학습된 모델이 이유를 알려줍니다
arXiv:2609.04575가 돌리지 않은 두 칸을 채웠습니다. Qwen3.6-35B-A3B에서 k₁=2·3, 그리고 재정규화 없이 학습된 OLMoE에 k₂ 기법을 통째로 적용한 결과입니다. 두 번째가 논문 메커니즘의 반증 시험입니다.

MoE expert를 절반만 켜는 정수 하나 — batch 1에서는 공짜가 아니었습니다
arXiv:2609.04575의 표 5를 A100 한 장으로 재현하고, 논문에 없는 처리량을 쟀습니다. HF transformers에서는 이득이 없고, 순정 vLLM의 batch 1에서도 없고, batch 8에서 1.35배입니다.