SpamBayes is a Bayesian spam filter written in Python which uses techniques laid out by Paul Graham in his essay "A Plan for Spam". It has subsequently been improved by Gary Robinson and Tim Peters, among others.[2]

SpamBayes
Original author(s)Tim Peters
Initial releaseSeptember 2002
Stable release
1.0.4 / March 2005
Preview release
1.1a6 / December 6, 2008 (2008-12-06)[1]
Written inPython
PlatformCross-platform
Available inEnglish only
TypeE-mail filtering
LicensePSFL
Websitespambayes.sourceforge.net

The most notable difference between a conventional Bayesian filter and the filter used by SpamBayes is that there are three classifications rather than two: spam, non-spam (called ham in SpamBayes), and unsure. The user trains a message as being either ham or spam; when filtering a message, the spam filters generate one score for ham and another for spam.

If the spam score is high and the ham score is low, the message will be classified as spam. If the spam score is low and the ham score is high, the message will be classified as ham. If the scores are both high or both low, the message will be classified as unsure.

This approach leads to a low number of false positives and false negatives, but it may result in a number of unsures which need a human decision.

Web filtering

edit

Some work has gone into applying SpamBayes to filter internet content via a proxy web server.[3][4][5]

References

edit
  1. ^ "Download CHANGELOG.TXT (SpamBayes anti-spam)".
  2. ^ Robinson, Gary (1 March 2003). "A Statistical Approach to the Spam Problem". Linux Journal. ISSN 1075-3583.
  3. ^ Montanaro, Skip (2003-12-07). "[spambayes-dev] Web filtering". Retrieved 2023-04-18.
  4. ^ "[spambayes-dev] Web filtering". 7 December 2003.
  5. ^ "OSDIR". 6 November 2020.
edit