MORCA가 강화학습으로 영상 확산 모델 캐시 재사용을 정밀 제어한다

MORCA: Offline-to-Online Reinforcement Learning for Adaptive Cache Reuse in Video Diffusion Acceleration

arXiv2610.10457v1

Yuxiang Xiong2026-10-07

무엇인가

영상 확산 모델(DiT)은 반복 디노이징 때문에 추론 지연이 크다. 캐싱은 스텝 간 중복을 이용해 DiT 블록 계산을 일부 스텝에서 건너뛰고 이전 스텝의 결과를 재사용하는 경량 가속 기법이다. 기존 동적 캐싱 방법들은 각 디노이징 스텝에서 캐시 재사용이 유발할 즉각적 오차(step error)를 추정해 임계값 규칙으로 재사용 여부를 정한다. 그러나 저자들의 관심은 최종 생성 영상에서의 품질 손실(terminal error)이다. 논문은 실험(Fig. 1, Table 1)에서 step error가 프롬프트들 사이에서 비슷한 패턴을 보이는 반면 terminal error는 크게 달라지고, step error만으로는 terminal error를 정확히 예측하기 어렵다는 것을 보인다. 또한 임계값 기반 방법은 속도 향상을 정밀하게 제어하지 못해 사용자가 지정한 가속 목표를 맞추기 어렵다.

어떻게 동작하나

MORCA는 SeaCache 위에 구축된다. 캐싱 입도와 캐시 재사용 전략은 그대로 두고, 임계값 기반 결정 규칙만 학습된 스케줄러로 교체한다. 캐시 스케줄링을 유한 지평 MDP로 정식화하는데, 각 스텝 t에서 상태 s_t, 행동 a_t ∈ {0,1}(0은 재계산, 1은 캐시 재사용)을 두고, 보상은 캐시 없이 생성한 참조 영상 대비 PSNR을 상한 r_max로 자른 값으로 정의하며 최종 스텝에서만 부여한다. 즉 스케줄 전체의 리턴이 최종 영상 품질이 된다.

무엇과 다른가

여기에 사용자 지정 가속 목표를 예산 제약으로 넣는다. 추론 지연이 재사용 횟수 K에 대해 대략 선형으로 감소하고 프롬프트 간에도 비슷하다는 관찰로부터 K ≈ α − β/ρ 관계를 캘리브레이션해, 목표 가속비 ρ*를 재사용 예산 K로 변환한다. 문제는 기대 리턴을 최대화하되 Σa_t = K를 만족해야 하는 제약 MDP가 되는데, 표준 RL 알고리즘은 제약 충족을 직접 보장하지 못한다. 논문은 McMahan and Zhu(2024)의 축소 기법을 따라 이를 등가의 표준 증강 MDP로 바꾼다. 증강 상태는 (s_t, u_t, K)이고, 행동 집합은 남은 예산 b_t − a가 남은 t−1개 스텝 안에 소진 가능하도록 제한한다. 이 구성이 최적 실행가능 가치를 보존하면서 규정된 재사용 예산을 보장한다는 것이 논문의 주장이다.

어떻게 쓰나

스케줄러 입력은 세 부분으로 구성된다. 첫째, SeaCache의 step error 프록시와 관련 통계로 인접 스텝 거리 d_t, 누적 거리 D_t, 현재 스텝 t, 연속 재사용 횟수 ℓ_t를 쓴다. 둘째, 잠재 정보인데 전체 잠재를 쓰지 않고 3D 풀링, 시간 평균·분산의 2D 풀링으로 압축한 φ(x)를 현재 잠재 x_t, 이전 스텝 잠재 x_{t+1}, 최근 재계산 스텝의 잠재 x_{j_t}에서 추출한다. 셋째, 예산 정보 u_t와 K다. 이들을 합쳐 z_t를 만든다. 학습은 오프라인-온라인 IQL(Implicit Q-Learning) 2단계로 진행한다. 궤적 수집에 비싼 영상 생성 롤아웃이 필요하므로, off-policy인 IQL로 데이터를 반복 재사용한다. 오프라인 단계에서는 무작위 캐시 스케줄로 수집한 소량 데이터로 정책을 초기화하고, 온라인 파인튜닝에서는 현재 정책으로 궤적을 샘플링해 리플레이 버퍼에 추가한 뒤 짧은 critic-only 워밍업 후 IQL로 가치 함수와 정책을 함께 학습한다.

전제와 한계

실험은 Wan 패밀리 두 모델에서 수행했다. Wan2.2-T2V-A14B는 RTX A6000, Wan2.1-T2V-1.3B는 RTX 4090에서 돌렸고 둘 다 50 디노이징 스텝을 쓴다. 비교 대상은 TeaCache, MagCache, DiCache, SeaCache다. VBench에서 200개 프롬프트를 고정 평가셋으로 뽑아, 같은 프롬프트·시드로 만든 no-cache 참조 영상 대비 PSNR·SSIM·LPIPS와 추론 지연을 측정했다. 목표 가속비는 Wan2.2에서 1.8×/2.4×/3.0×, Wan2.1에서 2.4×/3.0×/4.0×다. 결과적으로 Wan2.2에서는 세 목표 모두에서 PSNR·SSIM·LPIPS가 가장 좋았고, SeaCache 대비 PSNR이 각각 2.22, 1.86, 1.78 dB 향상됐다. Wan2.1에서는 세 목표 모두 PSNR과 SSIM이 가장 높았고 SeaCache 대비 PSNR이 1.05, 2.17, 1.11 dB 개선됐으며, LPIPS도 3.0×와 4.0×에서 전체 방법 중 최고였다. 속도 제어 정확도는 평균 절대 가속비 오차가 Wan2.2 0.03, Wan2.1 0.05, 평균 절대 상대 추론시간 오차가 각각 1.15%와 1.55%다. 절제 실험에서는 잠재 특징을 상태에 넣었을 때 스케줄링이 개선되고, 같은 데이터 양에서 IQL이 REINFORCE보다 우수하며, 처음부터 온라인으로 학습한 IQL보다 오프라인 초기화 후 온라인 파인튜닝한 쪽이 더 좋다는 결과를 보고한다.

개발자 입장에서 이 논문의 의미는 캐시 가속을 '임계값 튜닝'이 아니라 '목표 가속비 지정' 문제로 바꾼다는 데 있다. 영상 생성 서비스에서 2.4× 같은 지연 목표를 정해두고 품질 손실을 최소화하고 싶을 때, 기존 SeaCache 계층은 유지한 채 스케줄러만 학습된 것으로 바꾸는 형태라 파이프라인에 얹기 쉽다. 다만 스케줄러를 학습하려면 프롬프트와 가속비 조합별 궤적을 GPU 롤아웃으로 수집해야 하고(논문 기준 Wan2.2 2,500개, Wan2.1 4,000개), 모델별로 K ≈ α − β/ρ 캘리브레이션을 다시 해야 한다. 코드는 공개돼 있다.

저자들이 밝힌 한계도 분명하다. 재사용 스텝 수가 이산적이라 달성 가능한 가속비도 이산적이므로 속도 제어에 unavoidable한 오차가 남는다. 또한 Wan2.2는 Wan2.1보다 캐시 재사용에 민감해 같은 가속비에서 충실도 지표가 더 낮게 나온다. MORCA는 스케줄 수준의 접근이므로 캐싱 입도나 캐시 재사용 전략을 바꾼 다른 방법과 결합해 추가 이득을 얻는 것은 향후 과제로 남겨두었다.