Blog/과적합과 규제

Model Lab

과적합과 규제

편향, 분산, Ridge와 Lasso

SK

Skari Team

Skari

2026년 7월·12분

과적합

복잡도

학습 오차는 계속 낮아지지만 검증 오차는 다시 오릅니다. 그 격차가 과적합이고, 최적점은 최저점입니다.

최적 적합
검증 학습

학습 데이터의 모든 행을 맞히지만 새로운 데이터에서는 성능이 크게 떨어지는 모델은, 패턴을 학습한 것이 아니라 데이터의 노이즈까지 학습한 것입니다. 이것이 과적합(오버피팅, Overfitting)이며, 머신러닝의 핵심 문제입니다.

Watch out

대표적인 징후는 학습 점수와 검증 점수 사이의 큰 간극입니다. 학습 데이터에서는 성능이 좋지만 검증 데이터에서는 낮아지는데, 위 그림처럼 나타납니다.

편향-분산 트레이드오프

  • 높은 편향(과소적합): 모델이 너무 단순해 실제 구조를 놓침
  • 높은 분산(과적합): 모델의 복잡도가 너무 높아 노이즈까지 학습함
  • 목표는 둘 사이의 최적 지점, 즉 검증 곡선의 바닥

결국 편향-분산 트레이드오프(Bias-Variance Tradeoff)가 핵심입니다: 편향을 너무 키우지 않으면서 분산을 줄이는 것. 규제가 바로 이를 위한 가장 중요한 조절 수단입니다.

규제가 돕는 방식

규제는 복잡도에 벌점을 더해, 모델이 특정 변수에 과도하게 의존하지 않도록 만듭니다. 노이즈까지 학습하는 큰 계수를 적합하는 대신 계수를 축소하며, 학습 정확도는 약간 낮아지지만 훨씬 나은 일반화 성능을 얻습니다. 아래 그림에서 이 효과를 바로 확인할 수 있습니다.

계수 축소

Ridge는 모든 계수를 0쪽으로 줄이고, Lasso는 일부를 완전히 0으로 밀어 그 변수를 제거합니다.

OLSRidgeLasso00계수 크기
방법벌점계수에 대한 효과
Ridge (L2)계수 제곱의 합모든 계수를 0쪽으로 축소
Lasso (L1)계수 절댓값의 합일부를 정확히 0으로 축소해 변수를 선택
Elastic NetL1과 L2의 혼합축소와 선택의 균형

람다(λ)의 역할

모든 규제 모델에는 핵심 하이퍼파라미터가 하나 있습니다: 벌점 강도, λ(람다)로 표기합니다. 모델의 계수가 얼마나 작아질지를 결정합니다.

λ = 0      ->  벌점 없음 (일반 OLS, 과적합 가능)
λ 작음     ->  약한 축소
λ 큼       ->  강한 축소, 계수가 0에 근접 (과소적합 가능)

Tip

λ가 클수록 규제가 강해지고 계수는 더 작아집니다. λ는 학습 오차가 아니라 검증 오차를 최소화하는 값으로, 교차검증을 통해 선택합니다.

언제 무엇을 쓸까

Ridge, Lasso, Elastic Net 중 선택은 예측변수에 달렸습니다.

상황추천
변수가 대부분 중요 — 전부 유지Ridge
변수 선택도 필요Lasso
상관이 높은 변수 많음Elastic Net

Tip

규제는 변수들이 비교 가능한 척도일 때만 제대로 작동합니다. 변수를 먼저 표준화하지 않으면 척도가 큰 변수의 계수가 과도하게 벌점을 받습니다.

다른 처방

  • 더 많은 데이터: 가장 단순한 해법으로, 데이터가 많고 다양할수록 노이즈를 학습하기 어려움
  • 더 단순한 모델: 모수가 적어 과적합 여지가 적음
  • 교차검증: 검증 세트를 돌려 정직한 추정
  • 조기 종료: 검증 오차가 오르기 시작하면 학습 중단

SKARI Model Lab에서

Model Lab에서는 전체 비교를 한 번에 실행할 수 있어, 규제의 효과를 실제 성능으로 비교할 수 있습니다. 검증 데이터에서 일반 OLS보다 나은지 직접 확인합니다.

동일 데이터 ->  OLS  ->  Ridge  ->  Lasso  ->  Elastic Net  ->  성능 비교
  • 같은 데이터에 OLS·Ridge·Lasso·Elastic Net을 코드 없이 적합
  • 학습/검증 간극을 보이게 하는 교차검증 지표
  • Lasso가 어떤 계수를 0으로 만드는지 정확히 확인해 변수를 자동으로 선택
  • 임의로 선택하지 않고 교차검증으로 λ 선택

Takeaway

규제 모델이 홀드아웃 데이터에서 비규제 모델보다 나은 성능을 내는 것을 확인할 수 있습니다. 이처럼 학습 성능만 높이는 것이 아니라 일반화 성능을 위해 조정합니다.

자주 묻는 질문

Ridge와 Lasso 중?

모든 변수를 유지하면서 계수를 안정화하려면 Ridge, 무관한 변수를 자동으로 제거하려면 Lasso를 사용합니다. Elastic Net은 둘을 결합하며, 예측변수가 서로 상관됐을 때 가장 안전합니다.

Lasso가 변수를 없애면 그 변수가 필요 없다는 뜻인가요?

Lasso가 계수를 0으로 만들면 그 변수가 현재 데이터에서는 예측에 거의 기여하지 않는다는 의미입니다. 다만 다른 데이터나 도메인에서는 중요할 수 있으므로, 이를 절대적인 기준으로 해석해서는 안 됩니다.

과적합인지 어떻게 아나요?

학습 점수와 검증 점수를 비교하세요. 학습에는 강하지만 검증에는 약한 큰 간극이 특징입니다.

규제에 스케일링이 필요한가요?

네. 표준화하지 않으면 벌점이 변수마다 고르지 않게 적용됩니다. 데이터 정규화 가이드를 참고하세요.

결론

과적합은 패턴을 학습하는 것이 아니라 노이즈까지 학습하는 것입니다. 검증 곡선을 지켜보고, λ를 교차검증으로 조정하고, Ridge와 Lasso, Elastic Net으로 모델 복잡도와 편향-분산 트레이드오프를 통제하세요.

Takeaway

새로운 데이터에서도 잘 동작하도록 모델을 조정하면, 실제 운영 환경에서 안정적인 정확도를 얻을 수 있습니다.

회귀분석

규제가 안정화하는 모델

교차검증

λ를 정직하게 고르는 법

데이터 정규화

규제에 스케일링이 필요한 이유