이 레슨과 관련된 학습 키워드
연구의 기초 — 학문의 뿌리와 방법론 → 대학원생이 알았으면 좋았을 것들 → 진학 결심부터 졸업까지 → 연구의 첫걸음
대학원 연구의 불편한 진실을 하나 말씀드릴게요.
3개월 뒤의 나는 지금 작성한 코드를 이해하지 못합니다.
기억력을 절대 믿지 마세요. 문서와 버전 관리만이 믿을 수 있어요.
그림 왼쪽을 보세요. 관리하지 않은 연구 코드의 모습이에요.
train_v2_final_REAL_v3 같은 파일명이 쌓이고, 어느 게 최신인지 모르게 돼요.
주석도 없고, 어떤 하이퍼파라미터로 좋은 결과를 냈는지 기억이 안 나요.
requirements.txt가 없어서 환경 복원도 안 돼요.
결국 코드를 처음부터 다시 이해하는 데 1주에서 2주가 걸려요.
최악의 경우, 논문 리비전 때 실험 재현이 안 되면 리젝트 당할 수 있어요.
이제 오른쪽을 보세요. 체계적으로 관리한 코드예요.
git log로 모든 변경 히스토리를 추적할 수 있어요.
파일은 하나만 유지하고 git branch로 버전을 나눠요.
README와 docstring이 있어서 코드의 의도가 명확해요.
W&B 로그에 commit hash가 연결되어 있어서 정확한 코드를 찾을 수 있어요.
5분 안에 이전 상태로 복귀할 수 있고, 리뷰어 요청에도 즉시 대응해요.
하단 가운데 박스를 보세요. 핵심은 기억 대신 시스템을 만드는 거예요.
재현성은 대학원 연구의 생명줄이에요.
혼자 연구하더라도 코드 관리는 필수예요.
졸업 후에 후배가 연구를 이어가야 할 수도 있어요.
이 레슨에서 Git부터 연구 노트, 실험 추적 도구까지 체계적으로 배울 거예요.
3개월 뒤의 나를 위해 오늘부터 시작합시다.
선생님: 여러분의 코드에 train_v2_final_real.py 같은 파일이 있나요?
학생: 네, 솔직히 어떤 파일이 최신인지 가끔 헷갈려요.
선생님: 그게 정상이에요. 인간의 기억은 한 달만 지나도 신뢰할 수 없거든요.
학생: Git을 쓰면 파일 이름에 버전을 안 넣어도 되나요?
선생님: 네, Git이 모든 버전을 관리해주니까 파일은 항상 하나만 유지하면 돼요.
학생: 논문 제출할 때 코드 재현이 안 되면 정말 리젝트되나요?
선생님: 요즘은 코드 공개가 필수인 학회가 많아서 재현 불가능하면 큰 문제가 될 수 있어요.