728x90

변수는 랜덤 하게 발생하거나, 일정한 확률을 가지고 발생합니다.

일정한 확률을 바탕으로 발생하는 변수를 확률변수(Random Variable)라고 합니다.

 

확률변수들이 모여 확률분포를 이루게 됩니다.

 

데이터의 확률분포를 알고 있다면, 

일어날 수 있는 사건의 확률을 알 수 있고, 확률에 근거한 판단을 내릴 수 있습니다. 

 

확률분포는 주사위처럼 결괏값이 떨어져 있는 이산형 확률분포

키와 몸무게와 같이 연속적으로 변하는 값들로 이뤄진 연속형 확률분포가 있습니다.

 

이산형 확률분포에는

베르누이 시행, 이항분포, 포아송분포, 기하분포, 음이항분포, 초기하분포 등이 있습니다.

 

연속형 확률분포에는

균등분포,  정규분포, 표준정규분포, 지수분포, 감마분포, 카이제곱분포, F분포, t분포 등이 있습니다.

 

 

감마분포(Gamma Distribution)

감마분포는 지수분포를 확장한 개념입니다.

 

포아송분포는 시간당 평균적으로 발생하는 사건의 횟수를 알고 있다면,

우리가 궁금해하는 시간대에서 사건의 발생횟수를 확률적으로 알려줍니다.

 

지수분포는 시간당 평균적으로 발생하는 사건의 횟수를 알고 있다면,

한 사건이 발생할 때까지 소요되는 시간을 확률적으로 알려줍니다.

 

감마분포사건이 여러 번 발생할 때까지 소요되는 시간을  확률적으로 알려줍니다. 

여러 번이 아니라 단 한 번의 사건이 발생할 때까지 시간을 계산한다면,

지수분포와 동일한 내용입니다.

 

감마분포도 연속형 확률분포이므로, 그래프 밑의 면적이 확률이 됩니다.

 

감마분포에서 확률을 알려주는 확률밀도함수는 다음과 같습니다.

지수분포의 형태를 결정짓는 요소는 알파와 베타입니다.

알파는 이해하기 어렵지 않으나, 

베타는 이해하기 어려운 부분이 있습니다. 

 

다섯 시간에 두 번 발생하는 사건이 있으며, 

한 번 발생할 시에는 5/2, 즉 2.5시간이 소요됩니다.

이는 5/2 으로 나타낼 수 있으며, 베타는 5/2가 됩니다.

 

지수분포는 시간에 대한 함수이므로,

시간이라는 기준에 맞게 변형해주는 과정입니다. 

 

알파가 1이고, 베타가 1인 감마분포는 다음과 같습니다.

알파가 2이고, 베타가 1인 감마분포는 다음과 같습니다. 

알파가 3이고, 베타가 1인 감마분포는 다음과 같습니다. 

한 시간에 한 번 발생하는 사건을 예로 들면,

주어진 시간당 사건 발생횟수의 비는 한 번 / 한 시간이 되어,

1이 되며, 베타는 1이 됩니다. 

 

한 시간에 한 번 발생하는 사건(베타 = 1)에 대해서,

한 번(알파 = 1) 발생할 확률에 비해,

두 번(알파 = 2) 발생할 확률은 더 많은 시간이 소요가 될 것이므로,

그래프는 오른쪽으로 이동하게 됩니다. 

 

두 번(알파 = 2) 발생할 확률에 비해,

세 번(알파 = 3) 발생할 확률은 더 많은 시간이 소요가 될 것이므로,

그래프는 더 오른쪽으로 이동하게 됩니다.

 

 

알파가 3이고, 베타가 1/2인 감마분포는 다음과 같습니다. 

알파가 3이고, 베타가 2/2인 감마분포는 다음과 같습니다. 

알파가 3이고, 베타가 3/2인 감마분포는 다음과 같습니다.

 

알파가 3이고, 베타가 4/2인 감마분포는 다음과 같습니다. 

알파가 3이고, 베타가 5/2인 감마분포는 다음과 같습니다. 

 

이번에는 사건이 3번(알파 = 3) 발생할 확률을 구하고자 합니다. 

한 시간당 2번 발생하는 사건(베타 = 1/2 )에 비해서,

두 시간당 2번 발생하는 사건(베타 = 2/2)이 더 사건이 뜸하게 일어나므로,

소요되는 시간은 길어지게 되어, 

그래프는 오른쪽으로 이동하는 모습을 보여줍니다.

 

세 시간당 2번 발생하는 사건(베타 = 3/2 )에 비해서,

네 시간당 2번 발생하는 사건(베타 = 4/2 )가 더 사건이 뜸하게 일어나므로,

그래프는 더 오른쪽으로 이동하는 모습을 보여줍니다.

 

 

감마분포가 감마분포라고 이름 붙여진 이유는 감마함수가 확률밀도함수의 식에 포함되기 때문입니다.

감마분포의 확률밀도함수는 다음과 같습니다.

여기서 분모가 바로 감마함수를 뜻합니다. 감마함수는 팩토리얼의 확장판입니다. 

 

n팩토리얼은 1부터 n까지의 모든 자연수의 곱을 뜻합니다. 

