스킬캠퍼스
Day 13 · 강화학습의 탄생 (Q-Learning)
강의

오늘 끝나면

강화학습의 탄생 (Q-Learning)

  • 강화학습의 탄생 (Q-Learning)의 핵심 문제를 한 문장으로 설명한다
  • 오른쪽 실습에서 강화학습의이 어떻게 움직이는지 관찰한다
  • 다음 강의와 이어지는 한계를 말할 수 있다

실습 미션

MDP+벨만 — 정답 없이 보상으로 배우기 (Snake 데모) 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.

성공 조건

  • 실습의 기본값을 먼저 관찰
  • 입력값이나 모드를 한 번 이상 바꿔 결과 비교
  • 왜 결과가 바뀌었는지 한 문장으로 설명

AI · Day 13 / 강화학습

정답 없이
배우는 법

강아지한테 "앉아"를 정답 라벨로 못 가르침. 우연히 앉으면 간식, 아니면 안 줌. 이 단순한 원리—시행착오와 보상—가 AlphaGo와 ChatGPT를 만듦. 그 심장이 1989년 Watkins의 Q-Learning임.

P.01AI · Day 13

정답이 없는 세상

머신러닝은 세 형제임. 지도학습은 (x, y) 정답 쌍을 먹음. 비지도학습은 x만 보고 숨은 구조를 찾음. 강화학습은 먹는 게 다름.

에이전트가 받는 건 정답이 아니라 스칼라 보상하나임. 점수, 클릭률, 이익 같은 숫자 한 개. "정답이야"가 아니라 "이번엔 +10점"이라고만 알려줌.

RL만 시간을 정면으로 다룸. 오늘 행동이 내일 상태를 바꿈. 바뀐 상태가 또 미래 보상을 바꿈. 이 순차적 의사결정 구조가 RL을 어렵게 만듦.

