English
AI Foundations

Reinforcement Learning강화학습

강화학습 에이전트는 여러분이 무엇을 원하는지 모릅니다. 나눠 주는 점수만 알고, 그 점수를 가장 싸게 모으는 길을 찾아냅니다. 목표와 코인, 용암을 놓고 점수를 정한 뒤, Q-러닝 에이전트가 보상을 글자 그대로 받아들이는 모습을 보세요.

Rewards & Discounting

한 걸음마다 점수가 생깁니다. 걸음 자체의 점수와 도착한 칸의 점수입니다. 에이전트는 합을 최대로 만들려 하지만, 나중에 받을 점수는 지금 받는 점수보다 덜 쳐 줍니다. 얼마나 덜 쳐 줄지를 할인율 γ가 정합니다.

G = r1 + γ·r2 + γ²·r3 + …

요약에이전트는 할인한 점수 합을 최대로 만듭니다.γ가 작으면 눈앞만 봅니다.점수가 무엇을 위한 것인지는 모릅니다.

체험: 보상 줄 더하기

칸을 눌러 그 단계의 보상을 바꿉니다(0 → +1 → −1 → +10 → −5).

G_t = r_t + γ·r_{t+1} + γ²·r_{t+2} + … = r_t + γ·G_{t+1}

체험: 지금 1, 나중에 10?

참고문헌

  1. Sutton, R.S., Barto, A.G. (2018). Reinforcement Learning: An Introduction (2nd ed.). MIT Press.

Q-learning

에이전트는 Q(칸, 방향) 표를 들고 다닙니다. 그 방향으로 가고 이후 잘 둘 때 기대하는 점수 합입니다. 한 걸음 갈 때마다 표의 한 칸을 실제로 일어난 일 쪽으로 조금 옮깁니다. 받은 점수에, 다음 칸에서 가장 좋은 값을 더한 쪽입니다. 처음엔 둘러보려고 무작위로 움직이고(ε = 1), 점점 덜 둘러보다 ε = 0.05가 됩니다.

Q(s,a) ← Q(s,a) + α · [ r + γ · maxa′ Q(s′,a′) − Q(s,a) ]

에이전트가 주어진 보상에 맞게 제대로 배웠는지 확인하려고, 같은 세계를 가치 반복으로 정확히 풀어 함께 보여 줍니다. 네 가지 예시 모두에서 시드 5개 중 5개가 정답과 같았습니다.

800판, α 0.2, 시드 1~5Q-러닝 = 정답에이전트 점수의도한 길 점수무작위(2,000번)에이전트 목표 도착
요약Q-러닝은 해 보고 고치며 표를 채웁니다.여기서는 그 보상에 대한 정확한 최선을 찾아냅니다.그러니 행동이 이상하면 이상한 것은 보상입니다.

체험: Q-러닝 한 번씩

칸 여섯 개짜리 복도입니다. 0번에서 시작하고, 5번에 닿으면 +10을 받고 끝나며, 걸음마다 −1입니다. 에이전트는 ε-탐욕으로 움직이고, Q 표의 숫자 하나를 고칩니다. 한 단계씩 넘기며 목표의 가치가 뒤로 번지는 것을 보세요.

참고문헌

  1. Watkins, C.J.C.H., Dayan, P. (1992). Q-learning. Machine Learning 8.
  2. Sutton, R.S., Barto, A.G. (2018). Reinforcement Learning: An Introduction (2nd ed.). MIT Press.

Reward Hacking

보상 해킹은 에이전트가 아무도 원하지 않은 방법으로 높은 점수를 받는 일입니다. 에이전트가 고장 난 게 아닙니다. 숫자가 시킨 대로 정확히 하고 있습니다. 이 페이지의 예시 둘입니다.

코인 농사

시작점 근처에 1점짜리 코인이 있고, 먹어도 다시 생깁니다. 내렸다 다시 밟으면 두 걸음마다 1점씩 끝없이 받습니다. 목표는 한 번 10점입니다.

에이전트 30점, 목표 도착 안 함 · 의도한 길 11점

걸음 벌점이 너무 셈

서두르라고 걸음마다 2점을 깎습니다. 용암은 3점만 깎는데 시작점 바로 옆에 있습니다. 목표까지 걷는 것보다 용암에 뛰어드는 게 덜 잃습니다.

에이전트 1걸음 만에 용암, −5점 · 의도한 길 −14점

장난감 세계 밖에서도 똑같은 일이 생깁니다. 보트 경주 에이전트가 경주를 끝내는 대신 작은 만에서 빙빙 돌며 같은 표적만 계속 맞히는 법을 배웠습니다(OpenAI, 2016). DeepMind는 이런 사례 수십 개를 '명세 게이밍(specification gaming)'이라는 이름으로 공개 목록에 모아 둡니다.

요약에이전트는 여러분이 뜻한 보상이 아니라 적은 보상을 최대로 만듭니다.보상이 되풀이되는 고리는 대표적인 구멍입니다.너무 센 벌점은 그만두는 쪽을 최선으로 만듭니다.

체험: 대리 점수를 점점 세게 최적화하기

