Motivation
순서에 상관없이 조각내어서 bag에 가지고있는다 생각해보자.
각각의 이미지를 무수히 많은 bag of words로 조각내보자.
히스토그램을 그려보면...
왼쪽 여자그림은 자전거 모양도 별로 없고 바이올린의 모양도 별로 없을 것이다.
얼굴 부분의 빈도는 높을 것이다.
자전거 그림의 경우에는
자전거 그림의 빈도가 높을 것이고...
마찬가지로 바이올린도 비슷할 것이다.
문서의 경우
단어들이 있다.
공간적 순서적 정보도 중요하지만...
그러나 여기서는 무시한다.
등장한 단어들이 얼마나 자주 등장하는지, 위치에 상관없이!
Naive Bayes의 기본적인 아이디어가 이것임.
조각의 빈도를 체크한다. (위치, 순서는 고려하지 않음)
Bayes Theorem
스팸 메일 분류기를 디자인하는데 Bayes Theorem을 사용해보자.
$P(X)$는 $X$라는 random variable이 나타날 확률이라 가정하자.
$P(X_{1},X_{2})$ 는 $ X_{1}, X_{2} $가 동시에 발생할 확률이다.
$P(X_{1} | X_{2}) $ 는 $X_{2}$가 발생한 후에 $ X_{1} $이 발생할 확률
$X_{2}, X_{1}$이 동시에 일어날 확률은 다음과 같다.
$ P(X_{2},X_{1})=P(X_{2}|X_{1})P(X_{1})=P(X_{1}|X_{2})P(X_{2}) $
$X_{1}$이 일어났고, $X_{1}$이 일어난 후에 $X_{2}$가 일어날 확률을 곱한것과 같다.
$P(X_{2}|X_{1})P(X_{1})$
또는 $X_{2}$가 먼저 일어나고, $ X_{2}$가 일어난 후에 $ X_{1} $이 일어날 확률을 곱한것과 같다.
$P(X_{1}|X_{2})P(X_{2})$
$ P(X_{2}|X_{1})= \frac {P(X_{1}|X_{2})P(X_{2})} {P(X_{1})}$
이것이 Bayes Rule이다.
Bayes Rule이 의미하는 것은 무엇일까?
$ P(X_{2}|X_{1})= \frac {P(X_{1}|X_{2})P(X_{2})} {P(X_{1})}$
좌우변을 살폈을때,
$X_{1}$과 $X_{2}$를 swapping하는 것이 가능하다. 순서를 바꾸는 것이 가능하다.
좌변을 posterior라 하고 우변의 $P(X_{2})를 prior라 한다.
예시
학습 데이터가 위와 같을 때,
새로운 데이터가 들어왔을 때 판별을 하는 문제
Bayes Rule를 사용하면 다음과 같다.
메일을 열어보지 않았을 경우, 열어보지 않은 메일(어떠한 경험도 하지않음)이
스팸일 확률과 스팸이 아닐 확률은?
Prior Probability(사전확률)은 다음과 같다.
$ P(spam) = \frac {4}{6} $
$ P(ham) = \frac {2}{6} $
아래 식에서는 빨간글씨에 해당한다. (관측을 하지않고 햄인지 스팸인지 확률)
$ P(X_{2}|X_{1})= \frac {P(X_{1} | X_{2}) \textcolor {red} { P(X_{2})} } {P(X_{1})} $
메일을 열었더니, "review us now"가 나왔는데, 이게 스팸일 확률은?
일단 review만 보자.
$ P(spam|review) $ review라는 단어가 있었는데 스팸일 확률?
우리가 알고 있는 것은
스팸일 때 리뷰라는 단어가 등장한 것은 1개 $ P(review|spam) = \frac {1}{4} $
햄일 때 리뷰가 등장한 것은 2개니까 $ P(review|ham) = \frac {2}{2} $
데이터를 보지 않고 사전지식을 곱해줘야함(Prior)
$ P(spam|review) = \frac {P(review|spam) P(spam)} { P(review|spam)P(spam) + P(review|ham)P(ham) } $
$ \frac { \frac {1}{4} \times \frac {4}{6} } { \frac {1}{2} } = \frac {1}{3}$
각 메세지의 단어는 독립적인 사건이라 가정한다.
Naive Bayes.
$ P(x_{1},x_{2},x_{3}|y) = P(x_{1}|y)P(x_{2}|y)P(x_{3}|y) $
결과적으로 review us now는 햄으로 분류된다.
요약
naive bayes에서는 빈도수만 낸다. 여전히 유용하다.
독립이라는 가정이 유효하다고 하면, logistic regression과 같은 방식보다 효과적이다.
멀티클래스 분류에 쉽고 빠르게 예측이 가능하고, 수치형 데이터보다는 범주형 데이터에 효과적이다.
단점은...
학습데이터에는 없고 검사데이터에는 있는 카테고리는 확률이 0이 되어 정상적인 예측이 불가능
이를 zero frequency라 한다.
독립이라는 가정이 성립하지 않거나 약한 경우라면 결과에 에러가 발생할 수 있어서
결과를 너무 신뢰하면 안된다. 즉, 실제상황에서는 독립적인 상황이 많지 않아 적용이 어렵다.
'기초통계' 카테고리의 다른 글
왜도(Skewness)와 첨도(Kurtosis) (0) | 2020.03.02 |
---|---|
주변확률분포와 기댓값, 분산, 공분산, 상관계수 (0) | 2019.12.16 |
이산확률변수의 결합확률분포 (0) | 2019.12.12 |
확률질량함수 (0) | 2019.12.12 |
확률(Probability) vs 가능도(Likelihood) (0) | 2019.12.12 |