1. 서론

image.png

Diffusion 모델은 이미지나 비디오 뿐만 아니라 텍스트의 생성에서도 효과적일 수 있다. 왜냐하면 diffusion 모델은 autoregressive 모델(AR)과 비교했을 때, 생성속도를 가속화 할 수 있고, 모델 출력의 제어 가능성(양방향 고려)을 높일 수 있기 때문이다.

그러나 현재 Discrete diffusion 모델들은 세 가지 한계점을 가지고 있다.

(1) 임의의 길이로 출력 sequence를 생성하지 못하고, 고정된 길이의 벡터만 생성할 수 있다.

(2) 생성 중에 양방향 context를 사용하므로 KV caching을 사용할 수 없어 추론 효율성이 떨어진다.

(3) perplexity와 같은 지표로 측정된 성능이 AR보다 뒤처진다.

따라서 논문에서는 discrete diffusion과 AR 모델을 보간한 Block Discrete Denoising Diffusion Language Models (BD3-LMs)을 제안한다. Block diffusion 모델은 block에 대한 autoregressive 확률 분포와, 이전 block들이 주어졌을 때 block의 조건부 확률(discrete denoising diffusion)을 정의한다.

이 때, block diffusion 모델의 목적함수를 계산하는 것이 forward pass 한 번으로는 불가능하므로 특화된 알고리즘이 필요하다. 둘째, diffusion 목적함수의 높은 gradient variance가 훈련을 방해하여, block 크기가 1일 때도 AR보다 성능이 떨어지므로, 이에 대한 해결책이 필요하다.

2. 배경

2.1 Notation

V개 범주를 가진 스칼라 이산 확률변수를 simplex $\Delta^V$에 대한 'one-hot' 열벡터 공간 $V = {x \in {0, 1}^V : \sum_i x_i = 1} \subset \Delta^V$로 고려한다. V번째 범주는 특별한 [MASK] token을 나타내며, $m \in V$를 그 one-hot 벡터로 정의한다. $x^{1:L}$을 L개 token의 sequence로 정의하고, 모든 token $\ell \in {1, \ldots, L}$에 대해 $x^\ell \in V$이다. $\text{Cat}(\cdot; p)$를 확률 $p \in \Delta^V$를 가진 categorical 분포로 정의한다.

One-hot 벡터: 전체 vocabulary V개 중에서 해당 단어의 위치만 1이고 나머지는 0인 벡터

Categorical 분포: 각 카테고리(단어)가 나올 확률

2.2 Autoregressive 모델

데이터 분포 $q(x)$에서 추출된 L개 token의 sequence $x = [x^1, \ldots, x^L]$를 생각했을 때, AR 모델은 다음과 같은 factorized 분포를 정의한다.

$\log p_\theta(x) = \sum_{\ell=1}^L \log p_\theta(x^\ell | x^{<\ell})$

chain rule, 각 단어의 확률을 이전 모든 단어들을 조건으로 하여 조건부 확률로 표현한 것

이 때, 각 $p_\theta(x^\ell | x^{<\ell})$는 신경망에 의해 parameterize되고 next token prediction task로 훈련된다.

그러나 추론 시, L개 token을 생성하는 데 L단계가 필요하다(순차적 의존성).

2.3 Discrete Denoising Diffusion Probabilistic Models