실행계획
영상이 실제로 밟은 순서 그대로 따라가는 계획입니다. 컴퓨터 한 대, 무료 구글 계정만 있으면 됩니다.
근거는 정리.html과 같습니다.
세 단계로 나눴습니다. ① 코랩에서 첫 실행(공짜, 5분) → ② PPO로 제대로 학습시키기 → ③ 남기고 다음으로 연결하기입니다.
https://colab.research.google.com/drive/15b6m77vD2a-xpsx3JS20IY_daQMQYDup
import gymnasium as gym
env = gym.make("Pusher-v5")
# 에피소드 50회, 무작위 행동으로 "탐험"만 시킨 상태
No module named mujoco가 뜨면 아래를 먼저 실행합니다. [15:11]
pip install gymnasium[mujoco]
pip install stable-baselines3
from stable_baselines3 import PPO
model = PPO("MlpPolicy", env, verbose=1)
model.learn(total_timesteps=100_000) # 영상 기준 10만 번
model.save("ppo_pusher")
stable-baselines3는 PPO를 이미 구현해 둔 도구라 직접 알고리즘을 짤 필요가 없습니다. 관절이 여러 개인 로봇 팔에는 DQN이 아니라 PPO를 써야 합니다(0장·6장). [16:52]total_timesteps를 10만 대신 1,000~5,000 정도로 낮춰서 먼저 돌려 봅니다. 해설자 본인도 10만 번은 코랩에서 시간이 오래 걸린다고 말합니다. [24:46]model = PPO.load("ppo_pusher")
# 같은 env에 다시 넣어 실제로 목표에 가까워지는지 확인
행동이 "한다/안 한다"처럼 딱 정해진 종류면 DQN, "얼마나 세게"처럼 이어진 범위면 PPO입니다. 로봇 팔·다리·손가락처럼 여러 관절이 동시에 움직이는 대상은 거의 항상 PPO입니다. 정리.html 6장
영상은 마지막에 이 실습(시뮬레이터에서 로봇을 학습시키는 기술)이 밑바탕이 되는 사업 네 가지를 꼽습니다(정리.html 11장). ① 로봇 학습용 데이터를 만들어 파는 사업, ② 청소·자동차 등 특정 작업에 특화된 AI 모델 사업, ③ 특정 용도의 학습 데이터셋 제작, ④ 이미 팔린 로봇을 구매자 환경에 맞게 재학습·커스터마이즈해 주는 서비스업입니다.
오늘 8단계까지 해 봤다면, 이 중 가장 문턱이 낮은 것은 ④번(커스터마이즈 서비스)입니다 — 8단계처럼 환경 하나를 골라 PPO로 학습시키는 절차 자체가 이 서비스의 핵심 기술이기 때문입니다. 나머지 세 갈래(데이터 사업·특화 모델·데이터셋 제작)를 실제로 어떻게 수익화하는지 구체적인 방법은 영상에 없습니다 — 영상은 "기회가 있다"는 방향만 제시하고, 가격을 매기는 법이나 첫 고객을 찾는 법 같은 실행 단계는 다루지 않습니다.
10만 번 학습에 걸린 시간, 5,000 에피소드에 1분 8초 같은 숫자는 해설자의 화면과 그날의 코랩 서버 상태에서 나온 값입니다(정리.html 부록 B). 내 컴퓨터·내 코랩 세션에서는 다르게 나올 수 있습니다.
영상에서도 50번 탐험 후에는 전혀 목표를 못 맞췄습니다. PPO를 적용하고 나서야 조금씩 나아졌고, 그마저도 몇 분 만에 완성되지 않았습니다(정리.html 10장). 처음 몇 백~몇 천 번에서 결과가 나쁘다고 코드를 의심하기 전에, 먼저 학습 횟수(timesteps)를 늘려 보는 것이 순서입니다.