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. 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

3

Kilder

1
  • Pattern Recognition and Machine Learning, Christopher M. Bishop, 2006