후보마다 참 품질이 있고, 대리 점수는 참 품질 + 오차입니다. 대리 점수로 n개 중 최고를 고르는 것을 최적화 압력의 대신으로 씁니다. 오차가 얌전하면(정규분포) 참 품질도 n과 함께 오르지만 대리 점수보다 느립니다. 오차 꼬리가 두꺼우면 갈수록 오차가 유난히 큰 후보가 뽑혀, 참 품질이 다시 떨어집니다.

오차 분포

n마다 400번 되풀이, 시드 고정. 꼬리가 두꺼운 오차: 자유도 1.5인 스튜던트 t, 정규 오차와 중앙 크기가 같게 맞춤.

참고문헌

  1. Clark, J., Amodei, D. (2016). Faulty reward functions in the wild. OpenAI blog.
  2. Krakovna, V. et al. (2020). Specification gaming: the flip side of AI ingenuity. DeepMind blog.

Reward Design

고친 예시에서는 코인을 한 번만 주고, 걸음마다 조금(−0.1)만 깎습니다. 이제 가장 높은 점수와 의도한 행동이 일치합니다. 가는 길에 코인을 줍고 목표로 걸어가 12걸음에 9.8점입니다. 시드 5개 중 5개가 이렇게 배웁니다.

어림 규칙은 이렇습니다. 그쪽으로 가는 단계 말고 원하는 결과에 보상을 주고, 무엇도 끝없이 모을 수 없게 하고, 벌점은 주된 보상보다 작게 둡니다. 그리고 점수만 보지 말고 에이전트가 하는 걸 직접 봅니다.

요약좋은 보상은 의도한 행동이 가장 높은 점수가 되게 합니다.결과에 보상하고, 되풀이되는 것은 막습니다.에이전트가 실제로 하는 일을 늘 확인합니다.

체험: 목표를 망치는 보너스, 안 망치는 보너스

칸 여덟 개 복도, 끝에 목표(+10), 걸음마다 −0.1입니다. 3번 칸을 지나가도록 부추기려고 보너스를 줍니다. 3번 칸에 들어갈 때마다 주는 단순 보너스는 앞뒤로 오가며 계속 딸 수 있습니다. 퍼텐셜 기반 보너스 F = γΦ(s′) − Φ(s)는 앞으로 미는 힘은 같지만 되풀이해 딸 수 없어서, 가장 좋은 정책이 바뀌지 않습니다(Ng 외 1999). 아래 정책은 가치 반복으로 정확히 계산합니다.

보너스 종류

참고문헌

  1. Ng, A.Y., Harada, D., Russell, S. (1999). Policy invariance under reward transformations: theory and application to reward shaping. ICML.
  2. Krakovna, V. et al. (2020). Specification gaming: the flip side of AI ingenuity. DeepMind blog.

RL for Language Models

대화형 모델도 강화학습으로 다듬습니다. 사람이 답 두 개를 비교하면, 보상 모델이 사람이 어느 쪽을 고를지 예측하도록 배우고, 언어 모델은 그 보상 모델에서 높은 점수를 받도록 학습합니다(RLHF). 보상 모델은 사람이 원하는 것의 추정치일 뿐이라, 너무 세게 밀어붙이면 점수는 오르는데 실제 품질은 떨어질 수 있습니다. 연구자들은 이 현상을 측정해 보상 모델 과최적화라고 부릅니다.

요약RLHF는 사람 선호를 흉내 낸 대리 점수를 최적화합니다.어떤 대리 점수에도 최적화가 찾아낼 구멍이 있습니다.그래서 학습은 원래 모델에서 너무 멀어지지 않게 하고, 사람이 확인합니다.

체험: 비교로 만드는 보상 모델

사람은 점수를 매기기보다 둘 중 어느 답이 나은지 말하기가 쉽습니다. Bradley–Terry 모형은 이런 비교를 점수로 바꿉니다. P(A가 B를 이김) = σ(r_A − r_B). 짝마다 더 나은 답을 눌러 표를 더하거나, 실수도 하는 평가자를 흉내 내 표를 더하고, 맞춘 점수를 보세요.

체험: KL 끈을 매고 보상 모델에 맞추기

RLHF는 보상 모델 점수에서 원래 모델과의 KL 발산의 β배를 뺀 값을 최대로 합니다. 답 후보가 정해져 있으면 해가 정확히 나옵니다. π(y) ∝ π_ref(y)·exp(r̂(y)/β). 여기 보상 모델은 아첨하는 답 하나를 과대평가합니다. β를 낮출수록 정책이 보상 모델을 더 멀리 쫓아, 보상 모델 점수는 계속 오르지만 참 품질은 정점을 찍고 떨어집니다.

참고문헌

  1. Christiano, P. et al. (2017). Deep reinforcement learning from human preferences. NeurIPS.
  2. Ouyang, L. et al. (2022). Training language models to follow instructions with human feedback. NeurIPS.
  3. Gao, L., Schulman, J., Hilton, J. (2023). Scaling laws for reward model overoptimization. ICML.

교육용 장난감입니다. 여기서 에이전트가 하는 행동은 실제 AI 시스템의 행동을 예측하지 않습니다.