Springen naar inhoud

Bayes theorem' & bayesian spam filtering


  • Log in om te kunnen reageren

#1

Markje

    Markje


  • 0 - 25 berichten
  • 2 berichten
  • Gebruiker

Geplaatst op 13 december 2011 - 10:30

Lieve dames / heren

Ik ben met mijn stage bezig met het maken van een toepassing op Bayes' Theorem. Deze toepassing gaat onder andere gebruik maken van de theorie van het Bayesian Spam Filter (het filter in e-mail providers die spam uit je inbox houdt). Voor degene die niet exact weten hoe het Bayesian Spam Filter werkt. In e-mail berichten wordt een selectie gemaakt van woorden waarvoor wordt uitgerekend wat de kans is dat de mail spam is. Woorden als "Viagra" en "Aanbieding" hebben bijvoorbeeld een hoge spam-waarde.

De formule waarvan gebruik gemaakt wordt in Bayes' Theorem is:

LaTeX


Betekenissen:

LaTeX = de kans dat een mail spam (S) is onder voorwaarde dat een woord (W) erin voorkomt.

LaTeX = de kans dat een woord (W) voorkomt in een spam (S) mail.

LaTeX = de kans dat een mail spam (S) is.

LaTeX = de kans dat een woord (W) voorkomt in een ham (H) mail. (niet-spam)

LaTeX = de kans dat een mail ham (H) is. (niet-spam)


Uit deze informatie zijn er in mijn ogen 4 variabelen die nodig zijn om op de uitkomst van de formule te komen:
a. Totaal aantal e-mails gemarkeerd als 'spam'
b. Totaal aantal e-mails gemarkeerd als 'ham'
Totaal aantal verwerkte e-mails (a+b)

c. Totaal aantal occurences van het woord in 'spam' (1 per mail)
d. Totaal aantal occurences van het woord in 'ham' (1 per mail)
Totaal aantal occurences van het woord (c+d)


Voor het uitrekenen van de verschillende kansen is dit dan:

LaTeX = LaTeX (de kans dat een woord (W) voorkomt in een spam (S) mail.)

LaTeX = LaTeX (de kans dat een mail spam (S) is.)

LaTeX = LaTeX (de kans dat een woord (W) voorkomt in een ham (H) mail. (niet-spam))

LaTeX = LaTeX (de kans dat een mail ham (H) is. (niet-spam))


De teller in de gehele formule kan worden herschreven:

LaTeX


Het tweede deel in de noemer kan worden herschreven:

LaTeX


De gehele noemer wordt hierdoor:

LaTeX


Nu kan de gehele formule worden herschreven als:

LaTeX


En hier is nu mijn 'probleem'. Ik heb de hele formule uiteindelijk herleidt naar 2 variabelen. Op zich prachtig, maar volgens mij moest de uitkomst (kans op spam) ook afhankelijk zijn van de verhouding 'spam'/'ham' mails. Na het herleiden wordt er alleen rekening gehouden de verhouding occurences in 'spam' en 'ham' mails.

Stel nu dat er in totaal 10.000 mails zijn verwerkt waarvan 2.000 spam en 8.000 ham mails. Bij het gebruiken van het woord "Aanbieding" komt deze bijvoorbeeld voor in 1.000 spam e-mails en in 1.500 ham e-mails.

Mijn herleidde formule berekend dan dat de kans op een spam e-mail met het woord "Aanbieding" erin gelijk is aan:

LaTeX %

Ik heb het idee dat ik nu een foute herleiding heb gemaakt ergens, omdat mijn intuÔtie zegt dat ik alle 4 de variabelen nodig heb.

Veranderd door Markje, 13 december 2011 - 10:33


Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

Rogier

    Rogier


  • >5k berichten
  • 5679 berichten
  • VIP

Geplaatst op 13 december 2011 - 11:29

Het theorema van Bayes lijkt me hier niet nodig, je kunt de voorwaardelijke kans direct invullen:

LaTeX (met n = a+b = het totaal aantal emails)

Dat a en b niet meer in je uiteindelijke formule voorkomen is denk ik omdat je criterium iets te eenvoudig is. Stel dat je een woord hebt dat in alle emails voorkomt (bijvoorbeeld "Subject:" of "To:"), en 95% van alle mail die je krijgt is spam. Dan is de kans dat een mail met "Subject:" spam is, volgens bovenstaande formule: 95%. Maar dat is natuurlijk schijninformatie (het is wel waar, maar je hebt er niets aan).

Je zou eigenlijk een soort onderscheidend vermogen erbij moeten betrekken, wat de kansen (c.q. frequenties) vergelijkt dat een woord in ham mails voorkomt en dat het in spam mails voorkomt. Naarmate die twee meer verschillen, is een woord een betere indicator.
In theory, there's no difference between theory and practice. In practice, there is.

#3

Drieske

    Drieske


  • >5k berichten
  • 10217 berichten
  • Moderator

Geplaatst op 13 december 2011 - 11:33

Gezien de aard van het probleem verplaatst naar Kansrekening.
Zoek je graag naar het meest interessante wetenschapsnieuws? Wij zoeken nog een vrijwilliger voor ons nieuwspostteam.





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures