공변량 시프트 하의 베이지안 신경망: 이론이 실천에 실패할 때
Source: Dev.to
베이지안 강건성의 놀라운 실패
베이지안 딥러닝 문헌을 따라오셨다면, 아마도 다음과 같은 표준 서술을 접했을 것입니다: 베이지안 방법은 원칙적인 불확실성 정량화를 제공하므로, 분포 변화에 대해 더 강건해야 한다. 이론은 설득력 있게 들립니다—분포 외 데이터에 직면했을 때, 베이지안 모델 평균화(BMA)는 여러 가능한 설명을 고려하여 보정된 불확실성과 더 나은 일반화를 이끌어야 합니다.
하지만 이 서술이 근본적으로 잘못되었다면 어떨까요? 실제로 정확한 추론을 사용하는 베이지안 신경망(BNN)이 고전적인 대응 방법보다 분포 변화에 덜 강건하다는 것이 사실이라면?
이것이 바로 Izmailov et al.이 2021년 NeurIPS 논문 *“Dangers of Bayesian Model Averaging under Covariate Shift.”*에서 발견한 내용입니다. 그들의 발견은 베이지안 방법에 대한 핵심 가정을 뒤흔들며, 실세계 응용에 중요한 함의를 가집니다.
직관에 반하는 결과
가장 눈에 띄는 발견부터 살펴보겠습니다:
![베이지안 신경망이 공변량 변화 하에서. (a): CIFAR‑10‑C의 픽셀화 손상에 대한 ResNet‑20의 성능. 가장 높은 손상 정도에서 베이지안 모델 평균은 MAP 솔루션보다 25 % (정확도 44 % 대 69 %) 낮게 나타납니다. 자세한 내용은 Izmailov et al. [2021]을 참고하세요. (b): HMC로 샘플링한 MNIST에 대한 베이지안 완전 연결 네트워크 첫 번째 층의 가중치 시각화. (c): 해당 MAP 가중치. 입력 픽셀과 은닉층 뉴런을 연결하는 가중치를 28 × 28 이미지로 시각화했으며, 각 가중치는 상호작용하는 입력 픽셀 위치에 표시됩니다.](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj4d7zv1q4uhzywc64yqj.jpg)
네, 제대로 읽으셨습니다. 심하게 손상된 CIFAR‑10‑C 데이터에서, Hamiltonian Monte Carlo(HMC)를 사용한 베이지안 신경망은 **정확도 44 %**에 불과한 반면, 단순 Maximum a‑Posteriori(MAP) 추정은 **정확도 69 %**를 기록했습니다—25 퍼센트 포인트 차이로 단순한 방법이 우위에 있습니다!
이는 특히 깨끗한, 분포 내 데이터에서는 BNN이 MAP보다 약 5 % 정도 더 좋은 성능을 보였기 때문에 놀라운 일입니다. 즉, 표준 벤치마크에서는 더 좋지만, 분포 변화 상황에서는 재앙적으로 실패하는 방법을 발견한 것입니다.
왜 이런 일이 발생할까? “죽은 픽셀” 비유
저자들은 “죽은 픽셀” 현상을 통해 우아한 설명을 제시합니다. MNIST 숫자를 생각해 보세요—코너에는 항상 검은 픽셀(강도 = 0)이 있습니다. 이러한 픽셀은 학습 중에 절대 활성화되지 않으며 죽은 픽셀이라고 부릅니다.
베이지안 문제
- 죽은 픽셀에 연결된 가중치는 학습 손실에 영향을 주지 않습니다(항상 0과 곱해짐).
- 따라서 이러한 가중치에 대한 사후분포는 사전분포와 동일합니다(업데이트되지 않음).
- 테스트 시, 노이즈가 죽은 픽셀을 활성화할 수 있습니다.
- 사전에서 무작위로 샘플링된 가중치가 비제로 값을 곱하게 되면서 네트워크를 통해 노이즈가 전파되고, 예측이 크게 악화됩니다.
p(w_{ij}^1 \mid \mathcal{D}) = p(w_{ij}^1) \quad \text{if } x_k^i = 0 \ \forall i
MAP 솔루션
- 죽은 픽셀에 연결된 가중치는 정규화 항에 의해 0에 가깝게 밀려납니다.
- 테스트 시 죽은 픽셀이 활성화되더라도, 0에 가까운 가중치는 이를 무시합니다.
- 따라서 노이즈가 전파되지 않아 강건한 예측이 가능합니다.
Lemma 1
만약 특징 (x_k^i = 0)이 모든 학습 예제에 대해 성립하고 사전이 독립적으로 분해된다면
[ p(w_{ij}^1 \mid \mathcal{D}) = p(w_{ij}^1) ]
즉, 사후분포가 사전과 동일하고, 해당 가중치는 무작위로 남아 있습니다.
일반적인 문제: 선형 의존성
죽은 픽셀 예시는 학습 데이터에 존재하는 선형 의존성이 동일한 실패 모드를 일으킬 수 있다는 보다 넓은 이슈의 특수 경우입니다.
Proposition 2 (Izmailov et al.)는 학습 데이터가 다음과 같은 affine 부분공간에 존재한다면
[ \sum_{j=1}^m x_i^j c_j = c_0 \quad \forall i, ]
다음이 성립한다고 명시합니다:
- 가중치 투영 (w_j^c = \sum_{i=1}^m c_i w_{ij}^1 - c_0 b_j^1)의 사후분포는 사전과 동일합니다.
- MAP는 (w_j^c = 0)으로 설정합니다.
- BMA 예측은 부분공간 밖의 테스트 데이터에 대해 매우 민감해집니다.
이는 특정 손상이 BNN을 다른 손상보다 더 크게 해치는 이유를 설명합니다:


뛰어난 해결책: EmpCov 사전
저자들은 데이터 공분산 구조에 맞춘 사전을 제안함으로써 간단하면서도 우아한 해결책을 제시합니다.
경험적 공분산(EmpCov) 사전
첫 번째 층 가중치에 대해:
[ p(w^{(1)}) = \mathcal{N}!\left(0,; \alpha \Sigma + \epsilon I\right), \qquad \Sigma = \frac{1}{n-1}\sum_{i=1}^{n} x_i x_i^\top, ]
여기서 (\Sigma)는 경험적 데이터 공분산, (\alpha)는 스케일링 팩터, (\epsilon)은 작은 jitter 항입니다.

작동 원리
- 사전의 고유벡터 = 데이터의 주성분.
- PC (p_i)에 대한 사전 분산: (\alpha \sigma_i^2 + \epsilon).
- 분산이 0인 방향((\sigma_i^2 = 0))에서는 분산이 (\epsilon) (극소)으로 감소합니다.
- 결과: BNN이 중요하지 않은 방향에서 큰 무작위 가중치를 샘플링하지 못하게 하여, 노이즈 증폭을 방지합니다.
실험적 개선
| 손상 / 변화 | BNN (Gaussian) | BNN (EmpCov) | 개선 |
|---|---|---|---|
| 가우시안 노이즈 | 21.3 % | 52.8 % | +31.5 pp |
| 샷 노이즈 | 24.1 % | 54.2 % | +30.1 pp |
| MNIST → SVHN | 31.2 % | 45.8 % | +14.6 pp |
