DVC로 배우는 데이터 버저닝 입문
Ravi Bhadauria
Machine Learning Engineer
재현 가능: 다른 환경·시간에도 동일한 출력 재생성
모듈형: 독립적이고 테스트 가능한 모듈로 구성
일관성: 모든 매개변수의 단일 출처 유지

파일은 지원 형식이어야 함
params.yaml우리는 YAML 사용
.yaml, .yml매개변수는 딕셔너리로 지정
:로 구분주석은 #로 시작
데이터 타입:
데이터 구조:
들여쓰기가 중요
# Key-value pairs
a: 1
b: 1.2
c: "String value"
# Arrays
a: [1, 2.2, 3, 4.8]
b:
- 5
- "String value"
# Nested dictionaries
a:
b: "Some value"
c: "Some other value"
# 데이터 전처리 매개변수 preprocess: ... target_column: RainTomorrow categorical_features: - Location - WindGustDir - ...# 모델 학습/평가 매개변수 train_and_evaluate: rfc_params: n_estimators: 2 ...
# model.py 내
def evaluate_model(model, X_test, y_test):
"""테스트 세트로 모델을 평가하고 지표를 반환합니다."""
y_pred = model.predict(X_test)
precision = precision_score(y_test, y_pred)
...
return { "accuracy": accuracy, "precision": precision,
"recall": recall, "f1_score": f1 }
# 엔트리포인트 코드 (train_and_evaluate.py)
from model import evaluate_model
metrics = evaluate_model(model, X_test, y_test)

DVC로 배우는 데이터 버저닝 입문