Naive Bayes Classifier

ingeol·2023년 2월 7일
0

NLP

목록 보기
1/8

나이브 베이즈 분류 : 특성들 사이의 독립을 가정하는 베이즈 정리를 적용한 확률 분류기의 일종

백오브워즈 가정 : 저자의 의도가 단어 사용 여부나 그 빈도에서 드러난다고 보는 가정.

  • TF-IDF(Term Frequency-Inverse Documnet Frequency) : 어떤 단어의 주제 예측 능력이 강할 수록 가중치가 커지고, 그 반대의 경우 작아짐.
    주제예측능력을 측정할 때 term자체는 자주 등장하지만 document전체제 자주 등장하지 않을 때 주제예측능력이 증가한다.

    TFIDF(w)=TF(w)×logNDF(w)TF-IDF(w) = TF(w) \times \log \frac{N}{DF(w)}
  • Deep Averaging Network( lyyer et al. 2015) : 문장에 속한 단어의 임베딩을 평균을 취해 문장의 임베딩을 만듬2

베이즈 이론 :

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

P(A|B) : posterior, P(B|A) : likelihood, P(A) : prior, p(B) : merginal

C 클래스에서 각가의 d 개의 document에 에 대하여 document가 c에 속할 확률은 P(c|d)로 나타낼 수 있다. 이에 대한 식은

P(cd)=P(dc)P(c)P(d)P(c|d) = \frac{P(d|c)P(c)}{P(d)}

분모를 dropping시킨 후 chain rule 까지 적용

P(dc)P(c)=P(w1,w2,...,wnc)P(c)=P(wnwn1,...,w1)×P(wn1wn2,...,w1)P(c)×...×P(w1c)P(c)P(d|c)P(c) = P(w_{1},w_{2},...,w_{n}|c)P(c) = P(w_{n}|w_{n-1},...,w_{1})\times P(w_{n-1}|w_{n-2},...,w_{1})P(c) \times...\times P(w_{1}|c)P(c)
P(dc)P(c)=P(c)wiWP(wic)P(d|c)P(c) = P(c)\prod _{w_{i}\in W }P(w_{i}|c)

예시) 스팸메일인지 아닌지 분류하는 문장 분류

1.(Training)me free lotterySpam
2.(Training)free get free youSpam
3.(Training)you free scholarshipInbox
4.(Training)free to contact meInbox
5.(Training)you won awardInbox
6.(Training)you ticket loterrySpam
7(test)you free lottery?
P(cspamd)=P(cspam)P(wyoucspam)P(wfreecspam)P(wlotterycspam)=12×210×310×210=61000P(c_{spam}|d) = P(c_{spam})P(w_{you}|c_{spam})P(w_{free}|c_{spam})P(w_{lottery}|c_{spam}) = \frac{1}{2} \times\frac{2}{10} \times\frac{3}{10} \times\frac{2}{10} = \frac{6}{1000}
1.(Training)me free lotterySpam
2.(Training)free get free youSpam
3.(Training)you free scholarshipInbox
4.(Training)free to contact meInbox
5.(Training)you won awardInbox
6.(Training)you ticket loterrySpam
7(test)you free lottery?
P(cInboxd)=P(cInbox)P(wyoucInbox)P(wfreecInbox)P(wlotterycInbox)=12×210×210×010=0P(c_{Inbox}|d) = P(c_{Inbox})P(w_{you}|c_{Inbox})P(w_{free}|c_{Inbox})P(w_{lottery}|c_{Inbox}) = \frac{1}{2} \times\frac{2}{10} \times\frac{2}{10} \times\frac{0}{10} = 0
P(cspamd)>P(cInboxd)P(c_{spam}|d)>P(c_{Inbox}|d)

그러므로 스펨메일에 속한다고 분류한다.

0개의 댓글