홀드 아웃 교차 검증(Holdout Cross Validation)
✔ 전체 데이터를 비복원추출 방법으로 이용하여 랜덤하게 훈련 데이터(Training Set), 평가 데이터(Test Set)로 나눠 검증하는 기법이다.
✔ 훈련 데이터로 분석 모형을 구축하고, 평가 데이터를 이용하여 분석 모형을 평가하는 기법이다.
✔ 계산량이 많지 않아 모형을 쉽게 평가 할 수 있으나 전체 데이터에서 평가 데이터만큼은 학습에 사용할 수 없으므로 데이터 손실이 발생한다.
✔ 데이터를 어떻게 나누느냐에 따라 결과가 많이 달라질 수 있다.
훈련 데이터 (Training Set) | - 추정용 데이터라고도 불리며 데이터마이닝 모델을 만드는데 활용한다. - 분류기를 만들 때 사용하는 데이터 |
검증 데이터 (Validation Set) | - 훈련 데이터로 만든 모델이 잘 예측하는지 성능을 평가하기 위한 데이터 세트 - 구축된 모형의 과대추정 또는 과소추정을 미세 조정하는데 활용한다. |
평가 데이터 (Test Set) | - 검증 데이터로 최종 모델을 선택하고 그 성능을 테스트 하기 위해 사용되는 데이터 세트 - 시험용 데이터라고도 하며, 테스트 데이터나 과거 데이터를 활용하여 모델의 성능을 검증하는데 활용한다. |
K-Fold Cross Validation
✔ 데이터 집합을 무작위로 동일 크기를 갖는 K개의 부분 집합으로 나누고, 그중 1개의 집합을 평가 데이터(Test Set)로 사용
✔ 나머지 (K-1)개 집합을 훈련 데이터(Training Set)로 선정하여 분석 모형을 평가하는 기법
✔ 모든 데이터를 훈련과 평가에 사용할 수 있으나, K값이 증가하면 수행 시간과 계산량도 많아진다.
✔ K번 반복을 수행
✔ 결과를 K에 다수결 또는 평균으로 분석한다.
Leave-One-Out-Cross Validation(LOOCV)
✔ 전체 데이터 N개에서 1개의 샘플만을 평가 데이터에 사용하고 나머지 (N-1)개는 훈련 데이터로 사용하는 과정을 N번 반복하는 교차 검증 기법이다.
✔ K-Fold와 같은 방법을 사용하며, 이때 K는 전체 데이터 N과 같다(K=N)
✔ 가능한 많은 데이터를 훈련에 사용할 수 있지만, 수행 시간과 계산량이 많다
✔ 작은 크기의 데이터에 사용하기 좋다
LpOCV(Leave-p-Out Cross Validation)
✔ LOOCV에서 1개의 샘플이 아닌 p개의 샘플을 테스트에 사용하는 교차 기법이다.
✔ 계산 시간에 대한 부담이 매우 크다.
부트스트랩(Bootstrap)
✔ 주어진 자료에서 단순 랜덤 복원추출 방법을 활용하여 동일한 크기의 표본을 여러개 생성하는 샘플링 방법이다.
✔ 무작위 복원추출 방법으로, 전체 데이터에서 중복을 허용하여 데이터 크기만큼 샘플을 추출하고 이를 훈련 데이터로 한다.
✔ 전체 데이터 샘플이 N개이고 부트스트랩으로 N개의 샘플을 추출하는 경우 특징 샘플이 훈련 데이터에 포함될 확률은 약 63.2%이다