27. 영상 생성 모델의 학습: 시퀀스와 디퓨전 사이에서 무엇을 "강제"하는가

긴 영상의 오류 누적: 선생님보다 길게 굴리기

셀프 포싱은 학습 때 5초짜리 영상을 자기 과거로 굴렸는데, 1분, 4분짜리 영상을 만들면 어떨까? 학습 때 굴린 길이를 넘어서는 순간 모델은 다시 처음 보는 과거를 딛게 되고, 5초가 지난 뒤의 누적 오차는 학습 때 한 번도 겪어 본 적이 없다. 게다가 증류의 선생님인 양방향 모델은 애초에 5초짜리밖에 못 만들어서, 학생에게 1분짜리 모범답안을 보여 줄 수가 없다.

역사: 오류 누적과 싸운 1년

2025년 4월부터 1년 동안 이 문제에 대한 답이 잇달아 나왔는데, 아래 표에는 무엇을 해결했는지만 한 줄씩 적는다.

날짜 방법 무엇을 바꿨나 종류
2025.4 FramePack (Lvmin Zhang, Maneesh Agrawala) 과거 프레임을 중요도에 따라 압축해 문맥 길이를 묶고, 끝 프레임을 먼저 정하는 등 샘플링 순서를 바꿔 오류 누적을 막는다 조건 바꾸기
2025.9 LongLive 긴 영상으로 굴려 학습하고(길게 학습해 길게 생성), 프롬프트가 바뀌면 KV 캐시를 다시 계산한다. H100 한 장에서 초당 20.7프레임, 최대 240초 미리 겪기
2025.9 Rolling Forcing 한 프레임씩이 아니라 창(여러 프레임) 안의 프레임을 함께 걷어 내되 뒤로 갈수록 노이즈를 높인다. 첫 프레임들을 늘 참조하는 어텐션 싱크를 둔다 조건 바꾸기
2025.10 Self-Forcing++ 학생이 선생님보다 긴 영상을 굴리게 한 뒤, 그 긴 영상에서 잘라 낸 구간을 짧은 선생님이 바로잡는다. 선생님 길이의 최대 20배, 최장 4분 15초 미리 겪기
2025.10 Stable Video Infinity 모델이 스스로 낸 오류를 모아 두었다가 깨끗한 학습 입력에 다시 섞어, 오류가 쌓인 과거를 흉내 낸다(오류 재활용) 미리 겪기
2026.2 Causal Forcing 학생의 초기화를 양방향 선생님이 아니라 자기회귀 선생님으로 한다. 선생님과 학생의 구조(양방향 대 자기회귀)가 달라서 생기는 불일치를 없앤다 조건 바꾸기
2026.2 Context Forcing 긴 문맥을 보는 선생님이 긴 문맥을 보는 학생을 가르친다. 짧은 창 선생님과 긴 롤아웃 학생의 불일치를 줄인다 조건 바꾸기

