Naive Bayes Neden Basit Ama Etkili: Olasılık Temelleri
Naive Bayes, makine öğrenmesinin en sade ama güçlü yöntemlerinden biri. Adı "saf" anlamına gelen "naive" kelimesinden geliyor çünkü özelliklerin birbirinden bağımsız olduğunu varsayar, bu varsayım gerçekte çoğu zaman yanlış olsa da, yöntemi hızlı ve etkili kılar.
Temel fikir Bayes teoreminden gelir. Bir e-postanın spam olma olasılığını hesaplamak istiyorsun. Bayes teoremi şöyle der:
1P(Spam | Kelimeler) = P(Kelimeler | Spam) × P(Spam) / P(Kelimeler)Bu formülde P(Spam | Kelimeler), e-postadaki kelimeleri gördüğümüzde bunun spam olma olasılığı. P(Kelimeler | Spam) ise spam e-postaların bu kelimeleri içerme olasılığı. Eğitim verilerinden bu olasılıkları hesaplayabilirsin.
Naive Bayes'in "saf" tarafı burada ortaya çıkıyor. Her kelimeyi bağımsız kabul eder. Yani "ücretsiz" ve "para" kelimeleri birlikte spam göstergesi olsa bile, algoritma onları ayrı ayrı hesaplar ve çarpar. Gerçekte kelimeler ilişkili olabilir ama bu basitleştirme hesaplamayı çok hızlandırır.
Python'da scikit-learn kütüphanesiyle bir örnek yapalım:
1from sklearn.naive_bayes import MultinomialNB2from sklearn.feature_extraction.text import CountVectorizer34# Eğitim verisi5metinler = [6"ücretsiz para kazan",7"acil tıbbi yardım gerekli",8"özel teklif sadece bugün",9"merhaba nasılsın",10"toplantı saatimiz 3'te"11]12etiketi = [1, 1, 1, 0, 0] # 1=spam, 0=normal1314# Metinleri sayılara çevir15vectorizer = CountVectorizer()16X = vectorizer.fit_transform(metinler)1718# Model eğit19model = MultinomialNB()20model.fit(X, etiketi)2122# Tahmin et23test = vectorizer.transform(["ücretsiz para kazan"])24print(model.predict(test)) # Çıktı: [1]25print(model.predict_proba(test)) # Olasılıklar: [[0.33 0.67]]Çıktı gösterir ki e-posta %67 olasılıkla spam. Naive Bayes hızlı çalışır ve az veriyle başarılı sonuçlar verir. Metin sınıflandırması, spam filtreleme ve haber kategorilendirmede standart seçimdir. Karmaşık ilişkileri modellemek için daha gelişmiş yöntemlere ihtiyaç duyarsan da, hızlı bir başlangıç için Naive Bayes her zaman iyi bir seçenektir.
0 yorum