교차 검증(Cross Validation)
: 데이터를 여러 부분으로 나누고, 각 부분을 훈련과 테스트 용도로 번갈아 사용하여 모델을 평가하는 방법
: 훈련 데이터가 많지 않을 때 사용한다.
- 모든 데이터셋을 평가에 활용하기 때문에 데이터셋이 부족할 때 적용하는 방법이다.
: 일반화된 모델 성능 평가 가능
- K개의 성능 결과를 통합하여 하나의 결과를 도출하기 때문에 보다 일반화된 모델 성능 평가가 가능하다.
K-Fold 교차 검증
: 데이터셋을 K개의 부분(폴드)로 나누는 방법
- K번의 다른 실험을 수행하며, 서로 다른 폴드를 테스트 데이터로 사용하고 나머지 (K-1)개의 폴드를 학습 데이터로 사용한다. K번의 실험을 통해 얻은 성능 지표들의 평균을 내어 최종 성능을 산출한다.
: K값이 크면 연산 비용이 증가한다.(단점)
(K-Fold 교차 검증 종류)
일반적인 경우
👉 순서대로 나열된 레이블에 적용한 교차검증이 있음
데이터가 불균형한 경우
👉 클래스의 분포 비율에 맞게 폴드를 만드는 교차검증이 있음
(K-Fold 교차 검증 방법)

1. 데이터를 K등분한다.(그림 : K=5)
2. 1/5를 검증 데이터로, 나머지 4/5를 학습 데이터로 나눈다.
3. 1/5를 검증 데이터로 바꾸면서 성능을 평가한다.
4. 총 5개의 성능 결과의 평균 = 학습 모델의 성능
(K 값을 선택할 때, 고려할 점)
모델의 복잡도 \ 학습 시간 \ 연산 시간 \ 데이터 크기
위의 4개를 종합적으로 고려하여 K값을 선택해야한다.
K값이 너무 작은 경우
: 훈련 데이터가 많아지지만 평가 데이터가 적어 신뢰도가 낮아질 수 있다.
: 분산이 커져 모델 평가가 불안정해질 가능성 존재
K값이 너무 큰 경우
: 훈련 데이터와 평가 데이터 크기의 차이가 작아 일반화 성능 평가가 정확해진다.
: 그러나 연산 비용이 증가하고 훈련 시간이 길어지게 된다.
→ 데이터가 적거나 모델이 복잡하면 K 값을 작게, 데이터가 많고 단순한 모델이면 K 값을 크게 설정하는 것이 일반적
(출처)
팀원분들의 정리
'📙 Fundamentals > ML&DL' 카테고리의 다른 글
| 결정트리 : Information Gain, Entropy, Gini 계수, Misclassification Error (0) | 2025.04.06 |
|---|---|
| 결정 트리 Decision Tree (0) | 2025.04.06 |
| 머신러닝 모델 학습에서의 편향과 분산 (0) | 2025.03.30 |
| 손실 함수(loss function) (0) | 2025.03.30 |
| 지도 학습, 비지도 학습, 강화 학습 (0) | 2025.03.30 |