위키득계정 ↗
기술

교차 검증

교차 검증기술
영문명
Cross-validation
약칭
CV
대표 방식
k겹 교차 검증
핵심 구분
학습에 쓰지 않은 자료에서 평가
교차 검증은 데이터를 여러 방식으로 나누어 학습에 사용하지 않은 부분에서 모델 성능을 반복 평가하는 방법이다. 대표적인 k겹 교차 검증은 한 묶음을 검증에, 나머지를 학습에 쓰며 검증 묶음을 바꿔 간다. 모델 설정을 비교할 때 활용한다.

세 묶음으로 나누는 예제

관측값 9개를 세 개씩 A, B, C로 나누자. B와 C로 학습해 A를 평가하고, A와 C로 학습해 B를 평가하며, A와 B로 학습해 C를 평가한다. 각 관측값은 검증에 한 번, 학습에 두 번 포함된다. 세 번 모두 학습한 같은 모델을 그대로 쓰는 것이 아니라 각 분할에서 다시 학습한다.

한 번의 점수와 평균 비교

작을수록 좋은 오차 지표에서 설정 X의 세 점수가 0.10, 0.20, 0.15라면 평균은 0.15다. 설정 Y가 0.05, 0.40, 0.15라면 평균은 0.20이다. 첫 묶음만 보면 Y가 좋아 보이지만 세 묶음 평균은 X가 더 작다.

전처리도 학습 범위 안에서

표준화의 평균과 표준편차, 특성 선택처럼 데이터로 정하는 처리도 각 학습 묶음 안에서 구한다. 전체 자료로 전처리 설정을 먼저 학습하면 검증 묶음의 정보가 미리 들어갈 수 있다. 모델 계수만 분리해서 학습했다고 충분한 것은 아니다.

최종 평가와 분할 조건

교차 검증 결과를 반복해서 보며 설정을 고르면 그 점수 역시 선택 과정의 영향을 받는다. 최종 평가 자료를 별도로 두는 이유다. 시간 순서가 있는 자료나 같은 사람의 반복 관측은 임의로 섞는 분할이 목적에 맞는지 먼저 확인해야 한다.

관련 문서

릿지 회귀 / 라소 회귀 / 엘라스틱 넷 / 과적합 / 선형 회귀 / 기계 학습 / 평균