확률분포/이산형 확률분포

[python/파이썬] 베르누이 시행

gilber 2023. 1. 6. 03:02
728x90

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

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

 

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

 

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

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

 

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

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

 

이산형 확률분포에는

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

 

연속형 확률분포에는

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

 

 

베르누이 시행(Bernoulli Trial)

결괏값이 성공과 실패, 합격과 불합격, 앞면과 뒷면 등과 같이,

단 두 가지의 가능성만 있을 때 이를 베르누이 시행이라고 합니다. 

 

베르누이 시행의 베르누이는 수학자 야곱 베르누이를 뜻합니다.

 

참고로 다른 확률분포와는 달리 베르누이 '시행'만 분포가 아니라 '시행'이라고 칭합니다. 

그 이유는 베르누이 시행은  오직 한 번만 시행하기 때문입니다. 

이와는 대조적으로 이항분포는 여러 번 반복 시행하여 분포를 구합니다. 

 

연구 결과, 어떤 사건이 성공할 확률은 0.7 즉 70%라고 가정하겠습니다.

따라서 실패할 확률은 1에서 성공할 확률 0.7을 뺀 0.3이며, 30%입니다. 

 

이산형 확률분포의 기댓값은 각각의 기대되는 값과 이에 해당하는 확률을 곱한 후, 모두 합한 값입니다. 

 

이를 베르누이 시행에 적용하겠습니다. 

성공은 1, 실패는 0으로 합니다. 

기댓값 수식에 대입한 결과입니다. 

이산형 확률분포의 기댓값 수식에 대입하여 구하였으나, 

실험 결과가 성공과 실패 밖에 없으며, 단 한 번만 시행하므로,

실패를 뜻하는 값인 0에 곱해지는 확률은 0이 되어, 성공에 해당하는 확률만 남게 됩니다.

베르누이 시행에서 성공에 대한 기댓값은 성공확률 그 자체입니다. 

 

 

이산형 확률분포의 분산은 각각의 편차를 제곱하고, 각각에 해당하는 확률을 곱한  후, 모두 더한 값입니다.

 

이를 베르누이 시행에 적용하겠습니다.

파이썬 내부에서 취급하는 수의 자릿수가 한정되어, 위와 같이 표시되나,

실제 결괏값은 성공확률과 실패확률의 곱인 0.21이 분산입니다.

 

이산형 확률분포의 분산 수식에 대입하여 구하였으며,

p를 성공확률, q를 실패확률이라고 할 때, 구체적인 계산과정은 다음과 같습니다.

 베르누이 시행에서 성공에 대한 분산은 성공확률과 실패확률을 곱한 값입니다.

 

수식에 기반하여 직접적으로 계산하였으나,

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

기댓값의 결과는 행렬로 나옵니다. 

파이썬은 어떤 것이 성공확률이고, 어떤 것이 실패확률인지 알지 못합니다. 

그래서 결괏값을 모두 행렬로 표시합니다.

 

우리는 성공확률이 0.7이라는 사실을 알고 있습니다. 

그래서 성공확률의 기댓값인 행렬에서 1행의 1열을 별도로 출력하여 확인합니다.

참고로 파이썬은 0부터 숫자를 세므로, 여기서의 1행과 1열은 모두 두번째 행의 두번째 열을 뜻합니다.

 

분산도 동일합니다.

파이썬 내부에서 취급하는 수의 자릿수가 한정되어, 위와 같이 표시되나, 

실제 결괏값은 성공확률과 실패확률의 곱인 0.21이 분산입니다.

 

베르누이 시행은 일반적으로 그 자체로 활용되지 않습니다.

베르누이 시행과 같이 성공과 실패와 같은 두 가지의 가능성만 있으나,

베르누이 시행과는 달리 여러 번 반복시행하여 분포를 구하는 이항분포의 근간으로서 그 의의를 찾을 수 있습니다.

 

이항분포는 여러 번 반복시행을 전제로 하나, 

한 번만 시행한 경우에는 베르누이 시행이 됩니다.

 

 

반응형