10. 레퍼런스 모델 — 이 목줄은 왜 묶여 있나?

앵커의 방향: 어느 쪽 KL로 묶느냐가 지킬 것을 정한다

크로스 엔트로피가 정답 확률을 1까지 미는 동안 옛 답은 자기 확률만큼 깎인다. 목표를 옛 모델 자신의 분포로 바꾸면 멈출 곳이 생긴다. 그래서 실제로는 새 데이터를 크로스 엔트로피로 배우면서, 옛 모델에서 멀어지지 말라는 항을 하나 더 거는 방식을 많이 쓴다. 그런데 KL에는 방향이 둘이다. 옛 모델을 앞에 둘 것인가 뒤에 둘 것인가? 이 선택으로 무엇이 달라지는가?

역사: 옛 모델을 닻으로 삼다

망각을 줄이려는 첫 갈래는 옛 모델을 닻(앵커, anchor — 학습 중인 모델을 옛 모델 쪽으로 당겨 두는 항)으로 삼는 것이었다. 2016년 리(Zhizhong Li)와 호이엠(Derek Hoiem)의 LwF(Learning without Forgetting)는 옛 과제 데이터 없이, 새 과제 입력에 대한 옛 모델의 출력을 새 학습의 목표로 함께 걸었다(ECCV 2016). 이듬해 딥마인드의 커크패트릭(James Kirkpatrick)과 동료들은 옛 과제에 중요했던 파라미터일수록 덜 움직이게 묶는 EWC(Elastic Weight Consolidation)를 냈다(PNAS 2017). 하나는 출력을, 하나는 파라미터를 옛 모델에 묶는다. 둘 다 레퍼런스에 묶는 KL 벌점과 같은 발상이다.

두 방향이 벌점을 매기는 곳

옛 모델에 묶기로 했다면 KL의 방향을 골라야 한다. 기대값을 누구의 분포로 취하느냐가 무엇을 지키는지를 정한다.

