Bayesiaanse spamfilters berekenen op basis van de inhoud de kans dat een bericht spam is. In tegenstelling tot eenvoudige op woorden gebaseerde filters, leren Bayesiaanse spamfilters van inkomende spam en goede e-mail, wat resulteert in een zeer robuuste, adaptieve, efficiënte antispambenadering die zelden valse positieven retourneert. E-mailberichten die niet als spam worden beschouwd, worden soms ‘ham’ genoemd.
Bayesiaanse filters worden steeds beter
Eenvoudige op woorden gebaseerde spamfilters houden voor elke e-mailgebruiker geen rekening met wat als ongebruikelijke woorden kan worden beschouwd (een aanwijzing dat een bepaald bericht spam kan zijn). Bovendien hebben ze niet de capaciteit om de regels die ze gebruiken om spam te identificeren in de loop van de tijd te wijzigen. Bayesiaanse spamfilters zijn verschillend omdat ze beide doen. Bayesiaanse spamfilters bouwen in de loop van de tijd een lijst met ongewenste woorden op. Ze analyseren zowel spamberichten als goede berichten om de kans te berekenen dat verschillende kenmerken in spam en in goede post voorkomen. Vervolgens worden nieuwe, ongewenste woorden aan de lijst toegevoegd. Als een woord nooit in spam voorkomt, maar vaak in de legitieme e-mail die u ontvangt, is de kans dat het woord spam aangeeft bijna nul. Stel bijvoorbeeld dat u veel legitieme berichten ontvangt waarin het woord cartesiaans. Dat feit verkleint de kans dat e-mailberichten die u ontvangt met het woord cartesiaans zijn spam. Aan de andere kant, stel dat u zelden of nooit legitieme berichten ontvangt die het woord bevatten toner. Als u een bericht ontvangt dat het woord bevat: toner, het is waarschijnlijker dat het spam is.
Hoe een Bayesiaans filter een e-mailbericht onderzoekt
Berichtkenmerken waar een Bayesiaans spamfilter naar kijkt, zijn onder meer:
- Woorden in de hoofdtekst van het bericht
- Woorden in de berichtkop (zoals de afzender en het berichtpad)
- Andere elementen zoals HTML/CSS-code (zoals kleuren en andere opmaak)
- Woordparen en zinnen
- Meta-informatie (zoals waar een bepaalde zin voorkomt)
Wanneer een nieuw bericht binnenkomt, analyseert het Bayesiaanse spamfilter het en berekent het de waarschijnlijkheid dat het spam is op basis van deze kenmerken. Als we doorgaan met de bovenstaande voorbeelden, stel dat een bericht beide woorden bevat, cartesiaans en toner. Alleen al door deze woorden is het niet duidelijk of het bericht spam of legitieme e-mail is. Maar als het bericht ook de kop “GEWELDIGE DEALS OP TONER!!!!!” dan is de kans groter dat het spam is.
Bayesiaanse filters leren automatisch
Na de classificatie in “spam” of “legitieme e-mail”, kan het filter die vastberadenheid gebruiken om zichzelf verder te trainen. In ons voorbeeld moet het filter ofwel de kans op . verlagen cartesiaans het aangeven van goede post of het verhogen van de kans op toner spam aangeeft. Gezien de aanvullende gegevens van de spam-header op dit bericht (en misschien ook andere factoren), zou het het laatste doen en het volgende inkomende bericht evalueren op basis van de nieuwe waarschijnlijkheid. Met behulp van deze auto-adaptieve techniek kunnen Bayesiaanse filters leren van zowel hun eigen beslissingen als die van gebruikers (als ze handmatig verkeerd geëvalueerde berichten corrigeren). De aanpasbaarheid van dit systeem zorgt ervoor dat deze filters het meest effectief zijn voor individuele e-mailgebruikers, omdat, hoewel de meeste spam van de meeste mensen vergelijkbare kenmerken heeft, legitieme e-mail voor elke persoon anders is.
Kunnen spammers voorbij Bayesiaanse filters komen?
De kenmerken van legitieme e-mail zijn net zo belangrijk voor het Bayesiaanse spamfilterproces als de kenmerken van spam. Omdat de filters specifiek voor elke gebruiker zijn getraind, hebben spammers het moeilijker om er omheen te werken en kunnen de filters zich aanpassen aan bijna alles wat spammers proberen. Berichten van spammers komen alleen voorbij goed opgeleide Bayesiaanse filters als de bedriegers hun spam eruit laten zien als een doodgewone e-mail. Maar spammers sturen meestal niet zulke gewone berichten omdat ze niet goed werken om hun doel te dienen (dwz u overtuigen om iets te kopen of op een link te klikken). Hoe goed een Bayesiaans filter ook is, één woord of kenmerk dat vaak in goede mail voorkomt, kan zo belangrijk zijn dat een bericht dat het bevat, niet als spam wordt beschouwd. Daarom, als spammers een manier zouden kunnen vinden om uw onfeilbare goede-mailwoorden te bepalen, zouden ze een van hen in een ongewenste e-mail kunnen opnemen en u zelfs via een goed getraind Bayesiaans filter kunnen bereiken. Maar volgens onderzoekers die deze methode hebben geprobeerd, is het tijdrovend en complex genoeg dat het waarschijnlijk niet erg vaak zal worden gebruikt.