Discrete distribution (4) Poisson Distribution
여러 분포들에 대한 소개
1. Definition
단위 시간 안에 어떤 사건이 일어날 횟수에 대한 기대값을 $\lambda$라고 했을 때, 그 사건이 k회 일어날 확률에 대한 분포
- 확류변수 X: 단위 시간 당 사건 발생 횟수
- 단위 시간 안에 어떤 사건이 몇 번 발생할 것인지를 표현하는 확률 분포
- 기대값이 반드시 주어져야 함
- 단위 시간을 변경하여도 해당 구간에서 사건이 발생할 확률은 전체 척도 중에서 항상 일정함
2. PMF
\[f(k; \lambda) = \frac {\lambda^k e^{-\lambda}} {k!}\]- $\lambda$: 단위 시간 안에 사건이 일어날 기대값
- k: 사건의 발생 횟수
3. Theta
\[X \sim \text{Pois}(\lambda)\]- $\lambda$: 단위 시간 안에 사건이 일어날 기대값
4. Summary statistics
- Expectation: $\lambda$
- Variance: $\lambda$
📍필요성
- 발생 빈도가 낮은 사건의 확률을 다룰 때 사용
- 시간과 같이 연속적인 매체에서 발생하는 사건을 모델링할 때 유용
- 이항분포의 경우 n이 매우 크고 p가 매우 작은 경우 정확한 계산이 어려움
- n이 300을 넘어갈 경우 팩토리얼 연산 불능
5. Visualization
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import poisson
lambda_values = [1, 4, 10, 20]
# 가능한 사건의 개수 범위 설정
x = np.arange(0, 26)
# 4개의 포아송 분포를 수평으로 시각화
plt.figure(figsize=(20, 5))
for i, lambda_ in enumerate(lambda_values, 1):
pmf = poisson.pmf(x, lambda_)
plt.subplot(1, 4, i)
plt.bar(x, pmf, color='skyblue', edgecolor='black')
plt.title('$\lambda$ = {}'.format(lambda_))
plt.xlabel('Number of Events')
plt.ylabel('Probability')
plt.xticks(np.arange(0, 26, 5))
plt.grid(axis='y', linestyle='--', alpha=0.7)
plt.tight_layout()
plt.show()
댓글남기기