중국집 프로세스(CRP)가 데이터 관점에서의 행동 비유라면, 디리클레 과정(Dirichlet Process, DP)은 이를 뒷받침하는 수학적 무한 차원 확률 모델입니다.
DP-GMM(Dirichlet Process Gaussian Mixture Model)의 핵심 수학적 원리를 직관적인 흐름으로 정리니다.
1. 디리클레 과정(Dirichlet Process)이란?
"무한히 많은 가우시안 분포(군집)를 만들어낼 수 있는 확률 과정"입니다.
일반적인 확률 분포(예: 가우시안)는 숫자를 샘플링하지만, 디리클레 과정은 '분포 자체'를 샘플링합니다.
- $G_0$ (기저 분포, Base Distribution): 새로운 군집이 생길 때, 그 군집의 평균과 분산이 어디서 나올지 결정하는 기본 지도/바탕입니다.
- $\alpha$ (집중 파라미터, Concentration Parameter): 기존 군집에 뭉칠지, 아니면 $G_0$에서 새로운 군집을 만들어낼지 결정하는 수도꼭지입니다.
- $\alpha$가 작을수록: 기존 군집으로 강하게 뭉칩니다. (군집 수 적음)
- $\alpha$가 클수록: $G_0$에서 새로운 군집을 자꾸 만들어냅니다. (군집 수 많음)
2. 디리클레 과정의 핵심 수학적 표현: 붙이기 관점 (Stick-Breaking Process)
수학적으로 디리클레 과정 $G$는 무한개의 불연속 점(원자, Atoms)들의 합으로 표현됩니다.
- $\theta_k \sim G_0$: $k$번째 군집의 평균과 분산 (기저 분포에서 뽑음)
- $\pi_k$: $k$번째 군집이 선택될 비중 (확률 무게, $\sum \pi_k = 1$)
- $\delta_{\theta_k}$: 해당 파라미터 지점에 솟아 있는 점 (디랙 델타 함수)
이때 무한한 비중 $\pi_k$를 만드는 수학적 메커니즘이 '막대 부러뜨리기(Stick-Breaking)'입니다.
막대 부러뜨리기 비유
- 길이가 $1$인 막대가 있습니다.
- 베타 분포 $\text{Beta}(1, \alpha)$에서 비율 $\beta_1$을 뽑아 막대의 $\beta_1$만큼 잘라내어 $\pi_1$로 씁니다.
- 남은 막대 $(1-\beta_1)$에서 다시 $\beta_2$만큼 잘라내어 $\pi_2$로 씁니다.
- 이 과정을 무한히 반복합니다.
이 구조 덕분에 비중 $\pi_k$는 뒤로 갈수록 점차 매우 작아져, 무한개의 가능성을 열어두되 실질적으로는 유한개의 유의미한 군집만 활성화됩니다.
3. DP-GMM의 생성 과정 (Generative Process)
DP-GMM은 기존 가우시안 혼합 모델(GMM)의 군집 비중 벡터 $\boldsymbol{\pi} = (\pi_1, \dots, \pi_K)$를 유한한 차원이 아닌 무한 차원의 DP 막대 부러뜨리기로 확장한 것입니다.
데이터 $N$개가 생성되는 통계적 수식 흐름
- 무한 군집 비중 생성: $\boldsymbol{\pi} \sim \text{Stick-Breaking}(\alpha)$
- 각 군집의 파라미터 생성: $k = 1, 2, \dots$에 대해 $\theta_k = (\boldsymbol{\mu}_k, \mathbf{\Sigma}_k) \sim G_0$
- 각 데이터 $i=1, \dots, N$에 대해:
- 군집 선택: $z_i \sim \text{Categorical}(\boldsymbol{\pi})$
- 관측값 생성: $\mathbf{x}_i \sim \mathcal{N}(\boldsymbol{\mu}_{z_i}, \mathbf{\Sigma}_{z_i})$
4. DP-GMM에서 깁스 샘플링 (Collapse Gibbs Sampling)
수학적으로 무한 차원 $\boldsymbol{\pi}$와 $\theta$를 직접 다루기 어렵기 때문에, 이들을 적분하여 날려버리고(Collapsing) 오직 각 데이터의 군집 라벨 $z_i$만 추론하는 깁스 샘플링을 수행합니다.
이때 데이터 $i$의 라벨 $z_i$를 업데이트하는 조건부 확률 공식은 정확히 두 부분의 곱으로 산출됩니다:
- $N_{-i, k}$: $i$번 데이터를 제외하고 현재 $k$번 군집에 있는 데이터 개수 (CRP의 테이블 인기도)
- $\alpha$: 집중 파라미터 (새 테이블 생성 성향)
- $p(\mathbf{x}_i \mid \mathbf{x}_{-i, k})$: 해당 군집의 가우시안 분포가 데이터 $\mathbf{x}_i$를 얼마나 잘 설명하는지 나타내는 우도(Likelihood)
- $p(\mathbf{x}_A \mid G_0)$: 기저 분포 $G_0$가 제안하는 수많은 가능한 군집들 전체를 통틀어 보았을 때, 데이터 $\mathbf{x}_i$를 얼마나 잘 설명하는지 나타내는 우도(Marginal Likelihood)
-
- 데이터 $\mathbf{x}_i$가 일반적인 범위 내에 있다면 $p(\mathbf{x}_i \mid G_0)$가 어느 정도 높게 나와 새 군집을 형성할 자격을 얻습니다.
- 완전히 터무니없는 아웃라이어 데이터라면 이 값이 극도로 낮아집니다.
요약
- 디리클레 과정(DP): 막대 부러뜨리기를 통해 무한개의 군집 비중 $\pi_k$를 수학적으로 정의합니다.
- DP-GMM: 무한 차원의 가우시안 혼합 모델로, 데이터가 들어옴에 따라 자발적으로 새로운 가우시안 분포를 추가하거나 삭제합니다.
- 깁스 샘플링 추론: 무한 차원 파라미터를 적분해 지우면, "기존 군집의 데이터 수($N_k$) $\times$ 해당 군집 가우시안 우도" 대 "$\alpha \times$ 기저 분포 우도"의 비교라는 명쾌한 수식으로 축소되어 구현 가능해집니다.
'데이터 분석 > 군집화' 카테고리의 다른 글
| 디리클레 과정에서 기저 분포 (0) | 2026.08.06 |
|---|---|
| 군집 개수 미리 정하지 않고 찾기: 중국집 프로세스 (0) | 2026.08.06 |
| 깁스 샘플링 예시: 1) 공의 무게 군집, 2) 손님 키와 몸무게 쌍 군집 (0) | 2026.08.06 |
| 마르코프 체인 -> 깁스 샘플링 -> 결합 분포 (수식 포함) (0) | 2026.08.05 |
| 마르코프 체인 -> 깁스 샘플링 -> 결합분포 (직관적인 설명) (0) | 2026.08.05 |