8. 로그확률 — 문장의 확률은 어떻게 매기나

자주 하는 실수와 요약

자주 하는 실수
실수 나온 문제 바로잡는 법
앞 단계를 통과한 사람 가운데의 비율을 전체의 비율로 읽음 1 단계마다의 비율은 앞 단계를 통과했다는 조건 아래의 비율이다. 그래서 곱으로 이어진다
로그확률을 상용로그로 계산함 2 딥러닝의 로그는 자연로그다. 밑이 다르면 값이 ln⁡10\ln 10 배만큼 달라진다
토큰 확률을 그대로 곱해도 된다고 봄 2 긴 문장의 확률은 곱하면 부동소수점 아래로 사라진다. 로그의 합으로 다룬다
공유 토큰은 항상 정확히 상쇄된다고 봄 3 분기 앞의 공유 토큰만 정확히 상쇄된다. 분기 뒤의 공유 토큰은 조건이 달라 근사적으로만 상쇄된다
이미 적힌 답안도 앞에서부터 차례로만 채점할 수 있다고 봄 4 앞의 답이 이미 적혀 있으면 문항마다 따로, 동시에 볼 수 있다. 차례가 필요한 것은 답을 만들어 낼 때다
프롬프트 자리의 로그확률까지 더함 5 그 합은 log⁡πθ(x,y)\log \textcolor{#1565c0}{\pi_\theta}(\textcolor{#0093b8}{x}, \textcolor{#1c9c60}{y}) 다. log⁡πθ(y∣x)\log \textcolor{#1565c0}{\pi_\theta}(\textcolor{#1c9c60}{y} \mid \textcolor{#0093b8}{x}) 에는 응답 토큰의 로그확률만, 한 칸 앞 자리의 표에서 읽어 더한다
순서가 같으면 평균도 비슷하다고 봄 6 평균에는 비율의 값이 들어간다. 너무 많이 뽑힌 쪽은 덜, 덜 뽑힌 쪽은 더 세어 보정한다
샘플링 온도는 온라인 RL 학습에도 영향이 없다고 봄 7 학습 중에 샘플링하면 샘플이 πθ\textcolor{#1565c0}{\pi_\theta} 가 아닌 분포에서 나와 그래디언트가 치우친다
순서를 보존하는 변환이니 같은 정책이라고 봄 7 기대값에는 확률의 값이 들어간다. 학습기도 같은 TT 를 쓰거나 임포턴스 가중치로 보정한다
요약

문장의 로그확률은 토큰마다의 조건부 로그확률을 더한 것이다. 확률을 곱하면 긴 문장에서 언더플로가 나므로 자연로그의 합으로 다룬다. 선호 응답과 비선호 응답의 마진은 대부분 두 응답이 갈라지는 분기 토큰에서 나오고, 분기 앞의 공유 토큰은 정확히, 분기 뒤의 공유 토큰은 조건이 달라 근사적으로만 상쇄된다. 생성은 확률표를 얻고 뽑는 두 단계를 토큰마다 순차로 반복하지만, DPO 학습은 이미 있는 응답의 확률을 조회할 뿐이라 티처 포싱 한 번의 순전파로 모든 자리의 표를 얻고, 응답 토큰의 확률을 한 칸 앞 자리의 표에서 읽는다. 샘플링 온도 같은 설정은 뽑는 단계에만 끼어들므로 DPO 학습에는 영향이 없지만, 학습 중에 직접 샘플링하는 온라인 RL에서는 샘플러의 설정과 로그확률 계산이 같은 정책을 가리켜야 한다.