기하 분포란?
기하 분포는 첫 번째 성공이 나타날 때까지의 실패 횟수를 모델링하는 이산 확률 분포이다. 즉, 동일한 조건에서 반복되는 베르누이 시행에서 첫 번째 성공이 나오기까지의 실패 횟수를 설명한다.
기하 분포는 다음과 같은 상황에서 사용된다.
- 성공/실패의 이진 결과: 각 시행 결과는 성공(1) 또는 실패(0)임.
- 독립적 시행: 각 시행은 서로 독립적이며, 다른 시행의 결과에 영향을 받지 않음.
- 일정한 성공 확률: 각 시행에서 성공할 확률($p$)는 일정함.
기하 분포의 확률질량함수
기하 분포의 확률질량함수는 성공확률이 $p$일 때 첫 번째 성공이 $k$번째 시행에서 발생할 확률을 나타내며, 다음과 같이 정의한다.
$$P(X=k)=(1-p)^{k-1} \cdot p$$
기하 분포의 예제
기하 분포를 이해하기 위해 예제를 정리했다.
예제1: 동전 던지기
공정한 동전을 던졌을 때, 첫 번째 앞면이 나올 때까지 던진 횟수를 모델링하면 다음과 같다. 아래 식은 $k$번째 던졌을 때 앞면이 나올 확률을 의미한다.
$$P(X=k)=(0.5)^{k-1} \times 0.5$$
예제2: 제품 불량 검사
제조 라인에서 무작위로 제품을 검사할 때, 첫 번째 불량품이 나오기까지 검사한 제품 수를 모델링하면 다음과 같다. 아래 식은 첫 번째 불량품이 $k$번째에 검사할 때 나올 확률을 의미한다.
$$P(X=k)=(0.98)^{k-1} \times 0.02$$
기하 분포의 기대값과 분산
- 기대값 $E(X)$
$$\begin{align*}
E(X)= \sum_{k=1 }^{\infty }k\cdot P(X=k)\\
= \sum_{k=1 }^{\infty }k\cdot (1-p)^{k-1}p\\
= p\sum_{k=1 }^{\infty }k\cdot (1-p)^{k-1}\\
\end{align*}$$
무한급수의 합을 미분한 계산식을 사용하면
$$ \sum_{k=1 }^{\infty }k\cdot (1-p)^{k-1}=\frac{1}{(1-x)^2} \;\;(|x|<1)$$
아래와 같이 정리할 수 있다.
$$\begin{align*}
E(X) &= p\sum_{k=1 }^{\infty }k\cdot (1-p)^{k-1}\\
&=p \cdot \frac{1}{(1-(1-p))^2}\\
&=p \cdot \frac{1}{p^2}\\
&=\frac{1}{p}
\end{align*}$$
따라서 기하 분포의 기대값은 $\frac{1}{p}$이다.
- 분산 $Var(X)$
분산은 아래와 같이 계산한다.
$$Var(X) = E[(X-E(X))^2]=E[X^2] - E[X]^2$$
$E[X^2]$를 계산하자.
$$\begin{align*}
E[X^2] &= \sum_{k=1 }^{\infty } k^2 \cdot P(X=k)\\
&= \sum_{k=1 }^{\infty }k^2 \cdot (1-p)^{k-1} p \\
&= \displaystyle \lim_{n \to \infty} p \{1^2(1-p)^0+2^2(1-p)^1+ \cdots +(n-1)^2(1-p)^{n-2}+n^2(1-p)^{n-1}\}\\
\end{align*}$$
양변에 $(1-p)$를 곱한 식을
$$(1-p)E[X^2] = \displaystyle \lim_{n \to \infty} p \{1^2(1-p)^1+2^2(1-p)^2+ \cdots +(n-1)^2(1-p)^{n-1}+n^2(1-p)^{n}\}$$
기존 식에서 빼주면 아래와 같이 계산할 수 있다.
$$\begin{align*}
pE[X^2] &= \displaystyle \lim_{n \to \infty} p \{(1^2-0^2)(1-p)^0+(2^2-1^2)(1-p)^1+\cdots +(n^2-(n-1)^2)(1-p)^{n-1}-n^2(1-p)^{n}\}\\
\end{align*}$$
양변의 $p$를 약분하고 시그마 형태로 정리한 뒤 무한급수의 합을 활용한다.
$$\begin{align*}
E[X^2] &= \displaystyle \lim_{n \to \infty} \{\sum_{k=1 }^{n}(k^2-(k-1)^2)(1-p)^{k-1}-n^2(1-p)^n \}\\
&= \displaystyle \lim_{n \to \infty} \{ \sum_{k=1 }^{n}(2k-1)(1-p)^{k-1}-n^2(1-p)^n \}\\
&= \displaystyle \lim_{n \to \infty} \{2\sum_{k=1 }^{n}k(1-p)^{k-1}-\sum_{k=1 }^{n}(1-p)^{k-1}-n^2(1-p)^n \}\\
&= \displaystyle \lim_{n \to \infty} \{\frac{2}{(1-(1-p))^2}-\frac{1}{(1-(1-p))}-n^2(1-p)^n \}\\
&=\frac{2}{p^2}-\frac{1}{p}\\
&=\frac{2-p}{p^2}
\end{align*}$$
결과를 대입해 분산을 계산하면
$$Var(X) =E[X^2] - E[X]^2 = \frac{2-p}{p^2}-\frac{1}{p^2}=\frac{1-p}{p^2}$$
따라서 기하 분포의 분산은 $\frac{1-p}{p^2}$이다.
기하 분포의 시각화 (python)
동전을 던졌을 때 처음으로 앞면이 나올 확률을 시각화해보았다. 처음 던졌을 때 나올 확률은 50%, 두 번째에 나올 확률은 25%이다.
import matplotlib.pyplot as plt
import scipy.stats as stats
p = 0.5 # 성공 확률
k_values = range(1, 11) # 첫 번째 성공까지의 시행 횟수 (1부터 10까지)
# 기하 분포 확률 계산
geom_prob = [stats.geom.pmf(k, p) for k in k_values]
# 막대 그래프 그리기
plt.bar(k_values, geom_prob, color='lightblue')
plt.title('Geometric Distribution (p=0.5)')
plt.xlabel('Number of Trials until First Success')
plt.ylabel('Probability')
plt.ylim(0,max(geom_prob)*1.1)
# 각 막대 위에 확률 값 텍스트 추가
for i in range(len(k_values)):
plt.text(k_values[i], geom_prob[i] + 0.01, f'{geom_prob[i]:.2f}', ha='center')
plt.show()
기하 분포의 응용
기하 분포를 응용할 수 있는 예시이다.
- 통신: 데이터 전송 중 첫 번째 오류가 발생하기까지의 전송 횟수를 모델링
- 품질 관리: 첫 번째 결함이 발견될 때까지의 검사 횟수를 분석
- 마케팅: 고객이 처음으로 구매할 때까지의 접촉 횟수를 예측
기하 분포와 관련된 분포들
- 베르누이 분포: 기하 분포는 반복되는 베르누이 시행의 결과를 다룬다.
- 이항 분포: 이항 분포와 기하 분포는 베르누이 시행을 기반으로 하지만 모델링 목적에서 차이가 있다.
- 포아송 분포: 포아송 분포와 기하 분포는 사건 발생 모델링에 사용되나 접근 방식에 차이가 있다.
결론
기하 분포는 첫 번째 성공이 나타나기까지의 실패 횟수를 모델링하는 중요한 이상 확률 분포이다. 이를 통해 다양한 실제 문제를 분석하고 예측할 수 있으며, 특히 반복적인 시도에서 특정 사건이 발생할 때까지의 과정을 이해하는 데 유용하다.
다음 포스트에서는 음이항 분포에 대해 다루며, 기하 분포와의 관계 및 차이점을 정리할 예정이다.