[빅테이터] 5. Baye’s Classification Methods

|

 Baye’s Classification Methods


n  Statistical classifiers(통계적 분류기) : 주어진 데이터가 특정 클래스에 속하는지를 확률을 구해서

   어떤 클래스에 속하는지 예측한다.

n  베이즈 이론에 기본을 두고 있다.

n  나이브 베이지안 분류기 같은 것은 특정 영역에서 의사결정 트리나(Decision Tree) 신경망 분류기(neural network classifier) 보다 성능이 좋다.

n  큰 데이터 베이스에서 높은 정확도 와 속도를 보여준다.



1.      Baye’s Theorem


     X :  data tuple , n개의  Attribute들로 이루어 져있다.( evidence라고도 한다.)

     H : Hypothesis(가정) , data tuple X 가 명세화된 클래스 C에 속한다는 가정

     P(H|X) : X Attribute Description이 주어졌을 때, tuple X가 클래스 C 에 속할 확률


n  Posterior probability (사후확률) : X라는 조건에 H의 사후 확률이다. 즉 어떤 일이 발생한 후에 그것(X) H라는 클래스에 들어 있을 확률이다.

n  예를 들어서, 고객이 age income으로만으로 이루어졌고 각각 35 4만불의 수입수입이라고 가정해보자, H는 우리의 고객이 컴퓨터를 산다는 가정이다. 그러면 P(H|X)는 이미 고객의 나이와 수입을 아는 X 에 대해서 우리의 컴퓨터를 살 확률이다.

n  다른 예, 유방암 진단을 받은 사람(X)이 정말로 유방암(H) 인지를 확인하는 데에서도 사용이 가능하다. 유방암이 아닌데도 유방암으로 진단이 나올 수가 있기도 하고(11프로정도나 된다), 진단할 때도 신뢰도가 75프로 정도 밖에 수준이 안된다.


     P(H) : 고객의 정보에 무관하게 모든 X 에 대해서 컴퓨터를 살(H) 확률

n  Prior probability (사전확률) : 사전 확률은 해당 일이 발생하기 전에 예측하는 것을 의미한다.


     P(X|H): H라는 조건에서의 X의 확률

n  사후확률

n  고객이 컴퓨터를 사는 것을 알 때, 35 4만불수입의 고객 X의 확률이다.


     P(X) : 고객 X 35 4만불 수입인 확률

n  Prior probability


     Baye’s Theorem

n  여기서 P(H),P(X|H),P(X)는 주어진 데이터에서 추정한다.


n          






2.      베이즈 이론 예제


n  한 회사의 휴대폰이 불량일 확률은 0.1%, 불량 중에서 배터리 오작동을 일으킬 확률은 40%, 한 대리점에서 배터리 오작동이 10% 이때 이 대리점에서 배터리가 오작동 한 것 중에서 진짜 불량은?


Ø   (H) =0.001 , P(X|H)=0.4 , P(X)=0.1

Ø  P(H|X)=0.001 * 0.4 / 0.1 = 0.004

Ø  , 배터리 오작동 중에서 휴대폰 불량일 확률은 0.4%이다


n  40대 여성이 유방암에 걸릴 확률이 1.4% 이고 유방암환자가 진단으로 양성이 나올 확률이 75%이다. 유방암 환자가 아닌 사람이 유방암으로 진단될 확률은 11%일때 유방암 진단을 받은 사람이 진짜 유방암일 확률은?


Ø  P(H) =0.014 , P(X|H)=0.75, P(X)=0.11896

Ø  P(X)는 유방암에 걸렸는데 양성으로 나올확률(0.014*0.75)와 유방암에   걸리지 않았는데 양성으로 나 올 확률(0.986 * 0.11)을 더한 값이 된다.

Ø  P(H|X)= 0.75 * 0.014/ 0.11896 = 0.0882

Ø  , 유방암 진단을 받았더라도 실제로 유방암일 확률은 8프로이다


