DVC 실험 관리
DVC 실험 관리 (Experiment Management)
실험을 코드에 계측(instrument)해서 빠르게 추적하기 시작할 수 있는 게 DVC의 실험 관리예요. 각 실험과 연관된 코드·데이터·메트릭·파라미터·플롯의 변경을 관리하면서, Git 저장소를 비대하게 만들지 않아요. 파이프라인을 실험 관리 시스템으로 활용해 작업을 스테이지로 나누고 의존성·출력을 추적하며 파라미터·하이퍼파라미터를 네이티브로 주입할 수도 있어요.
실험 추적 (Experiment Tracking)
코드를 계측해 실험 추적을 시작하는 방식이에요. 실험마다 코드·데이터·메트릭·파라미터·플롯의 변경을 관리하되, Git 저장소를 크게 만들지 않아요.
핵심은 DVC의 파라미터·메트릭·플롯 기능이에요.
- 파라미터(parameters):
params.yaml파일에 하이퍼파라미터를 정의하고 스테이지에서 참조해요. 실험이 실행될 때마다 지정된 파라미터 값을 추적해요. - 메트릭(metrics): 학습 스크립트가 메트릭 파일(예:
metrics.json)을 출력하도록 해 두면dvc exp show로 실험 결과를 한눈에 비교할 수 있어요. - 플롯(plots): 시각화 데이터를 출력해 실험 간 성능 곡선을 그려 비교해요.
파이프라인을 통한 실험 (Experimenting Using Pipelines)
DVC 데이터 파이프라인을 실험 관리 시스템으로 쓰는 방식이에요. 워크플로를 스테이지로 나누고, 의존성과 출력을 추적하며, 파라미터·하이퍼파라미터를 실험 실행에 주입해요.
실험을 Git으로 정리
각 실험은 Git 커밋과 연결되어 있어요. 실험과 관련된 코드·데이터·메트릭 변경을 커밋으로 묶어 저장하고, 원하는 실험으로 언제든 되돌아갈 수 있어요. DVC 저장소에 실험을 저장하고 서로 비교하며 관리할 수 있죠.
더 알아보기
- DVC 시작하기 — 전체 워크플로
- Data Pipelines — 파이프라인 구축
- Experiment Tracking — 실험 추적 상세