알파고가 이세돌을 이겼을 때 사람들이 가장 많이 한 질문이 있습니다. "누가 바둑을 가르쳤나요?" 아무도 가르치지 않았습니다. 알파고는 스스로 수백만 번 바둑을 두면서 이기면 보상, 지면 페널티를 받으며 최적의 전략을 찾아냈습니다. 이게 강화학습입니다.
강화학습이 지도 학습과 다른 점은 정답 데이터가 없다는 겁니다. 대신 보상(Reward)이 있습니다. 체스에서 이기면 +1, 지면 -1. 이 단순한 피드백만으로 AI가 스스로 전략을 학습합니다. 오늘은 이 과정을 수학적으로 어떻게 설계하는지, 마르코프 결정 과정(MDP)과 벨만 방정식을 중심으로 따라가 보겠습니다.

강화학습의 4대 요소 — 에이전트, 환경, 상태, 보상
강화학습의 구조는 명확합니다. 에이전트(Agent)가 환경(Environment)과 상호작용합니다. 에이전트는 현재 상태(State)를 관찰하고 행동(Action)을 선택합니다. 환경은 그 행동에 따라 보상(Reward)을 주고 다음 상태로 전환합니다.
에이전트 → 행동(Action) → 환경
환경 → 상태(State) + 보상(Reward) → 에이전트
게임 예시 (팩맨):
상태: 현재 팩맨 위치, 유령 위치, 남은 점 위치
행동: 상/하/좌/우 이동
보상: 점 먹으면 +10, 유령에게 잡히면 -100, 생존 +1
목표: 총 보상 합계를 최대화하는 정책(Policy) 학습
정책 π: 상태 s에서 행동 a를 선택하는 함수
π(a|s) = 상태 s에서 행동 a를 할 확률
에이전트의 목표는 지금 당장의 보상이 아니라 앞으로 받을 모든 보상의 합을 최대화하는 겁니다. 체스에서 지금 당장 상대 말을 잡는 것보다 10수 후에 체크메이트를 노리는 게 더 좋은 수일 수 있습니다. 이 장기적 관점이 강화학습을 지도 학습과 구분 짓는 핵심입니다.
마르코프 결정 과정(MDP) — 현재가 미래를 결정한다
강화학습의 수학적 기반이 마르코프 결정 과정(MDP, Markov Decision Process)입니다. MDP는 다섯 가지 요소로 구성됩니다.
S: 상태 집합 (State Space)
A: 행동 집합 (Action Space)
P: 상태 전이 확률 P(s'|s, a)
→ 상태 s에서 행동 a를 했을 때 s'로 갈 확률
R: 보상 함수 R(s, a, s')
γ: 감가율 (0 ≤ γ ≤ 1)
마르코프 성질:
P(s_{t+1} | s_t, a_t, s_{t-1}, a_{t-1}, ...) = P(s_{t+1} | s_t, a_t)
→ 다음 상태는 현재 상태와 행동에만 의존
→ 과거 이력은 필요 없다
마르코프 성질이 강력한 이유는 과거를 다 기억하지 않아도 된다는 겁니다. 지금 내가 어디에 있고 무엇을 하느냐만 알면 됩니다. 이 단순화 덕분에 복잡한 문제가 계산 가능해집니다. 체스판의 현재 상태만 보면 되고, 지금까지 어떤 수가 오갔는지는 몰라도 됩니다.
벨만 방정식 — 미래 보상을 현재 가치로 환산하기
강화학습의 핵심 수식이 벨만 방정식(Bellman Equation)입니다. "지금 이 상태의 가치는 지금 받는 보상과 앞으로 받을 가치의 합"이라고 정의합니다.
V(s) = E[R_{t+1} + γ·R_{t+2} + γ²·R_{t+3} + ...]
벨만 방정식으로 재귀적 표현:
V(s) = E[R_{t+1} + γ·V(s_{t+1})]
Q 함수 Q(s, a) (행동 가치 함수):
Q(s, a) = E[R_{t+1} + γ·max_a' Q(s_{t+1}, a')]
감가율 γ의 의미:
γ = 0: 현재 보상만 봄 (완전한 근시안)
γ = 0.9: 미래를 많이 고려
γ = 1: 미래와 현재를 동등하게 봄 (수렴 안 될 수 있음)
→ 오늘 받는 10점이 내일 받는 10점보다 가치 있다
→ 멀리 있는 보상일수록 γ로 할인
벨만 방정식이 재귀적 구조를 갖는 게 중요합니다. V(s)를 구하려면 V(s')가 필요하고, V(s')를 구하려면 V(s'')가 필요합니다. 이 순환을 반복적으로 풀면 각 상태의 진짜 가치가 수렴합니다. 이 과정이 Q-러닝의 핵심 아이디어입니다.
Q-러닝 — 실제 숫자로 계산해보기
Q-러닝은 Q(s, a) 값을 반복적으로 업데이트해서 최적의 정책을 찾는 알고리즘입니다. 처음에는 모든 Q 값이 0입니다. 에피소드를 반복하면서 실제 보상을 받을 때마다 Q 테이블을 업데이트합니다.
Q(s, a) ← Q(s, a) + α[R + γ·max_a' Q(s', a') - Q(s, a)]
α: 학습률 (얼마나 빠르게 업데이트할지)
R: 받은 보상
γ: 감가율
max_a' Q(s', a'): 다음 상태에서 최선의 Q 값
간단한 예시 (미로 탈출):
현재 상태 s=A, 행동 a=오른쪽, 다음 상태 s'=B
보상 R=0, γ=0.9, α=0.1
Q(B, 최선) = 10 (이미 학습된 값)
Q(A, 오른쪽) = 0 + 0.1×[0 + 0.9×10 - 0]
= 0 + 0.1×9 = 0.9
→ Q(A, 오른쪽)이 0에서 0.9로 업데이트됨
→ 에피소드 반복할수록 Q 값이 정확해짐
직접 이 과정을 코드로 구현해 보면 처음에 0으로 가득했던 Q 테이블이 수천 번 에피소드를 거치면서 의미 있는 숫자로 채워지는 걸 볼 수 있습니다. 그 Q 테이블이 완성되는 순간 에이전트가 최적의 길을 찾아가기 시작합니다.
탐험과 이용의 딜레마
강화학습 에이전트는 항상 딜레마에 빠집니다. 지금껏 알게 된 최선의 행동을 반복하는 이용(Exploitation)과, 더 좋은 방법이 있을지 새로운 행동을 시도하는 탐험(Exploration) 사이의 균형입니다.
확률 ε로 무작위 행동 (탐험)
확률 1-ε로 최선의 행동 (이용)
ε 스케줄링:
초기 ε = 1.0 (처음엔 완전히 탐험)
점차 감소: ε = max(0.01, ε × 0.995)
나중엔 ε = 0.01 (대부분 이용, 약간 탐험)
이용만 할 때 문제:
처음 발견한 괜찮은 길만 계속 감
→ 더 좋은 지름길을 영원히 못 찾음 (국소 최적)
탐험만 할 때 문제:
매번 무작위로 움직임
→ 보상이 쌓이지 않음, 학습 안 됨
식당 선택에 비유하면 이렇습니다. 맛있다고 알려진 식당만 가면 더 맛있는 곳을 영원히 모릅니다. 반대로 매번 새 식당만 가면 좋아하는 메뉴를 한 번도 못 먹습니다. ε을 시간이 지날수록 줄여가는 방식이 대부분의 실무 구현에서 쓰입니다.
DQN — 딥러닝과 강화학습의 결합
Q-러닝은 상태와 행동의 수가 적을 때만 쓸 수 있습니다. 바둑은 가능한 상태가 10^170개입니다. Q 테이블을 만들 수 없습니다. 2013년 DeepMind가 발표한 DQN(Deep Q-Network)은 Q 테이블 대신 신경망으로 Q(s, a) 값을 근사합니다.
입력: 현재 상태 s (예: 게임 화면 픽셀)
신경망: CNN으로 상태 특징 추출
출력: 각 행동의 Q 값 [Q(s,왼쪽), Q(s,오른쪽), ...]
DQN의 핵심 트릭 두 가지:
1. Experience Replay:
과거 경험 (s, a, r, s')을 메모리에 저장
무작위로 샘플해서 학습 → 데이터 상관관계 제거
2. Target Network:
학습 중인 네트워크와 별도의 타겟 네트워크 유지
→ 학습 안정화
성과:
아타리 게임 49개에서 인간 수준 또는 초월
이 연재에서 다룬 개념들이 DQN에서 모두 만납니다. CNN으로 게임 화면에서 특징을 추출하고, 역전파로 Q 값 예측을 학습하고, 경사하강법으로 가중치를 업데이트합니다. 강화학습은 지도 학습과 다른 목표를 갖지만 같은 수학적 도구를 씁니다. ChatGPT의 RLHF(인간 피드백 기반 강화학습)도 이 DQN에서 발전한 아이디어입니다.
'데이터 과학 수학' 카테고리의 다른 글
| 파동 속의 재료를 찾아라, 푸리에 변환(Fourier Transform)과 신호 처리의 수학 (0) | 2026.04.19 |
|---|---|
| 0과 1 사이의 무한한 가능성, 양자 컴퓨팅을 지탱하는 선형대수학 (0) | 2026.04.18 |
| 넷플릭스는 왜 익명화에 실패했는가, 차분 프라이버시(Differential Privacy)로 개인정보 보호하는 법 (0) | 2026.04.16 |
| DALL-E와 Midjourney는 어떻게 이미지를 만드는가, 확산 모델(Diffusion Model)의 수학적 원리 (0) | 2026.04.15 |
| 그래프 이론(Graph Theory)이란 무엇인가, 소셜 네트워크부터 GNN까지 (0) | 2026.04.14 |