Bayesovský spamový filtr
Skvělá práce v předchozím cvičení! Teď se podíváme na slavný Bayesův teorém a využijeme ho k jednoduché, ale důležité úloze: detekci spamu.
Při procházení doručené pošty jsi zjistil/a, že mnohé e-maily, které ti jen zabírají čas, obsahují výkřičné fráze jako „KOUPIT HNED!!!". Začínáš tušit, že tři vykřičníky za sebou by mohly být dobrým indikátorem spamu! Připravil/a sis proto DataFrame emails se dvěma proměnnými: spam (jestli je e-mail spam) a contains_3_exlc (jestli obsahuje řetězec "!!!"). Začátek dat vypadá takto:
spam contains_3_excl
0 False False
1 False False
2 True False
3 False False
4 False False
Tvým úkolem je spočítat pravděpodobnost, že je e-mail spam, pokud obsahuje tři vykřičníky. Pojďme na to krok za krokem! Tady je Bayesův vzorec pro přehled:
$$P(A|B) = \frac{P(B|A) * P(A)}{P(B)}$$
Toto cvičení je součástí kurzu
Bayesian Data Analysis in Python
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Calculate and print the unconditional probability of spam
p_spam = ____[____].____
print(____)