K-fold 교차 검증은 모델의 일반화 성능을 신뢰성 있게 측정하는 중요한 표준 도구
머신러닝에서 데이터셋을 K개의 하위 집합(폴드)으로 나누어 반복적으로 학습과 평가를 수행하는 대표적인 검증 기법이다. 전체 데이터를 K개로 나눈 뒤, 각 폴드가 한 번씩 검증 세트로 사용되고 나머지 폴드는 학습 세트로 사용되어 총 K번의 학습-검증이 이루어짐
from sklearn.model_selection import KFold
kf = KFold(n_splits=5, shuffle=True, random_state=42)
for train_idx, test_idx in kf.split(X):
X_train, X_test = X[train_idx], X[test_idx]
y_train, y_test = y[train_idx], y[test_idx]
# 모델 학습 및 평가