표의 맨 오른쪽 칸을 세로로 읽으면 방법이 두 종류로 나뉘는데, 하나는 어긋난 과거를 학습 때 미리 겪게 하는 것이다. 길게 굴리기(LongLive, Self-Forcing++)와 오류 재활용(Stable Video Infinity)이 여기에 든다. 다른 하나는 누적 오차가 덜 생기게 조건을 바꾸는 것이다. 문맥 압축(FramePack), 노이즈를 점점 높이는 창(Rolling Forcing), 선생님 바꾸기(Causal·Context Forcing)가 여기에 든다. 미리 겪기는 노출 편향을 정면으로 다루고, 조건 바꾸기는 누적 오차가 넘어가는 배율 g\textcolor{#cc00ff}{g} 자체를 낮춘다.

미리 겪기 (어긋난 과거를 학습 때 겪게) 조건 바꾸기 (누적 오차가 덜 생기게) 2025.4 2025.9 2025.10 2026.2 FramePack LongLive Rolling Forcing Self-Forcing++ Stable Video Infinity Causal Forcing Context Forcing

그림은 표의 일곱 방법을 arXiv에 처음 올라온 달에 놓고 두 종류로 나눈 연표로, 두 종류의 방법이 1년 내내 번갈아 나왔다(날짜: 각 논문의 arXiv 첫 판).

길게 굴리기가 실제로 어디까지 갔는지는 숫자로 보면 분명하다.

5초로 배운 모델이 굴려 낸 최장 길이 양방향 선생님이 만드는 길이 5초 셀프 포싱이 학습 때 굴린 길이 5초 LongLive 최장 (H100 한 장) 240초 = 4분 Self-Forcing++ 최장 255초 = 4분 15초 0 1분 2분 3분 4분 5분

그림은 5초짜리 영상으로 배운 모델이 각 논문에서 보고한 최장 생성 길이를 학습 길이와 나란히 놓은 것이다(LongLive arXiv 2509.22622, Self-Forcing++ arXiv 2510.02283의 초록).

김민준 (평상)
김민준
1분짜리가 무너지면 1분짜리로 굴려서 학습하면 되잖아요. 1년 동안 방법이 일곱 개나 나올 일인가 싶은데요.
선생님 (짚어주기)
선생님
셀프 포싱에서 학생에게 「진짜 영상다움」을 알려 주던 건 누구였죠?
김민준 (평상)
김민준
양방향 선생님 모델이요. 아, 그 선생님은 5초짜리밖에 못 만들어요.
이서연 (생각)
이서연
그러면 1분짜리 모범답안을 보여 줄 쪽이 아무도 없는 거네요. 학생을 길게 굴려도 채점할 사람이 없어요.
선생님 (평상)
선생님
그래요. 긴 과거를 모델이 다 들고 있는 것도 공짜가 아니어서, FramePack은 과거 프레임을 압축해 문맥 길이를 묶었죠.
김민준 (난처함)
김민준
채점할 사람도 없고 과거를 둘 자리도 모자라니, 표의 방법들이 다 에둘러 가는 길이었네요.
이서연 (궁금함)
이서연
그런데 5초짜리만 아는 선생님이라도, 1분짜리 영상의 한가운데 5초를 보여 주면 뭔가 말해 줄 수 있지 않을까요?
짧은 선생님이 긴 학생을 가르치는 법

Self-Forcing++의 발상은 단순하다. 선생님은 5초짜리 영상의 분포밖에 모르지만, 「지금 이 5초가 그럴듯한 5초인가」는 영상 어디에서든 판단할 수 있다. 그래서 학생이 1분짜리를 굴리게 하고, 그 안의 아무 5초 구간을 떼어 선생님에게 보여 준다. 학생의 50초 지점 구간에는 앞 50초 동안의 누적 오차가 그대로 담겨 있고, 선생님은 그 구간을 「5초짜리 진짜 영상다움」 쪽으로 당긴다. 학생은 긴 영상에서만 생기는 과거 위에서, 짧은 영상에서 배운 기준으로 교정받는다.

학생이 굴린 1분짜리 영상 (한 칸 = 5초) 칸이 진할수록 누적 오차가 크다 0초 30초 60초 50초 지점의 5초를 떼어 선생님에게 선생님은 5초짜리 진짜 영상만 안다
ML에서: 영상 모델이 길어질수록 필요한 것

긴 영상에서는 품질을 재는 기준도 바뀌는데, 첫 5초의 품질만 보면 오류 누적이 보이지 않는다. Self-Forcing++ 논문이 기존 평가 기준을 보완한 긴 영상 평가를 따로 제안한 것도 그래서다. 영상의 품질은 이제 「가장 좋은 순간」이 아니라 「끝까지 얼마나 버티는가」로 잰다. 보상을 설계할 때도 같은 질문이 돌아온다. 마지막 프레임 하나에 점수를 매기면, 앞부분이 무너져도 끝만 그럴듯하면 높은 점수를 받는다.

문제 9: 5초 선생님, 4분 학생

Self-Forcing++의 선생님은 5초짜리 영상만 만들 수 있다. (가) 학생이 1분짜리 영상을 굴린 뒤 처음 5초만 떼어 선생님에게 보여 주면 무엇을 놓치는가? (나) 선생님이 5초 넘는 영상을 한 번도 본 적이 없는데도, 50초 지점의 구간을 교정할 수 있는 근거는 무엇인가?

학생이 굴린 1분짜리 영상과 5초짜리만 아는 선생님 0초 10초 20초 30초 40초 50초 60초 (가) 처음 5초 (나) 50초 지점의 5초 선생님 (양방향 디퓨전) 5초짜리 영상만 본 적 있다
김민준 (평상)
김민준
(가)는 금방이에요. 처음 5초는 누적 오차가 거의 쌓이기 전이니까, 학습 때 5초만 굴린 셀프 포싱이랑 다를 게 없어요.
선생님 (평상)
선생님
그래요. 긴 영상에서만 생기는 과거를 학습에 넣으려면 뒤쪽 구간을 봐야 하죠. (나)는요?
이서연 (의심)
이서연
선생님이 5초짜리만 알면 50초 지점의 영상이 「그럴듯한지」는 판단 못 하는 거 아니에요? 50초까지 흘러온 이야기를 모르잖아요.
선생님 (질문)
선생님
서연 학생, 진짜 1분짜리 영상에서 아무 5초를 떼어 내면, 그 5초는 5초짜리 진짜 영상과 다르게 생겼나요?
이서연 (생각)
이서연
이야기의 앞뒤는 다르겠지만, 5초 안에서 물체가 움직이는 방식이나 색이 유지되는 방식은 똑같아야 해요. 50초가 흘렀다고 색이 바래는 진짜 영상은 없으니까요.
이서연 (깨달음)
이서연
오류 누적은 「5초 안에서도 보이는 부자연스러움」으로 드러나네요. 색이 바래는 것도, 인물이 뭉개지는 것도 그 구간만 봐도 이상해요. 선생님은 그걸 잡으면 돼요.
선생님 (평상)
선생님
그래요. 다만 서연 학생 걱정의 절반은 맞아요. 50초 전에 나온 인물이 같은 얼굴인지는 5초 구간만 보는 선생님이 판단할 수 없어요. 그건 긴 문맥을 보는 쪽(Context Forcing 같은)이 따로 다뤄요.
김민준 (평상)
김민준
5쪽짜리 보고서만 채점해 본 조교님도, 50쪽 보고서의 아무 5쪽을 보고 문장이 망가졌는지는 알 수 있는 거네요. 앞뒤 내용이 맞는지는 모르지만요.

정리 (가) 처음 5초에는 긴 영상의 누적 오차가 아직 쌓이지 않았으므로 짧게 굴린 학습과 다를 게 없다. 뒤쪽 구간을 떼어야 긴 영상에서만 생기는 과거가 학습에 들어온다. (나) 진짜 긴 영상의 아무 짧은 구간도 짧은 진짜 영상처럼 생겼으므로, 오류 누적은 짧은 구간 안에서도 부자연스러움으로 드러난다. 다만 멀리 떨어진 프레임 사이의 일관성(같은 인물인가)은 짧은 선생님이 판단할 수 없다.