Stat & ML

V. 개선과 통합 / M17

모형 개선·결과 해석·시각화

8 minv1.0.0검토 2026-07-21
이 문서의 목차

학습목표

  • 모형 개선·결과 해석·시각화의 대상·가정·산출물을 설명한다.
  • 공식 또는 절차를 작은 계산 사례에 적용하고 해석한다.
  • Python으로 재현 가능한 점검의 출발점을 만든다.

핵심 용어

과소적합 underfitting · 과적합 overfitting · 편향-분산 · 정규화 · 초매개변수 · 학습곡선
한·영 정의와 약어는 통합 용어집을 함께 참조한다.

개념 설명

너무 단순하면 신호를 놓치고 너무 유연하면 잡음까지 따라간다. 정규화는 큰 계수에 벌점을 주어 복잡도를 제어하며 초매개변수는 교차검증으로 선택한다. 테스트셋은 마지막 독립 평가에 한 번만 쓰고, 결과를 보고 재튜닝하면 새 테스트셋이 필요하다.

상세 이론

편향-분산-잡음

기대 예측오차는 개념적으로 편향 제곱, 분산, 줄일 수 없는 잡음으로 나눌 수 있다. 단순 모형은 편향이 크고 복잡 모형은 표본 변화에 민감한 분산이 커질 수 있다. 실제로는 학습·검증 곡선, 여러 분할·시드의 변동, 오류 패턴으로 절충을 진단한다.

L1·L2 정규화

L2는 계수 제곱합에 벌점을 주어 상관 변수의 계수를 함께 축소하고 안정성을 높인다. L1은 절댓값 벌점으로 일부 계수를 정확히 0으로 만들어 희소성을 유도한다. 변수 스케일이 벌점에 직접 영향을 주므로 보통 표준화하고, 정규화 강도는 교차검증 안에서 선택한다.

초매개변수 탐색

격자 탐색은 지정 조합을 모두, 무작위 탐색은 분포에서 조합을 샘플링한다. 중요한 설정이 일부일 때 무작위 탐색이 효율적일 수 있고 Bayesian optimization이나 조기 종료로 비용을 줄일 수 있다. 탐색 범위 자체도 사전 지식과 계산 예산을 반영하며 테스트셋은 탐색에 참여하지 않는다.

학습곡선과 검증곡선

학습곡선은 자료량에 따른 학습·검증 성능, 검증곡선은 하나의 복잡도 설정에 따른 성능을 보여 준다. 두 점수가 모두 낮고 가까우면 과소적합, 학습은 높고 검증은 낮으면 과적합을 의심한다. 데이터 추가, 특징 개선, 정규화, 모형 단순화 중 어떤 조치가 필요한지 구분하는 도구다.

해석과 시각화

전체 중요도, 부분의존, 개별조건기대, 국소 설명은 서로 다른 질문을 답한다. 상관된 특징에서는 변수 하나만 독립적으로 변화시키는 그림이 현실에 없는 조합을 만들 수 있다. 시각화에는 표본 수·불확실성·기준선·축 범위를 표시하고 설명을 인과효과처럼 표현하지 않는다.

최종 보고와 모니터링

최종 보고에는 질문, 모집단·기간, 분할, 전처리, 후보·선택 규칙, 성능과 불확실성, 하위집단 오류, 한계를 담는다. 배포 후에는 입력 분포·결측·성능·확률 보정·의사결정 결과의 변화를 모니터링한다. 테스트 결과를 보고 다시 개선했다면 새 테스트 자료 또는 미래 전향 평가가 필요하다.

개념 비교표

개념핵심 역할함께 구분할 개념
편향-분산-잡음기대 예측오차는 개념적으로 편향 제곱, 분산, 줄일 수 없는 잡음으로 나눌 수 있다.L1·L2 정규화
L1·L2 정규화L2는 계수 제곱합에 벌점을 주어 상관 변수의 계수를 함께 축소하고 안정성을 높인다.초매개변수 탐색
초매개변수 탐색격자 탐색은 지정 조합을 모두, 무작위 탐색은 분포에서 조합을 샘플링한다.학습곡선과 검증곡선
학습곡선과 검증곡선학습곡선은 자료량에 따른 학습·검증 성능, 검증곡선은 하나의 복잡도 설정에 따른 성능을 보여 준다.해석과 시각화
해석과 시각화전체 중요도, 부분의존, 개별조건기대, 국소 설명은 서로 다른 질문을 답한다.최종 보고와 모니터링
최종 보고와 모니터링최종 보고에는 질문, 모집단·기간, 분할, 전처리, 후보·선택 규칙, 성능과 불확실성, 하위집단 오류, 한계를 담는다.편향-분산-잡음

적용 조건과 진단

다음 조건은 공식을 대입하기 전에 확인한다. 하나라도 만족하지 않으면 결과를 버리기보다 원인을 기록하고 대안적 요약·변환·검증 설계를 선택한다.

  • 튜닝이 개발 자료 안에서 끝났는가
  • 해석을 인과효과로 표현하지 않았는가
  • 배포 후 변화 감시 계획이 있는가

개념 흐름

학습곡선은 과소적합과 과적합의 단서를 준다.

그림. 학습곡선은 과소적합과 과적합의 단서를 준다.

공식과 해석

Ridge의 한 예는 Loss+λjβj2Loss+\lambda\sum_j\beta_j^2다.

계산 예제

복잡도 1,3,10의 검증오차가 0.30,0.18,0.24면 3이 후보다.

Python 예제

실행 안내: 예제는 각 장의 핵심 API와 해석 순서를 보여준다. 별도 실습 환경에서 필요한 입력 데이터를 준비한 뒤 실행한다.

from sklearn.model_selection import GridSearchCV
from sklearn.linear_model import LogisticRegression

from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split

X, y = make_classification(
    n_samples=400, n_features=8, n_informative=5,
    weights=[0.7, 0.3], random_state=20260721
)
X_train, X_valid, y_train, y_valid = train_test_split(
    X, y, test_size=0.25, stratify=y, random_state=20260721
)

search = GridSearchCV(LogisticRegression(max_iter=1000), {'C':[.01,.1,1,10]}, cv=5, scoring='roc_auc')
search.fit(X_train, y_train)
print('선택:', search.best_params_)
print('CV AUC:', search.best_score_)
print('테스트는 선택 뒤 한 번만 사용한다.')
print('정규화 강도는 CV로 고른다.')
# 최종 보고에는 한계를 포함한다.

장 요약

  • 편향-분산-잡음: 기대 예측오차는 개념적으로 편향 제곱, 분산, 줄일 수 없는 잡음으로 나눌 수 있다.
  • L1·L2 정규화: L2는 계수 제곱합에 벌점을 주어 상관 변수의 계수를 함께 축소하고 안정성을 높인다.
  • 초매개변수 탐색: 격자 탐색은 지정 조합을 모두, 무작위 탐색은 분포에서 조합을 샘플링한다.
  • 학습곡선과 검증곡선: 학습곡선은 자료량에 따른 학습·검증 성능, 검증곡선은 하나의 복잡도 설정에 따른 성능을 보여 준다.
  • 해석과 시각화: 전체 중요도, 부분의존, 개별조건기대, 국소 설명은 서로 다른 질문을 답한다.
  • 최종 보고와 모니터링: 최종 보고에는 질문, 모집단·기간, 분할, 전처리, 후보·선택 규칙, 성능과 불확실성, 하위집단 오류, 한계를 담는다.

더 읽을거리