기록 메모. 이 글은 논문을 읽는 일과 정책을 학습시키는 일이 별개로 끝나는 문제를 줄이기 위해 남겼다. 읽은 내용을 바로 결론으로 삼기보다, 어떤 환경·데이터·평가로 이어질 수 있는지 중간 단계를 확인하려 했다.
논문에서 본 좋은 아이디어는 어떻게 실제 로봇의 움직임으로 이어질까? 처음에는 논문을 읽고 비슷한 방식을 구현하면 될 것처럼 보였다. 하지만 한 문장을 코드로 옮기는 사이에는 환경, 관측, 학습 조건, 평가 기준처럼 여러 선택이 들어간다. 이 글은 그 사이를 건너뛰지 않기 위해 내가 사용하는 작업 흐름을 기록한다.
논문은 답을 주기보다 질문을 정리해 준다
논문을 읽을 때 가장 먼저 확인하는 것은 “이 방법을 그대로 쓸 수 있는가”가 아니다. 어떤 조건에서 이 결과가 나왔는지, 내 문제와 다른 점은 무엇인지, 지금 당장 확인할 수 있는 질문은 무엇인지를 찾는다. 제목과 결론만 가져와 구현하는 방법은 빠르지만, 로봇의 형태나 환경이 다르면 같은 결과를 기대하기 어렵다. 그래서 읽은 내용은 요약으로 닫지 않고, 다음 실험의 가설로 바꿔 둔다.
가설은 먼저 컴퓨터 안에서 작게 묻는다
시뮬레이션은 실제 로봇을 대신하는 완벽한 복사본이 아니라, 조건을 반복해 보며 질문을 좁히는 공간이다. 나는 큰 학습을 바로 시작하는 대신, 로봇이 어떤 정보를 보고 어떤 행동을 낼 수 있는지와 실패를 어디서 멈출지부터 정한다. 이렇게 하면 결과가 기대와 다를 때 원인을 정책 하나에만 돌리지 않고, 환경과 관측의 선택까지 함께 살펴볼 수 있다. 작은 질문을 먼저 통과시키는 이유는 실패를 없애기 위해서가 아니라, 실패의 위치를 알기 위해서다.
학습 입력에는 출처가 필요하다
로봇 정책은 주어진 상태에서 다음 행동을 고르는 규칙을 학습하는 모델이다. 이 규칙이 무엇을 배웠는지 이해하려면, 어떤 조건에서 만들어진 데이터를 썼는지와 어떤 설정으로 학습했는지가 함께 남아야 한다. 파일을 많이 모으는 방식은 나중에 결과의 출처를 흐릴 수 있어, 산출물 자체보다 생성 조건과 관련된 변경을 연결해 기록하기로 했다. 이 기록이 있어야 예상 밖의 행동을 봤을 때 데이터, 환경, 학습 중 어디부터 다시 질문할지 정할 수 있다.
평가에서는 숫자 하나보다 실패의 모양을 본다
학습이 끝났다고 해서 곧바로 좋은 정책이 나온 것은 아니다. 예를 들어 넘어지지 않는 시간은 한 가지 단서일 뿐, 움직임이 원하는 방향을 따르는지나 자세가 자연스러운지는 별도의 질문이다. 그래서 통과 여부만 적는 대신, 어떤 조건에서 기대와 달랐는지와 다음에 바꿀 후보를 함께 남긴다. 이 단계에서 발견한 문제는 다시 환경의 정의, 학습 조건, 또는 처음 읽은 논문으로 돌아간다.
기록은 마지막 정리가 아니라 다음 실험의 입력이다
실험이 끝난 뒤 기록을 미루면, 결과는 남아도 그 결과를 해석했던 이유는 사라지기 쉽다. 나는 가설, 바꾼 선택, 관찰, 다음 판단을 함께 남겨 다음 작업이 새로운 시작이 되지 않게 하려 한다. 같은 문제가 반복됐는지 이전 기록과 비교하는 이유도 여기에 있다. 기록은 보고서를 예쁘게 만들기 위한 일이 아니라, 다음 질문을 더 정확하게 만들기 위한 도구다.
논문에서 정책까지는 직선이 아니라 왕복이다
이 흐름은 논문에서 시작해 정책으로 끝나는 선형 절차가 아니다. 읽기에서 생긴 질문이 환경과 학습으로 가고, 평가에서 생긴 의심이 다시 읽기와 설계로 돌아오는 왕복에 가깝다. 오늘의 결론은 간단하다. 좋은 구현은 논문의 결론을 복사하는 일이 아니라, 그 결론을 내 조건에서 다시 물을 수 있게 만드는 일이다.
다음에는 이 흐름이 바뀔 때마다 왜 이론 지도를 함께 고치는지, 기록과 구현의 연결을 더 구체적으로 적어 보려 한다.