Ridge·Lasso·Elastic Net은 회귀모형의 과적합과 다중공선성, 변수 선택을 한꺼번에 묻는 빅데이터분석기사 필기 3과목·ADsP 3과목 공통 주제입니다. 세 방법을 외울 때는 패널티가 L1인지 L2인지, 계수가 정확히 0이 될 수 있는지 두 축만 먼저 잡으면 됩니다.
최종 확인: 2026년 8월 28일. 실제 시험의 세부 출제 범위와 시행 공고는 데이터자격시험 공식 사이트에서 응시 회차별로 확인하세요. 이 글은 공개된 범위의 모델링 개념 학습 자료이며, 비공개 시험문항을 복원하거나 공유하지 않습니다.
정규화는 왜 필요한가: 과적합을 줄이는 제약
회귀모형이 훈련 데이터의 잡음까지 지나치게 맞추면 훈련 성능은 좋아 보여도 새로운 데이터에서 성능이 떨어질 수 있습니다. 이를 과적합이라고 합니다. 정규화는 손실함수에 계수 크기에 대한 패널티를 더해, 계수가 과도하게 커지는 것을 억제합니다. 핵심은 ‘오차를 줄이는 것’과 ‘모형을 단순하게 유지하는 것’의 균형입니다.
패널티의 강도는 보통 λ(람다)로 나타냅니다. λ가 너무 작으면 일반 회귀와 차이가 작고, 너무 크면 중요한 신호까지 지나치게 줄여 과소적합될 수 있습니다. 실제 모델 선택에서는 검증 데이터나 교차검증으로 적절한 값을 찾습니다.
Ridge·Lasso·Elastic Net 비교표
| 방법 | 패널티 | 계수의 변화 | 시험용 핵심 키워드 |
|---|---|---|---|
| Ridge 회귀 | L2: 계수 제곱의 합 | 계수를 축소하지만 보통 정확히 0으로 만들지 않음 | 다중공선성 완화, 모든 변수를 남기는 경향 |
| Lasso 회귀 | L1: 계수 절댓값의 합 | 일부 계수를 정확히 0으로 만들 수 있음 | 변수 선택 효과, 희소 모형 |
| Elastic Net | L1과 L2의 결합 | 축소와 변수 선택 성격을 함께 가짐 | 상관된 변수군·변수 수가 많은 상황에서 절충 |
Ridge: 상관된 변수의 계수를 함께 안정화
설명변수끼리 강하게 상관되면 일반 선형회귀의 계수가 불안정해질 수 있습니다. Ridge는 L2 패널티로 계수를 줄여 이 불안정성을 완화합니다. 다만 Ridge는 변수 선택 자체가 목적이라기보다 여러 변수를 유지하면서 계수 분산을 낮추는 방법에 가깝습니다. 따라서 “Ridge는 불필요한 변수의 계수를 정확히 0으로 만든다”는 설명은 Lasso와 바뀐 것입니다.
Lasso: 0이 되는 계수와 변수 선택
Lasso의 L1 패널티는 일부 계수를 정확히 0으로 만들 수 있습니다. 결과적으로 해당 변수를 모형에서 제외하는 것과 같은 효과가 생기므로 변수 선택 효과가 있다고 말합니다. 다만 강하게 상관된 변수들이 많을 때는 그중 하나를 선택하는 경향이 나타날 수 있어, 선택된 변수만을 절대적 중요도로 해석하면 안 됩니다.
Elastic Net: L1과 L2의 장점을 결합
Elastic Net은 Lasso의 변수 선택 성격과 Ridge의 안정화 성격을 함께 사용합니다. 특히 상관된 설명변수들이 있고 변수 수도 많은 상황에서 실무적 후보가 될 수 있습니다. 시험에서는 ‘L1과 L2를 결합한다’는 정의, ‘변수 선택과 계수 축소를 함께 고려한다’는 효과를 연결해 두면 충분합니다.
목적함수 수식으로 L1·L2 차이 확인
| 방법 | 최소화하는 값의 구조 | 제약의 모양 |
|---|---|---|
| 일반 최소제곱 | 잔차제곱합 RSS | 계수 패널티 없음 |
| Ridge | RSS + λΣβ² | L2, 둥근 경계 |
| Lasso | RSS + λΣ|β| | L1, 축에 꼭짓점이 있는 경계 |
| Elastic Net | RSS + L1 항 + L2 항 | 두 제약의 혼합 |
L1 경계의 꼭짓점이 좌표축에 닿기 쉬워 일부 계수가 정확히 0이 될 수 있다는 것이 Lasso의 변수 선택을 설명하는 직관입니다. Ridge의 둥근 경계는 여러 계수를 함께 축소하는 방향으로 작동합니다. 보통 절편은 패널티 대상에서 제외하고 설명변수 계수에 규제를 적용합니다.
λ가 커질수록 편향은 커지고 분산은 줄어드는 경향
규제를 강하게 하면 모형이 단순해져 훈련 데이터 변화에 덜 민감해지고 분산이 줄어드는 대신, 실제 관계를 충분히 표현하지 못해 편향이 커질 수 있습니다. λ=0이면 일반 최소제곱 회귀에 가까워지고, λ가 지나치게 크면 계수가 과도하게 축소되어 과소적합될 수 있습니다. 그래서 교차검증으로 일반화 오차가 가장 작은 구간을 찾습니다.
상관된 변수가 많을 때 선택 기준
| 상황 | 우선 검토 | 이유 |
|---|---|---|
| 대부분의 변수가 조금씩 기여 | Ridge | 모든 계수를 유지하면서 안정화 |
| 소수 변수만 중요하다고 기대 | Lasso | 희소한 변수 선택 효과 |
| 상관된 변수군이 많고 선택도 필요 | Elastic Net | L1과 L2를 결합해 절충 |
Python에서 alpha와 l1_ratio 읽기
from sklearn.linear_model import Ridge, Lasso, ElasticNet
ridge = Ridge(alpha=1.0)
lasso = Lasso(alpha=1.0)
enet = ElasticNet(alpha=1.0, l1_ratio=0.5)
scikit-learn에서 alpha는 규제 강도에 해당하고, ElasticNet의 l1_ratio는 L1 성격의 혼합 비율입니다. l1_ratio가 1에 가까울수록 Lasso, 0에 가까울수록 Ridge 성격이 강해집니다. 라이브러리마다 기호와 목적함수 스케일이 다를 수 있으므로 시험에서는 개념을, 실습에서는 해당 문서를 확인하세요.
표준화는 왜 함께 언급될까
정규화 패널티는 계수 크기를 직접 다루므로, 설명변수의 단위와 스케일이 크게 다르면 패널티가 불균형하게 작용할 수 있습니다. 그래서 Ridge·Lasso·Elastic Net을 적용하기 전에는 보통 설명변수를 표준화하는 과정을 검토합니다. 단, 더미 변수 처리나 해석 목적 등 실제 전처리의 세부 결정은 데이터와 모델 목적에 따라 달라집니다.
선택지 판별 5초 규칙
- ‘계수를 0으로’이라는 말이 보이면 Lasso 또는 Elastic Net을 떠올립니다.
- ‘제곱합’은 L2, Ridge입니다.
- ‘절댓값 합’은 L1, Lasso입니다.
- ‘두 패널티 결합’은 Elastic Net입니다.
- ‘λ가 커질수록 무조건 성능 향상’은 틀린 설명입니다. 편향과 분산의 균형을 봐야 합니다.
일반화 성능은 검증 데이터로 확인한다
정규화 종류와 λ를 고를 때 테스트 데이터를 반복해서 들여다보면 테스트 정보가 모델 선택에 새어 들어갈 수 있습니다. 훈련 데이터로 학습하고, 검증 데이터 또는 교차검증으로 하이퍼파라미터를 고른 뒤, 최종 테스트 데이터로 일반화 성능을 한 번 평가하는 순서를 지키는 것이 안전합니다. 분류 문제의 지표가 헷갈리면 혼동행렬·ROC·F1 계산 도구도 함께 활용하세요.
3과목 연결 학습: 모델 선택·과적합·앙상블을 먼저 훑고 싶다면 2·3과목 과락 방어 가이드를 보세요. 시계열의 AR·MA 구분도 3과목의 중요한 비교 포인트이므로 ARIMA·AR·MA·ACF·PACF 정리와 이어서 복습하면 좋습니다.
자주 묻는 질문
Ridge와 Lasso의 가장 큰 차이는 무엇인가요?
Ridge는 L2 패널티를 사용해 계수를 축소하지만 보통 정확히 0으로 만들지 않습니다. Lasso는 L1 패널티를 사용하며 일부 계수를 0으로 만들어 변수 선택 효과를 낼 수 있습니다.
Elastic Net은 언제 떠올리면 되나요?
Lasso의 변수 선택 효과와 Ridge의 계수 안정화 성격을 함께 쓰고 싶을 때 떠올립니다. 상관된 설명변수가 많거나 변수 수가 많은 상황에서 절충안으로 설명할 수 있습니다.
정규화 전에 표준화를 고려하는 이유는 무엇인가요?
Ridge·Lasso·Elastic Net의 패널티가 계수 크기에 작용하므로 변수 스케일 차이가 크면 불균형한 제약이 걸릴 수 있습니다. 그래서 보통 설명변수의 스케일을 맞추는 과정을 검토합니다.
다음 복습: 개별 글을 다 읽었다면 빅데이터분석기사 필기 합격 허브에서 과목별 점수와 남은 학습 순서를 다시 점검하세요.
당신이 좋아할 만한 콘텐츠
by Google Adsense