베이즈 해석 (라플라스 사전분포)¶
능형회귀가 계수에 대한 가우스 사전분포에서 나오듯, 라쏘는 라플라스(이중지수) 사전분포에서 나온다. 0에서 뾰족하고 가우스보다 꼬리가 두꺼운 라플라스 밀도의 모양이 희소성의 베이즈적 기제를 제공한다. 이 사전분포는 0 근처에 상당한 확률질량을 몰아넣으면서도, 자료가 강한 증거를 줄 때는 큰 계수를 허용한다.
라플라스 분포¶
위치 0, 척도 \(b > 0\)인 라플라스 분포의 밀도는
이다. 가우스와 비교한 주요 성질은 다음과 같다.
- 0에서의 뾰족점. 매끄러운 가우스 봉우리와 달리 \(\beta_j = 0\)에서 미분 불가능한 봉우리를 갖는다. 이 뾰족점이 0 근처에 더 많은 확률질량을 모은다.
- 두꺼운 꼬리. 라플라스 밀도는 지수적으로 감소하고(로그 척도에서 선형) 가우스는 \(\exp(-\beta_j^2)\)로 감소한다(로그 척도에서 이차). 따라서 라플라스가 큰 \(|\beta_j|\)에 더 많은 확률을 준다.
- 분산. Laplace\((0, b)\)의 분산은 \(2b^2\)이다.
MAP 유도¶
각 계수에 독립인 라플라스 사전분포 \(\beta_j \overset{\text{iid}}{\sim} \text{Laplace}(0, b)\)를 둔다. 결합 사전분포는
이고, 가우스 가능도와 결합한 음의 로그사후는
이다. 이를 최소화하는 것은
인 라쏘 문제를 푸는 것과 동등하다(\(n\)은 라쏘 목적함수의 \(1/(2n)\) 규약에서 온다). 즉 라플라스 사전분포 아래의 MAP 추정값이 라쏘 추정량이다.
라플라스 사전분포가 희소성을 낳는 이유¶
MAP 추정은 사후분포의 최빈값을 찾는 것이다. 0에서의 라플라스 뾰족점이 좌표초평면 \(\beta_j = 0\)을 따라 사후분포에 "능선"을 만든다. 자료의 지지가 약한 계수에서는, 가능도가 다른 방향으로 충분히 강하게 당기지 않는 한 사전분포의 뾰족점이 최빈값을 \(\beta_j = 0\)으로 끌어당긴다.