3.      Naive Bayesian Classification


     Dn-차원 속성 벡터로 이루어진 튜플(tuple)의 데이터 셋이다.

     m 개의 클래스가 존재한다고 가정할 때, 분류기는 X 가 어느 클래스에 속하는지 예측하게 된다.


n          


n  따라서  왼쪽에 있는 것이 최대화 되는 것을 찾으면 된다.  이것은 maximum posteriori hypothesis 라고 한다.

n  베이즈 정리에 의해서 아래의 식으로 계산이 된다

n          



     P(X)는 모든 클래스에서 동일한 값을 갖기 때문에 이 분모는 무시하고 분모가 최대가 되는 것을 찾으면 된다. 만약 P(H)(클래스 사전확률)가 알려지지 않았다면 모든 클래스 확률은 동일하다고 가정해서        가 최대화하면 된다.


     주어진 속성들이 많다면          를 계산하는데 엄청난 비용이 소모가 된다. 이것을 줄이기 위해서 class-conditional independence(클래스 조건 독립)의 개념을 사용한다. 속성간에는 서로 독립적이어서 영향을 주지 않는다고 가정한다


n  여러 개의 속성에 대한      는 아래와 같이 계산이 된다.

n         

n  즉 각각의 속성들이 클래스에 속하는 확률의 곱이다.

n  만약 속성이 범주형 타입(categorical) 이라면 해당 데이터 셋에 존재할 수 있는 확률을 구하면 된다.

n  만약 속성이 연속성 데이터 타입(continuous-value) 이라면 분산과 표준편차를 이용해야한다.

n        의 식으로 구할 수가 있는데, 각각 입력데이터, 현재 클래스에 속한 데이터들에 평균, 현재 클래스에 속한 데이터들의 표준편차 이다. (가우시안(정규) 밀도 함수)

n  이것은 실제로      이렇게 계산이 된다.

n  만약 X=(35,4만불)이고 나이가 연속성이라고 가정할 때, 평균이 38이고 표준편차가 12라고 하면 해당 확률은 (38-12)~(38+12)에 속하는 것을 구하면 된다.


⑤        

를 만족하는 것을 구해주면 된다. 즉       가 최대가 되는 클래스가 최종적인 예측 클래스가 된다.

 


4.      나이브 베이즈 분류기 예제


         

                


     위의 D 에서 아래의 조건은 만족하는 X 가 어느 클래스에 속하는지를 구해보자

③         

         


④          에서 최대가 되는 것을 찾으면 된다.

⑤            는     

    


⑥        

             



     따라서






     마지막으로 위의 구한 값에 각각         를 곱하면


⑨        

     


     , X는 컴퓨터를 사는 것으로 분류가 가능하다.



5.      Laplacian correction or Laplace estimator


n        를 계산할 때 각각 속성이 해당 클래스에 속하는 확률을 곱을 구하는 과정에서 하나라도 0이면 전체값이 0으로 되기 때문에 예측을 하는데에 문제가 발생을 한다.

n        



n  이문제를 해결하려면 Laplacian correction을 이용하면 된다. , 우리가 다루는 데이터 셋은 상당히 크므로 그 데이터 셋에 몇 개의 데이터가 추가되도 결과에 크게 영향을 미치지 않으므로 확률이 0이 되지 않게 튜플을 주가해준다.



6.      Laplacian correction 예제


n  위의 예제에서 1000개의 튜플이 있고 income low인 사람은 0, medium 990, high 10명이 있다고 가정하자

n  Laplacian correction을 사용하지 않으면 9,0.990,0.010이 된다.

n  여기에서 Laplacian correction을 적용해서 각각에 하나씩 추가를 하면

n        

이 되며 0값이 없어지게 된다



참고문헌:Data Mining Concepts and Techniques, 3rd Edition, Jiawei Han & Micheline Kamber

저작권 문제가 발생시 삭제될 수 있습니다.

And