Filtru Bayesian de spam
Felicitări pentru exercițiul anterior! Acum vom aborda celebra Teoremă a lui Bayes și o vom folosi pentru o sarcină simplă, dar importantă: detectarea spam-ului.
Răsfoind căsuța de e-mail, ai observat că multe dintre mesajele pe care preferi să le ignori conțin expresii exclamative, precum "CUMPĂRĂ ACUM!!!". Ai început să te gândești că prezența a trei semne de exclamare consecutive ar putea fi un bun predictor pentru spam! Prin urmare, ai pregătit un DataFrame numit emails cu două variabile: spam, care indică dacă e-mailul este spam, și contains_3_exlc, care indică dacă acesta conține șirul "!!!". Primele rânduri ale datelor arată astfel:
spam contains_3_excl
0 False False
1 False False
2 True False
3 False False
4 False False
Sarcina ta este să calculezi probabilitatea ca un e-mail să fie spam, știind că acesta conține trei semne de exclamare. Să rezolvăm pas cu pas! Iată formula lui Bayes pentru referință:
$$P(A|B) = \frac{P(B|A) * P(A)}{P(B)}$$
Acest exercițiu face parte din cursul
Analiza bayesiană a datelor în Python
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Calculate and print the unconditional probability of spam
p_spam = ____[____].____
print(____)