Skip to ContentSkip to Navigation
Onderdeel van Rijksuniversiteit Groningen
Science LinXBètasteunpunt

Hoe werkt een spamfilter?

Iedereen heeft wel eens ongewenste reclamemailtjes in zijn inbox. Gelukkig is daar iets op bedacht: een verdedigingsmechanisme genaamd spamfilter. Maar hoe werken die spamfilters nou eigenlijk en wat hebben ze te maken met machine learning?

Spammailtjes en normale mailtjes zijn niet altijd even makkelijk van elkaar te onderscheiden. Hoe weet een spamfiter dan welke mailtjes jij wel of niet wil zien? Een spamfilter kijkt naar woorden en zinnen die in je mailtjes voorkomen. Een veelvoorkomende spam-zin is bijvoorbeeld: "Gefeliciteerd! U hebt ... gewonnen! Klik op deze link om uw prijs op te halen". Zou het dan een goede strategie zijn om alle mailtjes met de zin "Gefeliciteerd! U hebt ... gewonnen!" of "Klik op deze link" te filteren? Nee, dan filter je ook het mailtje waarin staat dat je de prijsvraag waar je aan meedeed gewonnen hebt of het mailtje van je oma die je link met een leuk artikel wil sturen.


Hoe weet het spamfilter dan wat spam is? Daarvoor wordt machine learning gebruikt. Een algoritme kijkt daarvoor niet naar essentiele kenmerken van een ongewenste e-mail, maar naar de overeenkomsten tussen heel veel gewenste en ongewentse mails. Een machine learning algoritme kun je trainen door heel veel mailtjes aan te bieden en er bij te vertellen wat spam is en wat niet. Het algoritme bouwt dan een model op van een soort prototype-spam mailtje. Het kijkt welke woorden vaak voorkomen, welke combinaties van woorden vaak voorkomen, hoe lang de mailtjes zijn, etcetera. Het algoritme is dan in staat om patronen te herkennen die mensen nooit gevonden zouden hebben.

Vervolgens bouwt het algoritme net zo'n model op voor gewenste mailtjes. Ieder binnengekomen mailtje wordt getoetst aan de hand van deze twee modellen. Met behulp van ingewikkelde wiskundige modellen berekent het algoritme dan de kans dat een mailtje spam is en kiest hij of hij het moet doorverwijzen naar de inbox of naar de ongewenste e-mails.

Het bètasteunpunt heeft een programma waarmee je zelf kunt uitzoeken hoe een spamfilter werkt. Wat is de invloed van verschillende parameters op de werking van het filter? Wil je aan de slag met dit programma, vul dan ons formulier in!

Interessante onderzoeksvragen

  • Hoe herkent een spamfilter spam?
  • Welke parameters kun je aanpassen om het spamfilter nog beter te maken?

Handige literatuur

Opmerkingen

Wil je hier meer van weten, neem dan contact op via het Betasteunpunt formulier.

Laatst gewijzigd:05 oktober 2017 10:22