이 레슨과 관련된 학습 키워드
인공지능(AI) — 기계가 생각하는 법 → 머신러닝 — 데이터에서 지식을 추출하다 → 비지도학습 & 평가 — 정답 없이 구조 찾기 → 평가 & 튜닝
계층화, 그룹화, 반복 k-겹 전략을 포함한 다양한 교차 검증 기법을 마스터합니다.
머신러닝 모델을 만들었으면 이 모델이 얼마나 잘 하는지 측정해야 해요.
가장 단순한 방법은 데이터를 학습용과 테스트용으로 한 번 나누는 거예요.
그림 위쪽을 보세요. 1000개 데이터를 70대 30으로 나눠서 3번 실험한 결과가 있어요.
시드 42로 나누면 정확도 0.78, 시드 7로 나누면 0.85, 시드 99로 나누면 0.91이 나와요.
같은 모델인데 점수가 0.78에서 0.91까지 출렁이는 거예요.
이게 바로 홀드아웃 방법의 치명적 한계예요. 어떤 데이터가 테스트셋에 들어갔느냐에 따라 점수가 완전히 달라져요.
주황색 박스를 보세요. 핵심 문제가 적혀 있어요. 같은 모델인데 어떤 점수가 진짜 성능인지 알 수 없다는 거죠.
통계적으로 말하면 성능 추정의 배리언스, 즉 분산이 너무 크다는 뜻이에요.
이 문제를 해결하려면 한 번이 아니라 여러 번 나눠서 평가해야 해요.
그림 아래쪽의 초록색 영역을 보세요. 케이폴드 크로스 밸리데이션의 기본 아이디어가 나와 있어요.
데이터를 K개의 조각으로 나누고, 매번 다른 조각을 검증용으로 사용하는 거예요.
폴드 1에서는 첫 번째 조각이 검증용이고 나머지가 학습용이에요.
폴드 2에서는 두 번째 조각이 검증용이 되고, 이런 식으로 K번 반복해요.
모든 데이터가 정확히 한 번씩 검증에 사용되니까 데이터 낭비가 없어요.
K개의 점수를 평균 내면 오른쪽 아래처럼 평균 0.85 플러스마이너스 0.04 같은 안정적인 결과를 얻어요.
단 한 번의 분할이 아니라 K번의 평균이니까 분산이 확 줄어드는 거죠.
이것이 바로 크로스 밸리데이션이 필요한 핵심 이유예요.
실무에서는 모델의 진짜 성능을 알고 싶을 때 반드시 크로스 밸리데이션을 사용해요.
캐글 대회에서도 리더보드 점수와 로컬 시브이 점수의 상관관계를 항상 확인하죠.
정리하면, 홀드아웃은 빠르지만 불안정하고, 크로스 밸리데이션은 느리지만 신뢰할 수 있어요.
선생님: 크로스 밸리데이션을 왜 하는지 한 문장으로 말할 수 있나요?
학생: 트레인 테스트 스플릿은 한 번만 나누니까 결과가 불안정해서, 여러 번 나눠서 평균을 내려고요.
선생님: 정확해요. 한 번 나누면 어떤 데이터가 테스트에 들어갔느냐에 따라 점수가 크게 달라져요.
학생: 그러면 크로스 밸리데이션의 단점은 뭐예요?
선생님: K번 학습해야 하니까 시간이 K배 걸려요. 데이터가 크면 부담이 되죠.
학생: 그래서 케이를 보통 5나 10으로 하는 거군요.
선생님: 맞아요. K가 너무 크면 계산 비용이 높고, 너무 작으면 분산 감소 효과가 약해져요. 균형이 중요하죠.