24.02.09
4주차 19차시 - 베이즈 통계학 맛보기
조건부 확률
1) 조건부확률 $P(A|B)$ : 사건 $B$가 일어난 상황에서 사건 $A$가 발생할 확률. 즉 말 그대로 특정 조건 하에서의 확률을 말함.
2) 베이즈 정리는 조건부 확률을 이용해서 정보를 갱신하는 방법을 알려준다. 좀 더 풀어서 설명하자면,
1. $A$라는 새로운 정보가 주어졌을 때
2. $B$가 발생할 확률 $P(B)$로부터
3. $A$가 발생했을 때 $B$가 발생할 조건부 확률을 계산할 수 있고,
4. 이를 베이즈 정리라 한다.
3) 베이즈 정리의 예
1. $D$ : 새로 관찰한(나타난) 데이터
2. $\theta$ : 모수
3. $P(\theta | D)$ : 사후확률$posterior$ $probability$. 데이터가 주어졌을 때(데이터를 관찰했을 때) $\theta$가 나타날(성립할, 발생할, ...) 확률. 데이터를 관찰한(데이터를 측정한, 데이터가 나타난, ...) 후에 측정된 확률이기에 사후확률이라 함.
4. $P(\theta)$ : 사전확률$prior$ $probability$. 말 그대로 모델링 이전의, 사전에 주어진 확률
5. $P(D | \theta)$ : 가능도$likelihood$. 현재의 파라미터 혹은 모수 하에서 해당 데이터(여기서는 $D$를 말함)가 관측될 확률
6. $P(D)$ : $Evidence$. 데이터의 분포(관측 상태)
=> likelihood와 evidence를 가지고 사전확률을 사후확률로 업데이트 할 수 있고, 이것이 베이즈 정리의 용도라 할 수 있다.
** $¬$ 기호는, '부정'을 의미한다. "negation(부정)을 걸었다"라고도 표현한다.
즉 위의 수식에서 $P(D|¬\theta)$ 가 의미하는 것은 $\theta$가 아닌 상황에서 $D$가 발생할(관측될) 확률이다 **
위 수식에서 $D$는 코로나 양성으로 검진되는 것 혹은 양성으로 검진된 집단을 의미하고, $\theta$는 실제로 코로나에 걸리는 것 혹은 걸린 집단을 의미한다.
- 주어진 것
$P(\theta)$ : 사전확률. 코로나에 걸릴 확률 => 0.1
$P(D)$ : 코로나 양성으로 검진될 확률
$P(D | \theta)$ : 가능도. 코로나에 걸렸는데 양성으로 검진될 확률 => 0.99
$P(D | ¬ \theta)$ : 가능도. 코로나에 안 걸렸는데 양성으로 검진될 확률 => 0.01
- 구하고자 하는 것
$P(\theta | D)$ : 사후확률. 코로나 양성으로 검진되었을 때 실제로 코로나에 걸렸을 확률
그런데 Evidence가 없어서 사후확률을 구할 수가 없다.
Evidence는 어떻게 구해야 할까?
이제 사후확률을 구할 수 있다.
그런데 만약 $P(D | ¬ \theta)$, 즉 검진결과가 틀릴 확률(=오탐률. 1종 오류)이 10%라면??
사후확률이 보다시피 크게 떨어지게 된다.
이로부터, 오탐률False alarm이 오르면 정밀도Precision가 떨어진다는 사실을 알 수 있다.
조건부 확률의 시각화
0) 위의 행렬을 혼동행렬Confusion Matrix이라 한다.
1) True Positive : 실제가 +(True, Positive, 양성, ... 등)인데 관측(예측)도 +인 경우.
2) True Negative : 실제가 -(False, Negative, 음성, ... 등)인데 관측도 -인 경우
3) False Positive : 실제로는 N인데 관측은 P인 경우(가짜 P다, 이 말이다) => 1종 오류, 오탐False alram 등으로 불림.
4) False Negative : 실제로는 P인데 관측은 N인 경우(가짜 N이다, 이 말이다) => 2종 오류
5) 정밀도Precision : $TP / TP+FP$. P라고 관측된 것 중에 실제 P의 비율
데이터 분석의 특성에 따라 1종 오류를 범하는 것이 더 위험한가(more critical), 2종 오류를 범하는 것이 더 위험한가는 다르다.
ex) 의료분야의 경우 False Negative가 더 위험하다. 예를 들어 암 조직검사를 했다고 하자. 2종 오류를 범했다고 한다면 실제로는 암에 걸렸는데 안 걸렸다고 오진을 내리는 것이 된다. 큰일 났다는 말이다.
즉 이런 경우는 1종 오류보단 2종 오류를 줄이는 데에 더 신경써야 한다.
위의 행렬에서 볼 수 있듯, 만약 오탐(1종 오류)이 줄어들면 정밀도가 커진다(FP가 작아지니까)
베이즈 정리를 통한 정보 갱신
위의 코로나 사례(단, 오탐률이 10%인 경우)에 대입해본다면?
한번 더 검사해서 총 3번 검사하게 되면 정밀도가 99.1%까지 갱신된다! 위의 방법대로 한번 더 계산해보면 된다.
조건부 확률과 인과관계
- 조건부 확률은 통계적으로 해석하는데에는 굉장히 훌륭하지만, 인과관계causality를 추론하는 데에 함부로 사용하면 안 된다. 데이터만 가지고 인과관계를 해석할 수는 없다.
- 인과관계는 어따 쓰는가? => 데이터 분포의 변화에 크게 영향받지 않는 예측모형을 만들 때 도입한다.
- 인과관계는 중첩요인confounding factor의 효과를 제거하고 원인 T와 결과 R만을 고려해야 정확하게 계산할 수 있다.
** 중첩요인 : 연관성을 보이는 2개의 변수가 있을 때, 이 두 변수에 모두 영향을 미치는 공통 요인을 말한다.
- 간단한 예로, 키와 지능의 연관성을 들어볼 수 있다.
- 일반적으로 키와 지능은 상관관계가 없는 특징이라고 여겨진다. 그러나 전체인구통계에서, 키와 지능을 살펴보면 이상하게도 키가 클수록 지능이 높다는 것을 알 수 있다.
- 그렇다면 과연 키와 지능은 인과관계가 있는 것일까? 키가 클수록 지능이 높아지게 되는걸까?
- 그렇지 않다. 이는 '나이'라는 중첩요인 Z를 제거하지 않았기 때문이다.
- 성장기에서, 나이를 먹을 수록 키도 커지고 지능도 높아진다.
- 키 → 지능으로 바로 연결되는 것이 아니라, 모든 조사대상의 나이를 동일하게 맞추어 나이라는 중첩요인을 제거한 뒤 조사해야 한다. 그렇지 않으면 가짜 연관성spurious correlation이 나오고, 모델의 정확도가 떨어진다.
인과관계 추론 예제
- 전체적인 치료법의 성공률Overall을 보면 치료법 b가 낫다.
- 그러나, 실제로는 신장결석 여부와 관계없이 각각의 환자군 모두에서 치료법 a가 더 낫다.
- 이는 심슨의 역설이라고 불리는 아주 유명한 패러독스로, 부분이 크다고 해서 전체도 큰것은 아니라는 것을 나타낸다. 정확한 추론을 위해서는 전체를 부분별로 각각 나누고 정확하게 원인을 분석해야 한다..
조정intervention과정을 통해 중첩효과 Z의 개입을 제거하여, 신장결석 크기와 관계없이 치료법 a와 b를 선택했을때의 완치율을 알 수 있다. 이는 조건부 확률을 사용하는 베이즈 정리와는 달리, 인과관계로 예측하는 것이다.
제거하고 나면, 치료법 a는 약 0.83, 치료법 b는 약 0.78로 치료법 a를 선택하는 것이 더 나은 방법이라는 것을 확인할 수 있다.
이처럼 중첩효과를 제거함으로써 더 안정적으로 정책을 분석하거나 안정적인 예측모형을 설계할 수 있다.
따라서 단순히 조건부확률만으로 데이터 분석을 하는 것은 위험하고, 데이터에서 추론할 수 있는 사실 관계들이나 변수들끼리의 관계, 도메인 지식 등을 활용함으로써 더 좋은 데이터모형을 만들 수 있다.
'STUDY > 부스트코스 - AI 엔지니어 기초 다지기' 카테고리의 다른 글
[AI 엔지니어 기초 다지기] 17일차 (2) | 2024.02.14 |
---|---|
[AI 엔지니어 기초 다지기] 16일차 (0) | 2024.02.13 |
[AI 엔지니어 기초 다지기] 14일차 (2) | 2024.02.07 |
[AI 엔지니어 기초 다지기] 13일차 (0) | 2024.02.05 |
[AI 엔지니어 기초 다지기] 12일차 (0) | 2024.01.31 |