AI 모델 개발: 검증 기법
ㅁ 검증 기법
ㅇ 정의:
머신러닝 모델의 성능을 평가하기 위해 데이터셋을 분할하고 반복적으로 학습·검증을 수행하는 절차.
ㅇ 특징:
모델의 일반화 성능을 높이고 과적합을 방지하는 데 도움을 주며, 데이터 분할 방식에 따라 편향과 분산 정도가 달라짐.
ㅇ 적합한 경우:
데이터가 제한적이거나 모델 성능 비교가 필요한 경우, 하이퍼파라미터 튜닝 시.
ㅇ 시험 함정:
‘검증 기법’과 ‘평가 지표’를 혼동하는 문제, 데이터 누수(Data Leakage) 방지 절차를 간과하는 문제.
ㅇ 시험 대비 “패턴 보기” 예시:
(O) K-Fold 교차검증은 데이터를 K개의 폴드로 나누어 K번 반복 학습·검증한다.
(X) K-Fold 교차검증은 항상 클래스 비율을 동일하게 유지한다.
================================
1. K-Fold CV
ㅇ 정의:
전체 데이터를 K개의 동일 크기 폴드로 나누고, 각 폴드를 검증셋으로 한 번씩 사용하면서 K번 반복 학습·검증하는 방법.
ㅇ 특징:
데이터셋 활용 효율이 높고, 결과의 안정성이 높음. K 값이 크면 분산은 줄지만 계산량 증가.
ㅇ 적합한 경우:
데이터가 충분하지 않고, 모델 평가의 신뢰도를 높이고자 할 때.
ㅇ 시험 함정:
K 값이 1이면 K-Fold의 의미가 없으며, K=전체 데이터 크기일 때는 LOOCV가 됨.
ㅇ 시험 대비 “패턴 보기” 예시:
(O) K-Fold CV에서 각 데이터 포인트는 정확히 한 번 검증셋에 포함된다.
(X) K-Fold CV는 항상 각 폴드의 클래스 비율을 동일하게 유지한다.
================================
2. Stratified Sampling
ㅇ 정의:
전체 데이터의 클래스 비율을 유지하면서 층화하여 샘플링하는 방법.
ㅇ 특징:
불균형 데이터셋에서 각 폴드별 클래스 비율을 동일하게 유지해 모델 학습 편향 방지.
ㅇ 적합한 경우:
분류 문제에서 클래스 불균형이 심한 경우, 교차검증 시 클래스 비율 유지 필요할 때.
ㅇ 시험 함정:
Stratified Sampling은 회귀 문제에서 바로 적용되지 않음(연속값은 구간화 필요).
ㅇ 시험 대비 “패턴 보기” 예시:
(O) Stratified K-Fold는 각 폴드에서 클래스 비율을 원본 데이터와 동일하게 유지한다.
(X) Stratified Sampling은 모든 데이터 분할 방식에서 기본적으로 적용된다.
================================
3. Bootstrapping
ㅇ 정의:
주어진 데이터셋에서 복원추출 방식으로 샘플링하여 여러 학습셋을 생성하고 모델을 학습·평가하는 방법.
ㅇ 특징:
표본 분포 추정과 신뢰구간 계산에 유용하며, 데이터 중복 허용. Bagging, 랜덤포레스트 등의 기초 기법.
ㅇ 적합한 경우:
표본이 적거나 통계적 추정을 위해 데이터 재샘플링이 필요할 때.
ㅇ 시험 함정:
Bootstrapping은 항상 데이터 크기를 증가시키지 않으며, 원래 데이터와 중복 데이터가 포함됨.
ㅇ 시험 대비 “패턴 보기” 예시:
(O) Bootstrapping은 동일 데이터 포인트가 여러 번 선택될 수 있다.
(X) Bootstrapping은 중복 없이 데이터를 선택한다.
================================
4. LOOCV
ㅇ 정의:
Leave-One-Out Cross-Validation으로, 데이터셋에서 단 하나의 샘플을 검증셋으로 두고 나머지를 학습셋으로 사용하는 교차검증 방법.
ㅇ 특징:
데이터 활용 극대화, 편향이 작지만 분산과 계산량이 매우 큼.
ㅇ 적합한 경우:
데이터셋 크기가 매우 작아 최대한 학습 데이터 확보가 필요할 때.
ㅇ 시험 함정:
LOOCV는 K-Fold CV의 특수한 경우(K=데이터 개수), 계산 비용이 매우 크다는 점을 간과하기 쉬움.
ㅇ 시험 대비 “패턴 보기” 예시:
(O) LOOCV는 데이터셋 크기만큼 모델을 학습시킨다.
(X) LOOCV는 K-Fold CV와 전혀 관련이 없다.
================================
제가 원하시면, 위 내용을 기반으로 **한 장짜리 시험 대비 요약표** 형태로도 만들어 드릴 수 있습니다.
원하시나요?