다운로드
작성자: admin 작성일시: 2016-05-23 22:58:15 조회수: 5899 다운로드: 409
카테고리: 기초 수학 태그목록:

7.6 베타 분포와 감마 분포

베타 분포

베타 분포는 $a$와 $b$라는 두 개의 모수를 가지며 표본 공간은 0과 1사이의 실수이다. 즉 0와 1사이의 표본값만 가질 수 있다.

$$ \text{Beta}(x;a,b), \;\; 0 \leq x \leq 1 $$

베타 분포의 확률밀도함수는 다음과 같다.

$$ \begin{align} \text{Beta}(x;a,b) & = \frac{\Gamma(a+b)}{\Gamma(a)\Gamma(b)}\, x^{a-1}(1-x)^{b-1} \end{align} $$

이 식에서 $\Gamma(a)$는 감마 함수(Gamma function)라는 특수함수로 다음처럼 정의된다.

$$ \Gamma(a) = \int_0^\infty x^{a-1} e^{-x}\, dx $$

여러가지 모수 $a,b$ 값에 대해 베타 분포의 모양을 그려보면 다음과 같다.

In [1]:
xx = np.linspace(0, 1, 1000)
plt.subplot(221)
plt.fill(xx, sp.stats.beta(1.0001, 1.0001).pdf(xx))
plt.ylim(0, 6)
plt.title("(A) a=1, b=1")
plt.subplot(222)
plt.fill(xx, sp.stats.beta(4, 2).pdf(xx))
plt.ylim(0, 6)
plt.title("(B) a=4, b=2, mode={0}".format((4-1)/(4+2-2)))
plt.subplot(223)
plt.fill(xx, sp.stats.beta(8, 4).pdf(xx))
plt.ylim(0, 6)
plt.title("(C) a=8, b=4, mode={0}".format((8-1)/(8+4-2)))
plt.subplot(224)
plt.fill(xx, sp.stats.beta(30, 12).pdf(xx))
plt.ylim(0, 6)
plt.title("(D) a=30, b=12, mode={0}".format((30-1)/(30+12-2)))
plt.tight_layout()
plt.show()

이 그림으로부터 모수 $a,b$가 베타 분포의 모양을 결정하는 형상 인자(shape factor)라는 것을 알 수 있다. 베타 분포의 기댓값, 최빈값, 분산은 각각 다음과 같다.

  • 기댓값
$$E[x] = \dfrac{a}{a+b}$$
  • 최빈값: 확률분포가 가장 커지는 위치 $$\dfrac{a - 1}{a+b - 2}$$
  • 분산: 확률분포의 폭 $$\text{Var}[x] = \dfrac{ab}{(a+b)^2(a+b+1)}$$

최빈값 수식을 보면 $a=b$일 때 $x=0.5$에서 가장 확률밀도가 커지는 것을 알 수 있다. 또한 분산 수식에서 분모가 3차식, 분자가 2차식이기 때문에 $a,b$의 값이 커질 수록 분산 즉, 확률분포의 폭이 작아진다.

베타 분포(Beta distribution)는 다른 확률 분포와 달리 자연계에 존재하는 데이터의 분포를 묘사하는 것 뿐 아니라 다른 확률분포함수의 모수를 베이지안 추정(Bayesian estimation)한 결과를 표현하기 위해 사용된다. 베이지안 추정은 모수가 가질 수 있는 모든 값에 대해 가능성을 확률분포로 나타낸 것을 말한다.

베타 분포는 0부터 1까지의 값을 가질 수 있는 베르누이 분포의 모수 $\mu$의 값을 추정한 결과를 표현한 것이다. 실제로 베르누이 분포의 모수를 베이지안 추정하는 것은 나중에 다루게 된다. 여기에서는 결과만 보였다.

위 그림이 베이지안 추정 결과라면 각각은 베르누이 분포의 모수 $\mu$에 대해 다음과 같이 추정한 것과 같다.

  • (A): 베르누이 분포의 모수 $\mu$를 추정할 수 없다. (정보가 없음)
  • (B): 베르누이 분포의 모수 $\mu$값이 0.75일 가능성이 가장 크다. (정확도 낮음)
  • (C): 베르누이 분포의 모수 $\mu$값이 0.70일 가능성이 가장 크다. (정확도 중간)
  • (D): 베르누이 분포의 모수 $\mu$이 0.725일 가능성이 가장 크다. (정확도 높음)

감마 분포

감마 분포(Gamma distribution)도 베타 분포(Beta distribution)처럼 모수의 베이지안 추정에 사용된다. 다만 베타 분포가 0부터 1사이의 값을 가지는 모수를 베이지안 방법으로 추정하는데 사용되는 것과 달리 감마 분포는 0부터 무한대의 값을 가지는 양수 값을 추정하는데 사용된다.

감마 분포의 확률 밀도 함수는 a와 b라는 두 개의 모수(parameter)를 가지며 수학적으로 다음과 같이 정의된다.

$$ \text{Gam}(x;a,b) = \frac{1}{\Gamma(a)} b^a x^{a-1}e^{-bx} $$

감마 분포의 확률 밀도 함수는 모수 $a$, $b$의 값에 따라 다음과 같은 형상을 가진다.

SciPy의 stats 서브패키지에서 제공하는 gamma 클래스는 모수 $b=1$로 고정되어 $a$ 값만 설정할 수 있다. $b$를 바꾸려면 $x$값 스케일과 계수를 수동으로 설정하여야 한다.

In [2]:
xx = np.linspace(0, 10, 100)
plt.subplot(221)
plt.plot(xx, sp.stats.gamma(9).pdf(xx))
plt.ylim(0, 0.4)
plt.title("(A) a=9, b=1, mode=8")
plt.subplot(222)
plt.plot(xx, sp.stats.gamma(6).pdf(xx))
plt.ylim(0, 0.4)
plt.title("(B) a=6, b=1, mode=5")
plt.subplot(223)
plt.plot(xx, sp.stats.gamma(3).pdf(xx))
plt.ylim(0, 0.4)
plt.title("(C) a=3, b=1, mode=2")
plt.subplot(224)
plt.plot(xx, sp.stats.gamma(2).pdf(xx))
plt.ylim(0, 0.4)
plt.title("(D) a=2, b=1, mode=1")
plt.tight_layout()
plt.show()

위 그림이 베이지안 추정 결과라면 각각은 모수에 대해 다음과 같이 추정한 것과 같다.

  • (A): 모수값이 8일 가능성이 가장 크다. (정확도 아주 낮음)
  • (B): 모수값이 5일 가능성이 가장 크다. (정확도 낮음)
  • (C): 모수값이 2일 가능성이 가장 크다. (정확도 높음)
  • (D): 모수값이 1일 가능성이 가장 크다. (정확도 아주 높음)

감마 분포의 기댓값, 최빈값, 분산은 각각 다음과 같다.

  • 기댓값 $$ \text{E}[X] = \dfrac{a}{b}$$

  • 최빈값 $$ \dfrac{a-1}{b}$$

  • 분산 $$\text{Var}[X] = \dfrac{a}{b^2}$$

질문/덧글

맨 아래 (C): 모수값이 0.60일 가능성이 가장 크다. (정확도 중간) 부분 lsjh*** 2016년 7월 7일 9:17 오후

0.70으로 정정되어야 할 것 같습니다.

답변: 맨 아래 (C): 모수값이 0.60일 가능성이 가장 크다. (정확도 중간) 부분 관리자 2016년 7월 7일 11:52 오후

수정하였습니다. 지적해 주셔서 감사합니다.