Middle — Senior
Cos'è un classificatore bayesiano ingenuo?
sobes.tech AI
Risposta dell'AI
Il classificatore naive bayes è un classificatore probabilistico semplice basato sull’applicazione del teorema di Bayes, assumendo l’indipendenza tra le caratteristiche.
Idea:
- Si calcola la probabilità che un oggetto appartenga a una classe, considerando i valori delle caratteristiche.
- Si assume che tutte le caratteristiche siano indipendenti, il che semplifica i calcoli.
Esempio: classificazione delle email come spam o non spam in base alle parole nel testo.
Vantaggi:
- Veloce e facile da implementare.
- Funziona bene con grandi set di dati.
Limitazioni:
- L’assunzione di indipendenza delle caratteristiche spesso non si verifica, il che può ridurre la precisione.
Esempio in Python usando sklearn:
from sklearn.naive_bayes import MultinomialNB
from sklearn.feature_extraction.text import CountVectorizer
texts = ["messaggio spam", "importante riunione", "acquista ora", "aggiornamento del progetto"]
labels = [1, 0, 1, 0] # 1 - spam, 0 - non spam
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(texts)
model = MultinomialNB()
model.fit(X, labels)
new_text = ["acquista riunione"]
X_new = vectorizer.transform(new_text)
prediction = model.predict(X_new)
print(prediction) # Mostrerà [1] - spam