개발 일지

포켓몬을 플레이하는 AI를 훈련시키며 배운 것들 — 실제 측정값과 실패까지.

#11 키보드 앞에서 보낸 25분

2026-09-14 · training

에이전트는 그 벽을 434번 마주했고, 벽을 여는 도구를 이미 들고 있었습니다. 다만 그 도구를 쓸 수 없었고, 시스템의 어떤 지표도 그 사실을 말해주지 못했습니다.

계속 읽기 →

#10 세 번이나 성공하고도 매번 버려온 돌파구

2026-09-13 · training

에이전트는 이미 세 번이나 '베기'를 배웠지만 저는 몰랐습니다. 바로 그 순간을 포착하려고 만든 장치가, 정작 그 항목이 빠진 목록만 보고 있었기 때문입니다.

계속 읽기 →

#9 닌텐도 DS의 대가

2026-09-07 · method

제 서버에서 게임보이 에뮬레이터는 실시간의 38배로 돌아갑니다. DS는 1.06배입니다. 환경을 만들기 전에 측정한 이 숫자 하나가 2주치 계획을 없앴습니다. 그리고 둘 다 '모델이 학습을 못한다'처럼 보였을 버그 두 개도 함께 다룹니다.

계속 읽기 →

#8 BOINC 서버는 돌리지 않기로 했습니다

2026-09-06 · architecture

학습 머신은 하룻밤에 체크포인트 30개를 만들고, 서버는 5개밖에 평가하지 못합니다. 자원봉사 컴퓨팅이 정답처럼 보여 버클리의 BOINC 구조를 읽었고, 결국 서버를 돌리는 대신 설계만 빌려 왔습니다.

계속 읽기 →

#7 HM01을 들고 상디호에서 내렸지만, 쓸 방법이 없다

2026-09-02 · results

16번의 실행 중 2번이, 기존 논문에서 어떤 에이전트도 얻지 못했다고 보고한 아이템을 획득했습니다. 하지만 16번 모두 그 기술을 배우지는 못했고, 그래서 막힌 길은 그대로입니다. 애초에 이 조사를 시작하게 한 A/B 실험은 아무 결과도 내지 못했습니다.

계속 읽기 →

#6 완벽한 상관관계, 그리고 틀린 답

2026-08-31 · debugging

1,500 프레임에서 1.00 대 0.00으로 완벽하게 일치하는 메모리 주소를 찾았고, 하마터면 그 위에 코드를 쌓을 뻔했습니다. 게임을 몇 시간 진행하고 나면 그 주소는 3분의 2만 맞습니다.

계속 읽기 →

#5 정작 필요한 것을 보지 못하는 보상 함수

2026-08-30 · reward design

에이전트가 막혀 있는 구간은 전부 대화입니다. 가만히 서서 버튼을 누르는 행동이죠. 그런데 탐험 보상은 밟은 타일 수만 셉니다. 정확히 관문이 있는 자리가 사각지대입니다.

계속 읽기 →

#4 세 번의 실행으로는 부족하다

2026-08-30 · method

세 번 중 한 번 실패했다는 이유로 새 모델을 탈락시켰습니다. 비교 대상이던 기존 모델은 완벽해 보였죠. 제대로 측정해 보니 그 모델도 여섯 번에 한 번 실패하고 있었습니다.

계속 읽기 →

#3 학습을 조용히 망가뜨린 추론용 설정

2026-08-29 · debugging

잘 작동하던 모델을 파인튜닝할 때마다 오히려 나빠졌습니다. 원인은 문서에서 그대로 가져온 숫자 하나였습니다. 그 문서에서는 맞는 값이었지만, 제가 쓴 곳에서는 아니었습니다.

계속 읽기 →

#2 항상 무작위와 비교하라

2026-08-28 · method

몇 주 동안 체크포인트끼리만 비교하고 기준선을 두지 않았습니다. 그 한 줄이 없어서 성능이 나빠진 모델을 놓쳤습니다.

계속 읽기 →

#1 벽에 부딪히는 법을 배운 AI, 그리고 그걸 다시 잊기까지

2026-08-28 · training

150만 스텝을 학습한 모델이 무작위로 버튼을 누르는 것보다 못했습니다. 어떻게 발견했고, 원인은 무엇이었으며, 어떻게 회복했는지.

계속 읽기 →