왼쪽은 분산을 둘 다 1로 맞춘 두 사전분포다. 공평한 비교를 위해 라플라스의 척도를 \(b = 1/\sqrt{2}\)로 두었다(\(2b^2 = 1\)). 같은 분산인데도 모양이 전혀 다르다. 0에서의 밀도는 라플라스가 \(0.707\), 가우스가 \(0.399\)로 라플라스가 \(1.8\)배 높다. 0 근처에 확률질량을 더 쌓아 두었다는 뜻이다.
동시에 꼬리도 더 두껍다. \(\beta_j = 2\)에서는 아직 가우스가 조금 높지만(\(0.054\) 대 \(0.042\)), \(\beta_j = 3\)에서 라플라스가 \(2.3\)배, \(\beta_j = 4\)에서 \(18.6\)배 높아진다. 두 성질이 한 분포 안에 공존한다는 점이 핵심이다. 라플라스 사전분포는 "대부분의 계수는 0 근처일 것이다, 그러나 몇 개는 아주 클 수도 있다"는 믿음을 부호화한다. 이것이 바로 희소한 신호에 대한 우리의 통상적 기대다.
오른쪽은 계수 하나에 대해 이 사전분포가 무슨 일을 하는지 본 것이다. 자료가 \(z = 0.2\)라는 약한 증거를 주고(\(\sigma = 0.5\), \(b = 0.5\)), 회색 점선이 그 가능도다. 사전분포를 곱한 사후밀도(초록)는 \(\beta_j = 0\)에서 뾰족한 봉우리를 갖는다. 문턱 \(\sigma^2/b = 0.5\)보다 \(|z| = 0.2\)가 작기 때문이다. 그래서 MAP 추정값, 곧 라쏘가 주는 값은 정확히 \(0\)이다.
그런데 같은 사후분포의 평균은 \(0.096\)으로 0이 아니다. 밀도가 \(z = 0.2\) 쪽으로 기울어져 있으니 당연한 일이다. 연속인 사후밀도의 평균이 정확히 0이 되려면 분포가 0에 대해 완벽히 대칭이어야 하는데, 자료가 조금이라도 한쪽을 지지하면 그 대칭이 깨진다. 희소성은 최빈값의 성질이지 사후분포의 성질이 아니다. 베이즈 라쏘를 MCMC로 돌려 사후평균을 뽑았는데 계수가 0이 나오지 않는다는 흔한 당혹감의 정체가 이 한 장에 들어 있다.
MAP와 사후평균은 다르다
라쏘의 희소성은 MAP 추정값(사후최빈값)의 성질이지 사후분포 전체의 성질이 아니다. 라플라스 사전분포 아래의 사후평균은 일반적으로 희소하지 않다. 완전한 사후추론(신용구간 등)이 필요하면, 라플라스 사전분포는 가우스 가능도와 켤레가 아니므로 MCMC가 필요하다.
가우스와 라플라스 사전분포의 비교¶
| 성질 | 가우스 \(N(0, \tau^2)\) | 라플라스 \((0, b)\) |
|---|---|---|
| 0에서의 밀도 | 매끄럽고 유한 | 뾰족하고 유한 |
| 꼬리 거동 | 가벼움(준가우스) | 무거움(지수적 감소) |
| 결과 추정량 | 능형 | 라쏘 |
| 벌점 | \(\lambda\|\boldsymbol{\beta}\|_2^2\) | \(\lambda\|\boldsymbol{\beta}\|_1\) |
| MAP의 희소성 | 없음 | 있음 |
| 켤레성 | 있음(사후가 가우스) | 없음 |
| 사후 계산 | 닫힌 형태 | MCMC 필요 |
| 정칙화 모수 | \(\lambda = \sigma^2/\tau^2\) | \(\lambda = \sigma^2/(nb)\) |
가우스 사전분포는 큰 계수를 이차적으로 벌하여 매끄러운 비례 축소를 낳는다. 라플라스 사전분포는 선형으로 벌하여 정확한 0을 만드는 연성 문턱 거동을 낳는다.
베이즈 라쏘¶
Park과 Casella(2008)는 라쏘의 완전한 베이즈 처리인 베이즈 라쏘를 개발했다. 핵심 착상은 라플라스 사전분포를 정규분포의 척도혼합으로 표현하는 것이다.
이 표현은 계수마다 잠재 분산모수 \(s_j^2\)을 도입하여 다음을 번갈아 하는 깁스 표집을 가능하게 한다.
- 가우스 조건부에서 \(\boldsymbol{\beta} \mid s_1^2, \ldots, s_p^2, \mathbf{y}\)를 표집.
- 역가우스 분포에서 각 \(s_j^2 \mid \beta_j\)를 표집.
베이즈 라쏘를 언제 쓰는가
희소 모형에 대한 불확실성 정량화(신용구간)가 필요할 때 쓴다. 빈도주의 라쏘는 점추정과 변수선택을 제공하지만, 선택된 계수에 대한 타당한 신뢰구간은 직접 제공하지 않는다.
스파이크-앤-슬랩 사전분포¶
더 강한 희소성을 강제하려면 스파이크-앤-슬랩 사전분포가 0에 점질량("스파이크")을, 0이 아닌 값에 산만한 분포("슬랩")를 둔다.
이 사전분포 아래의 MAP 추정은 벌점 \(\lambda\|\boldsymbol{\beta}\|_0\)(0이 아닌 계수의 개수)을 갖는 최량 부분집합 선택에 대응한다. 라플라스 사전분포는 스파이크-앤-슬랩의 연속적 완화로 볼 수 있으며, 가우스(희소성 없음)와 스파이크-앤-슬랩(가장 강한 희소성) 사이에 놓인다.
연습문제¶
연습문제 1. "라쏘의 희소성은 MAP의 성질이지 사후분포의 성질이 아니다"라는 주장을 확인하라. 라플라스 사전분포 아래에서 사후평균이 정확히 0이 될 수 있는가?
풀이
사후평균은 확률 1로 0이 아니다.
이유는 간단하다. 사후분포 \(p(\beta_j \mid \mathbf{y})\)는 연속분포다(가우스 가능도와 라플라스 사전분포의 곱은 어디서나 양의 밀도를 갖는다). 연속분포의 평균이 정확히 0이 되려면 분포가 0에 대해 완벽히 대칭이어야 하는데, 자료가 \(\beta_j\)에 대해 어떤 정보든 주면 대칭이 깨진다.
최빈값은 다르다. 라플라스 사전분포의 뾰족점 때문에 사후밀도가 \(\beta_j = 0\)에서 미분 불가능한 봉우리를 가질 수 있고, 그 봉우리가 전역 최빈값이 되면 MAP 추정값이 정확히 0이 된다.
# 1차원 직관: 사후 log-density ∝ -(b - z)^2/(2v) - |b|/s
# z(자료가 말하는 값)가 작으면 최빈값은 0, 그러나 평균은 0이 아니다
실무적 함의가 크다.
| 원하는 것 | 써야 할 것 |
|---|---|
| 희소한 점추정 | 라쏘(= MAP) |
| 사후평균 | 베이즈 라쏘의 MCMC 출력 — 희소하지 않다 |
| 변수의 포함 확률 | 스파이크-앤-슬랩의 사후 포함확률 |
"베이즈 라쏘를 돌렸더니 계수가 0이 안 나온다"는 흔한 혼란이 여기서 나온다. MCMC가 주는 것은 사후평균이나 사후중앙값이며, 둘 다 희소하지 않다. 희소성을 원하면 사후분포에서 최빈값을 찾거나 스파이크-앤-슬랩을 써야 한다.
연습문제 2. \(\lambda = \sigma^2/(nb)\) 관계를 유도하고, 이것이 \(\lambda\)의 해석에 무엇을 뜻하는지 설명하라.
풀이
음의 로그사후를 최소화한다.
양변에 \(2\sigma^2\)을 곱해도 최소점은 같으므로
이다. 한편 라쏘 목적함수 \(\frac{1}{2n}\|\cdot\|^2 + \lambda\|\boldsymbol{\beta}\|_1\)에 \(2n\)을 곱하면
이다. 두 식의 벌점 계수를 맞추면 \(2n\lambda = 2\sigma^2/b\)이므로
해석. 능형의 \(\lambda = \sigma^2/\tau^2\)과 나란히 놓으면 구조가 보인다.
| 정칙화 모수 | |
|---|---|
| 능형 | \(\lambda = \sigma^2/\tau^2\) — 잡음분산 대 사전분산의 비 |
| 라쏘 | \(\lambda = \sigma^2/(nb)\) — 같은 비에 \(1/n\)이 붙는다 |
\(1/n\) 인자가 중요하다. 라쏘의 \(1/(2n)\) 규약 때문에 \(\lambda\)가 표본크기에 따라 자동으로 조정된다. 즉 같은 사전분포(\(b\) 고정)를 유지하면서 자료를 늘리면 \(\lambda\)가 \(1/n\)로 줄어든다. 자료가 많아질수록 사전분포의 영향이 줄어든다는 베이즈의 상식과 정확히 부합한다.
능형의 규약(\(1/(2n)\)이 없다)에서는 이 조정이 자동으로 일어나지 않으므로, 표본크기를 바꿀 때 \(\lambda\)를 직접 다시 골라야 한다. 이것이 sklearn에서 Ridge와 Lasso의 alpha를 같은 척도로 비교하면 안 되는 이유이기도 하다.
정리하며¶
라쏘는 라플라스 사전분포의 MAP 추정이다.
- 6장의 결과가 그대로 적용된다. MAP 는 벌점 최대가능도이며, \(\log\) 사전분포가 벌점이 된다. 정규 사전분포면 \(L_2\)(능형), 라플라스면 \(L_1\)(라쏘)이다.
- 라플라스 밀도의 모양이 희소성을 만든다. \(0\) 에서 뾰족하고(미분 불가능) 꼬리가 정규보다 두껍다. 뾰족한 꼭짓점이 계수를 정확히 \(0\) 으로 보내고, 두꺼운 꼬리가 큰 계수는 살려 둔다.
- \(\lambda\) 가 사전분포의 척도에 대응한다. 벌점이 강하다는 것은 사전분포가 \(0\) 근처에 더 몰려 있다는 뜻이다.
- 베이즈 라쏘는 MAP 와 다르다. 사후분포 전체를 쓰면 사후평균은 정확히 \(0\) 이 되지 않으며, 희소성은 최빈값의 성질이다.
- 두 관점이 서로를 설명한다. 벌점의 모양이 왜 그런 결과를 내는지 사전분포가 말해 준다.
다음 절 라쏘 회귀로 넘어간다.