반응형
1. 지수 분포란?
지수 분포는 일정 시간 동안 독립적으로 발생하는 사건의 횟수가 포아송 분포를 따를 때, 다음 사건이 발생하기까지의 대기 시간을 모델링하는 연속 확률 분포입니다.
이 분포는 양의 값을 가지며, 시간이 지날수록 사건이 발생할 확률이 줄어듭니다.
지수 분포는 포아송 분포와 밀접한 관련이 있습니다.
포아송 분포가 일정 시간 동안 발생하는 사건의 횟수를 모델링한다면, 지수 분포는 연속적인 두 사건 사이의 대기 시간을 모델링합니다.
2. 지수 분포의 특성
지수 분포의 주요 특성은 다음과 같습니다:
- 평균은 1/λ 이고, 분산은 1/(λ^2) 입니다.
- 시간이 지날수록 사건 발생 확률이 감소합니다.
- 사건의 발생 횟수가 많아질수록 그 사건이 다시 발생할 확률은 낮아집니다.
3. 실생활 예시
지수 분포는 다음과 같은 상황에서 사용될 수 있습니다:
- 버스 정류장에서 버스를 기다리는 시간
- 평균 15분마다 한 대씩 오는 버스 정류장에서, 다음 버스가 도착하기까지의 대기 시간을 예측할 수 있습니다.
- 고장 나기 전의 기계 부품 사용 시간
- 특정 기계 부품이 평균적으로 1000시간 사용 후에 고장 난다고 할 때, 다음 고장까지의 사용 시간을 예측할 수 있습니다.
- 콜센터에 걸려오는 다음 전화까지의 시간
- 콜센터에서 평균적으로 10분에 한 번씩 전화가 걸려온다면, 다음 전화가 걸려오기까지의 대기 시간을 예측할 수 있습니다.
4. 지수 분포의 구현
scipy 라이브러리의 e 클래스를 이용할 수 있습니다.
import scipy.stats as stats
# 지수 분포 설정
lambda_ = 0.5 # 사건의 평균 발생률 (예: 평균 2시간마다 1건의 사건 발생)
exp_dist = stats.expon(scale=1/lambda_)
# 확률 및 기대값, 분산 계산
print(f"P(X<=1): {exp_dist.cdf(1)}") # 1시간 이내에 사건이 발생할 확률
print(f"기대값: {exp_dist.mean()}") # 기대값
print(f"분산: {exp_dist.var()}") # 분산
두번째로 버스 정류장에서 버스를 기다리는 시간을 지수 분포를 이용해 구현해 보겠습니다.
import scipy.stats as stats
# 지수 분포 설정
lambda_ = 1 / 15 # 평균 15분마다 버스가 도착
exp_dist = stats.expon(scale=1/lambda_)
# 대기 시간 확률 계산
print(f"P(X<=5): {exp_dist.cdf(5)}") # 5분 이내에 버스가 도착할 확률
print(f"P(5<X<=10): {exp_dist.cdf(10) - exp_dist.cdf(5)}") # 5분에서 10분 사이에 버스가 도착할 확률
print(f"기대값: {exp_dist.mean()}분") # 평균 대기 시간
print(f"분산: {exp_dist.var()}") # 분산
반응형
'Applied > DataScience' 카테고리의 다른 글
포아송 분포 개념 및 실생활 예제와 코드 (1) | 2024.03.04 |
---|---|
이항분포 개념 및 코드 예제 (0) | 2024.03.03 |
확률 질량함수와 함률 밀도함수 개념 및 예제 (0) | 2024.03.01 |
확률 변수, 확률 분포에 대한 이해 (0) | 2024.02.27 |
베이즈 정리 개념 및 코드 (0) | 2024.02.18 |