과대적합 방지와 하이퍼파라미터 최적화
규제·가지치기·조기종료와 올바른 하이퍼파라미터 탐색을 익힌다.
핵심 요약
과대적합은 훈련 데이터의 우연한 변동과 잡음까지 학습해 새 데이터 성능이 낮아지는 현상이다. 훈련 성능은 높지만 검증 성능이 낮고 분할·기간에 따라 결과가 크게 흔들리면 과대적합을 의심한다. 반대로 훈련과 검증 성능이 모두 낮으면 높은 편향, 부족한 특징이나 최적화 실패를 점검한다.
과대적합 방지는 복잡도를 무조건 줄이는 작업이 아니다. 규제·가지치기·조기 종료·드롭아웃·배깅·데이터 증강 등 모형에 맞는 방법으로 편향과 분산을 조절한다. 하이퍼파라미터 탐색은 전처리·특징 선택·재표본화·임곗값 선택과 함께 훈련 영역의 검증 절차 안에서 수행하고, 잠근 테스트 데이터는 선택이 끝난 뒤 한 번만 사용한다.
학습 목표
- 과대적합·과소적합을 훈련·검증 패턴과 원인 후보로 구분한다.
- 모형 모수와 하이퍼파라미터의 역할을 구분한다.
- L1·L2·Elastic Net의 목적함수와 규제 강도 방향을 설명한다.
- 나무·부스팅·신경망·최근접 이웃의 복잡도 조절 방향을 판정한다.
- 학습곡선과 검증곡선의 축과 진단 질문을 구분한다.
- 격자·무작위·베이지안·연속 절반 줄이기 탐색을 비교한다.
- 후보 수·폴드 수로 총 적합 횟수와 탐색 성공확률을 계산한다.
- 조기 종료와 하이퍼파라미터 선택을 안쪽 검증에 배치한다.
1. 과대적합·과소적합과 일반화
제곱오차 회귀에서 충분한 조건 아래 기대 예측오차는 개념적으로 다음처럼 나눌 수 있다.
기대 제곱 예측오차
= 편향² + 분산 + 줄일 수 없는 잡음
편향은 여러 훈련표본에서 얻은 평균 예측이 참 관계와 체계적으로 다른 정도다. 분산은 훈련표본이 바뀔 때 예측이 얼마나 달라지는지 나타낸다. 이 분해를 모든 손실함수에 같은 수식으로 적용하지 않으며, 실무에서는 훈련·검증 성능과 반복 분할 변동을 통해 간접 진단한다.
| 관찰 패턴 | 우선 의심 | 추가 확인 | 대표 대응 |
|---|---|---|---|
| 훈련 우수·검증 저조, 간격 큼 | 높은 분산·과대적합 | 누수, 분할, 시간 변화 | 규제·단순화·데이터·배깅 |
| 훈련·검증 모두 저조 | 높은 편향·과소적합 | 특징 부족, 최적화 실패, 지표 | 특징·모형 구조·학습 개선 |
| 훈련·검증 모두 우수 | 적절한 복잡도 가능 | 독립 테스트·집단별 안정성 | 유지·외부 검증 |
| 검증만 비정상적으로 우수 | 누수·중복 의심 | 전처리, 사용자·시간 중복 | 분할과 파이프라인 재설계 |
훈련·검증 간격만으로 원인을 확정하지 않는다. 라벨 오류, 클래스 비율 변화, 평가 지표 불일치, 중복 관측과 개념 변화도 같은 패턴을 만들 수 있다.
2. 모수와 하이퍼파라미터
| 구분 | 결정 방식 | 예시 | 평가 데이터 사용 |
|---|---|---|---|
| 모수(parameter) | 학습 알고리즘이 훈련 데이터에서 추정 | 회귀계수, 나무 분할, 신경망 가중치 | 검증·테스트로 직접 적합 금지 |
| 하이퍼파라미터 | 학습 전에 후보·범위를 정해 검증으로 선택 | 규제 강도, 최대 깊이, k, 학습률 | 훈련 영역의 검증 절차에서 선택 |
학습률·나무 깊이처럼 알고리즘을 제어하는 값은 하이퍼파라미터다. 학습된 회귀계수는 모수다. 조기 종료로 정한 반복 수, 특징 개수와 분류 임곗값도 데이터로 선택한다면 전체 선택 절차에 포함해야 한다.
3. 규제의 목적함수와 방향
손실에 계수 크기 벌점을 더하는 대표 목적함수는 다음과 같다.
최소화: (1/n)Σ L(y_i, f(x_i))
+ λ[ρ||w||₁ + (1-ρ)||w||²₂/2]
λ ≥ 0: 전체 규제 강도
ρ = 1: L1, ρ = 0: L2, 0<ρ<1: Elastic Net
- L1은 계수 절댓값 합을 벌점으로 사용해 일부 계수를 정확히 0으로 만들 수 있다.
- L2는 계수 제곱합을 벌점으로 사용해 큰 계수를 연속적으로 축소한다.
- Elastic Net은 두 벌점을 결합해 상관된 변수와 희소성 사이를 조절한다.
λ=0이면 이 식에서는 규제가 없고, λ가 커질수록 규제가 강해진다.
규제는 변수 단위에 민감하므로 계수 크기를 직접 벌주는 모형에서는 훈련 폴드에서 스케일링 규칙을 학습하고 검증 폴드에 적용한다. 절편을 벌점에서 제외하는지, 손실을 합계 또는 평균으로 쓰는지에 따라 같은 숫자의 규제 강도 의미가 구현마다 달라질 수 있다.
일부 라이브러리의 로지스틱 회귀와 SVM은 C를 규제 강도의 역수로 사용한다.
C가 작아짐 → 규제가 강해짐
C가 커짐 → 규제가 약해짐
매개변수 이름만 보고 방향을 외우지 말고 공식 문서의 정의를 확인한다. L1은 상관된 변수 중 하나를 임의에 가깝게 선택해 폴드마다 선택 변수가 달라질 수 있고, L2는 일반적으로 계수를 정확히 0으로 만들지 않는다.
4. 분석기법별 복잡도 조절
| 분석기법 | 과대적합 방향 | 복잡도를 줄이는 대표 방향 | 주의점 |
|---|---|---|---|
| 선형·로지스틱 회귀 | 변수·고차항 증가, 약한 규제 | λ 증가 또는 C 감소, 특징 축소 | 스케일·상관 변수·절편 처리 확인 |
| 의사결정나무 | 깊이·리프 증가, 작은 리프 | 깊이 제한, 최소 리프 표본 증가, 가지치기 | 지나친 제한은 높은 편향 |
| 랜덤 포레스트 | 깊은 개별 나무, 적은 나무·낮은 다양성 | 배깅·특징 무작위화, 충분한 나무, 리프 제한 | 나무 수 증가는 주로 비용 증가, 항상 과대적합 증가 아님 |
| 부스팅 | 깊은 약학습기, 과도한 반복 | 작은 깊이·학습률, 서브샘플, 조기 종료 | 학습률과 반복 수를 함께 조정 |
| 신경망 | 큰 용량, 긴 학습, 약한 규제 | 가중치 감쇠, 드롭아웃, 조기 종료, 증강 | 드롭아웃은 추론 단계와 동작이 다름 |
| k-NN | 너무 작은 k, 불필요 변수 | k 증가, 스케일링, 특징 선택 | k가 지나치면 과소적합 |
배깅은 여러 훈련표본의 모형을 평균해 분산을 줄이는 데 주로 사용한다. 데이터 증강은 라벨 의미를 보존하는 변환이어야 하고 훈련 폴드에만 적용한다. 검증·테스트 자료를 증강해 훈련에 포함하거나 원본과 파생본을 서로 다른 폴드에 나누면 누수가 생길 수 있다.
5. 학습곡선과 검증곡선
| 곡선 | 가로축 | 비교하는 값 | 주된 질문 |
|---|---|---|---|
| 데이터 학습곡선 | 훈련 표본 수 | 훈련·검증 성능 | 데이터를 더 모으면 도움이 되는가? |
| 반복 학습곡선 | epoch·나무 수 | 훈련·내부검증 손실 | 언제부터 과대적합이 시작되는가? |
| 검증곡선 | 하나의 하이퍼파라미터 값 | 훈련·검증 성능 | 복잡도 값의 적절한 범위는 어디인가? |
훈련 성능은 높고 검증 성능이 낮은 간격이 표본 증가와 함께 줄어들면 더 많은 데이터가 도움이 될 수 있다. 두 성능이 낮은 수준에서 수렴하면 데이터 추가만으로 해결되기보다 특징·모형 표현력이나 최적화 개선이 필요할 수 있다.
조기 종료는 훈련 손실이 아니라 내부 검증 손실의 개선을 본다. 한 번의 잡음성 상승으로 멈추지 않도록 최소 개선량과 인내 횟수를 사전에 정한다.
바깥 훈련 폴드
├─ 내부 학습 부분: 모수 업데이트
└─ 내부 조기종료 부분: epoch·나무 수 선택
바깥 검증 폴드: 선택이 끝난 절차를 평가만 함
바깥 검증 폴드나 최종 테스트를 매 epoch 확인해 멈추면 평가 데이터가 선택에 사용된다. 조기 종료 후 최종 재학습에서는 선택된 반복 수를 고정해 전체 훈련 영역으로 다시 학습하거나, 같은 내부 분할 규칙을 재현하는 등 절차를 명시한다.
6. 하이퍼파라미터 탐색 방식
| 방식 | 후보 생성 | 장점 | 한계·적합 상황 |
|---|---|---|---|
| 격자 탐색 | 지정한 조합 전수 | 단순·재현 쉬움 | 차원이 늘면 조합 폭증, 작은 공간 |
| 무작위 탐색 | 분포에서 독립 표본 추출 | 예산 고정, 중요한 축을 넓게 탐색 | 분포·seed에 민감, 중간·큰 공간 |
| 베이지안 최적화 | 이전 결과로 유망 후보 선택 | 한 번의 평가가 비쌀 때 효율 가능 | 순차 의존·대리모형 설정, 병렬화 제약 |
| 연속 절반 줄이기 | 적은 자원으로 다수 평가 후 후보 축소 | 불량 후보를 일찍 중단 | 초기 저예산 순위가 최종 순위와 다를 수 있음 |
학습률·규제 강도처럼 자릿수가 중요한 양수는 선형 균등분포보다 로그 균등분포를 검토한다. 정수 깊이, 범주형 알고리즘과 조건부 매개변수는 자료형·유효 조합을 지킨다. 예를 들어 degree는 다항 커널에서만 의미가 있으므로 모든 커널 후보와 무조건 곱해 탐색하지 않는다.
베이지안 탐색도 같은 검증 점수에 반복 적응하므로 선택 편향이 사라지지 않는다. 탐색 방식과 무관하게 중첩 검증이나 잠근 테스트가 필요하다.
7. 탐색 예산 계산
격자 후보 수는 각 축의 후보 수를 곱한다.
후보 수 = ∏(각 하이퍼파라미터의 후보 수)
교차검증 적합 수 = 후보 수 × 안쪽 폴드 수
규제 강도 4개, 깊이 3개, 학습률 5개를 전수 탐색하면 4×3×5=60개 후보다. 5겹 교차검증에서는 후보 평가에 60×5=300번 적합한다. 바깥 5겹 중첩 교차검증까지 적용하면 안쪽 후보 평가만 약 5×300=1,500번이고, 각 바깥 폴드의 선택 설정 재적합 5번이 추가된다. 전처리 적합과 최종 전체 재학습 비용도 별도다.
무작위 탐색에서 탐색분포 중 유효한 좋은 영역의 비율을 p, 독립 추출 횟수를 n이라 하면 한 번 이상 그 영역을 뽑을 확률은 다음과 같다.
P(한 번 이상 적중) = 1 - (1-p)^n
좋은 영역이 10%이고 20개 후보를 뽑으면 1-0.9²⁰≈0.878이다. 이 계산은 후보 추출이 독립이고 p가 탐색분포에서 차지하는 비율이라는 단순 가정 아래의 값이며, 높은 확률이 최적값 발견을 보장하지는 않는다.
탐색 전에 최대 적합 횟수·시간·메모리와 조기 중단 규칙을 정한다. 실패 후보와 NaN 점수를 조용히 제외하면 비교가 왜곡될 수 있으므로 실패 원인과 유효 후보 수를 기록한다.
8. 검증 절차와 선택 편향
1. 독립 테스트를 잠금
2. 훈련 영역에서 분할 구조와 주평가지표 확정
3. 각 안쪽 훈련 폴드에서 전처리·특징 선택·재표본화
4. 후보 하이퍼파라미터와 조기 종료 평가
5. 평균·변동·제약으로 선택 규칙 적용
6. 선택 절차를 훈련 영역 전체에 재적합
7. 잠근 테스트에서 한 번 최종 평가
후보를 많이 시험할수록 최고 검증 점수에는 우연한 이득이 섞일 가능성이 커진다. 최종 성능을 엄밀히 추정하려면 안쪽 탐색과 바깥 평가를 분리한 중첩 교차검증을 사용한다. 여러 팀이 같은 테스트 결과를 보고 반복 수정하면 조직 수준의 테스트 과대적합이 생기므로 평가 접근과 변경 횟수도 관리한다.
전처리, 특징 수, 재표본화 비율, 확률 보정, 분류 임곗값도 데이터로 선택하면 모두 탐색 절차에 포함한다. 고객·환자·시간 구조가 있으면 일반 무작위 폴드 대신 실제 적용을 재현하는 그룹·시간 분할을 사용한다.
9. 최고점 이외의 선택 기준
| 기준 | 확인 내용 | 예시 |
|---|---|---|
| 주평가지표 | 선택에 사용할 1차 지표를 사전 고정 | 희소 양성의 PR-AUC·재현율 |
| 필수 제약 | 반드시 만족할 운영 조건 | 최대 지연, 최소 정밀도, 메모리 |
| 안정성 | 폴드·기간·집단별 변동 | 평균은 같지만 최저 성능이 다른 후보 |
| 단순성 | 성능 차이가 작을 때 복잡도 비교 | 얕은 나무, 적은 특징, 작은 모델 |
| 재현성 | seed·폴드·분포·시도 수 기록 | 같은 예산으로 재실행 가능한가 |
다중 지표를 모두 최고로 만들 수 없으면 주평가지표와 제약을 사전에 정한다. 최고점과 차이가 실무 허용오차 δ 이내인 후보 중 가장 단순한 모형을 선택하는 규칙도 사용할 수 있다. δ를 결과를 본 뒤 바꾸지 않는다.
평균 성능이 조금 높더라도 추론 지연·메모리·재학습 시간·설명 가능성·데이터 요구량·집단별 위험이 크게 나빠지면 운영모형으로 부적합할 수 있다.
10. 사례 적용
상황: 고객 이탈 부스팅 모형에서 나무 수를 늘릴수록 훈련 AUC는 0.99까지 상승하지만 내부 검증 PR-AUC는 300개 나무 이후 하락한다.
주어진 조건: 클래스가 불균형하고 학습률 5개, 깊이 3개, 규제 4개 조합을 5겹으로 평가한다. 테스트 결과를 중간에 여러 번 확인했다.
판단 과정:
- 기존 테스트는 선택에 노출되어 최종 독립 평가로 사용하지 않는다.
- 고객 그룹을 보존한 훈련 영역 안쪽 교차검증을 구성한다.
- 대치·스케일링·재표본화와 조기 종료를 각 안쪽 훈련 폴드에서 수행한다.
- 주평가지표를 PR-AUC로 고정하고 최소 정밀도·최대 경보 수 제약을 추가한다.
- 60개 후보·5겹의 300회 적합 예산과 실패 처리를 기록한다.
- 평균·변동·비용을 만족하는 설정을 고정한 뒤 새로운 후향 기간에서 한 번 평가한다.
결론: 훈련 AUC나 반복 노출된 테스트 최고점이 아니라, 올바른 분할의 안쪽 검증에서 선택된 복잡도와 새로운 독립 기간 성능을 사용한다.
오답 함정: 훈련 AUC가 가장 큰 설정을 선택하거나 테스트 AUC가 떨어질 때마다 탐색 범위와 조기 종료 시점을 다시 조정하지 않는다.
과소적합은 모형이 단순해 학습 자료의 구조도 놓치고, 과대적합은 너무 복잡해 잡음까지 따라간다. 그림의 “적정적합”은 시각적으로 매끈하다는 뜻이 아니라 독립 검증 성능이 가장 좋은 복잡도 후보라는 뜻이다.
복잡도 4 이후에도 학습 정확도는 오르지만 검증 정확도는 하락한다. 이 간격이 커지는 것은 과대적합 신호이며, 최종 성능은 선택에 쓰지 않은 테스트 자료로 확인한다.
| 구분 | 학습 중 결정되는가 | 예 | 검증 방법 |
|---|---|---|---|
| 파라미터 | 예 | 회귀계수, 트리의 분할값 | 학습 알고리즘이 추정 |
| 하이퍼파라미터 | 아니오, 학습 전에 후보 설정 | 규제강도, 최대깊이, 학습률 | 교차검증으로 비교 |
그리드서치는 미리 정한 모든 격자 조합을, 랜덤서치는 탐색 분포에서 뽑은 조합을 평가한다. 탐색 방식과 무관하게 같은 전처리·교차검증 규칙을 써야 공정하게 비교할 수 있다.
| 방법 | 장점 | 한계 | 적합한 상황 |
|---|---|---|---|
| 그리드서치 | 재현 쉽고 작은 공간을 빠짐없이 확인 | 차원이 늘면 조합 폭증 | 후보 수가 적고 범위가 좁음 |
| 랜덤서치 | 같은 예산으로 넓은 범위를 탐색 | 좋은 영역을 놓칠 수 있음 | 중요한 차원이 일부이고 범위가 큼 |
시험 판단 포인트
- 과대적합은 높은 훈련 성능과 낮은 새 데이터 성능의 간격으로 나타날 수 있다.
- L1은 희소 계수, L2는 부드러운 축소를 유도하며 규제가 지나치면 과소적합된다.
- λ가 크면 규제가 강하지만
C처럼 역수를 쓰는 구현은 방향이 반대다. - 학습곡선은 표본 수·반복 수, 검증곡선은 하이퍼파라미터 값에 따른 성능을 본다.
- 조기 종료용 데이터는 바깥 평가 폴드 안쪽에 따로 둔다.
- 격자 후보 수는 축별 후보 수의 곱이고 CV 적합 수는 후보 수×폴드 수다.
- 베이지안·무작위 탐색도 검증 선택 편향을 없애지 않는다.
- 전처리·특징 선택·재표본화·보정·임곗값도 탐색 절차 안에 포함한다.
- 평균 최고점뿐 아니라 변동·운영 제약·단순성·재현성을 함께 본다.
자주 틀리는 부분
- 훈련 오차가 가장 작은 모형을 최종 모형으로 선택한다.
- 규제 강도를 높이면 편향과 분산이 모두 항상 줄어든다고 본다.
C가 클수록 규제가 강하다고 모든 구현에 적용한다.- 스케일이 다른 변수에 L1·L2를 적용하면서 전체 데이터로 먼저 표준화한다.
- 바깥 검증 또는 테스트로 조기 종료 시점을 선택한다.
- 후보가 늘어도 최고 검증 점수의 선택 편향이 변하지 않는다고 본다.
- 베이지안 탐색이면 테스트 데이터 없이도 공정한 최종 성능이 나온다고 본다.
- 분할 전 증강한 원본·파생본을 서로 다른 폴드에 배치한다.
- 실패한 후보를 제외한 채 성공 후보의 최고점만 보고한다.
개념 확인 문제
문제를 누르면 바로 아래에서 정답과 해설을 확인할 수 있습니다.
01훈련 성능은 매우 높고 검증 성능은 낮으며 분할마다 결과가 크게 흔들릴 때 가장 먼저 의심할 패턴은?
높은 분산과 과대적합
복잡한 모형이 훈련 데이터의 잡음에 민감하게 적응하면 훈련 성능은 높지만 검증 성능은 낮고 분할에 따라 크게 흔들릴 수 있다.
02목적함수에 λ||w||₁ 또는 λ||w||²₂를 더하는 규제에서 일반적으로 성립하는 내용을 서술하시오.
λ가 커질수록 규제가 강해지고 지나치면 과소적합될 수 있다.
제시한 λ는 벌점의 계수이므로 커질수록 계수 축소가 강해지고 지나치면 중요한 신호까지 줄여 과소적합될 수 있다.
03규제 4개, 깊이 3개, 학습률 5개의 모든 조합을 5겹 교차검증으로 평가할 때 후보 평가에 필요한 적합 횟수는?
300회
격자 후보는 4×3×5=60개이고 각 후보를 5개 폴드에서 적합하므로 60×5=300회다.
04하이퍼파라미터 탐색과 최종 평가 절차로 타당한 내용을 서술하시오.
훈련 영역의 안쪽 검증에서 전처리·조기 종료·후보를 선택하고 잠근 테스트에서 한 번 평가한다.
전처리·특징 선택·조기 종료·하이퍼파라미터는 훈련 영역의 안쪽 검증에서 선택하고, 선택 완료 후 잠근 테스트에서 한 번 평가한다.