Il modello Naive Bayes

Un classificatore Naive Bayes è basato essenzialmente teorema di Bayes:
\begin{displaymath}
P(x\vert y) = \frac{P(y\vert x) \cdot P(x)}{P(y)}
\end{displaymath} (2.1)

Nel caso di messaggi di posta elettronica, che si vuole classificare in maniera binaria come ham o spam, la formula si puà riscrivere con i seguenti simboli:

\begin{displaymath}
P(C_i\vert E) = \frac{P(E\vert C_i) \cdot P(C_i)}{P(E)}
\end{displaymath} (2.2)

dove $P(C_i\vert E)$ rappresenta la probabilità che l' email $E$ appartenga alla categoria $C_i$ (ham o spam); $P(E\vert C_i)$ è la probabilità che data una categoria $C_i$ (sempre ham o spam), le parole contenute nel messaggio $E$ siano presenti in $C_i$; $P(C_i)$ è la probabilità della categoria i-esima, ovvero che dato un messaggio, esso appartenga a tale categoria; $P(E)$ è la probabilità che tale messaggio occorra.

Per assegnare il messaggio $E$ ad una delle $2$ categorie (ham o spam), bisogna calcolare il risultato dell' equazione (2.2) per ciascuna di loro. Il messaggio $E$ viene quindi suddiviso in tutte le parole che lo compongono ( $E_1, \cdots, E_n$), e per calcolare $P(E\vert C_i)$ si calcola il prodotto delle probabilità delle singole parole che compongono l' email $E$, assumendo che siano pertanto statisticamente indipendenti (questo è l' approccio ``naive'', poichè generalmente tale assunzione non è vera):

\begin{displaymath}
P(E\vert C_i) = P(E_1\vert C_i) \times \cdots \times P(E_n\vert C_i)
\end{displaymath} (2.3)

Il messaggio email $E$ viene cosí assegnato alla categoria con la probabilità $P(C_i\vert E)$ più alta, con $P(C_i\vert E)$ pertanto uguale a:

\begin{displaymath}
P(C_i\vert E) = P(E_1\vert C_i) \times \cdots \times P(E_n\vert C_i) \cdot P(C_i)
\end{displaymath} (2.4)

La divisione per $P(E)$ viene omessa perchè è un fattore uguale per tutte le categorie del dominio, e quindi il suo calcolo può essere evitato in fase di classificazione.

Alessio Pace 2004-03-26