본문으로 건너뛰기
222 / CONVEX OPTIMIZATION LAB
먼저 알아두면 좋아요 · 연결된 선수 단원의 함수·미분·선형대수·볼록 기초
단원 목록 (600) · Lasso·Ridge·Elastic Net의 기하
이해하는 속도로 읽으세요.개념도이론실험확인 문제
BUILD YOUR INTUITION

먼저 그림으로 이해하기

한 번에 한 단계씩 살펴보세요.

같은 손실 배율에서 수축·희소성과 penalty level을 비교합니다.

Orthonormal design: minimize ||w−y||²/2+lambda[alpha||w||1+(1−alpha)||w||²/2]. Ridge fixes alpha=0. Blue is the unweighted penalty level through the solution and the target vector; orange is the solution vector. Lambda is a penalty weight, not a norm-ball radius.

-1.1282.121.559-1.559
동일 축척 계수 평면 · 파랑 해를 지나는 penalty level·target · 주황 해 벡터 · level은 hard constraint와 구별
componenttarget ysolution wshrinkage
0211
10.250.1250.125

regularized solution = (1, 0.125)

고정 기준 예제의 그림과 수치입니다. 각 단계에서 같은 그림의 의미를 차례로 살펴보세요. 고정된 기준 예제이며 아래 실험의 설정과 독립적입니다.
1 / 4

손실 관례

관측 두 값에 .5||w−y||²를 고정합니다.

orthonormal design I2

실험에서 확인하기 →
이 단원 목차

같은 손실 아래 벌점을 비교하기

정규화는 데이터 적합도와 매개변수에 대한 선호를 함께 고려한다. 비교하려면 손실의 배율과 설계행렬을 먼저 고정해야 한다. 실습은 설계행렬이 2×2 항등행렬인 경우를 사용한다.

min⁡w12∥w−y∥22+λ[α∥w∥1+1−α2∥w∥22].\min_w\frac12\|w-y\|_2^2+ \lambda\left[\alpha\|w\|_1+\frac{1-\alpha}{2}\|w\|_2^2\right].

ridge는 α=0, lasso는 α=1, elastic net은 혼합 비율을 직접 선택한다. 앞의 두 모드에서는 혼합 조절기가 사용되지 않는다. 모든 모드의 제곱 손실 앞에 같은 1/2가 있으므로 벌점 강도의 의미를 일관되게 비교할 수 있다.

좌표별 해를 직접 유도하기

항등 설계에서는 좌표들이 분리된다. 0이 아닌 좌표의 부분경사는 부호 하나로 결정된다. 0에서는 절댓값의 부분미분 구간을 사용해야 한다.

wi=sign⁡(yi)max⁡(∣yi∣−λα,0)1+λ(1−α).w_i=\frac{\operatorname{sign}(y_i)\max(|y_i|-\lambda\alpha,0)}{1+\lambda(1-\alpha)}.

분자는 일정 크기 이하의 좌표를 정확히 0으로 만든다. 분모는 살아남은 좌표를 연속적으로 줄인다. ridge에는 유한한 양의 λ에서 이 문턱이 없다. 다만 관측 좌표가 처음부터 0이면 ridge 해도 0이다. 따라서 비영 좌표 개수만 보고 벌점 종류를 판별할 수는 없다.

세 가지 수치 예제

y=(2,0.25)로 고정하자. ridge에서 λ=1이면 (1,0.125)다. lasso에서 λ=0.5이면 (1.5,0)다. elastic net에서 α=0.5, λ=0.5이면 (1.4,0)다. 첫 좌표도 수축하지만 작은 둘째 좌표가 살아남는지 여부가 다르다.

적합 손실, 가중 벌점, 두 값의 합을 따로 비교하자. 희소한 해가 반드시 같은 λ에서 더 작은 적합 손실을 갖는 것은 아니다. 최적화하는 것은 두 항의 합이다.

0으로 사라진 좌표의 lasso 부분경사는 [−1,1] 안에서 필요한 값을 선택한다. 단순히 sign(0)=0을 대입하면 작은 비영 관측값을 상쇄하지 못해 잘못된 정상성 잔차를 보고할 수 있다. 실습은 구간 안에서 가능한 부분경사를 사용한다.

등고선이 뜻하는 것

파란 등고선은 현재 최적점을 지나는, λ를 곱하기 전 벌점의 같은 값 집합이다. ridge는 원, lasso는 마름모, elastic net은 모서리가 둥글어진 형태다. 파란 벡터는 관측 목표, 주황 벡터는 최적해다.

등고선 반지름을 λ로 읽으면 안 된다. 반지름은 해에서 달성한 벌점 값에 따라 결정되고, 그 해는 y와 λ에 의존한다. 적절한 볼록 조건 아래 벌점형 최적해를 같은 벌점 값의 제약형 해로 해석할 수 있지만 λ와 반지름 사이에 보편적인 일대일 공식이 있는 것은 아니다.

직접 풀기와 일반화의 한계

λ=0에서 모든 모드가 y를 되돌려주는지 확인하자. elastic net의 α를 0과 1로 바꾸면 같은 λ의 ridge와 lasso가 각각 재현된다. 둘째 관측값을 λα 양쪽으로 움직이면 해는 연속적으로 0에 도달하지만 공식의 구간이 바뀐다. 이 변화를 부분경사 조건으로 설명하자.

실제 설계행렬 X의 열들이 상관되어 있으면 손실은 ‖Xw−y‖²/2이고 좌표가 결합된다. 여기의 닫힌 공식을 그대로 좌표마다 적용하면 일반적으로 틀린다. 근접 경사법이나 좌표하강법으로 확장할 때 단계 크기와 종료 조건도 정해야 한다.

희소 계수는 인과성이나 변수 선택의 안정성, 시험 정확도를 보장하지 않는다. λ는 학습·검증 자료나 교차검증으로 정하고 최종 시험 정답을 선택 과정에 사용하지 말자. 실습은 최적화 기하를 설명하며 통계적 일반화 정리를 대신하지 않는다.

더 읽기: Parikh와 Boyd, Proximal Algorithms.

CHECK YOUR UNDERSTANDING

설명할 수 있나요?

실험 설정과 무관한 기준 예제를 묻습니다. 답을 고르고 설명을 확인해보세요.

1. lambda는 그림의 norm-ball 반지름과 같은가요?
2. 정규화가 모든 데이터에서 일반화 향상을 보장하나요?

선택한 답과 학습 표시는 이 브라우저에 저장됩니다. 다시 풀거나 표시를 해제할 수 있습니다.