본문 바로가기

딥러닝기초

[확률]조건부 확률부터 Bayes Rule과 Bayes' Theorem 정리

조건부확률

 

 

A라는 사건이 일어났을 때 B가 일어날 확률

 

$$P(B|A) = \frac{P(A\cap B)}{P(A)}$$

 

Bayes' Rule

 

$P(A\cap B) = P(A|B)P(B) = P(B|A)P(A)$ 이므로

 

$$P(A|B) = \frac{P(B|A)P(A)}{P(B)}$$

 

Bayes' Theorem

$A_1$ ~ $A_n$사건이 $S$의 partition이라고 한다면

모든 i, j에 대해서 $A_i \cap A_j = \varnothing$ :  mutually exclusive(disjoint)

$A_1 \cup \cdots \cup A_n = S$를 만족한다.

 

B 사건을 S에서 일어난 사건이라고 하자. 그렇다면 P(B)를 다음을 통해 구할 수 있겠다.

$P(B) = \sum_{i=1}^n P(B\cap A_i) = \sum_{i=1}^n P(B|A_i)P(A_i)$

 

 

 

여기서 사전확률 $P(A_i)$와 조건부확률 $P(B|A_i)$만을 가지고 $P(A_i|B)$를 표현해보자.

 

$P(A_i|B)$를 조건부확률처럼 식을 세워보면,

$P(A_i|B) = \dfrac{P(A_i \cap B)}{P(B)}$

 

          $= \dfrac{P(A_i \cap B)}{\sum_{i=1}^n P(A_i\cap B)}$

 

          $= \dfrac{P(B|A_i)P(A_i)}{\sum_{i=1}^n P(B|A_i)P(A_i)}$

 

 

이는 사실 간단하게는 Bayes' Rule에서 P(B)만 풀어 정의한 것이다.

그렇게 Bayes' Rule을 사용하여 Bayes' Theorem을 정의하면

$$P(A_i|B) = \frac{P(B|A_i)P(A_i)}{\sum_{i=1}^nP(B|A_i)P(A_i)}$$

 

이렇게 구하기 어려운 사후확률 $P(A_i|B)$를 구하기 쉬운 conditional $P(B|A_i)$과 priori $P(A_i)$를 통해서 구했다!

 

예제를 보며 사후확률 개념을 확실히 알아보자.

 

 

 

 

+ 병이 없는 사람을 양성으로 오진할 확률은 2퍼센트라고 하자.

 

구하고자 하는 것은 본인이 검사를 받아 양성으로 떴을 때 병에 걸렸을 확률이다.

 

A : 병에 걸린 사건
B : 기계가 "양성입니다"라고 판정하는 사건

 

여기서 헷갈리지 말아야 할 것은 P(B) = 0.99가 아니다.

 

 

 

검사의 정확도가 말하는 것은 병이 있는 사람 100명을 대상으로 판정할 때 1명이 음성으로 오진이 되는 경우이다.

(반대로 병이 없는 사람 100명 중 2명은 양성이라고 깜짝 놀랄만한 오진 판정을 받겠다)

 

 

 

  • $P(A)$ : 사전확률(병이 있는 사람일 확률, 검사 B와는 상관이 없음)
  • $P(B)$ : A사건과 관련이 있음. 왜?
  • 병이 없는데 양성이라고 억울하게 오진 받은 사람, 병이 있고 정상적으로 양성으로 진단받은 사람
  • $P(B) = P(A)P(B|A) + P(\sim A)P(B|\sim A)$
  • $P(B|A)$ : 조건부확률(병이 있는 사람이 양성으로 나올 확률), 관측을 통해서 그래프로서 나타내는게 가능하겠다.
  • $P(A|B)$ : 사후확률(누군가를 기계가 양성판정 했을 때, 병을 가진 사람일 확률) <- target

 

 

 

 

사후확률을 직접적으로 구하기는 어렵다.

관측을 통해 구하기 쉬운 조건부확률과 사전확률을 통해 사후확률을 구하자.

 

 

 

 

$$P(A\cap B) = P(A|B)P(B) = P(B|A)P(A)$$

 

Bayes' Rule
$$P(A|B) = \frac{P(B|A)P(A)}{P(B)}$$

 

 

 

 

$P(B) = P(B \cap A_1) + P(B \cap A_2) + ... + P(B \cap A_n)$

현재 예제에서는 병이 있는데 양성이라고 잘 판단한 확률 + 병이 없는데 양성이라고 잘못 판단한 확률

 

Bayes' Theorem
$$P(A|B) = \frac{P(B|A_i)P(A_i)}{\sum\limits_{i=1}^nP(B|A_i)P(A_i)}$$

 

 

 

$P(A) = 0.001$

$P(B|A) = 0.99$

$P(B|~A) = 0.02$

$P(B) = P(A)P(B|A) + P(\sim A)P(B|\sim A) = 0.001\times 0.99+(1-0.001)\times 0.02 = 0.02097$

 

$$P(A|B) = \frac{0.99\times 0.001}{0.02097}=0.047...$$

 

 

그러므로 우리는 결과를 보고 있는 그대로 99퍼센트의 확률로 양성일 줄 알았으나,

실질적으로 병이 있을 확률은 고작 4.7%이다.

 

Bayes Rule을 통해서

1000명 중 한명 걸리는 그쪽이 맞겠냐,

1000명 검사 결과 중 20명 양성이라고 잘못 오진 되는 경우가 맞겠냐라고 묻는 것이다.

(1/21 = 0.047... 이렇게 나온다)

 

 

베이즈 정리는 한번만 사용되도록 고안된 공식이 아니다.

여러번 사용하면서 주어진 근거들을 바탕으로 확신의 정도를 높여가도록 만들어졌다.

 

 

만일 저 진단을 받고 한번 더 다른 의사를 찾아가 검사를 받았다.

이때 P(A) = 0.047로 업데이트된 채 구해야 한다.

 

$$P(A|B) = \frac{0.99\times 0.047}{0.047 \times 0.99 + (1-0.047)\times 0.02} = 0.7094...$$

 

 

유감스럽게도 약 71퍼센트의 확률로 병에 걸렸을 것으로 본다...