Bayesci spam filtresi
Önceki egzersizde harika iş çıkardın! Şimdi ünlü Bayes Teoremi’ni ele alalım ve onu basit ama önemli bir görev için kullanalım: spam tespiti.
Gelen kutunu kurcalarken, okumaya zaman harcamak istemeyeceğin e-postaların birçoğunda "ŞİMDİ SATIN AL!!!" gibi ünlemi bol ifadeler olduğunu fark ettin. Art arda üç ünlem işaretinin bulunmasının iyi bir spam belirleyicisi olabileceğini düşünmeye başladın! Bu yüzden emails adlı bir DataFrame hazırladın; iki değişken içeriyor: spam (e-postanın spam olup olmadığı) ve contains_3_exlc ("!!!" dizesini içerip içermediği). Verinin başı şöyle görünüyor:
spam contains_3_excl
0 False False
1 False False
2 True False
3 False False
4 False False
Görevin, üç ünlem işareti içerdiği durumda e-postanın spam olma olasılığını hesaplamak. Adım adım ilerleyelim! Başvurman için Bayes formülü burada:
$$P(A|B) = \frac{P(B|A) * P(A)}{P(B)}$$
Bu egzersiz, kursun bir parçasıdır
Python ile Bayesçi Veri Analizi
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Calculate and print the unconditional probability of spam
p_spam = ____[____].____
print(____)