LTX-Video

ltx-video paper review 논문
김호진's avatar
Jul 05, 2025
LTX-Video
여러 종류의 scaled, distilled 모델들을 전부 코드/가중치를 공개했다.
비디오 관련 무언가를 시작하기 너무 좋은 레포
 

 
transformer-based LDM이고 Video-VAE + denoising도 썼다.
H-W/32, T/8로 압축된다. transformer단에서는 패치 안하고, 많이 압축하니 spatiotemporal 동시에 attention도 할 수 있다. 대신 latent channel을 128로 늘렸다.
근데 많이 압축하면 fine detail들이 사라질 수 있다 : 가장 문제 → VAE가 latent to pixel도 하고 pixel to clean pixel도 하게 했다. → 별개의 upsampling module을 학습할 필요가 없어진다.
H100에서 768*512, 24fpx 5초 생성에 2초 걸렸다. 속도는 거의 순전히 VAE에 의한 결과인 것 같다. 딱히 다른 내용은 없음
 
 
Sora랑 MovieGen은 second-stage diffusion 모델을 둬서 고해상도 생성
Pixel-loss pixel-level loss를 VAE-decodec latents?이게 뭐지 여기에 줬다.
뭔가 VAE가 하는게 꼭 reconstruction이 아니라 부족한 high frequency detail을 “생성!” 해야한다는걸 준 것 같다. 그래서 last denoising step은 VAE가 한다고. 사실상 특정 부분은 pixel space에서 해라 이런 느낌이네
novel loss function도 있다네
 
Pixart-a 아키텍처 - DiT with text condition +
  1. RoPE 사용 enhanced by normalized fractional coordinates
  1. K, Q norm 적용 for stable, robust
 
notion image
 
VAE의 압축
notion image
채널을 늘렸는데도 압축률이 2배 더 좋다. 사실 채널이 크고 spatiotemporal 압축률이 높아서 합이 같아도 이득인건데
 
VAE가 학습될수록 latent에서 채널간의 중복이 줄어들었다.
notion image
 
  1. Patchify 하는건 transformer가 아니라 VAE encoder의 맨 처음으로 옮겼다.
  1. VAE decoder가 마지막 denoising step을 수행하도록 했다.
 
notion image
 
OOD 데이터가 VAE decoder의 input으로 들어갈 수 있다. 그럼 리컨된 픽셀에 아티팩트가 생긴다.
encoder가 OOD를 뱉는건, high frequency signal이 많을 때 그런 경향이 있더라
 
이걸 해결하기위해 MovieGen과 Sora는 별도의 upsampler 모델을 구현했지만 이건 연산적으로도, 시간적으로도 코스트가 든다.
 
디테일 + 속도까지 잡고싶다 → decoding + denoising 해버리기
그럼 장점은?
  1. 표현력이 latent space에서 끝나지 않고 decoder에도 생기기 때문에 더 풍부한 표현이 된다.
    1. 디코더가 단순 recon 뿐만 아니라 generation 역할도 하게되니까.
  1. 모델 학습할 때 같이 학습되는건가?
    1. timestep = [0, 0.2]. 꼭 한스텝도 아니네
      adaLN으로 들어감
 
Reconstruction GAN
아 이거 VAE 학습할 때 얘기구나 원래 보통은 pixel-wise L2 loss, perceptual loss, GAN loss를 쓴다.
L2 : 압축률이 높으면 L2 loss는 종종 blurry한 효과를 만든다.
lpips : 블러리함은 줄이는데 텍스쳐 아티팩트가 생긴다?
GAN : disc에 의존하는데, recon을 위해 설계된 존재는 아니다 애초에. 아무 조건 없이 그냥 보고 판단하는 태스크기 때문에 어려울 수 밖에 없다. Patch-GAN은 조금만 보고 해서 더 어렵다.
그러게 블러리한게 창문이나 멀리있어서 발생한 효과일 수 있는데 부분만 보고 어캐함
 
→ 그래서 Novel Reconstruction GAN Loss!
notion image
두개를 동시에 받아서 뭐가 진짜고 뭐가 가짜인지 뱉게한다? 이거 좋넹
greatly enhances GAN stability and performance. 뿐만 아니라 Disc가 일종의 robust reconstruction loss처럼 동작하게 한다.
 
Multi-layer Noise Injection
VAE latent에 noise를 좀 다양하게 더한다 - 레이어별로
 
Uniform log-variance
latent의 channel이 클 때 몇개의 채널은 recon이 아니라 단순히 KL Loss를 낮추는데만 사용되는 경우가 있더라(평균 0, 분산 1이 되며) - 이건 무의미하다 이래서는 안됨
그래서 모든 채널의 분산이 같도록 했다? → KL Loss의 영향을 모든 채널에 고르게 분배 → 모든 채널이 objective에 관여
 
DWT Loss 사용?
고주파 성분을 더 보도록 하는 느낌인데 오디오처럼 되네ㅋㅋ 3D DWT 후 L1 loss
 
notion image
 
Cross attention이 MM-DiT보다 낫더라.
 
Image input 구현 방법 - Open Sora를 참고
원래는 모든 토큰에 적용되는 노이즈 레벨이 같다. 근데 약간 다르게 적용되게 했다.
 
그리고 인퍼런스
notion image
 
high resolution일수록 노이즈 쪽 타임스텝을 더 많이 샘플링해야한다?
 
결과 비교
notion image
다른 모델들이랑 비교한걸 보고싶긴하다
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Share article
Subscribe to our newsletter

Kim Hojin