베타 분포(Beta Distribution)와 디리클레 분포(Dirichlet Distribution)
13 Dec 2020 | Statistics
이 게시물은 부산대학교 김충락 교수님의 수리통계학 강의를 참고하여 작성하였습니다.
Beta & Dirichlet Distribution
이번 게시물에서는 베타 분포(Beta distribution)와 디리클레 분포(Dirichlet distribution)에 대해서 알아보겠습니다.
Beta Distribution
베타 분포의 확률 밀도 함수는 아래와 같이 나타나며 $X \sim \text{Beta}(\alpha, \beta)$ 로 나타냅니다.
[f_X(x) = \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} x^{\alpha-1}(1-x)^{\beta-1} \quad I(0<x<1)]
확률 밀도 함수로부터 적률 생성 함수를 구해낼 수 있습니다.
[M_X(t) = \int_0^1 e^{tx} \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} x^{\alpha-1}(1-x)^{\beta-1}dx]
위 함수의 해는 닫혀있지 않으므로 구할 수 없습니다. 따라서 베타 분포의 기댓값과 분산은 기댓값과 분산의 정의를 통해서만 구할 수 있습니다. 먼저 기댓값을 구해보겠습니다.
[\begin{aligned}
E(X) &= \int_0^1 x \cdot \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} x^{\alpha-1}(1-x)^{\beta-1}dx
&= \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} \cdot \int_0^1 x^{\alpha}(1-x)^{\beta-1}dx
&= \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)} \cdot \frac{\Gamma(\alpha+1)}{\Gamma(\alpha+\beta+1)} \cdot \int_0^1 \frac{\Gamma(\alpha+\beta+1)}{\Gamma(\alpha+1)\Gamma(\beta)} x^{\alpha}(1-x)^{\beta-1}dx
&= \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)} \cdot \frac{\Gamma(\alpha+1)}{\Gamma(\alpha+\beta+1)}
&= \frac{\alpha}{\alpha+\beta}
\end{aligned}]
분산은 위 과정과 비슷한 과정을 반복하여 $E(X^2)$ 를 구한 뒤 그 식에서 기댓값의 제곱을 빼주어 구할 수 있습니다. 이렇게 구한 분산의 값은 다음과 같습니다.
[Var(X) = \frac{\alpha\beta}{(\alpha+\beta)^2(\alpha+\beta+1)}]
Derivation from Gamma distribution
감마 분포로부터 베타 분포를 유도할 수 있습니다. 서로 독립이며 감마 분포를 이루는 2개의 확률 변수 $X_1 \sim \Gamma(\alpha,1), X_2 \sim \Gamma(\beta,1)$ 가 있다고 해보겠습니다. 이 때 $Y_2 = X_1/(X_1 + X_2)$ 는 $Y_2 \sim \text{Beta}(\alpha, \beta)$ 인 베타 분포를 따릅니다. 다변량 분포에서의 확률 분포 치환을 통해서 어떻게 이렇게 유도가 되는 지를 알아보겠습니다. 일단 치환할 각각의 확률 변수 $Y_1, Y_2$ 는 다음과 같이 나타냅니다.
[Y_1 = X_1 + X_2 , \quad Y_2 = \frac{X_1}{X_1 + X_2}]
이를 $X_1, X_2$ 에 관한 함수로 나타내면 아래와 같게 되며 $Y_1, Y_2$ 가 가질 수 있는 범위도 구할 수 있습니다.
[X_1 = Y_1Y_2, \quad X_2 = Y_1(1-Y_2)
\mathbf{S} = {(x_1,x_2):0<x_1<\infty, 0<x_2<\infty}
\mathbf{T} = {(y_1,y_2):0<y_1<\infty, 0<y_2<1}]
그리고 치환에 사용하기 위해서 역함수로부터 야코비안 행렬의 행렬식을 구해야 합니다.
[\begin{aligned}
J &= \left\vert\begin{array}{cc} y_2 & y_1 \ 1-y_2 & -y_1 \end{array} \right\vert
&= -y_1y_2 - y_1(1-y_2)
&= -y_1
\end{aligned}]
두 확률 변수가 독립이므로 두 확률 변수 $X_1, X_2$ 결합 확률 밀도 함수는 다음과 같습니다.
[\begin{aligned}
f_{X_1,X_2}(x_1,x_2) &= f_{X_1}(x_1)f_{X_2}(x_2) \quad (\because \text{independent})
&=\frac{x_1^{\alpha-1}e^{-x_1}}{\Gamma(\alpha)} \cdot \frac{x_2^{\beta-1}e^{-x_2}}{\Gamma(\beta)}
&= \frac{x_1^{\alpha-1}x_2^{\beta-1}e^{-(x_1+x_2)}}{\Gamma(\alpha)\Gamma(\beta)}
\end{aligned}]
이를 사용하여 $Y_1, Y_2$ 의 결합 확률 밀도 함수를 구할 수 있습니다.
[\begin{aligned}
g_{Y_1,Y_2}(y_1,y_2) &= f_{X_1,X_2}(x_1,x_2) \cdot \vert J \vert
&= \frac{x_1^{\alpha-1}x_2^{\beta-1}e^{-(x_1+x_2)}}{\Gamma(\alpha)\Gamma(\beta)} \cdot \vert J \vert
&= \frac{(y_1y_2)^{\alpha-1}(y_1(1-y_2))^{\beta-1}e^{-y_1}}{\Gamma(\alpha)\Gamma(\beta)} \cdot y_1
&= -\frac{y_1^{\alpha+\beta-1}y_2^{\alpha-1}(1-y_2)^{\beta-1}e^{-y_1}}{\Gamma(\alpha)\Gamma(\beta)}
&= \frac{y_1^{\alpha+\beta-1}e^{-y_1}}{\Gamma(\alpha+\beta)} \cdot \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} y_2^{\alpha-1}(1-y_2)^{\beta-1}
\end{aligned}]
결합 확률 밀도 함수가 각 확률 변수에 대한 함수의 곱 $g_{Y_1,Y_2}(y_1,y_2) = h_1(y_1)h_2(y_2)$ 으로 이루어졌기 때문에 두 확률 변수가 독립임을 알 수 있습니다. 확률 변수 $Y_1, Y_2$ 가 각각 감마 분포 $Y_1 \sim \Gamma(\alpha+\beta,1)$ 와 베타 분포 $Y_2 \sim \text{Beta}(\alpha, \beta)$ 를 따르는 것을 알 수 있습니다.
Dirichlet Distribution
디리클레 분포는 베타 분포를 항이 여러 개인 경우로 확대한 것입니다. 서로 독립이며 각각이 감마 분포를 이루는 두 확률 변수 $X_1, X_2$ 로부터 베타 분포를 유도한 것처럼 감마 분포를 이루며 서로 독립인 $k+1$ 개의 확률 변수 $X_1, \cdots, X_{k+1}$ 을 활용하여 디리클레 분포를 유도할 수 있습니다. 각각의 확률 변수를 다음과 같이 치환합니다.
[Y_1 = \frac{X_1}{\sum^{k+1}{i=1}X_i}, Y_2 = \frac{X_2}{\sum^{k+1}{i=1}X_i}, \cdots , Y_k = \frac{X_k}{\sum^{k+1}{i=1}X_i}, Y{k+1} = \sum^{k+1}_{i=1}X_i]
이를 베타 분포에서 했던 것과 같은 과정을 거쳐 $Y_1, \cdots, Y_{k+1}$ 의 결합 확률 분포 함수를 구한 뒤 이를 적분하여 확률변수 $Y_1, \cdots, Y_k$ 의 결합 확률 분포 함수 $g_{Y_1,\cdots,Y_k}(y_1,\cdots,y_k)$ 를 구할 수 있습니다. 이 때 $Y_1, \cdots, Y_k$ 가 이루는 분포를 $k$ 차원 디리클레 분포라 하며 $Y_1, \cdots, Y_k \sim \text{Dirichlet}(\alpha_1,\cdots,\alpha_k, \alpha_{k+1})$ 로 나타냅니다. 디리클레 분포의 수식은 아래와 같고 $k=1$ 일 때 베타 분포와 동일한 식을 가지게 됩니다.
[g_{Y_1,\cdots,Y_k}(y_1,\cdots,y_k) = \frac{\Gamma(\sum^{k+1}{i=1}\alpha_i)}{\prod^{k+1}{i=1}\Gamma(\alpha_i)} \prod^{k+1}{i=1} y_i^{\alpha_i-1}
(y{k+1} = 1 - \sum^k_{i=1}y_i)]
이 게시물은 부산대학교 김충락 교수님의 수리통계학 강의를 참고하여 작성하였습니다.
Beta & Dirichlet Distribution
이번 게시물에서는 베타 분포(Beta distribution)와 디리클레 분포(Dirichlet distribution)에 대해서 알아보겠습니다.
Beta Distribution
베타 분포의 확률 밀도 함수는 아래와 같이 나타나며 $X \sim \text{Beta}(\alpha, \beta)$ 로 나타냅니다.
[f_X(x) = \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} x^{\alpha-1}(1-x)^{\beta-1} \quad I(0<x<1)]
확률 밀도 함수로부터 적률 생성 함수를 구해낼 수 있습니다.
[M_X(t) = \int_0^1 e^{tx} \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} x^{\alpha-1}(1-x)^{\beta-1}dx]
위 함수의 해는 닫혀있지 않으므로 구할 수 없습니다. 따라서 베타 분포의 기댓값과 분산은 기댓값과 분산의 정의를 통해서만 구할 수 있습니다. 먼저 기댓값을 구해보겠습니다.
[\begin{aligned}
E(X) &= \int_0^1 x \cdot \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} x^{\alpha-1}(1-x)^{\beta-1}dx
&= \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} \cdot \int_0^1 x^{\alpha}(1-x)^{\beta-1}dx
&= \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)} \cdot \frac{\Gamma(\alpha+1)}{\Gamma(\alpha+\beta+1)} \cdot \int_0^1 \frac{\Gamma(\alpha+\beta+1)}{\Gamma(\alpha+1)\Gamma(\beta)} x^{\alpha}(1-x)^{\beta-1}dx
&= \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)} \cdot \frac{\Gamma(\alpha+1)}{\Gamma(\alpha+\beta+1)}
&= \frac{\alpha}{\alpha+\beta}
\end{aligned}]
분산은 위 과정과 비슷한 과정을 반복하여 $E(X^2)$ 를 구한 뒤 그 식에서 기댓값의 제곱을 빼주어 구할 수 있습니다. 이렇게 구한 분산의 값은 다음과 같습니다.
[Var(X) = \frac{\alpha\beta}{(\alpha+\beta)^2(\alpha+\beta+1)}]
Derivation from Gamma distribution
감마 분포로부터 베타 분포를 유도할 수 있습니다. 서로 독립이며 감마 분포를 이루는 2개의 확률 변수 $X_1 \sim \Gamma(\alpha,1), X_2 \sim \Gamma(\beta,1)$ 가 있다고 해보겠습니다. 이 때 $Y_2 = X_1/(X_1 + X_2)$ 는 $Y_2 \sim \text{Beta}(\alpha, \beta)$ 인 베타 분포를 따릅니다. 다변량 분포에서의 확률 분포 치환을 통해서 어떻게 이렇게 유도가 되는 지를 알아보겠습니다. 일단 치환할 각각의 확률 변수 $Y_1, Y_2$ 는 다음과 같이 나타냅니다.
[Y_1 = X_1 + X_2 , \quad Y_2 = \frac{X_1}{X_1 + X_2}]
이를 $X_1, X_2$ 에 관한 함수로 나타내면 아래와 같게 되며 $Y_1, Y_2$ 가 가질 수 있는 범위도 구할 수 있습니다.
[X_1 = Y_1Y_2, \quad X_2 = Y_1(1-Y_2)
\mathbf{S} = {(x_1,x_2):0<x_1<\infty, 0<x_2<\infty}
\mathbf{T} = {(y_1,y_2):0<y_1<\infty, 0<y_2<1}]
그리고 치환에 사용하기 위해서 역함수로부터 야코비안 행렬의 행렬식을 구해야 합니다.
[\begin{aligned}
J &= \left\vert\begin{array}{cc} y_2 & y_1 \ 1-y_2 & -y_1 \end{array} \right\vert
&= -y_1y_2 - y_1(1-y_2)
&= -y_1
\end{aligned}]
두 확률 변수가 독립이므로 두 확률 변수 $X_1, X_2$ 결합 확률 밀도 함수는 다음과 같습니다.
[\begin{aligned}
f_{X_1,X_2}(x_1,x_2) &= f_{X_1}(x_1)f_{X_2}(x_2) \quad (\because \text{independent})
&=\frac{x_1^{\alpha-1}e^{-x_1}}{\Gamma(\alpha)} \cdot \frac{x_2^{\beta-1}e^{-x_2}}{\Gamma(\beta)}
&= \frac{x_1^{\alpha-1}x_2^{\beta-1}e^{-(x_1+x_2)}}{\Gamma(\alpha)\Gamma(\beta)}
\end{aligned}]
이를 사용하여 $Y_1, Y_2$ 의 결합 확률 밀도 함수를 구할 수 있습니다.
[\begin{aligned}
g_{Y_1,Y_2}(y_1,y_2) &= f_{X_1,X_2}(x_1,x_2) \cdot \vert J \vert
&= \frac{x_1^{\alpha-1}x_2^{\beta-1}e^{-(x_1+x_2)}}{\Gamma(\alpha)\Gamma(\beta)} \cdot \vert J \vert
&= \frac{(y_1y_2)^{\alpha-1}(y_1(1-y_2))^{\beta-1}e^{-y_1}}{\Gamma(\alpha)\Gamma(\beta)} \cdot y_1
&= -\frac{y_1^{\alpha+\beta-1}y_2^{\alpha-1}(1-y_2)^{\beta-1}e^{-y_1}}{\Gamma(\alpha)\Gamma(\beta)}
&= \frac{y_1^{\alpha+\beta-1}e^{-y_1}}{\Gamma(\alpha+\beta)} \cdot \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} y_2^{\alpha-1}(1-y_2)^{\beta-1}
\end{aligned}]
결합 확률 밀도 함수가 각 확률 변수에 대한 함수의 곱 $g_{Y_1,Y_2}(y_1,y_2) = h_1(y_1)h_2(y_2)$ 으로 이루어졌기 때문에 두 확률 변수가 독립임을 알 수 있습니다. 확률 변수 $Y_1, Y_2$ 가 각각 감마 분포 $Y_1 \sim \Gamma(\alpha+\beta,1)$ 와 베타 분포 $Y_2 \sim \text{Beta}(\alpha, \beta)$ 를 따르는 것을 알 수 있습니다.
Dirichlet Distribution
디리클레 분포는 베타 분포를 항이 여러 개인 경우로 확대한 것입니다. 서로 독립이며 각각이 감마 분포를 이루는 두 확률 변수 $X_1, X_2$ 로부터 베타 분포를 유도한 것처럼 감마 분포를 이루며 서로 독립인 $k+1$ 개의 확률 변수 $X_1, \cdots, X_{k+1}$ 을 활용하여 디리클레 분포를 유도할 수 있습니다. 각각의 확률 변수를 다음과 같이 치환합니다.
[Y_1 = \frac{X_1}{\sum^{k+1}{i=1}X_i}, Y_2 = \frac{X_2}{\sum^{k+1}{i=1}X_i}, \cdots , Y_k = \frac{X_k}{\sum^{k+1}{i=1}X_i}, Y{k+1} = \sum^{k+1}_{i=1}X_i]
이를 베타 분포에서 했던 것과 같은 과정을 거쳐 $Y_1, \cdots, Y_{k+1}$ 의 결합 확률 분포 함수를 구한 뒤 이를 적분하여 확률변수 $Y_1, \cdots, Y_k$ 의 결합 확률 분포 함수 $g_{Y_1,\cdots,Y_k}(y_1,\cdots,y_k)$ 를 구할 수 있습니다. 이 때 $Y_1, \cdots, Y_k$ 가 이루는 분포를 $k$ 차원 디리클레 분포라 하며 $Y_1, \cdots, Y_k \sim \text{Dirichlet}(\alpha_1,\cdots,\alpha_k, \alpha_{k+1})$ 로 나타냅니다. 디리클레 분포의 수식은 아래와 같고 $k=1$ 일 때 베타 분포와 동일한 식을 가지게 됩니다.
[g_{Y_1,\cdots,Y_k}(y_1,\cdots,y_k) = \frac{\Gamma(\sum^{k+1}{i=1}\alpha_i)}{\prod^{k+1}{i=1}\Gamma(\alpha_i)} \prod^{k+1}{i=1} y_i^{\alpha_i-1}
(y{k+1} = 1 - \sum^k_{i=1}y_i)]