Bayesian

제이브로·2021년 11월 29일
2

AI부트캠프

목록 보기
11/32
post-thumbnail

Bayesian


Statistics


1. 베이지안 통계 개론 (Bayesian Inference)

1.1 총 확률의 법칙 (The Law of Total Probability)

A 라는 특정 확률 변수에 대해, 모든 가능한 이벤트의 총 확률은 1

  • P(A)=nP(An)=1P(A) = \sum_n P(A_n) = 1

1.2 조건부 확률 (The Law of Conditional Probability)

다른 이벤트가 일어난 상황에서의 조건

  • P(AB)=P(AB)P(B)=P(BA)P(A)P(B)P(A|B) = {{P(A \cap B)} \over {P(B)}} = \frac{P(B|A)P(A)}{P(B)}

  • p(A)=p(AB)p(B)+p(AnotB)p(notB)p(A) = p(A | B) \cdot p(B)+ p(A | not B) \cdot p(not B)


2. 베이지안 이론 (Bayes Theorem)

베이지안이란?

  • P(A)P(A) : 사전 확률. B라는 정보가 업데이트 되기 전의 사전확률

  • P(AB)P(A|B) : 사후 확률. ( B라는 정보가 업데이트 된 이후의 사(이벤트)후 확률 )

  • P(BA)P(B|A) : data

조건이 붙지 않은 확률은 사전확률("Prior"), 조건이 붙은 부분은 사후확률("Updated")로 다시 표현 할 수 있습니다.
Q . 이것이 중요한 이유는 무엇일까요?

2.1 몬티홀 with 베이지안

HH( Hypothesis ) : 1번 문 뒤에 자동차가 있음
EE( Evidence ) : 진행자가 염소가 있는 문을 1개 열어줌

  • P(EH)P(E|H) = 1번 문에 자동차가 있는 상황에서 진행자가 염소가 있는 문을 1개 열어줄 확률 = 1

  • P(H)P(H) = 자동차가 1번문에 있을 확률 : 13\frac{1}{3}

  • 마찬가지로 P(EnotH)P(E|not H) = 1

  • P(notH)P(not H) = 23\frac{2}{3}

* 신뢰구간 with 베이지안

* Bayesian Optimize


Quiz


Q1. Multiple Choice Test

  • 학생이 답을 알 확률 : pp
  • 답을 찍어서 맞출 확률 : 1/m1/m
  • 학생이 문제의 답을 알고 맞췄을 확률은 ?

'''
A : 답을 안다
B : 맞춘다

답을 안다 P(A) = p
답을 맞추고, 모른다 = P( B | not A ) = 1 / m
답을 맞추고 안다 = P( B | A ) = 1

P( B ) = P( B | A ) * P( A ) + P( B | not A ) * P( not A )
       =  1 * p + 1/m * ( 1- p)

알고싶은 확률 : 학생이 문제의 답을 알고, 맞출 확률 : P( A | B )
P( A | B ) = P ( B | A ) * P( A ) / P( B )
'''

def correct(p, m):
    ans = 1 * p / ( 1 * p + 1/m * ( 1- p ) )
    return ans

Q2. Blood Test

  • 질병이 없지만 질병이 있다고 진단 : 1%
  • 질병이 있다 : 0.5%
  • 질병이 있다고 진단, 실제로 질병을 가지고 있을 확률은 ?

'''
A : 질병이 있다
B : 질병으로 진단한다

질병이 있다 : P( A ) = 0.005
질병이 없고, 질병이 있다로 진단 : P( not B | A ) = 0.01

질병이 있다고 진단 받았을때, 실제로 질병을 가지고 있을 확률 : P( A | B )
P( A | B ) = P( B | A ) * P( A ) / P( B )
           = tpr * prior / tpr * prior + fpr * ( 1- prior )

P( B ) = P( B | A ) * P( A ) + P( B | not A ) * P( not A )

prior(= 사전확률) : P( A )
tpr = True Positive Rate (= 민감도 ) : P( B | A )
fpr = False Positive Rate (= 1 - 특이도 ) : P( B | not A )
'''

def disease(prior, tpr, fpr):
    ans = (tpr * prior) / (tpr * prior + fpr * ( 1- prior ))
    return ans

질병 양성(+)질병 음성(-)
진단 양성(+)TNFP
진단 음성(-)FNTN
  • 민감도( Sensitivity ) : TP / (TP + FN ) : 병에 걸린 사람이 검사 결과 양성
  • 특이도( Specificity ) : TN / (TN + FP ) : 건강한 사람이 검사 결과 음성
  • 1종 오류 : FP
  • 2종 오류 : FN

🔥 도전과제



👉 과정 한눈에 보기

profile
기록하지 않으면 기록되지 않는다.

0개의 댓글