RL 학습을 준비할 때는 문제 수만 개 가운데 무엇을 넣을지 골라야 하고, 문제 하나마다 답을 여러 개 뽑는 비용이 든다(그룹 크기가 8이면 문제 하나에 응답 여덟 개). 그런데 GRPO는 모두 맞히거나 모두 틀린 그룹(같은 문제에 뽑은 답 G개의 묶음)에서 아무것도 배우지 않는다. 그렇다면 정답률이 얼마인 문제에 비용을 써야 가장 많이 배울까? 너무 쉬운 문제와 너무 어려운 문제 사이 어딘가일 텐데, 그 "어딘가"를 숫자로 적을 수 있을까?
그룹에 학습 신호가 있을 확률
정답률이 p인 문제에서 GRPO가 G개 답을 뽑는다고 하자. 맞힌 개수는 이항분포 Bin(G,p)를 따르는데, 그룹에 학습 신호(시그널)가 있으려면 정답과 오답이 모두 섞여야 한다.
곡선은 가운데가 높고 양 끝에서 떨어지는데, 쉬운 문제는 「다 맞힘」으로, 어려운 문제는 「다 틀림」으로 시그널을 잃는다. G=8일 때의 값을 몇 개 적으면:
정답률 p
0.05
0.1
0.3
0.5
0.7
0.9
0.95
시그널 있을 확률
0.34
0.57
0.94
0.99
0.94
0.57
0.34
시그널이 "있고 없고"를 넘어 얼마나 있는지도 계산할 수 있다. 8개 중 1개만 맞힌 그룹을 보자. 그룹 평균은 μ^ = 1/8 = 0.125이고(μ^는 「뮤 햇」이라고 읽는다. 모자 ^는 데이터에서 잰 값이라는 표시), 그룹 표준편차 σ는 0.125×0.875≈0.331이다. 어드밴티지(각 답이 평균보다 얼마나 나은가)는 보상에서 평균을 빼고 σ로 나눈 값이다.
답
보상
평균을 뺀 값
σ로 나눈 어드밴티지
크기의 합
정답 1개
1
+0.875
+2.65
2.65
오답 7개
0
−0.125
각 −0.38
2.65
평균을 뺐으므로 어드밴티지 크기의 합은 정답 1개(2.65)와 오답 7개(2.65)가 같다. 두 합을 더한 5.29를 롤아웃(모델이 뽑은 응답 하나) 8개로 나누면 롤아웃 하나당 시그널은 0.66이다. 같은 계산을 k개를 맞힌 그룹에 하면, 롤아웃당 시그널은 σ로 나눌 때 2μ^(1−μ^), 나누지 않을 때 2μ^(1−μ^)다(μ^=k/G). 넷을 맞혀 μ^ = 0.5일 때 각각 1과 0.5로 가장 크다. 이 롤아웃당 시그널을 맞힌 개수 k의 이항분포로 평균 내면 정답률별 기대 시그널 곡선이 나온다.
ML에서: 정답률 30–70%의 문제를 고른다
실무에서 흔히 "정답률 30–70% 문제가 가장 좋다"고 말하는 근거가 이 곡선이다. G=8, p=0.3에서 σ로 나눈 시그널은 0.82로 최대치(0.93)에 가깝지만, p=0.05에서는 0.24로 떨어진다. 그래서 대규모 RL 레시피들은 학습 중에 문제의 정답률을 재서 너무 쉽거나 어려운 문제를 걸러낸다(동적 샘플링).
위젯에서 σ 곡선과 점선을 비교해 보면, σ로 나눌 때 양 끝이 덜 가라앉는다. 앞의 표처럼 8개 중 1개만 맞힌 그룹의 롤아웃당 시그널은 σ로 나눌 때 최대(1)의 66%, 나누지 않으면 최대(0.5)의 44%다. σ 나누기는 아주 쉽거나 아주 어려운 문제의 목소리를 상대적으로 키운다. 양 끝 문제의 목소리를 키우는 것이 좋은지 나쁜지는 σ 나누기를 둘러싼 논쟁의 한 축이다.
더 넓게 보면: 잉크 한 방울
곡선이 가운데서 높다는 것은 더 넓은 생각과도 이어진다. 물컵에 잉크 한 방울을 떨어뜨려 보자.
시점
모습
섀넌 엔트로피 (총 불확실성)
학습할 구조
떨어진 직후
한 점에 응축
낮다
적다 (너무 단순)
퍼지는 중
소용돌이, 가지, 밀도 차이
중간
가장 많다 (패턴이 있되 아직 다 예측되지 않음)
완전히 퍼진 뒤
균일한 색
최대
0 (패턴이 사라진 노이즈)
섀넌 엔트로피는 마지막에 최대지만, 배울 수 있는 것은 중간에 가장 많다. 이 비유는 이 교재의 것이지만, 같은 직관을 형식으로 세운 개념이 Epiplexity(Finzi et al., “From Entropy to Epiplexity: Rethinking Information for Computationally Bounded Intelligence”, arXiv:2601.03220, 2026년 1월)다. 이 개념은 데이터의 총 정보를 “주어진 계산 예산 안에서 모델이 추출할 수 있는 구조”(epiplexity)와 “아무리 학습해도 예측할 수 없는 잔여 불확실성”(시간 제한 엔트로피)으로 나눈다. epiplexity는 간단히는 학습 곡선에서 최종 손실보다 위에 있는 넓이(모델이 학습하면서 줄여 간 손실의 누적)로 어림한다.
이 관점에서 역할이 나뉜다. 프리트레인과 SFT는 학습 가능한 구조를 최대한 흡수해 스펙트럼을 넓히고, RL은 이미 흡수된 구조 가운데 무엇을 얼마나 자주 꺼내 쓰는지를 바꾼다. 한 문제 단위로 내려가면, "퍼지는 중인 잉크"에 해당하는 것이 적정 난이도의 문제다. 너무 쉬운 문제에는 남은 구조가 없고, 너무 어려운 문제는 구조가 있어도 지금의 모델이 추출할 수 없다. 쉬운 문제에서 어려운 문제로 옮겨가는 커리큘럼은 항상 "지금 배울 수 있는 구조가 가장 많은 구간"에 머무르려는 전략이다.
문제 5: 다들 만점 받는 퀴즈
조교가 퀴즈 문제 하나로 학생 넷의 실력을 가르려 한다. 네 학생이 각자 같은 확률로 맞힌다고 하자. 맞힌 학생과 틀린 학생이 섞여야(답이 갈려야) 이 문제로 누가 잘하는지 가를 수 있다. (가) 정답률 0.95인 쉬운 문제에서 넷의 답이 갈릴 확률은? (나) 정답률 0.5인 문제에서는?
김민준
정답률 0.95면 적어도 한 명은 거의 확실히 맞히니까 1 − 0.05⁴, 거의 1이에요.
선생님
민준 학생, 넷이 모두 맞힌 퀴즈에서는 누가 잘하는지 갈렸나요?
김민준
아니요, 다 만점이면 못 가르죠. 제가 계산한 건 "적어도 한 명은 맞힌다"의 확률이네요. 갈리려면 틀린 사람도 한 명은 있어야 하고요.
쉬운 퀴즈는 다섯 번 내면 네 번은 아무것도 못 가르네요. 조교님이 그래서 쉬운 문제만으로는 성적을 못 매긴다고 했구나.
정리 (가) 1−0.954−0.054≈0.185. (나) 1−2×0.54=0.875. 답이 갈리려면 맞힌 사람과 틀린 사람이 모두 있어야 하므로, 쉬운 문제는 “모두 맞힘” 때문에 가르는 힘을 잃는다.
문제 6: 쉬운 문제에 샘플을 더 쏟으면
정답률 p=0.9인 문제에서 G=8이면 이 그룹이 학습 시그널을 줄 확률이 0.57이다. (가) 그룹 크기를 G=16으로 두 배 늘리면 시그널 확률은? (나) 시그널 확률이 0.9 이상이 되려면 G는 최소 얼마여야 하는가? (위 위젯에서 p를 0.90에 두고 G를 바꿔 가며 자기 답을 확인해 보라.)
이서연
여덟 개가 다 맞힐 확률이 0.43이었으니까, 답을 두 배로 뽑으면 그 확률이 절반쯤 되겠죠. 0.215면 시그널 확률은 0.785예요.
선생님
서연 학생, 여덟 개가 다 맞힐 확률을 식으로 쓰면 0.9⁸이죠. 열여섯 개가 다 맞힐 확률은 어떻게 쓰나요?
이서연
0.9¹⁶ = (0.9⁸)²이네요. 절반이 아니라 제곱이에요. 0.43² ≈ 0.185니까 시그널 확률은 0.815요.
김민준
(나)는 코드로 돌렸어요. G = 21이면 0.891, G = 22면 0.9015예요. 그러니까 22개. 쉬운 문제도 G만 늘리면 되네요.
선생님
민준 학생, 그 문제 하나에 답을 22개 뽑는 비용이면, 정답률 0.5인 문제는 G = 4로 몇 개를 볼 수 있죠?
김민준
다섯 개 남짓이요. 0.5인 문제는 G = 4로도 시그널 확률이 0.875였으니까, 쉬운 문제 하나에 22개를 쏟는 것보다 적정 난이도 문제 다섯을 보는 게 훨씬 남네요.
선생님
그래요. 그래서 G를 키우기보다 문제를 고르는 거예요. 정답률을 재서 다 맞히는 문제를 걸러 내는 동적 샘플링이 그 일이에요.
김민준
아까 퀴즈 문제랑 같네요. 다들 만점 받는 퀴즈는 학생을 더 모아 보는 것보다 문제를 바꾸는 게 싸요.
정리 (가) 1−0.916−0.116≈0.815. G를 두 배로 늘리면 “전부 정답” 확률은 절반이 아니라 제곱이 된다(0.432≈0.185). (나) 0.9G≤0.1 이 되는 가장 작은 G는 22(시그널 확률 0.90). 쉬운 문제의 시그널을 그룹 크기로 사려면 비싸므로, 같은 비용으로 적정 난이도 문제를 고르는 편이 낫다.