Bayesian PCA
이 포스팅은 Bayesian Principal Component Analysis (BPCA)에 대해 공부하고 정리한 글입니다.
Introduction
- 고전 PCA에서 시작하여 Probabilistic PCA (PPCA), 그리고 Bayesian PCA (BPCA) 로 이어지는 과정을 정리합니다.
- PCA → PPCA → BPCA 순으로 모델링 관점의 변화를 살펴보고, 왜 Bayesian 접근이 필요한지 설명합니다.
1. PCA
- PCA의 목적은 고차원 데이터 $X \in \mathbb{R}^{d \times N}$를 저차원 잠재 변수 $Z \in \mathbb{R}^{q \times N}, q \ll d$로 선형 변환하는 것입니다.
- 수학적 정의는 Covariance Matrix의 Eigen Decomposition입니다.
- 한계: 단순 선형 변환이며 확률 모델이 아니므로 불확실성 추정이나 결측 데이터 처리는 어렵습니다.
2. Probabilistic PCA (PPCA)
- Tipping & Bishop (1999)에서 제안되었습니다.
PPCA 포스팅을 참고해주세요
3. Bayesian PCA (BPCA)
- Bishop (1999)에 의해 제안되었습니다.
-PPCA의 확장으로, PPCA에서는 고정된 값으로 추정했던 파라미터들($W, \tau$)을 BPCA에서는 확률변수 로 두고 prior를 부여합니다.- $w_i \sim \mathcal{N}(0, \alpha_i^{-1} I)$
- $\alpha_i \sim \text{Gamma}(a_\alpha, b_\alpha)$
- $\tau \sim \text{Gamma}(a_\tau, b_\tau)$
- 특징:
- Automatic Relevance Determination (ARD) 를 통해 유효한 잠재 차원만 남길 수 있습니다.
- Overfitting 방지 효과를 제공합니다.
- Posterior 불확실성 추정이 가능합니다.
4. Methodology
4.1 Generative Model
BPCA는 다음과 같은 확률적 그래픽 모델로 표현됩니다.
-
Latent variables:
$z_n \sim \mathcal{N}(0, I_q)$ -
Observed data:
$x_n | z_n, W, \mu, \tau \sim \mathcal{N}(W z_n + \mu, \tau^{-1} I_d)$ -
Weight prior (column-wise):
$w_i \sim \mathcal{N}(0, \alpha_i^{-1} I)$ -
Hyperpriors:
$\alpha_i \sim \text{Gamma}(a_\alpha, b_\alpha), \quad \tau \sim \text{Gamma}(a_\tau, b_\tau)$
따라서 전체 joint 분포는 다음과 같습니다.
\[p(X,Z,W,\alpha,\tau) = p(W|\alpha)\,p(\alpha)\,p(\tau)\,\prod_{n=1}^N p(z_n)\,p(x_n|z_n,W,\tau)\]4.2 Variational Inference
Posterior $p(W,Z,\mu,\alpha,\tau|X)$는 직접 계산이 어렵습니다.
따라서 Variational Bayes 로 근사합니다.
-
분리 가정: \(q(W,Z,\mu,\alpha,\tau) = q(W)\,q(Z)\,q(\mu)\,q(\alpha)\,q(\tau)\)
-
각 분포 형태:
- $q(z_n) = \mathcal{N}(\cdot)$ (정규분포)
- $q(W) = \mathcal{N}(\cdot)$ (정규분포)
- $q(\alpha), q(\tau)$ = 감마 분포
4.3 Update Equations
-
Posterior of $z_n$
\(q(z_n) = \mathcal{N}\!\left( \tau (I + \tau W^\top W)^{-1} W^\top (x_n-\mu), \, (I + \tau W^\top W)^{-1} \right)\) - Posterior of $W$
- 정규분포 형태, ARD prior가 반영되어 각 열이 shrinkage 효과를 가짐.
- Posterior of $\alpha, \tau$
- 감마 분포로 업데이트되며, $\alpha$가 커지면 해당 $w_i$가 0에 가까워짐.
- 이는 곧 Automatic Relevance Determination (ARD) 효과를 발생시켜, 불필요한 latent 차원을 제거합니다.
4.4 ELBO Optimization
- 각 step에서 Evidence Lower Bound (ELBO)를 계산하고,
- 이를 최대화하는 방향으로 파라미터와 분포를 반복적으로 업데이트합니다.
- 수렴 시 근사 posterior가 최종 추정치가 됩니다.
5. Key formula summary
- Posterior of $z$: \(q(z) = \mathcal{N}\!\left( \tau (I + \tau W^\top W)^{-1} W^\top (x-\mu), \, (I + \tau W^\top W)^{-1} \right)\)
- Posterior of $W$: 정규분포, ARD prior 반영
- Posterior of $\alpha, \tau$: 감마 분포로 업데이트
Conclusion
- PCA → PPCA → BPCA는 통계적 차원축소의 자연스러운 확장 과정입니다.
- BPCA는 Bayesian 접근을 통해 불확실성과 차원 자동 선택 기능을 제공합니다.
- ARD를 통해 불필요한 잠재 차원을 스스로 제거한다는 점이 가장 큰 차별점입니다.
- 하지만 수치적 안정성과 계산 복잡도 문제로 인해, 대규모 데이터에서는 GPLVM, VAE 같은 후속 기법이 더 자주 활용됩니다.
댓글남기기