예를 들어 4!(팩토리얼)은 4 x 3 x 2 x 1을 뜻하며, 24가 됩니다.

 

그렇다면 감마함수를 활용하여 4팩토리얼을 구해보겠습니다.

다만 여기서 주의할 점은 4팩토리얼을 구하기 위해서는,

알파값은 구하고자하는 수에 1을 더한 값인 5를 입력해야 합니다.

우선 적분계산을 위해 sympy를 가져옵니다.

파이썬은 문자인 'x'와 변수의 'x'를 구분하지 못하므로,

symbols를 통해 x가 변수라고 알려줍니다. 

Integral은 적분하는 메서드이며, 

첫 번째 인수는 적분할 수식을 입력하고,

두 번째 인수는 괄호 안에 변수, 적분을 시작하는 점, 적분을 끝내는 점을 입력합니다.

최종적으로 계산을 위해 evalf()를 덧붙여 주며, 결과는 동일합니다. 

 

그렇다면 3.5!을 어떻게 구할까요?바로 감마함수가 이에 대한 답을 제공합니다.

scipy의 gamma 메서드를 활용해도 결과는 같습니다.

 

감마분포에서 감마함수가 필요한 이유는, 

확률을 계산하기 위해 경우의 수가 필요하지만, 

경우의 수는 불연속적인 값인데 비해,

시간은 연속적인 값이므로, 이에 대한 간극을 메우기 위해서 입니다. 

 

감마함수만 표현하면 다음과 같습니다.

알파에 따라 그래프의 모양을 달라지지만, 

알파가 1인 경우는, 지수분포의 람다가 1인 경우를 적분한 값 동일합니다. 

참고로 지수분포와 감마함수 모두 시간에 대한 분포와 함수이므로,

적분구간은 0부터 무한대까지 입니다.  

즉, 지수분포는 첫번째 사건이 발생하기까지 소요되는 시간을 확률적으로 보여주며, 

감마분포는 첫번째 사건 뿐만 아니라, 여러번의 사건까지 포괄하여 소요되는 시간을 보여줍니다. 

따라서 지수분포와, 알파가 1인 감마분포는 같습니다. 

 

다섯 시간당 2번 발생하는 사건이 있습니다.

즉 베타는 5/2입니다.

 

이 사건이 3번 발생할 때 확률을 구하고자 합니다. 

즉 알파는 3입니다. 

 

그리고 이 사건이 4시간 안에 발생할 때의 확률을 구하고자 합니다. 

즉 적분의 범위는 0부터 4까지 입니다.

수식을 살펴보기 위해 직접 대입하여 값을 구하였으나,

scipy의 gamma을 활용하여 간단히 구할 수 있습니다. 

gamma은 감마분포(gamma distribution)를 뜻하며,

우리는 0부터 네시간까지 발생할 확률에 대해서 알고자 하므로 4를 입력하고,

두 번째 인자는 알파를, scale은 베타를 입력합니다.

 

cdf는 누적분포함수(cumulative density function)를 뜻하며,

감마분포의 가장 왼쪽 끝인 0에서부터 특정 시점까지의 면적, 즉 확률을 알려줍니다. 

 

 

감마분포의 기댓값은 다음과 같습니다. 

예제와 같이 다섯 시간당 2번 발생하는 사건이 있으며, 감마분포를 따릅니다. 

이 사건이 3번 발생할 경우 평균적으로 기대되는 값은 다음과 같습니다.

즉 평균적으로 7.5시간 정도 소요될 것으로 예상됩니다.

 

식을 이해하기 위해 직접 대입하였으나,

scipy의 gamma.expect를 활용해도 결과는 동일합니다. 

 

 

감마분포의 분산은 다음과 같습니다. 

예제에 적용하면 다음과 같습니다.

수식을 이해하기 위해 직접 대입하였으나,

scipy의 gamma.var를 이용해도 결과는 동일합니다.

분산은 편차를 제곱한 값이므로, 데이터의 퍼진 정도가 제곱이 되어 있습니다.

이를 원래의 수준으로 되돌리기 위해, 루트를 씌워서 제곱근을 구합니다. 

이렇게 구해진 값을 표준편차라고 하며, math의 sqrt를 이용합니다.

예제와 같이 다섯시간당 2번 발생하는 사건이 있으며,

이 사건은 감마분포를 따른다면, 

3건의 사건이 발생할 때까지는,

평균적으로 3.17시간에서 11.83시간이 소요될 것으로 예상됩니다.  

 

 

지수분포는 한 번의 사건이 발생할 때까지 소요되는 시간을 알려주는 분포이며,

감마분포는 여러번의 사건이 발생할 때까지 소요되는 시간을 알려주는 분포입니다.

감마분포는 지수분포의 일반화된 개념입니다.

 

감마분포는 베이즈확률에서 사전확률의 분포의 하나로도 활용됩니다. 

초기에 선택한 사전확률분포를 기반으로 추론을 확장하는 베이즈확률에서

적절한 사전분포확률을 선택하는 일은 중요하며,

감마분포는 그에 대한 적절한 대안이 될 수 있습니다.

반응형

+ Recent posts