앵커 벌점이 크게 붙는 곳 지키는 것 싸게 버리는 것
순방향 KL(forward) DKL(πref ∣ πθ)\textcolor{#8c564b}{D_\text{KL}}(\textcolor{#6f6f78}{\pi_\text{ref}} \,|\, \textcolor{#1565c0}{\pi_\theta}) 옛 모델이 확률을 두던 곳을 새 모델이 비울 때 옛 모델이 조금이라도 알던 것 전부 — 드문 사실까지 새 모델의 유연함
역방향 KL(reverse) DKL(πθ ∣ πref)\textcolor{#8c564b}{D_\text{KL}}(\textcolor{#1565c0}{\pi_\theta} \,|\, \textcolor{#6f6f78}{\pi_\text{ref}}) 새 모델이 옛 모델이 안 하던 말을 할 때 모드(분포의 봉우리 — 말투·형식·거절 방식처럼 자주 하던 행동) 확률이 작던 꼬리 — 드물게만 나오던 사실

표의 두 줄을 숫자로 보자. 한 질문에 대해 옛 모델이 다섯 가지 답에 주는 확률이 (0.60, 0.30, 0.07, 0.029, 0.001) 이라 하자. 앞의 둘은 평소 말투, 셋째는 거절, 넷째는 드물게만 꺼내던 사실, 다섯째는 옛 모델이 거의 하지 않던 새 말이다. 옛 모델에서 벗어난 새 모델 두 개를 두 방향의 KL로 재면 아래와 같다.

① 드문 사실을 지운 모델 순방향 KL 0.105 · 역방향 KL 0.028 말투 1 말투 2 거절 0.029 0.0003 드문 사실 0.001 0.0007 새 말 ② 새 말을 하는 모델 순방향 KL 0.069 · 역방향 KL 0.235 말투 1 말투 2 거절 0.029 0.029 드문 사실 0.001 0.071 새 말 옛 모델 (앵커) 학습한 새 모델

드문 사실의 확률을 0.029에서 0.0003으로 지운 모델은 순방향 KL이 역방향의 약 3.7배다. 새 말의 확률을 0.001에서 0.071로 올린 모델은 거꾸로 역방향 KL이 순방향의 약 3.4배다. 순방향 앵커는 옛 모델이 알던 것을 지우면 크게 벌하고, 역방향 앵커는 옛 모델이 안 하던 말을 하면 크게 벌한다.

로짓 하나를 움직일 때 두 앵커가 주는 그래디언트도 나란히 놓으면 차이가 보인다.

∂ DKL(πref ∥ πθ)∂zj=πθ(j)−πref(j),∂ DKL(πθ ∥ πref)∂zj=πθ(j)[log⁡πθ(j)πref(j)−DKL(πθ ∥ πref)]\frac{\partial\,\textcolor{#8c564b}{D_\text{KL}}(\textcolor{#6f6f78}{\pi_\text{ref}} \,\|\, \textcolor{#1565c0}{\pi_\theta})}{\partial \textcolor{#cc00ff}{z_j}} = \textcolor{#1565c0}{\pi_\theta}(j) - \textcolor{#6f6f78}{\pi_\text{ref}}(j), \qquad \frac{\partial\,\textcolor{#8c564b}{D_\text{KL}}(\textcolor{#1565c0}{\pi_\theta} \,\|\, \textcolor{#6f6f78}{\pi_\text{ref}})}{\partial \textcolor{#cc00ff}{z_j}} = \textcolor{#1565c0}{\pi_\theta}(j)\Big[\log\frac{\textcolor{#1565c0}{\pi_\theta}(j)}{\textcolor{#6f6f78}{\pi_\text{ref}}(j)} - \textcolor{#8c564b}{D_\text{KL}}(\textcolor{#1565c0}{\pi_\theta} \,\|\, \textcolor{#6f6f78}{\pi_\text{ref}})\Big]
DKLKL 발산πref(j)옛 모델 (앵커, 고정)이 토큰 j 에 주는 확률πθ(j)학습 중인 모델이 토큰 j 에 주는 확률zj토큰 j 의 로짓 (소프트맥스에 들어가기 전의 점수) \small\begin{array}{ll} \textcolor{#8c564b}{D_\text{KL}} & \text{KL 발산} \\ \textcolor{#6f6f78}{\pi_\text{ref}}(j) & \text{옛 모델 (앵커, 고정)이 토큰 } j \text{ 에 주는 확률} \\ \textcolor{#1565c0}{\pi_\theta}(j) & \text{학습 중인 모델이 토큰 } j \text{ 에 주는 확률} \\ \textcolor{#cc00ff}{z_j} & \text{토큰 } j \text{ 의 로짓 (소프트맥스에 들어가기 전의 점수)} \end{array}

왼쪽(순방향)은 크로스 엔트로피의 그래디언트에서 원-핫 목표를 옛 모델로 바꾼 꼴이다. 오른쪽(역방향)에는 로그가 하나 붙어 있다. 경사하강은 그래디언트의 반대쪽으로 가므로, 양수인 토큰은 로짓이 깎인다.

모델이 옛 자리에서 아주 조금만 움직였다면 방향은 중요하지 않다. 파라미터를 δ\textcolor{#993600}{\delta} 만큼 움직였을 때 두 방향의 KL은 둘 다 같은 이차식으로 어림된다.

DKL(πref ∥ πθ)  ≈  DKL(πθ ∥ πref)  ≈  12 δ⊤F δ\textcolor{#8c564b}{D_\text{KL}}(\textcolor{#6f6f78}{\pi_\text{ref}} \,\|\, \textcolor{#1565c0}{\pi_\theta}) \;\approx\; \textcolor{#8c564b}{D_\text{KL}}(\textcolor{#1565c0}{\pi_\theta} \,\|\, \textcolor{#6f6f78}{\pi_\text{ref}}) \;\approx\; \tfrac12\, \textcolor{#993600}{\delta}^\top \textcolor{#0033ff}{F}\, \textcolor{#993600}{\delta}
DKLKL 발산πref옛 모델 (앵커, 고정)πθ학습 중인 모델δ옛 파라미터에서 움직인 양F피셔 정보 행렬: 어느 방향으로 움직이면 출력이 크게 바뀌는지 \small\begin{array}{ll} \textcolor{#8c564b}{D_\text{KL}} & \text{KL 발산} \\ \textcolor{#6f6f78}{\pi_\text{ref}} & \text{옛 모델 (앵커, 고정)} \\ \textcolor{#1565c0}{\pi_\theta} & \text{학습 중인 모델} \\ \textcolor{#993600}{\delta} & \text{옛 파라미터에서 움직인 양} \\ \textcolor{#0033ff}{F} & \text{피셔 정보 행렬: 어느 방향으로 움직이면 출력이 크게 바뀌는지} \end{array}

EWC의 벌점이 바로 이 식에서 F\textcolor{#0033ff}{F} 의 대각선만 남긴 것이다. 작은 학습률, 짧은 학습, LoRA(Low-Rank Adaptation — 원래 파라미터는 얼려 두고 작은 저랭크 행렬만 더해 학습하는 방법)처럼 조금만 움직이는 방법이 망각을 줄이는 것도 같은 이유다. 이 이차식 영역 안에서는 망각이 움직인 거리의 제곱에 비례하는 얌전한 양이고, 방향이 갈리는 것은 멀리 갔을 때뿐이다.

아래 그림은 이 관점으로 본 새 과제 학습이다. 원래 모델을 가운데 두고 KL 거리가 같은 곳을 점선으로 그렸다. 새 과제를 푸는 모델은 하나가 아니라 곡선 위에 여럿 있고, 망각의 크기는 그중 어느 점에 도착하느냐 — 원래 모델에서 얼마나 먼가 — 로 정해진다.

원래 모델 RL · 가까운 해 SFT · 먼 해 새 과제를 푸는 모델들 새 과제 성적이 같아도 망각은 도착점까지의 KL 거리가 정한다 점선: 원래 모델에서 KL 거리가 같은 곳
ML에서: RL은 왜 덜 잊는가

같은 새 과제 성적까지 학습시켜 보면 RL이 SFT보다 옛 과제를 덜 잊는다. MIT의 셴펠드(Idan Shenfeld), 파리(Jyothish Pari), 아그라왈(Pulkit Agrawal)은 「RL’s Razor」(arXiv:2509.04259, 2025년 9월)에서 이유를 추적했다. 파라미터 변화량, 변화의 희소함, 그래디언트의 랭크 같은 후보를 다 재 봤지만, 망각을 가장 잘 맞힌 것은 새 과제 입력 위에서 잰 원래 모델과 학습된 모델 사이의 KL 하나였다. 손글씨 숫자 MNIST로 만든 통제 실험(숫자의 짝홀을 맞히는 새 과제를 배우는 동안 옷 사진 분류라는 옛 과제를 얼마나 잊는지 재기)에서 이 KL의 이차식이 망각의 96%를 설명했고(R2=0.96R^2 = 0.96), Qwen 2.5 3B-Instruct 모델로 한 언어모델 실험에서도 약하지만 같은 관계가 나왔다(R2=0.71R^2 = 0.71). 옛 과제 데이터를 한 번도 보지 않고 새 과제 위에서만 잰 거리로 옛 과제 성적 하락을 예측한 셈이다.

RL이 가까운 해에 도착하는 이유는 자기가 뽑은 답으로 배우기 때문이다. 정책 그래디언트는 모델이 이미 내놓는 답들 사이에서 확률을 옮길 뿐이라, 새 과제를 푸는 여러 해 가운데 원래 모델에 가까운 것으로 간다. SFT는 데이터가 정해 준 답으로 끌려가므로, 그 답이 원래 모델과 멀면 멀리 간다. 저자들은 새 과제를 완벽히 풀면서 KL이 가장 작은 정답 분포를 직접 만들어 SFT로 가르쳐 보기도 했는데, 이 "가장 가까운 정답"으로 배운 모델은 RL보다도 덜 잊었다. 특별한 것은 RL이라는 알고리즘이 아니라 도착점이 가깝다는 점이었다.

여기서 망각의 근본 장벽이 드러난다. 자기가 뽑은 답으로만 배우는 방법은 원래 모델이 확률을 0으로 두던 곳에 갈 수 없다. 거기에는 샘플이 없으니 그래디언트도 닿지 않는다. 반대로 크로스 엔트로피는 원래 모델이 모르던 답도 넣을 수 있지만, 그 대가로 옛 답을 확신에 비례해 깎는다. 덜 잊는 성질과 새것을 못 배우는 성질은 같은 성질의 두 이름이다. 목줄을 거는 방식은 이 저울의 어느 쪽에 설지를 고르는 일이다.

옛 지식을 지키는 또 한 갈래는 손실을 바꾸지 않고 데이터를 바꾸는 것이다. 새 데이터에 옛 데이터를 일정 비율 섞어 함께 학습하는 리플레이(replay, 다시 보여 주기)다. 1995년 로빈스(Anthony Robins)는 새 항목을 배울 때 옛 항목 일부를 함께 다시 학습시키는 복습(rehearsal)이 망각을 막는다는 것을 정리하면서, 옛 데이터를 갖고 있지 않을 때의 변형도 냈다. 입력을 무작위로 만들어 옛 신경망에 넣고, 신경망이 내놓은 출력을 정답으로 삼은 「가짜 항목」(pseudoitem)으로 복습하는 의사 복습(pseudorehearsal)이다. 실제 옛 데이터로 복습하느냐, 옛 모델이 내놓는 답으로 복습하느냐의 차이다.

문제 9 — 번갈아 돌리면 새 지식은 어디까지 남나

새 지식은 크로스 엔트로피로 넣고, 옛 말투는 역방향 KL 앵커 DKL(πθ ∥ πref)\textcolor{#8c564b}{D_\text{KL}}(\textcolor{#1565c0}{\pi_\theta} \,\|\, \textcolor{#6f6f78}{\pi_\text{ref}}) 로 지키려고 두 단계를 번갈아 돌린다. 새 지식을 담은 토큰 하나만 떼어 어림하자. 그 토큰의 현재 확률(학습 중인 모델이 그 토큰에 주는 확률을 짧게 적은 것)을 q\textcolor{#1565c0}{q}, 옛 모델의 확률을 πref\textcolor{#6f6f78}{\pi_\text{ref}} 라 하면, 크로스 엔트로피 단계는 그 로짓을 1−q1 - \textcolor{#1565c0}{q} 만큼 올리고 역방향 앵커 단계는 qlog⁡(q/πref)\textcolor{#1565c0}{q}\log(\textcolor{#1565c0}{q}/\textcolor{#6f6f78}{\pi_\text{ref}}) 만큼 내린다(KL 전체값을 빼는 항은 무시한 어림). 두 단계를 같은 양으로 돌리면 1−q=qlog⁡(q/πref)1 - \textcolor{#1565c0}{q} = \textcolor{#1565c0}{q}\log(\textcolor{#1565c0}{q}/\textcolor{#6f6f78}{\pi_\text{ref}}) 에서 균형이 잡힌다. (가) πref=10−2, 10−4, 10−6\textcolor{#6f6f78}{\pi_\text{ref}} = 10^{-2},\ 10^{-4},\ 10^{-6} 에서 균형 확률 q\textcolor{#1565c0}{q} 를 구하시오. (나) 이 표는 어떤 지식이 덜 남는다고 말하는가? (다) 앵커를 순방향 KL DKL(πref ∥ πθ)\textcolor{#8c564b}{D_\text{KL}}(\textcolor{#6f6f78}{\pi_\text{ref}} \,\|\, \textcolor{#1565c0}{\pi_\theta}) 로 바꾸면 내리는 양은 q−πref\textcolor{#1565c0}{q} - \textcolor{#6f6f78}{\pi_\text{ref}} 다. 균형 확률은?

선생님 (질문)
선생님
옛 모델이 새 지식을 거의 모를수록, 앵커는 그 토큰을 더 세게 누를까요 약하게 누를까요?
김민준 (평상)
김민준
약하게요. 옛 모델 확률이 작으면 원래 거의 안 쓰던 토큰이니까 앵커가 신경 쓸 게 없잖아요.
선생님 (질문)
선생님
민준 학생, 누르는 양 qlog⁡(q/πref)\textcolor{#1565c0}{q}\log(\textcolor{#1565c0}{q}/\textcolor{#6f6f78}{\pi_\text{ref}}) 에서 πref\textcolor{#6f6f78}{\pi_\text{ref}} 가 작아지면 로그 안의 값은 커지나요, 작아지나요?
김민준 (난처함)
김민준
커져요… 옛 모델이 모르던 토큰일수록 더 세게 눌러요. 앵커는 "옛 모델이 안 하던 말"을 벌주는 거니까, 진짜 새로운 말이 제일 안 하던 말이네요. 이분법으로 풀어 볼게요. 10−210^{-2} 이면 0.24, 10−410^{-4} 이면 0.12, 10−610^{-6} 이면 0.08.
이서연 (평상)
이서연
새로울수록 덜 남아. 그런데 πref\textcolor{#6f6f78}{\pi_\text{ref}} 가 10000배 작아져도 균형은 0.24 에서 0.08 로 세 배밖에 안 줄었어. 로그라서 느리게 줄어.
선생님 (평상)
선생님
그래요. 지워지진 않지만 천장이 생겨요. 샘플링하면 가끔 나오는데, 그 자리에서 가장 높은 확률은 되지 못하기 쉬운 상태죠. (다)는요?
이서연 (평상)
이서연
1−q=q−πref1 - \textcolor{#1565c0}{q} = \textcolor{#1565c0}{q} - \textcolor{#6f6f78}{\pi_\text{ref}} 니까 q=(1+πref)/2\textcolor{#1565c0}{q} = (1 + \textcolor{#6f6f78}{\pi_\text{ref}})/2. 10−410^{-4} 이면 0.50005. 옛 모델이 몰랐다는 사실이 거의 영향을 안 줘요.
이서연 (아하)
이서연
순방향 앵커가 내리는 힘은 q\textcolor{#1565c0}{q} 이하로 묶여 있는데, 역방향은 log⁡\log 가 붙어서 새 지식 자리에서만 커지는 거네요.
이서연 (궁금함)
이서연
그런데 문제에서 둔 두 조건 — KL 전체값을 빼는 항을 무시한 것, 두 단계를 같은 양으로 돌린다는 것 — 을 바꾸면 이 숫자들은 어떻게 돼요?
선생님 (질문)
선생님
무시한 항은 누르는 양에서 다시 빼는 값이에요. 그 항을 넣으면 균형은 위로 갈까요, 아래로 갈까요?
김민준 (평상)
김민준
누르는 힘이 줄어드니까 위로요. 크로스 엔트로피 단계를 두 배로 돌려도 위로 가고요. 2(1−q)=qlog⁡(q/πref)2(1 - \textcolor{#1565c0}{q}) = \textcolor{#1565c0}{q}\log(\textcolor{#1565c0}{q}/\textcolor{#6f6f78}{\pi_\text{ref}}) 를 풀면 10−410^{-4} 에서 0.12 가 0.21 이 돼요.
이서연 (평상)
이서연
그래도 πref\textcolor{#6f6f78}{\pi_\text{ref}} 가 작을수록 균형이 낮아진다는 순서는 그대로네. 어림이 바꾸는 건 숫자지 순서가 아니야.
김민준 (평상)
김민준
새 동아리원이 낸 아이디어를, 원래 멤버들이 “우리가 안 해 본 것일수록” 더 반대하는 거랑 같아요. 익숙한 제안은 통과되고, 진짜 새로운 건 반쯤만 받아들여지고.

정리 (가) 10−2→0.2410^{-2} \to 0.24, 10−4→0.1210^{-4} \to 0.12, 10−6→0.0810^{-6} \to 0.08. (나) 옛 모델이 모르던 지식일수록 덜 남는다 — 역방향 앵커는 새 지식 자리를 정확히 겨냥해 누른다. 다만 로그라서 지우지는 못하고 천장을 씌운다. (다) 순방향 앵커면 q=(1+πref)/2≈0.5\textcolor{#1565c0}{q} = (1 + \textcolor{#6f6f78}{\pi_\text{ref}})/2 \approx 0.5: 옛 모델이 얼마나 몰랐는지가 거의 상관없다. 무시한 항을 넣거나 크로스 엔트로피 단계를 늘리면 균형은 올라가지만(두 배로 돌리면 10−410^{-4} 에서 0.21), 옛 모델이 모르던 지식일수록 덜 남는다는 순서는 그대로다.

문제 10 — (킬러) 앵커와 리플레이

앵커와 리플레이(새 데이터에 옛 데이터를 일정 비율 섞어 함께 학습하기)를 견주어 보자. 한 문맥에서 옛 모델이 세 토큰에 πref=(0.9, 0.0999, 0.0001)\textcolor{#6f6f78}{\pi_\text{ref}} = (0.9,\ 0.0999,\ 0.0001) 을 주고, 새 데이터는 세 번째 토큰만 정답으로 준다(pnew=(0,0,1)\textcolor{#2e7d32}{p_\text{new}} = (0, 0, 1)). (가) 순방향 앵커를 건 목표 DKL(pnew ∥ π)+β DKL(πref ∥ π)\textcolor{#8c564b}{D_\text{KL}}(\textcolor{#2e7d32}{p_\text{new}} \,\|\, \pi) + \textcolor{#827717}{\beta}\,\textcolor{#8c564b}{D_\text{KL}}(\textcolor{#6f6f78}{\pi_\text{ref}} \,\|\, \pi) 를 최소로 하는 분포 π\pi 를 구하시오(π\pi 의 합은 1). (나) β=1/3\textcolor{#827717}{\beta} = 1/3 일 때 π\pi 는? 이것은 옛 데이터를 몇 % 섞은 리플레이와 같은가? (다) 학습 도중 모델이 πθ=(0.4, 0.1, 0.5)\textcolor{#1565c0}{\pi_\theta} = (0.4,\ 0.1,\ 0.5) 에 와 있다. 새 토큰의 로짓에 대해 역방향 앵커와 순방향 앵커가 주는 그래디언트를 비교하시오. (라) (가)의 답이 리플레이와 같다면, 둘은 무엇이 다른가?

김민준 (평상)
김민준
앵커는 모델 분포를 옛 모델에 맞추는 거고, 리플레이는 데이터를 섞는 거잖아요. 하나는 손실을 바꾸고 하나는 데이터를 바꾸니까 도착점도 다르겠죠.
선생님 (질문)
선생님
민준 학생, 그럼 (가)를 풀어서 확인해 볼까요? 합이 1이라는 조건만 붙이면 돼요.
이서연 (평상)
이서연
라그랑주 승수로 풀게요. π(v)\pi(v) 로 미분하면 −pnew(v)/π(v)−β πref(v)/π(v)+λ=0-\textcolor{#2e7d32}{p_\text{new}}(v)/\pi(v) - \textcolor{#827717}{\beta}\,\textcolor{#6f6f78}{\pi_\text{ref}}(v)/\pi(v) + \lambda = 0. 그러면 π(v)=(pnew(v)+β πref(v))/λ\pi(v) = (\textcolor{#2e7d32}{p_\text{new}}(v) + \textcolor{#827717}{\beta}\,\textcolor{#6f6f78}{\pi_\text{ref}}(v))/\lambda, 합이 1이니 λ=1+β\lambda = 1 + \textcolor{#827717}{\beta}.
이서연 (아하)
이서연
π=pnew+β πref1+β\pi = \dfrac{\textcolor{#2e7d32}{p_\text{new}} + \textcolor{#827717}{\beta}\,\textcolor{#6f6f78}{\pi_\text{ref}}}{1 + \textcolor{#827717}{\beta}}. 두 분포를 섞은 혼합 분포예요.
김민준 (놀람)
김민준
β=1/3\textcolor{#827717}{\beta} = 1/3 넣으면 (0.225, 0.025, 0.750)(0.225,\ 0.025,\ 0.750). 새 데이터 75%에 옛 분포 25%를 섞어 크로스 엔트로피로 배운 것과 똑같은 점이네요. 리플레이 25%랑 도착점이 같아요.
선생님 (평상)
선생님
그래요. 순방향 앵커의 최적점은 리플레이 비율 β/(1+β)\textcolor{#827717}{\beta}/(1+\textcolor{#827717}{\beta}) 의 혼합이에요. (다)는요?
김민준 (평상)
김민준
역방향은 πθ(j)[log⁡πθ(j)πref(j)−DKL]\textcolor{#1565c0}{\pi_\theta}(j)\big[\log\frac{\textcolor{#1565c0}{\pi_\theta}(j)}{\textcolor{#6f6f78}{\pi_\text{ref}}(j)} - \textcolor{#8c564b}{D_\text{KL}}\big] 이니까, 지금 KL이 3.93 이고 새 토큰은 0.5×(log⁡5000−3.93)=2.290.5 \times (\log 5000 - 3.93) = 2.29. 순방향은 πθ(j)−πref(j)=0.4999\textcolor{#1565c0}{\pi_\theta}(j) - \textcolor{#6f6f78}{\pi_\text{ref}}(j) = 0.4999. 역방향이 4.6배 세게 눌러요.
이서연 (평상)
이서연
그럼 (라)는… 도착점이 같으면 차이는 가는 길뿐이야. 정답이 같은 두 풀이 같은 거지.
선생님 (질문)
선생님
서연 학생, 리플레이의 25%는 실제로 무엇으로 채우죠? 순방향 앵커의 πref\textcolor{#6f6f78}{\pi_\text{ref}} 는요?
이서연 (생각)
이서연
리플레이는 옛 말뭉치에서 뽑은 실제 문장이고, 한 위치마다 정답 토큰 하나예요. 앵커는 옛 모델이 내놓는 분포 전체고요.
이서연 (깨달음)
이서연
같은 점을 겨냥하는 서로 다른 추정량이네요. 리플레이는 흔들림이 크지만 실제 옛 문장이라 옛 모델의 실수를 물려받지 않고, 앵커는 흔들림이 작은 대신 옛 모델이 틀리던 것까지 그대로 복사해요. 그리고 옛 말뭉치가 없을 때는 앵커만 쓸 수 있고요.
선생님 (평상)
선생님
하나 더 있어요. 리플레이는 옛 문맥에서 옛 답을 복습시키고, 역방향 앵커는 새 과제 문맥 위에서 새 모델과 옛 모델을 비교해요. 어느 자리에서 싸우는지가 달라요.
이서연 (평상)
이서연
적분값이 같아도 몬테카를로로 재느냐 해석적으로 재느냐에 따라 오차의 성질이 다른 것과 같네요. 표본은 흔들리지만 치우치지 않고, 근사식은 매끈하지만 틀린 만큼 틀린 채로 남아요.
김민준 (평상)
김민준
시험 공부할 때 옛 기출문제를 다시 푸는 게 리플레이고, 작년에 내가 정리한 요약 노트를 보는 게 앵커네요. 노트는 빠르지만 작년에 잘못 적은 건 그대로 틀리고.

정리 (가) π=(pnew+β πref)/(1+β)\pi = (\textcolor{#2e7d32}{p_\text{new}} + \textcolor{#827717}{\beta}\,\textcolor{#6f6f78}{\pi_\text{ref}})/(1 + \textcolor{#827717}{\beta}) — 혼합 분포. (나) (0.225, 0.025, 0.750)(0.225,\ 0.025,\ 0.750): 옛 분포를 β/(1+β)=25%\textcolor{#827717}{\beta}/(1+\textcolor{#827717}{\beta}) = 25\% 섞은 리플레이와 같은 점. (다) 새 토큰에서 역방향 앵커 2.29, 순방향 앵커 0.50 — 역방향이 4.6배 세게 누른다. (라) 도착점은 같아도 추정량이 다르다. 리플레이는 실제 옛 문장(흔들림이 크지만 치우침 없음), 순방향 앵커는 옛 모델의 분포(흔들림이 작지만 옛 모델의 실수를 물려받음, 옛 말뭉치 없이도 가능). 역방향 앵커는 어떤 리플레이와도 같지 않고, 새 과제 문맥에서 새 지식을 직접 누른다.