✅ 3.5 과적합 방지 기법
🔍 1. 과적합(Overfitting)이란?
모델이 훈련 데이터에 너무 과하게 맞춰져서,
새로운 데이터(테스트셋)에는 성능이 떨어지는 현상
- 훈련셋의 **노이즈(에러, 이상값)**까지 모델이 학습해버림
- 테스트 성능 저하 → 일반화 실패
- 주로 데이터 부족, 모델 복잡도 과도, 불균형 데이터 등에서 발생
✅ 예시
- 훈련 정확도 95%, 테스트 정확도 70% → 과적합 의심
🎯 2. 과적합 원인 요약

🛡️ 3. 과적합 방지 기법 (스크립트 기반 정리)
📌 (1) 정규화 (Regularization)
- 손실 함수에 규제항 추가 → 복잡한 모델에 패널티 부여
✅ 종류

📌 (2) 드롭아웃 (Dropout)
- 학습 시 은닉층 뉴런 일부를 무작위로 꺼버림
- 각 에폭마다 다른 구조의 모델이 학습됨 → 과적합 방지
✅ 특징:
- 테스트 시에는 모든 뉴런 사용 (드롭 비율 곱해서 스케일 조정)
- DNN에서 자주 사용되는 기법
📌 (3) 배치 정규화 (Batch Normalization)
- 각 층의 입력값 분포(평균, 분산)를 정규화
- 초기 가중치 의존성 ↓, 학습 안정화, 속도 ↑
✅ 특징:
- 과적합을 직접 막는 건 아니지만 학습 안정성 향상
- 다른 기법들과 조합 시 매우 효과적
📌 (4) 조기 종료 (Early Stopping)
- 검증 데이터 성능이 더 이상 좋아지지 않으면 학습 중단
- 오버피팅되기 전에 적절한 시점에서 학습 종료
✅ 필요 조건:
- 훈련셋 + 검증셋 구분 필요
- 매 에폭마다 평가 필요
📌 (5) 데이터 증강 (Data Augmentation)
- 데이터 부족 문제 해결 → 과적합 방지
- 기존 데이터를 회전, 뒤집기, 잡음 추가, 삭제 등으로 늘림
✅ 적용 대상:
- 이미지 → 회전, 반전, 노이즈 추가
- 텍스트 → 단어 추가/삭제/교체
- 신호/음성 → 주파수 왜곡, 잡음 추가
📌 (6) 단순한 모델 사용
- 불필요하게 복잡한 구조보다 단순한 모델이 일반화 성능에 유리
✅ 예:
- 은닉층, 노드 수 줄이기
- 파라미터 수 제한
📌 (7) 교차 검증 (Cross Validation)
- 데이터를 K개 폴드로 나누고, K번 학습+검증 반복
- 일반화된 성능 평가 가능
✅ 종류:

📌 (8) 앙상블 기법 (Ensemble)
복수 모델을 조합해 예측 → 편향과 분산 동시에 낮춤
✅ 대표적으로 배깅이 과적합 방지에 효과적
✔️ 배깅 (Bagging)
- Bootstrap 샘플로 여러 모델 훈련 → 평균 or 다수결
- 분산 줄이고 안정성 ↑
→ 대표 모델: 랜덤 포레스트
✔️ 부스팅 (Boosting)
- 약한 모델들을 순차적으로 학습시켜 성능 강화
→ 편향 감소에 효과, 하지만 과적합 위험 존재
✔️ 스태킹 (Stacking)
- 여러 모델 예측 결과 → 또 다른 모델로 학습
→ 복잡하지만 정확도 높음
📌 (9) 하이퍼파라미터 튜닝
- 학습률, 드롭아웃 비율, 정규화 계수 등 튜닝하여 과적합 억제
📊 4. 과적합 vs 과소적합 비교표

🧠 5. 기출 대비 핵심 키워드

'빅데이터분석기사 필기 > 3과목 : 빅데이터 모델링' 카테고리의 다른 글
3.4 교차 검증 (0) | 2025.07.08 |
---|---|
3.3 시계열 데이터 분석 (1) | 2025.07.08 |
3.2 로지스틱 회귀 분석 (0) | 2025.07.08 |
3.1 연관 규칙 (3) | 2025.07.08 |