정성껏 정제한 데이터셋이라도, 그 데이터를 만든 모델은 학습이 시작되는 순간부터 지금의 모델과 달라진다. 오프라인은 여기서 근본적 한계를 만나는데, 학습이 진행될수록 그 데이터는 얼마나 쓸모를 잃을까?
학습 전에는 학습 중인 정책 πθ 가 레퍼런스 πref 와 거의 같다(레퍼런스를 복사해서 출발하므로). 데이터셋은 레퍼런스나 그 근처의 모델이 생성한 것이다. 데이터를 만든 이 정책을 πdata 라고 부르자. 학습 중에는 πθ 가 스텝마다 업데이트되어 πdata 에서 점점 멀어지므로, 모델은 지금의 자신이라면 거의 생성하지 않을 응답에 대해 학습하게 된다. “작년 지도로 올해 여행하는” 상황이고, 학습이 길어질수록 데이터와 모델의 괴리가 커지는데, 이 현상이 분포 이동(데이터와 모델이 어긋나기 / Distribution Shift)이다.
원리적으로는 임포턴스 가중치 πθ(y)/πdata(y) 로 보정할 수 있지만, πθ 와 πdata 가 멀어질수록 이 가중치의 분산이 폭발한다. 위 그림의 오른쪽, 데이터가 거의 없는 곳에서 드물게 뽑힌 샘플 하나가 아주 큰 가중치를 받아 추정을 혼자 지배한다. 임포턴스 샘플링이 늘 겪는 이 현상의 LLM 버전이다. PPO는 가중치를 클리핑으로 자르고, 직전 정책 πold 를 몇 스텝마다 새로 바꿔 가중치를 1 근처에 붙잡아 두었다. 오프라인 DPO에는 클리핑할 장치도 없고, 데이터가 고정이라 πold 를 업데이트할 방법도 없다. 보정의 분산이 너무 커서 실무적으로 한계가 있다.
얼마나 빨리 낡는가: 장난감으로 재보기
"분포 이동"을 숫자로 느껴보자. 임포턴스 가중치를 손으로 정확히 계산할 수 있는 가장 단순한 분포가 정규분포라서, 정책을 1차원 정규분포 N(μθ,1) 이라 하자. μ는 평균, 곧 정책이 가장 자주 내는 응답의 자리이고, 데이터는 마지막으로 데이터를 만든 시점의 정책 N(μdata,1) 에서 뽑았다.
학습은 100스텝 동안 μθ 를 목표 쪽으로 거리 D 만큼 옮긴다. 처음엔 빨리, 나중엔 천천히 움직인다고 하자: μθ(t)=D(1−e−t/τ). τ(타우)는 μθ 가 목표에 다가가는 속도를 정하는 스텝 수로, 여기서는 30이다. 30스텝이면 갈 거리의 약 63%(1−e−1)를 간다.
이때 "실제로 쓸모 있는 샘플의 비율"을 재는 양이 유효 샘플 비율이다. 데이터 1000개에 임포턴스 가중치를 달았을 때 가중치 없는 데이터 몇 개만큼의 정보를 주는지의 비율이고, 1/E[w2] 로 잰다. 두 정규분포 사이에서는 유효 샘플 비율을 식으로 정확히 계산할 수 있다.
(E[w2] 를 데이터 분포 위에서 평균 내면, 지수함수 두 개를 곱해 정규분포 적분 하나로 모을 수 있어서 eΔ2 이 나온다.)
거리가 표준편차 두 개(Δ=2)만 벌어져도 유효 비율은 e−4≈1.8% 로 떨어진다는 것은, 1000개의 데이터 중 약 18개만 지금의 정책에게 의미가 있다는 뜻이다.
학습 도중에 지금 모델로 데이터를 새로 만들면 유효 샘플 비율이 되살아난다. 데이터를 새로 만드는 한 번을 라운드라고 하자. 100스텝을 라운드 몇 개로 나눠 라운드마다 데이터를 새로 뽑는 것이 반복(iterative) 방식이다. 반복 방식은 라운드마다 유효 샘플 비율을 되살린다. 아래 위젯에서 라운드 수를 올려 보면, 오프라인(1라운드)과 온라인(라운드 수 = 스텝 수) 사이가 라운드 수 하나로 연속적으로 이어진다는 것이 보인다. 위젯의 단추는 아래 문제 5·6의 값을 불러온다.
문제 4: 작년 지도로 올해 맛집 찾기
동네 맛집 지도가 있다. 해마다 지도에 실린 가게의 20%가 문을 닫거나 다른 가게로 바뀐다(한 해 동안 그대로 남을 확률 0.8). (가) 6년 동안 지도를 한 번도 새로 사지 않으면, 6년째 끝에 지도 속 가게 가운데 아직 맞는 비율은 얼마인가? (나) 처음과 3년 뒤에 새 지도를 사는데, 새 지도를 사는 날마다 확인하면 지도는 늘 100% 맞는다. 그렇다면 6년 내내 지도를 믿어도 되는가? 맞는 비율이 가장 낮을 때는 언제이고 얼마인가?
김민준
(가)는 0.8을 여섯 번 곱하면 되니까 0.86≈0.26, 26%요. (나)는 확인할 때마다 100%였으니 믿어도 되죠. 새로 사는 게 답이네요.
선생님
민준 학생, 확인한 날이 언제였죠? 새 지도를 사기 바로 전날에 확인했다면요?
김민준
산 지 3년 된 지도니까 0.83≈0.51… 절반만 맞네요. 3년째 끝과 6년째 끝이 가장 낮아요, 51%.
이서연
해마다 끝에 재 보면 80, 64, 51%로 내려갔다가 새로 사면 다시 80%부터 내려가. 톱니 모양이야. 재는 날을 하필 새로 산 날로 골라서 늘 100%로 보인 거고.
김민준
시험 직전 벼락치기한 날에만 실력을 재면 늘 만점인 거랑 같네요. 재는 날이 실력을 부풀렸어요.
정리 (가) 0.86≈26%. (나) 새로 산 날에는 100%지만, 새로 사기 직전인 3년째 끝과 6년째 끝에는 0.83≈51% 까지 떨어진다. 새로 사기는 맞는 비율을 되살릴 뿐 사이사이에 지도가 낡는 것은 막지 못하므로, 언제 재느냐가 판단을 바꾼다.
문제 5: 1000개 중 몇 개가 쓸모 있나
위 장난감에서 D=2, 스텝 수 100, τ=30일 때 (μθ(t)=D(1−e−t/τ)), 오프라인 학습이 끝날 무렵의 유효 샘플 비율을 구하시오. 데이터가 1000개라면 실제로 쓸모 있는 것은 몇 개쯤인가? 3라운드 반복이면 어떻게 달라지는가? (위젯의 「문제 5의 값」 단추로 같은 설정을 불러와 견줄 수 있다.)