Naive Bayes
En familie af probabilistiske klassifikationsalgoritmer baseret på Bayes' sætning med antagelse om betinget uafhængighed mellem features givet klassen.
Kort fortalt
En simpel, men effektiv klassifikationsalgoritme, der antager at alle input-variable er uafhængige af hinanden inden for hver klasse.
- Kategori
- teknik
- Niveau
- begynder
- Udtale
- /naɪv beɪz/
Betydninger
1- 1
En klassifikationsalgoritme, der anvender Bayes' sætning under antagelse om, at alle features er betinget uafhængige givet klassen. På trods af denne ofte urealistiske antagelse fungerer den overraskende godt i mange praktiske anvendelser, især inden for naturlig sprogbehandling.
- Vi trænede en Naive Bayes-klassificerer på e-maildata for at filtrere spam fra legitime beskeder. — Eksempel opdigtet til ordbogen
- Naive Bayes bruges ofte som baseline-model i tekstklassifikationsopgaver på grund af dens enkelhed og effektivitet. — Eksempel opdigtet til ordbogen
Hvornår bruges det
Naive Bayes anvendes ofte til tekstklassifikation, spamfiltrering, sentimentanalyse og medicinsk diagnostik, især når datasættet har mange features og kravene til beregningsressourcer er lave.
Formel
P(class|features) ∝ P(class) · ∏_{i=1}^n P(feature_i|class)Kodeeksempel
from sklearn.naive_bayes import MultinomialNB
from sklearn.feature_extraction.text import CountVectorizer
# Eksempel: tekstklassifikation
tekster = ['spam tilbud', 'normal tekst']
etiketter = [1, 0]
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(tekster)
model = MultinomialNB()
model.fit(X, etiketter)Eksempel på træning af en Multinomial Naive Bayes-klassificerer til tekstklassifikation.
Oprindelse
Opkaldt efter den britiske matematiker Thomas Bayes (1702-1761) og antagelsen om 'naiv' (naiv) uafhængighed mellem features.
Afledte ord
3Kilder
1- Pattern Recognition and Machine Learning, Christopher M. Bishop, 2006