2016-11-06 26 views
1

문서를 클래스로 분류하기위한 naive bayes 분류기를 구현해야합니다. 그러므로, 클래스에 속한 용어에 대한 조건부 확률을 laplace smoothing과 함께하면, 다음과 같이 나타낼 수 있습니다 :naplace bayes 분류자를위한 Bernoulli 모델을위한 Laplace Smoothing

prob (t | c) = Num (클래스 c의 워드 프로세서에있는 워드 수 +1) Num 클래스 c) + | V |

그 bernoulli 모델은 1 또는 0이고 어휘는 아마도 20000 단어와 같이 매우 큽니다. 그래서 laplace의 평활화는 어휘의 크기가 크기 때문에 정말로 작은 값을 줄지 않을 것입니다. 아니면 잘못된 것을하고 있습니다.

이 링크의 Psuedo 코드에 따르면 : http://nlp.stanford.edu/IR-book/html/htmledition/the-bernoulli-model-1.html, bernoulli 모델의 경우 | V | 대신 2를 추가하면됩니다. 왜 그렇게?

+1

컴퓨터 과학 교환 존재하는지의 1/2의 가능성을 생산하는 결과를 가지고 1 것인가? – MordechayS

답변

1

다항 순진 베이 즈의 경우를 생각해보십시오. 위에서 정의한 매끄러움은 결코 확률이 0이 될 수 없다는 것을 의미합니다.

다 변수/베르누이의 경우 추가 제한 조건이 있습니다. 정확히 1의 확률도 허용되지 않습니다. 이는 알려진 단어의 t이 문서 d에 없을 때 1 - prob(t | c)의 확률에 문서 확률이 곱해지기 때문입니다. 베르누이 방정식 (Nct + 1)/(Nc + 2)

그래서 prob(t | c)이 1 인 경우, 다시 한번 이것이 0

의 사후 확률 생성하려고 (대신에 로그를 사용할 때 확률이 1 인 경우 마찬가지로를, log(1 - prob(t | c))는 미정이다) 두 경우 모두 보호됩니다. Nct == Nc 경우, 확률은 1/2이 아니라 이것은 또한 관계없이 t이 (P(t | c) == 1/2) 또는하지 (1 - P(t | c) == 1/2)