Diffusion Forcing
Diffusion forcing은 각자 고유한 노이즈 수준을 가진 시퀀스 토큰을 인과 모델이 디노이징하도록 학습해, 긴 동영상 롤아웃과 계획 수립을 안정화합니다.
디퓨전 포싱은 비디오 프레임이나 로봇 동작과 같은 시퀀스의 각 토큰에 독립적으로 샘플링된 노이즈 수준을 부여하고, 인과 모델이 부분적으로 노이즈가 있는 이전 토큰을 바탕으로 각 토큰의 노이즈를 제거하도록 학습하는 시퀀스 생성 방법입니다. 이 방법으로 학습한 모델 하나는 대규모 언어 모델(LLM)이 다음 토큰을 예측하는 것처럼 단계별로 시퀀스를 생성할 수 있으며, 전체 시퀀스 디퓨전 모델처럼 미래 전체를 목표에 맞게 유도할 수도 있습니다. MIT의 Boyuan Chen, Diego Martí Monsó, Yilun Du, Max Simchowitz, Russ Tedrake, Vincent Sitzmann은 2024년 7월 Diffusion Forcing: Next-token Prediction Meets Full-Sequence Diffusion에서 이 방법을 소개했으며, 해당 논문은 NeurIPS 2024에서 발표되었습니다.
부분 마스킹으로서의 노이즈#
교사 강요 방식은 자기회귀 모델이 깨끗한 정답 기록에서 다음 토큰을 예측하도록 학습하므로, 생성 시점에 모델은 처음으로 자체적인 불완전한 출력을 접합니다. 그 결과 오류가 누적되면서 긴 비디오 생성 과정이 점차 어긋납니다. 전체 시퀀스 디퓨전은 모든 프레임의 노이즈를 동일한 수준에서 한꺼번에 제거하므로 가이던스를 지원하지만, 시퀀스 길이가 고정되고 중간에 새로운 관측에 반응할 수 없습니다.
디퓨전 포싱은 노이즈를 부분 마스킹으로 취급합니다. 깨끗한 토큰은 완전히 보이고 순수 노이즈는 토큰을 완전히 가리며, 그 사이의 각 수준은 토큰 일부를 가립니다. 토큰마다 독립적인 노이즈 수준을 사용해 학습하면 깨끗한 과거와 완전히 노이즈가 있는 다음 프레임의 조합인 다음 토큰 예측부터 모든 프레임에 동일한 노이즈를 적용하는 전체 시퀀스 디퓨전까지, 모든 조합을 하나의 모델이 학습합니다. 논문은 이 목적 함수가 모든 하위 시퀀스의 우도에 대한 변분 하한을 최적화함을 증명합니다. 참조 구현인 Causal Diffusion Forcing은 노이즈가 있는 기록을 요약하는 은닉 상태를 가진 순환 신경망을 사용했으며, 저자들은 이후 트랜스포머 버전을 공개했습니다.
샘플링 스케줄#
모든 노이즈 수준의 조합이 분포 내에 있으므로, 생성 과정은 노이즈 제거 단계와 프레임을 기준으로 하는 2차원 스케줄을 따를 수 있습니다. 논문의 지그재그 스케줄은 각 프레임의 노이즈 제거를 이전 프레임보다 약간 늦게 시작합니다.
import torch
torch.manual_seed(0)
frames, levels = 5, 4 # a 5-frame clip; noise levels run from 0 (clean) to 4 (pure noise)
# Training: every frame gets its own random noise level, so any mix of clean and noisy frames is seen
print("Training noise levels:", torch.randint(0, levels + 1, (frames,)).tolist())
# Sampling with a zig-zag schedule: each row is one denoising pass over all frames, and frame i
# starts denoising i passes after frame 0, so the near future is always cleaner than the far future
for step in range(levels + frames):
row = [min(max(levels - step + i, 0), levels) for i in range(frames)]
print(f"pass {step}: {row}")학습 선은 한 클립에 대해 [4, 4, 3, 0, 3]과 같은 수준을 그립니다. 이는 교사 강요 방식이나 전체 시퀀스 디퓨전이 학습하지 않는 조합입니다. 스케줄에서 행 0은 순수 노이즈를 뜻하며, 4번째 패스에서는 첫 프레임이 깨끗해지는 반면 다섯 번째 프레임은 여전히 완전히 노이즈 상태입니다. 클립은 8번째 패스 이후 완성됩니다. 논문은 가까운 미래가 먼 미래보다 확실하다고 간주하므로 계획에 이 형태를 사용합니다.
긴 시퀀스를 생성할 때는 두 번째 기법을 사용합니다. 이미 생성된 프레임의 깨끗한 복사본 대신 약간 노이즈가 있는 복사본을 조건으로 삼아 새 프레임을 생성하면, 모델은 작은 자체 오류에 더 잘 견딥니다. DMLab 내비게이션 데이터셋에서 36프레임 클립으로 학습한 모델은 발산하지 않고 2,000프레임을 생성한 반면, 기준 모델은 발산했습니다.
가이던스, 계획, 로보틱스#
전체 시퀀스 가이던스를 그대로 적용할 수 있습니다. 샘플링 중 보상이나 목표로 노이즈가 있는 미래 프레임을 유도할 수 있습니다. 논문의 몬테카를로 가이던스는 가능한 미래를 여러 개 생성하고 가이던스 그래디언트를 평균해 강화 학습 연구에서 사용하는 미로 계획 태스크의 결과를 개선했습니다. 로보틱스에서는 저자들이 모방 학습으로 실제 로봇 팔을 학습시켜 세 번째 슬롯을 사용해 과일 두 개의 위치를 바꾸도록 했습니다. 과일이 무작위 슬롯에서 시작하기 때문에 이 태스크에는 메모리가 필요합니다. 디퓨전 포싱은 80%의 성공률을 보였지만 메모리가 없는 Diffusion Policy는 실패했습니다. 시각적 방해 요소가 있거나 카메라가 완전히 가려진 경우에도 성공률이 76%를 기록했으며, 손상된 프레임을 정답으로 취급한 다음 프레임 디퓨전 기준선은 48%였습니다. 동일한 모델은 시계열 예측도 처리했습니다.
비디오 모델의 디퓨전 포싱#
MIT 연구팀의 Diffusion Forcing Transformer(DFoT)는 2025년 2월 논문 History-Guided Video Diffusion에서 소개되었으며, 과거 프레임 수에 제한 없이 해당 기록을 가이던스 신호로 사용합니다. Skywork AI의 SkyReels-V2는 2025년 4월 공개되었으며, 사전 학습된 전체 시퀀스 비디오 모델을 디퓨전 포싱 모델로 파인튜닝합니다. 이 모델은 한 프레임에서 다음 프레임으로 갈수록 노이즈 수준이 감소하지 않으므로 비디오를 청크 단위로 확장할 수 있습니다. AI 에이전트의 동작에 따라 장면이 어떻게 변화하는지 예측하는 비디오 월드 모델에도 같은 유형의 안정적인 인과적 시퀀스 생성이 필요합니다. 긴 시퀀스 생성 중 객체의 일관성이 유지되는지는 객체 추적으로 측정할 수 있습니다. Ultralytics YOLO26의 추적 모드는 감지된 각 객체에 프레임 간에 유지되는 ID를 할당하므로, 생성된 클립에서 자동차가 동일한 추적 ID를 유지하면 정체성도 유지된 것입니다.










