베타 분포

  • 베타와 감마 분포는 사람이 만든 분포다.

베타 분포(Beta distribution)는 다른 확률 분포와 달리 자연계에 존재하는 데이터의 분포를 묘사하기 보다는 베이지안 추정의 결과를 묘사하기 위한 목적으로 주로 사용된다. 베이지안 추정(Bayesian estimation)은 추정하고자 하는 모수의 값을 하나의 숫자로 나타내는 것이 아니라 분포로 묘사한다.

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

$$ \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) = \int_0^\infty x^{a-1} e^{-x}\, dx $$

베타 분포의 확률 밀도 함수는 그림에서 볼 수 있듯이 0부터 1까지만의 값을 가진다. 이러한 함수를 finite support를 가진다고 한다.


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): 모수값이 0.75일 가능성이 가장 크다. (정확도 낮음)
  • (C): 모수값이 0.70일 가능성이 가장 크다. (정확도 중간)
  • (D): 모수값이 0.725일 가능성이 가장 크다. (정확도 높음)
  • 최빈값을 외워야 한다. 최빈값 = 대표값 = mode
  • pdf를 나타낸 것임. y축은 차원이 없다. 적분을 해야 의미가 있다. 상대적인 의미일 뿐이다.
  • pdf에서 꼭지점을 mode라고 한다.

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

  • 기댓값
$$E[x] = \dfrac{a}{a+b}$$
  • 최빈값 $$\dfrac{a - 1}{a+b - 2}$$
  • 분산 $$\text{Var}[x] = \dfrac{ab}{(a+b)^2(a+b+1)}$$