ML 삼형제의 피드백
구분입력목표피드백
지도학습(x, y)y 예측정답 라벨
비지도학습x 만구조 발견없음
강화학습(s,a,r,s')보상 최대화스칼라 보상

RL만 시간을 다룸 — 행동이 다음 상태를 바꿈

P.02AI · Day 13

MDP와 Bellman 방정식

강화학습 문제는 거의 다 MDP로 표현됨. 다섯 글자 (S, A, P, R, γ)—상태, 행동, 전이확률, 보상, 할인율.

핵심은 Markov 속성임. 현재 상태 sₜ만 알면 미래 예측에 과거는 필요 없음. 체스 판 현재 배치만 보면 다음 수 두기 충분한 것과 같음. 할인율 γ는 "미래 100만원은 오늘 얼마냐"의 NPV 계산과 수학적으로 같음.

1957년, Bellman이 한 가지를 관찰함. 현재 가치 = 즉각 보상 + γ × 다음 상태의 가치. 이 재귀식 덕분에 "모르는 미래의 Q"를 "현재 추정값"으로 대체해 학습함. 이게 부트스트래핑의 씨앗임.

Q. A↔B를 오가며 A를 떠날 때 +1, γ=0.9. V(A)는?연립함. V(A) = 1 + 0.9·V(B), V(B) = 0.9·V(A). 대입하면 V(A) = 1 + 0.81·V(A)V(A) = 5.26, V(B) = 4.74. 사이클마다 +1이 기하급수로 쌓이다 수렴함.
재귀: 지금 + γ·다음
s행동 a+Rs'max Q(s',a')Q*(s,a) = E[ R + γ·max Q*(s',a') ]지금 보상 + 미래의 최선 (재귀)

현재 가치 = 즉각 보상 + γ × 다음 상태의 최선임

P.03AI · Day 13

Q-Learning 업데이트 한 줄

전이 확률 P는 몰라도 됨. 경험 (s, a, r, s')만 모아서 Q값을 고치면 됨. 1989년, Watkins가 이 model-free 학습을 증명함.

읽는 법은 한 문장임. "현재 Q 추정값을, 새로 관측한 즉각 보상 + 할인된 다음 최대 Q 방향으로 조금(α) 당겨라." 부정확한 Q로 또 다른 Q를 고침. 그래도 수학적으로 최적 Q*로 수렴 보장됨.

파이썬 코드 보기
# Q-Learning 한 스텝
# eps-greedy 행동 선택
if random() < epsilon:
    a = random_action()
else:
    a = argmax(Q[s])

s2, r, done = env.step(a)

# TD target / error
target = r + gamma * max(Q[s2])
Q[s][a] += alpha * (target - Q[s][a])
s = s2

max(Q[s2])가 off-policy의 핵심임. 실제로 한 행동이 아니라 "다음 상태의 가상의 최선"을 가정해서 배움.

직접 학습시켜보기
Q-Learning 그리드월드 · 시행착오로 Q값을 채운다
−1
파란 막대=양의 Q · 굵은 막대+화살표=현재 정책 · ○=에이전트 · ★ 골(+1) · ✕ 함정(−1)
에피소드 0
총 스텝
0
마지막 행동
TD error δ
0.000
버튼을 눌러 보셈. Q값(막대)이 골에서부터 거꾸로 번져옴.
P.04AI · Day 13

탐색과 활용의 딜레마

슬롯머신 10대, 당첨 확률은 모름. 1000번 당길 돈으로 어떤 전략 쓸 거임? 한 번 이긴 슬롯에 다 걸면 진짜 최고 슬롯을 평생 못 찾음.

답은 ε-greedy임. ε 확률로 모험(탐색), 1−ε 확률로 최선(활용). 실전은 decaying ε임—초반엔 1.0으로 마구 탐색, 후반엔 0.01로 줄임. 단, ε=0은 금물임. 완전한 확신은 학습을 멈춤.

인생의 메타 알고리즘이기도 함. 새 식당 vs 단골집, 이직 vs 안정, 신사업 vs 주력. 교훈은 하나. 젊을 땐 ε을 크게, 시간이 갈수록 줄여라.

ε-GREEDY 감쇠
탐색(Explore) 많음활용(Exploit) 많음ε_min=0.01 (0은 금물)ε학습 진행 →1.0

초반 ε=1.0 마구 탐색 → 후반 0.01로 감쇠. 0은 절대 안 됨

P.05AI · Day 13

Q-table이 폭발하면

Tic-Tac-Toe는 상태가 약 5,478개라 Q-table로 완벽 학습됨. 학습 후 AI는 절대 안 짐. 근데 체스는 10⁴⁷, 바둑은 10¹⁷⁰. 테이블로는 우주의 메모리로도 안 됨.

여기서 딥러닝이 들어옴. "비슷한 상태는 비슷한 Q값"이라 가정함. 그러면 Q(s,a) ≈ f_θ(s,a)로 신경망이 근사함. 이게 내일 Day 14 DQN의 철학임. 추천(Netflix), 동적 가격(Uber 서지), A/B 테스트(Thompson Sampling), ChatGPT의 RLHF까지—전부 오늘 배운 "시행착오로 행동을 교정한다" 위에 서 있음.

Q. SARSA는 off-policy, Q-Learning은 on-policy다? (OX)X (반대)임. Q-Learning은 max로 greedy 정책을 배우는 off-policy. SARSA는 실제 취한 a'의 Q를 쓰는 on-policy. 그래서 Q-Learning은 공격적, SARSA는 조심스러움.
비즈니스 매핑
사례StateActionReward
추천 시스템사용자·시간추천 K개클릭·구매
동적 가격수요·재고가격 배율매출
광고 입찰사용자 특성입찰가전환
ChatGPT(RLHF)프롬프트다음 토큰인간 선호

상태·행동·보상만 정의되면 RL 문제임 — 같은 골격

3줄 요약

  1. 1MDP+벨만 — 정답 없이 보상으로 배우기 (Snake 데모)
  2. 2강화학습의 탄생 (Q-Learning)은 준비운동 → 지도학습 → 시퀀스 → 생성모델 → 실무 적용 흐름 안의 한 칸이다.
  3. 3개념을 외우는 것보다 입력을 바꾸면 무엇이 달라지는지 보는 것이 우선이다.

완료 전 점검

복습 카드

강화학습의

MDP+벨만 — 정답 없이 보상으로 배우기 (Snake 데모)

모델

입력을 받아 예측이나 출력을 만드는 계산 규칙

손실

예측이 정답에서 얼마나 빗나갔는지 재는 숫자