Il classificatore Naive Bayes è un algoritmo di Apprendimento Supervisionato basato sull’applicazione del Teorema di Bayes. Viene definito “naive” (ingenuo) perché assume che tutte le caratteristiche (feature) di un oggetto siano indipendenti l’una dall’altra data la classe di appartenenza.
Principio di Funzionamento
Dato un oggetto con caratteristiche , l’algoritmo calcola la probabilità che esso appartenga alla classe :
Nonostante l’ipotesi di indipendenza sia raramente vera nella realtà, il classificatore Naive Bayes spesso produce risultati sorprendentemente accurati, specialmente con dataset di grandi dimensioni.
Varianti Comuni
- Gaussian Naive Bayes: Assume che le caratteristiche seguano una Distribuzione Normale.
- Multinomial Naive Bayes: Usato per conteggi (frequente nel text mining).
- Bernoulli Naive Bayes: Usato quando le caratteristiche sono binarie (es. presenza o assenza di una parola).
Punti di Forza
- Velocità: Richiede pochissimo tempo per l’addestramento e la previsione.
- Scalabilità: Funziona bene con un numero elevatissimo di caratteristiche.
- Dati scarsi: Può funzionare meglio di modelli complessi quando i dati di addestramento sono limitati.
Significato Ingegneristico
- Filtraggio Spam: Storicamente l’applicazione principale, dove ogni parola del messaggio viene trattata come una caratteristica indipendente.
- Sentiment Analysis: Classificazione di recensioni o feedback tecnici come “positivi” o “negativi” basandosi sulle parole utilizzate.
- Diagnosi Rapida: In sistemi embedded con risorse di calcolo limitate, dove non è possibile far girare reti neurali pesanti, Naive Bayes offre un ottimo compromesso tra precisione e velocità.
Vedi anche: Teorema di Bayes, Apprendimento Supervisionato, Probabilità Condizionata.