탐험(엡실론-그리디)으로 보물을 찾았습니다. 그런데 던전 1에서는 77판째 보물을 보고도 결국 동전 길로 돌아갔죠.
왜?
경험을 한 번만 배우고 버리니, 단 한 번의 보물 기억이 출발점까지 전해지기 전에 묻혀 버렸습니다.
오늘
경험 한 조각(SARS)을 상자에 쌓아 두고 꺼내서 다시 배웁니다. 귀한 기억은 계속 다시 쓰입니다.
CELL 01–02준비 · 얼음 호수 열기
64칸 중 보상은 단 한 곳.
Gymnasium 의 FrozenLake 8×8 (미끄럽지 않게). S 출발 · 얼음은 걸어도 되고 · H 구멍에 빠지면 끝(0점) · G 에 닿아야 1점. 무작위로 걸으면 G 에 거의 닿지 못합니다.
무작위 1000판 중 G 도착
?
코랩에서는 3판. 브라우저에서도 직접 걸려 보세요. 0.3% 쯤입니다.
CELL 01 · 준비CELL 02 · 얼음 호수 열기
칸 수: 64 · 행동 수: 4
S F F F F F F F
F F F F F F F F
F F F H F F F F
F F F F F H F F
F F F H F F F F
F H H F F F H F
F H F F H F H F
F F F H F F F G
무작위 1000판 중 목표 도착: 3판
CELL 03행동가치 Q(s, a)
두뇌가 외우는 숫자, Q(s, a)
「칸 s 에서 행동 a 를 하면, 앞으로 보상을 얼마나 받을까?」 에 대한 두뇌의 추측입니다. 칸 64개 × 행동 4개 = 숫자 256개. 처음엔 전부 0, 두뇌는 그중 가장 큰 숫자의 행동을 고릅니다.
칸 62 (G 바로 왼쪽)
r
지금 받은 보상
G 에 닿으면 1, 아니면 0.
γ · max Q(s′, ·)
다음 칸의 기대
다음 칸에서 할 수 있는 최고의 미래 (조금 할인, γ = 0.95).
α
얼마나 다가갈까
목표값 쪽으로 절반(0.5)만 고친다.
버튼을 눌러 Q 가 고쳐지는 걸 보세요.
G 의 가치가 거꾸로 번지는 길 · 가장 짧은 길 14걸음 · 칸마다 Q = 0.95남은 걸음 − 1
보상은 G 에서만 나오지만, 값은 한 칸씩 출발점 쪽으로 전해집니다. 출발점 S 의 최고값은 0.9513 ≈ 0.51.
CELL 03 · 행동 고르기 · Q 고치기
고치기 전 Q[62] = [0. 0. 0. 0.]
고친 뒤 Q[62] = [0. 0. 0.5 0. ] ← 이제 62번 칸에서 →(2)가 좋다는 걸 압니다
그 위 칸 Q[54] = [0. 0.238 0. 0. ] ← 보상은 0인데도, 다음 칸(62)이 좋으니 ↓(1)가 조금 올랐습니다
CELL 04SARS — 경험 한 조각
한 걸음 = S · A · R · S′
걸을 때마다 경험 한 조각이 생깁니다. S 지금 칸 · A 한 행동 · R 받은 보상 · S′ 다음 칸 (+ 끝났는지). 2강의 두뇌는 이 조각으로 Q 를 한 번 고치고 버렸습니다.
CELL 04 · SARS 찍어 보기
SARS = (S= 0, A=→, R=0, S'= 1, 끝=False)
SARS = (S= 1, A=→, R=0, S'= 2, 끝=False)
SARS = (S= 2, A=↓, R=0, S'=10, 끝=False)
보상 R 은 G 에 도착할 때만 1 입니다. 대부분의 조각은 R=0 이에요.
CELL 05기억 상자 — 채우는 법 · 꺼내는 법
어떻게 채우고, 어떻게 꺼낼까
같은 상자라도 채우는 법·꺼내는 법에 따라 배우는 게 달라집니다. 직접 눌러 보세요.
채우는 법상자 크기 5
꺼내는 법상자 20칸 · ⭐ = G 도착 기억(R=1)
CELL 05 · 기억상자 클래스
오래된것_지우기 → 남은 S: [2, 3, 4, 5, 6]
처음것_유지 → 남은 S: [0, 1, 2, 3, 4]
CELL 06학습 함수 — 버릴까, 쌓을까
딱 한 줄이 다릅니다
두 학습 함수는 걷는 법·고르는 법·고치는 식이 모두 같습니다. 다른 건 SARS 를 버리느냐, 상자에 넣고 32개를 꺼내 다시 배우느냐 뿐.
2강 · 쌓지 않음
경험 1조각 → 학습 1번
3강 · 기억 상자
경험 1조각 → 상자에 저장, 걸음마다 32번 다시 학습 · 500판이면 약 27만 번
CELL 06 · 학습() · 다_배운_두뇌_시험()
CELL 07–10실시간 비교 · 가치가 퍼지는 과정 · 걷는 영상
같은 500판, 버린 두뇌 vs 쌓은 두뇌
브라우저가 코랩과 같은 규칙으로 지금 직접 학습시킵니다. 색이 밝을수록 「여기서 G 까지 갈 수 있다」고 믿는 칸 (가장 큰 Q), 화살표는 두뇌가 고를 행동. G 에서 시작한 빛이 출발점까지 번지는 속도를 비교하세요.
기억에서 다시 배운 횟수: 275,648번 (기억 없이: 걸음마다 1번)
1~100 101~200 201~300 301~400 401~500 처음 도착 다 배운 두뇌
기억 없이 0% 0% 2% 0% 6% 239판째 실패 ❌
기억 상자 6% 90% 98% 98% 99% 88판째 도착 ✅
CELL 08 · 학습 곡선 그래프CELL 09 · 🎬 가치가 퍼지는 애니메이션CELL 10 · 🎬 다 배운 두뇌가 걷는 영상
이 페이지의 난수는 파이썬과 달라서 숫자가 코랩과 똑같지는 않습니다. 운(씨앗)에 따라 결과가 크게 달라진다는 것도 강화학습의 중요한 성질이에요. 「다른 씨앗」 버튼으로 여러 번 돌려 보세요.
CELL 11⚔️ 꺼내는 방법 5가지 대결
SARS 를 어떻게 쌓고 꺼낼까?
같은 조건(500판, 꺼낼 수 32)으로 다섯 가지를 겨뤘습니다. 운에 휘둘리지 않게 씨앗 5개로 각각 학습한 평균 — 코랩에서 실제로 실행한 결과입니다. 흰 점 = 씨앗 하나.
④ 처음 것만 · 0.2%
상자에 없는 건 배울 수 없다
처음 2000조각은 탐험 100% 시절의 무작위 걸음. G 에 닿은 조각이 하나도 없어요. 기억은 새로 채워져야 합니다.
③ 최근 것만 · 44.3%
표에서는 최근이 강하다
방금 걸은 길을 거꾸로 여러 번 다시 배우니, G 의 가치가 그 길을 따라 빨리 번집니다. 4강에서 표 대신 딥러닝을 쓰면 이야기가 달라져요.
씨앗별 점
한 번 이긴 게 실력은 아니다
같은 방법도 씨앗에 따라 0% ~ 80%. 그래서 대회 점수는 씨앗 여러 개의 평균으로 매깁니다.
CELL 11 · 5가지 대결
① 쌓지 않음 (2강) 성공률 2.3% · 다 배운 두뇌 도착 1/5 · 씨앗별 [0.02, 0.0, 0.01, 0.09, 0.0]
② 무작위로 꺼내기 성공률 23.9% · 다 배운 두뇌 도착 3/5 · 씨앗별 [0.78, 0.0, 0.0, 0.25, 0.17]
③ 최근 것만 꺼내기 성공률 44.3% · 다 배운 두뇌 도착 4/5 · 씨앗별 [0.51, 0.35, 0.53, 0.83, 0.0]
④ 처음 2000개만 채워 두기 성공률 0.2% · 다 배운 두뇌 도착 0/5 · 씨앗별 [0.0, 0.0, 0.0, 0.0, 0.0]
⑤ 보상 받은 기억 우선 성공률 24.0% · 다 배운 두뇌 도착 3/5 · 씨앗별 [0.79, 0.0, 0.0, 0.27, 0.13]
CELL 12기억 상자 실험 — 크기와 꺼내는 수
크게, 많이 꺼내면 무조건 좋을까?
300판, 씨앗 하나로 숫자만 바꿔 본 결과. 칸의 숫자 = G 에 도착한 판 수, 색이 진할수록 많이 도착. 들쭉날쭉하죠? 정답 하나가 있는 게 아니라, 균형을 찾는 문제입니다. 꺼내는 수가 늘면 계산(다시 배운 횟수)도 그만큼 늘어요.
CELL 12 · 크기 × 꺼내는 수
CELL 13🌗 좋은 기억만 · 나쁜 기억만
잘된 일만 떠올리는 두뇌, 실패만 곱씹는 두뇌
판이 끝날 때 그 판의 SARS 를 G 에 도착한 판(좋은 기억)인지 실패한 판(나쁜 기억)인지에 따라 상자에 넣을지 정합니다. 그리고 세상을 하나 더: 구멍에 빠지면 −1점 — 실패가 아프게 느껴지는 세상.
상자에 넣을 기억한 판 = 공 하나 · 금색 ✓ 성공 · 빨강 ✗ 실패
기억 상자
G 도착률 · 씨앗 5개 평균 (코랩 실측) — 왼쪽 막대: 구멍 0점(원래) · 오른쪽 막대: 구멍 −1점
좋은 기억만 · 36%
성공한 길만 아는 사람
잘된 길은 알지만 구멍이 어디인지는 한 번도 배운 적이 없어요. 실패가 아픈 세상에서도 더 나아지지 않습니다.
나쁜 기억만 · 0~7%
조심하는 법만 아는 사람
구멍은 피하지만 G 가 어디인지는 끝까지 몰라요. 실패가 아프지 않은 세상에선 아무것도 못 배웁니다.
전부 + 실패가 아픈 세상 · 79%
둘 다 돌아보는 사람
좋은 기억과 나쁜 기억을 함께, 그리고 실패를 실패로 느낄 때 가장 잘 배웁니다.
CELL 13 · 학습_실험() · 좋은/나쁜 기억
구멍 0점 (원래) 구멍 −1점 (실패가 아픈 세상)
전부 도착률 40.4% · 다 배운 두뇌 3/5 도착률 78.5% · 다 배운 두뇌 5/5
좋은 기억만 도착률 35.7% · 다 배운 두뇌 4/5 도착률 35.7% · 다 배운 두뇌 4/5
나쁜 기억만 도착률 0.2% · 다 배운 두뇌 0/5 도착률 7.0% · 다 배운 두뇌 0/5
CELL 14🪞 기억을 내 맘대로 바꾸면?
세상은 그대로. 기억만 바꿨을 뿐인데
구멍 −1, G +1 은 그대로입니다. 바뀌는 건 상자에 적는 보상뿐. 「그 실패는 사실 괜찮았어」 「아팠던 건 잊자」 「조금 지어내도 되겠지」 — 버튼을 누르면 브라우저가 그렇게 기억하는 두뇌를 지금 500판 학습시키고, 다 배운 두뇌를 걷게 합니다.
코랩 실측 · 씨앗 5개 평균 · 초록 = G 도착 · 빨강 = 구멍에 빠짐
③ 실패를 미화 · 구멍 83%
구멍을 좋은 곳으로 기억한다
「괜찮았어」라고 적은 실패는 두뇌에게 진짜 좋은 곳이 됩니다. 그래서 일부러 구멍으로 걸어 들어가요.
⑥ 10% 지어냄 · 도착 0%
있지도 않은 보상을 쫓는다
기억의 10% 만 지어내도, 두뇌는 지어낸 보상을 따라 얼음 위를 맴돌다 목표를 잃습니다.
④ 과장 · ⑤ 부풀림 · 정직과 같음
순서가 같으면 결정도 같다
공포를 −10 으로, 성공을 +10 으로 부풀려도 이 호수에선 결과가 그대로. 「무엇이 더 좋은지」의 순서를 뒤집는 왜곡이 가장 위험합니다.
CELL 14 · 왜곡 6가지
① 정직하게 도착률 78.5% · 구멍에 빠진 비율 20.1% · 다 배운 두뇌 도착 5/5
② 아픔을 잊음 (구멍→0) 도착률 40.4% · 구멍에 빠진 비율 58.4% · 다 배운 두뇌 도착 3/5
③ 실패를 미화 (구멍→+0.5) 도착률 16.7% · 구멍에 빠진 비율 83.3% · 다 배운 두뇌 도착 1/5
④ 공포를 과장 (구멍→−10) 도착률 78.5% · 구멍에 빠진 비율 20.1% · 다 배운 두뇌 도착 5/5
⑤ 성공을 부풀림 (G→+10) 도착률 78.7% · 구멍에 빠진 비율 20.0% · 다 배운 두뇌 도착 5/5
⑥ 10%는 지어냄 도착률 0.0% · 구멍에 빠진 비율 24.4% · 다 배운 두뇌 도착 0/5
정리3강에서 가져갈 것
01
행동가치 Q(s, a)
「이 칸에서 이 행동을 하면 앞으로 얼마나 받을까」. G 의 보상이 한 칸씩 거꾸로 번져 출발점까지 전해진다.
02
SARS 를 쌓는다
버리지 않고 기억 상자에. 가득 차면 오래된 것부터 지운다. 처음 것만 붙들면 새로 배울 게 없다.
03
꺼내서 다시 배운다
같은 판수로 훨씬 빨리. 어떻게 꺼내느냐(무작위·최근·보상 우선)와 얼마나 꺼내느냐가 결과를 바꾼다.