01Önsel, kanıt, sonsal#
Bir ileti geldi ve içinde “ücretsiz” yazıyor. Spam mı? Cevap, iki şeye bağlı: gelen kutunda zaten ne kadar spam var (önsel) ve “ücretsiz” kelimesi spam iletilerde normal iletilere göre ne kadar daha sık geçiyor (kanıt). Bayes kuralı, ikisini birleştirip kanıtı gördükten sonraki inancı, yani sonsal olasılığı verir.
Stanford Felsefe Ansiklopedisi’ndeki gösterimle kural, H hipotezinin kanıt E’den sonraki olasılığını, H’nin önsel olasılığı ile H’nin E’yi ne kadar iyi öngördüğünün çarpımı olarak yazar. Normal ileti olasılığı da hesaba katılırsa:
Sınıflandırma metrikleri yazısında “nadir olay tuzağı”nı gördün; bu aynı kuralın bir örneğidir. Doğru olduğu zamanların %90’ında “pozitif” veren ve yanlış olduğu zamanların %10’unda yanlışlıkla “pozitif” veren bir test düşün: olay %1 sıklıktaysa pozitif sonucun gerçek olma olasılığı yalnızca %8,3; olay %50 sıklıktaysa %90. Aynı test, aynı kanıt, farklı önsel: sonuç çok farklı. Entry: Bayes’s Theorem ↗
02Odds biçimi: kanıt çarpar#
Kuralı hesaplaması çok daha kolay bir biçime çevirebilirsin. Odds, olasılığın “1 eksi olasılığa” oranıdır: %40 spam payı, 0,4/0,6 = 0,667 odds’tur. Bayes kuralı odds cinsinden şunu der: sonsal odds = önsel odds × olabilirlik oranı. Ansiklopedi bunu “koşullu olasılık = koşulsuz olasılık × öngörü gücü” diye özetler; olabilirlik oranına Bayes çarpanı da denir. Çarpan 1’den büyükse kanıt hipotezi destekler, 1’se hiçbir şey söylemez, 1’den küçükse karşı çıkar.
Birden çok kanıt varsa çarpanlar birbiriyle çarpılır: kanıt biriktirmek, çarpma yapmaktır. Aşağıda uydurulmuş küçük bir derlemle spam filtresi var: 40 spam ve 60 normal ileti, sekiz kelime. Kelimeleri seç, önsel spam payını değiştir.
Kanıt, inancı nasıl kaydırır?
Önce yalnızca “ücretsiz”i seç ve önsel spam payını %1, %10, %40 yap. Sonra kelimeleri tek tek ekle.
0,667 × 9,226 = 6,151Önce %40 → sonra %86,0 · spam kararıHesabı gör
Bayes kuralı, odds biçiminde: sonsal odds = önsel odds × P(kelime | spam) / P(kelime | normal). Odds, olasılığın 1 − olasılığa oranıdır (%40 → 0,667). Her kelime kendi çarpanıyla odds’u büyütür ya da küçültür; çarpan 1 ise kanıt hiçbir şey söylemez. Derlemdeki spam payı %40’tır; önsel payı bu değerde bırakırsan sonuç, kelimeyi içeren iletilerin kaçının spam olduğunu sayan oran olur.
Yalnızca “ücretsiz” seçiliyken (çarpan ×9,2) önsel payın etkisine bak: gelen kutusunun %1’i spamse sonuç %8,5; %10’uysa %50,6 (yazı-tura); %40’sa %86,0. Kanıt aynı; önsel farklı. Güçlü bir kelime, nadir bir olayı bir anda kesinliğe çevirmez.
Kelime ekledikçe odds çarpılır. “ücretsiz”, “tıkla” (×4,4) ve “indirim” (×2,6) birlikte, %40 önselle %98,6; %1 önselle ise %52,0. Karşı yönde kanıt da çalışır: “merhaba” (×0,71), “toplantı” (×0,20) ve “rapor” (×0,16) iletinin normal olduğuna işaret eder; “merhaba” + “toplantı” %40 önselle spam olasılığını %8,8’e indirir. Çelişkili kanıt birbirini götürür: “ücretsiz” + “merhaba” + “rapor” %40’tan %40,6’ya, yani neredeyse hiç kıpırdamaz.
03Naive Bayes: kelimeleri bağımsız say#
Gerçek bir ileti yüzlerce kelime içerir ve kelimelerin birleşik dağılımını öğrenmek imkânsızdır. Naive (saf) Bayes, işi basitleştirmek için bir varsayım yapar: spam ya da normal sınıfı bilindiğinde kelimeler birbirinden bağımsızdır. Bu varsayımla yukarıdaki çarpım doğru olur: her kelimenin çarpanı ayrı hesaplanır ve çarpılır.
Paul Graham’ın 2002 tarihli “A Plan for Spam” yazısı bu fikri ünlü etti: her biri yaklaşık 4.000 iletilik bir spam ve bir normal derlemden kelime olasılıkları çıkarıyor, iletideki en uç on beş kelimenin olasılıklarını bu çarpım biçimiyle birleştiriyor ve 0,9’un üstünü spam sayıyor. Yazar, kendi postasında 1000 spamin 5’inden azını kaçırdığını, hiç yanlış alarm olmadığını bildirdi. Bu sonuç yazarın kendi postası ve derlemi içindir; bir filtrenin her kişide aynı çalışacağı anlamına gelmez, yazının savunduğu şey de tam olarak her kullanıcıya kendi postasıyla eğitilmiş bir filtredir. A Plan for Spam ↗
04Bağımsızlık varsayımı çöktüğünde#
Kelimeler gerçekte bağımsız değildir: “ücretsiz” ve “kazandın” spam iletilerde sık sık birlikte gelir. Naive Bayes bu ikisinin çarpanlarını çarparak aynı bilgiyi iki kez sayar. Aşağıdaki derlemde bu iki kelime 40 spam iletinin 16’sında, 60 normal iletinin yalnızca 1’inde birlikte geçiyor.
İki kelime birlikte gelince
“İkisi birden”i seç ve önsel payı değiştir: naive çarpım, derlemin kendisinden ne kadar daha emin?
| İleti sayısı | ikisi de var | yalnız ücretsiz | yalnız kazandın | hiçbiri |
|---|---|---|---|---|
| Spam (40) | 16 | 8 | 2 | 14 |
| Normal (60) | 1 | 2 | 0 | 57 |
Naive: 129,4 · Birleşik: 12,5Naive: %98,9 · Birleşik: %89,3Hesabı gör
Naive çarpan: P(ücretsiz | spam)/P(ücretsiz | normal) × P(kazandın | spam)/P(kazandın | normal) = 129,4. Birleşik çarpan, ikisini birlikte içeren iletilerin oranlarından: (16+1)/(40+2) bölü (1+1)/(60+2) = 12,5. Kelimeler sınıf içinde bağımsız olsaydı iki sayı yaklaşık aynı olurdu; aralarındaki fark, çarpımın aynı bilgiyi ikinci kez saymasından gelir. Derlemin kendi önsel payında (%40) fark, sonsal olasılıkta yaklaşık %99’a karşı %89 olarak görünür.
“İkisi birden” seçiliyken naive çarpım 129,4; derlemin kendisinden (ikisini birlikte içeren iletilerin oranından) hesaplanan çarpan ise 12,5. Naive yaklaşım kanıtı yaklaşık on kat abartıyor. %40 önselle spam olasılığı naive hesapta %98,9, derlemin gerçek oranıyla %89,3. Tek kelimede iki yöntem aynıdır; fark yalnızca birbirine bağımlı kelimeler birlikte geldiğinde ortaya çıkar.
Bu, naive Bayes’in verdiği olasılıkların aşırı emin olabileceği anlamına gelir. Ama karar verirken bu her zaman bir sorun değildir. Domingos ve Pazzani, basit Bayes sınıflandırıcısının olasılık tahminlerinin ancak bağımsızlık varsayımı tutarsa en iyi olduğunu, buna karşılık sınıflandırma kararının bağımsızlık büyük ölçüde bozulsa bile en iyi kalabildiğini savundu; yazarlar bunun, sınıflandırıcının neden beklenenden iyi çalıştığını açıkladığını söylüyor. On the Optimality of the Simple Bayesian Classifier under Zero-One Loss ↗ Pratik ders: naive Bayes’in çıktısını sıralama ve karar için kullan, ama “%98,9” sayısını bir kalibre olasılık gibi okuma.
05Haberlerde ve modellerde nerede çıkar?#
- “Dedektör %95 doğru” iddiası. Bir yapay zekâ metni, deepfake’i ya da bir hastalığı yakalayan dedektör için önsel (gerçekte ne sıklıkta) bilinmeden “doğruluk” tek başına bir sonuç vermez. Sorulacak soru: bu pozitif, ne sıklıkta gerçek? Bu tam olarak Bayes kuralı.
- Bir kıyaslama sonucu bir iddiayı ne kadar destekler? Kanıtın gücü, iddia doğruysa o sonucun ne kadar daha olası olduğudur: Bayes çarpanı. Çarpan 1’e yakınsa sonuç iddiayı değiştirmez; birden çok bağımsız olmayan sonucu çarpmak ise aynı bilgiyi birkaç kez saymak olabilir.
- Model skorları olasılık değildir. Bir sınıflandırıcının “0,99”u, o kadar sıklıkla doğru olduğu anlamına gelmeyebilir; yukarıdaki naive Bayes örneği bunun en yalın biçimi.
Müfredatın sonuna geldin. Yeni bir yol seçmek için üstteki menüden Rota’ya, son gelişmeler için Gündem’e bak.
Bu yazıyı bitirdiğinde:
- Önsel, kanıt ve sonsal inancı bir örnekle anlatabilirsin.
- Odds biçiminde kanıtın çarpan olarak nasıl birikeceğini hesaplayabilirsin.
- Naive Bayes’in neden aşırı emin olabildiğini ama yine de iyi karar verebildiğini açıklayabilirsin.
Cümlelerden birini kendi sözlerinle anlatamıyorsan, ilgili bölüme dön ve demoyu yeniden dene.