Naiwny klasyfikator bayesowski

Czym jest naiwny klasyfikator bayesowski?

Naiwny klasyfikator bayesowski to prosty i efektywny model klasyfikacji oparty na teorii prawdopodobieństwa i twierdzeniu Bayesa. Zakłada, że wszystkie cechy (atrybuty) są wzajemnie niezależne, co w praktyce rzadko jest prawdą. Dzięki swojej prostocie i efektywności jest często stosowany w zadaniach analizy tekstu i klasyfikacji binarnej.

Twierdzenie Bayesa

Twierdzenie Bayesa opisuje sposób obliczania prawdopodobieństwa warunkowego na podstawie wcześniejszych prawdopodobieństw:

\[ P(C \mid X) = \frac{P(X \mid C) \cdot P(C)}{P(X)} \]

Gdzie:

Założenie o niezależności cech

Model zakłada, że cechy są niezależne warunkowo względem klasy \(C\). Dzięki temu wzór można uprościć do postaci:

\[ P(C \mid X) = P(C) \cdot \prod_{i=1}^n P(X_i \mid C) \]

Gdzie \(X_i\) to wartość \(i\)-tej cechy.

Zalety naiwnych klasyfikatorów bayesowskich:

Wady naiwnych klasyfikatorów bayesowskich:

Zastosowania:

  1. Filtrowanie spamu:
    • Klasyfikowanie wiadomości e-mail jako „spam” lub „nie spam” na podstawie obecności słów kluczowych.
  2. Analiza sentymentu:
    • Określanie pozytywnego lub negatywnego tonu tekstu, np. w recenzjach produktów.
  3. Rozpoznawanie obrazów:
    • Klasyfikowanie obiektów w obrazach przy użyciu histogramów cech.
  4. Rekomendacje:
    • Przewidywanie preferencji użytkownika na podstawie jego wcześniejszych zachowań.

Typy naiwnych klasyfikatorów bayesowskich:

  1. Gaussian Naive Bayes:
    • Stosowany dla cech numerycznych zakładający, że wartości cech w klasach mają rozkład normalny.
  2. Multinomial Naive Bayes:
    • Często stosowany w zadaniach klasyfikacji tekstu, zakładający liczbę wystąpień cech (np. słów) w klasach.
  3. Bernoulli Naive Bayes:
    • Używany w przypadku danych binarnych (np. obecność lub brak danej cechy).

Przykład działania:

Załóżmy, że chcemy sklasyfikować wiadomość jako „spam” lub „nie spam” na podstawie obecności słów:

Dane historyczne:

Nowa wiadomość: Zawiera słowa „darmowy” (\(X_1 = 1\)) i „oferta” (\(X_2 = 1\)).

Obliczenie prawdopodobieństw:

Wniosek: \(P(C_1 \mid X) > P(C_2 \mid X)\), więc wiadomość zostaje sklasyfikowana jako „spam”.

Naiwny klasyfikator bayesowski, pomimo swoich ograniczeń, jest cennym narzędziem w eksploracji danych, szczególnie w przypadku dużych zbiorów tekstowych.