728x90

Bayes Theorem

Example: Netflix의 Bayes 정리, 자율주행에서 예측값을 업데이트하는 등 베이즈 정리는 즉각적인 정보에 의해 바로 값을 업데이트함



Conditional Probability (조건부 확률)

  • 1에서 100까지의 경우의 수가 있다면
  • 끝이 5로 끝난다는 정보 가 있다면 (A bar B 라고 읽음)
  • 짝수 라는 정보가 있다면
    $$P(A|B) = \frac{1}{2}$$

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

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

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



Likelihood (가능성/우도)

  • 어떤 class안에서 -> 어떤 현상이 관측될 확률
  • 쇼핑하러온 고객이 구매하는 것은 class(y), 말을 거는 것는 현상
  • class(Buy, Not Buy) x 현상(Talk, Not Talk) = 4개의 likelihood가 존재
CLASS 현상
P(TALK|BUY) P(NOT TALK|BUY)
P(TALK|NOT BUY) P(NOT TALK|NOT BUY)



Posterior Probability (사후 확률)

  • 어떤 현상이 관측되었을 때 -> 특정 class에 해당할 확률
현상 CLASS
P(BUY|TALK) P(NOT BUY|TALK)
P(BUY|NOT TALK) P(NOT BUY|NOT TALK)



Bayes Theorem

$$
P(B|T) = \frac{P(T|B) \times P(B)}{P(T)}
$$

여기서,

  • P(B|T) = posterior probaility
  • P(T|B) = likelihood
  • P(B) = prior prob (사전 확률)
  • P(T) = normalization constant

요약하면
Bayes Theorem은 말거는데 사는 확률을 구하는 것으로서
(Best case x 사전 확률) / 정보



그림을 통해 Bayees Theorem 확인하기

  • 구매 의지 o / x -> B / notB
  • 말 걸기 o /x -> T / notT

Prior prob (사전 확률)이 Buy : notBuy = 2 : 8 이고,
likelihood (가능도/우도)가
P(T|B) = 0.9, P(notT|B) = 1
P(T|notB) = 0.3, P(notT|notB) = 0.7

Drawing 2023-10-17 11.30.58.excalidraw.png

$$P(B|T) = \frac{P(T|B) \times P(B)}{P(T)} \approx 0.43$$

  1. Bayes 정리는 T만 남은 상황에서 B를 봄
  2. 기존 class 확률인 P(B) = 0.2에서 -> P(B|T) = 0.43 으로 갱신
  3. 말을 거는 상황이 관측(new info) 되니 기존의 확률에서 새로운 확률로 update
  4. 즉 “말을 건다” 라는 결과로부터 -> "구매 여부"라는 원인을 찾는 것

$$
P(B|T) = \frac{P(T|B) \times P(B)}{P(T)}$$
$$
= \frac{0.9 \times 0.2}{0.18 + 0.24}
$$
$$
= \frac{P(T|B) \times P(B)}{P(B \cap T) + P(T \cap \neg B)}
$$
$$
= \frac{ \frac{P(T \cap B)}{P(T)} \times P(B)}{P(B \cap T) + P(T \cap \neg B)}
$$
$$
= \frac{0.18}{0.42}
$$
$$
= 0.4286
$$



Bayes Therem 예시 계산

⏹ 1번 문제

암이 있는지 판별하는 테스트기를 사용하면
실제 암이있는데 양성으로 나올 확률 95%

건강한 사람이 테스트로 양성이 나올 확률 2%
건강한 사람이 테스트로 음성이 나올 확률 98%

암의 자연발생률 0.1% = 0.001

암 O/X : C / notC
양성/음성 : P / N

양성이 나온 경우 실제로 암일 확률 계산하기



⏹ 2번 문제

포털회사에서 스팸메일을 걸러내는 시스템을 개발하기 위해 메일 내용에 특정 단어가 들어갔을 때 스팸메일일 확률을 계산하고자 한다.
수신 메일 중 40%가 스팸 메일이고 나머지는 정상메일이다.
스팸메일 중 내용에 ‘A’ 라는 단어가 있는 메일은 25%이고 정상메일 중 이 단어가 있는 경우는 2%라고 하자.
수신메일 내용에 'A’라는 단어가 있다고 할 때 이 메일이 스팸메일일 확률을 구하시오.



⏹ 3번 문제

어떤 공장에는 A, B 생산라인이 있고, 각각 하루에 1000개, 2000개의 물품을 생산한다.
그리고 A 생산라인에서 불량품이 만들어질 확률은 10%이고, B 생산라인에서 불량품이 만들어질 확률은 15%이다.
만약 불량품이 발견되었다면, 이 불량품이 A, B에서 만들어졌을 확률을 각각 구하세요.



MLE (Maximum Likelihood Estimation) 과 MAP (Maximum A Posterior)

MLE: Likelihood 기반으로 생각하는 경우
ex) 교실바닥에 긴 머리카락을 발견했을 때 여자라고 예측하는 것

MAP: 사전 정보(Posterior) 를 활용하는 경우
ex) 교실에 있는 학생중에 긴 머리 남학생이 있는 경우에
교실 바닥에 긴 머리카락을 발견했을 때 남학생으로 예측하는 것

반응형