Het testen is niet de gebeurtenis. We hebben een test voor kanker, die los staat van het feit dat er daadwerkelijk sprake is van kanker. Er is een test voor spam, die los staat van het feit dat er daadwerkelijk een spambericht is.

De tests zijn niet perfect. De testen detecteren dingen die niet bestaan (vals-positief), en dingen die wel bestaan ontbreken (vals-positief). Mensen gebruiken vaak testresultaten zonder testfouten te repareren.

De vals-positieven vervormen de resultaten. Stel dat we op zoek zijn naar iets wat echt zeldzaam is (1 op een miljoen). Ook bij een goede test is het waarschijnlijk dat een vals-positief resultaat echt een vals-positief is op iemand in 999.999.

Mensen geven de voorkeur aan de natuurlijke getallen. Door te zeggen “100 van de 10.000” in plaats van “1%” helpt men aan getallen te werken met minder fouten, vooral met meerdere percentages (“Van die 100 zullen er 80 positief uitvallen” in plaats van “80% van de 1% zal positief uitvallen”).

Ook de wetenschap is een test. Op filosofisch niveau zijn wetenschappelijke experimenten “potentieel gebrekkige tests” en moeten ze dienovereenkomstig worden behandeld. Er is een test voor een chemische stof, of een fenomeen, en er is de gebeurtenis van het fenomeen zelf. Er is een foutpercentage waarmee rekening moet worden gehouden in onze tests en meetapparatuur.

De stelling van Bayes zet uw testresultaten om in de werkelijke waarschijnlijkheid van de gebeurtenis. Het is bijvoorbeeld mogelijk:

Meetfouten corrigeren. Mits u de werkelijke kansen en de waarschijnlijkheid van een vals-positief en vals-positief kent, kunt u meetfouten corrigeren.

Vergeleken met de werkelijke kans op de gemeten test, kunt u de meetfouten corrigeren. Gezien de resultaten van de mammografietest en de bekende foutenpercentages, kunt u de werkelijke waarschijnlijkheid voorspellen dat de kanker een positieve test heeft gegeven. Technisch gezien kunt u Pr(H|E), de waarschijnlijkheid dat een H-hypothese waar is, vinden gezien de test E, beginnend met Pr(E|H), de waarschijnlijkheid dat de test verschijnt als de hypothese waar is.

Anatomie van een test

Dit artikel beschrijft een scenario voor het testen op kanker:

bayes table

1% heeft borstkanker (en dus 99% niet).

80% van de mammografieën detecteren borstkanker wanneer deze aanwezig is (en missen dus 20%).

9,6% van de mammografieën toont borstkanker wanneer deze niet aanwezig is (en dus 90,4% geeft correct een negatief resultaat terug).

Zet in een tabel, de kansen zien er zo uit:

Dus hoe lezen we het?

1% van de mensen heeft kanker

Als je al kanker hebt, zit je in de eerste kolom. Er is een kans van 80% dat de test positief is. Er is een 20% kans dat de test negatief is.

Als je geen kanker hebt, zit je in de tweede kolom. Er is een kans van 9,6% dat de test positief is en een kans van 90,4% dat de test negatief is.

Hoe nauwkeurig is de test?

Stel nu dat het testresultaat positief is. Wat is de kans dat je kanker hebt? 80%? 99%? 1%?

Dit is wat ik denk:

Oké, we hebben een positief resultaat. Het betekent dat we ergens op de eerste rij van onze tafel zitten. Laten we niets veronderstellen. Het zou een echte positieve of een valse positieve kunnen zijn.

De kans op een echte positieve = kans op kanker * de waarschijnlijkheidstest nam het = 1% * 80% = .008

De kans op een vals-positief = kans om geen kanker te krijgen * de waarschijnlijkheidstest deed het toch al = 99% * 9,6% = 0,09504

De tafel is zo:

bayes table computed

En wat was de vraag? O ja? Wat zijn de kansen dat we echt kanker hebben als we een positief resultaat krijgen. De kans op een gebeurtenis is het aantal manieren waarop het zou kunnen gebeuren, gezien alle mogelijke resultaten:

\displaystyle{ \text{Probability} = \frac{\text{desired event}}{\text{all possibilities}} }

De kans op een reëel en positief resultaat is 0,008. De kans op een positief resultaat is de kans op een echt positief plus de kans op een vals positief (.008 + 0.09504 = .10304).

Onze kans op kanker is dus .008/.10304 = 0.0776, oftewel ongeveer 7.8%.

Interessant – een positieve mammografie betekent alleen dat je een 7,8% kans op kanker hebt, in plaats van 80% (de veronderstelde nauwkeurigheid van de test). Het klinkt misschien vreemd in het begin, maar het is logisch: de test geeft een vals-positief voor 9,6% van de tijd (vrij hoog), dus er zullen veel vals-positieven zijn in een bepaalde populatie. Door een zeldzame ziekte zullen de meeste positieve testresultaten verkeerd zijn.

Laten we onze intuïtie testen door een conclusie te trekken uit de tabel. Wanneer je 100 mensen neemt, zal slechts 1 persoon kanker hebben (1%) en zal waarschijnlijk positief testen (80% kans). Van de overige 99 mensen zal ongeveer 10% positief testen, dus we krijgen ongeveer 10 fout-positieven. Rekening houdend met alle positieve testen, is slechts 1 op de 11 correct, dus is er een 1/11 kans dat de kanker positief zal zijn. Het werkelijke aantal is 7,8% (dichter bij 1/13, zoals hierboven berekend), maar we vonden een redelijke schatting zonder rekenmachine.

Stelling van Bayes

We kunnen het bovenstaande proces omzetten in een vergelijking, die de stelling van Bayes is. Het stelt ons in staat om de testresultaten te nemen en de “asymmetrie” te corrigeren die door vals-positieven wordt geïntroduceerd. Je hebt de reële mogelijkheid om de gebeurtenis te hebben. Hier is de vergelijking:

en hier is de decoderingssleutel om het te lezen:

bayes theorem colorized equation

Pr(H|E) = Kans op kanker (H) bij een positieve test (E). Dit is wat we willen weten: Hoe groot is de kans op kanker met een positief resultaat? In ons geval was het 7,8%.

Pr(E|H) = Kans op een positieve test (E) sinds je kanker had (H). Dit is de kans op een echte positieve, in ons geval 80%.

Pr(H) = Kans op kanker (1%).

Pr(niet H) = Kans om geen kanker te hebben (99%).

Pr(E|niet H) = Kans op een positieve test (E) omdat je geen kanker hebt gehad (niet H). Het is een vals-positief, in ons geval 9,6%.

Het komt allemaal neer op de mogelijkheid van een echte positieve gedeeld door de mogelijkheid van een positieve. We kunnen de vergelijking a vereenvoudigen:

\displaystyle{\Pr(\mathrm{H}|\mathrm{E}) = \frac{\Pr(\mathrm{E}|\mathrm{H})\Pr(\mathrm{H})}{\Pr(\mathrm{E})}}

Pr(E) vertelt ons de mogelijkheid om een positief resultaat te verkrijgen, ofwel een echt positief in de tumorpopulatie (1%) ofwel een vals-positief in de niet-tumorpopulatie (99%). In werkt als een wegingsfactor, het aanpassen van de waarschijnlijkheid naar het meest waarschijnlijke resultaat.

Het vergeten om vals-positieven te tellen maakt dat de lage kans op kanker van 7,8% (bij een positieve test) contra-intuïtief lijkt. Bedankt om ons op het juiste spoor te zetten.

Intuïtief begrip: Verlicht het licht

Het vermeldt een intuïtief begrip van hoe je een licht kunt laten schijnen door je echte bevolking en een testpopulatie kunt krijgen. De analogie is logisch, maar er zijn een paar duizend woorden voor nodig om er te komen :).

Denk aan een echte bevolking. Je maakt enkele tests die “licht schijnen” door die echte populatie en creëert enkele testresultaten. Als het licht volledig accuraat is, vallen de kansen van de test en de echte kansen samen. Iedereen die positief test is eigenlijk “positief”. Iedereen die een negatieve test doet is eigenlijk “negatief”.

Maar dat is de echte wereld. Testen zijn slecht. Soms komen mensen met kanker niet opdagen voor tests, en omgekeerd.

De stelling van Bayes stelt ons in staat om naar asymmetrische testresultaten te kijken en fouten te corrigeren, de oorspronkelijke populatie te herscheppen en de echte mogelijkheid van een echt positief resultaat te vinden.

Bayesiaanse spamfiltering

Een intelligente toepassing van de Bayes-theorie is spamfiltratie. We hebben

Evenement A: Het bericht is spam.

Test X: Het bericht bevat enkele woorden (X)

Ingevoegd in een meer leesbare formule (van Wikipedia):

\displaystyle{\Pr(\mathrm{spam}|\mathrm{words}) = \frac{\Pr(\mathrm{words}|\mathrm{spam})\Pr(\mathrm{spam})}{\Pr(\mathrm{words})}}

Bayesiaanse filtering maakt het mogelijk om de mogelijkheid te voorspellen dat een bericht echt spam is, gezien de “testresultaten” (de aanwezigheid van enkele woorden). Woorden als “viagra” komen natuurlijk vaker voor in spamberichten dan in normale berichten.

Spamfilteren op basis van een zwarte lijst is niet perfect – het is te beperkend en fout-positieven zijn te groot. Maar Bayesiaanse filtering biedt ons een middenweg – we gebruiken waarschijnlijkheden. Door de woorden van een bericht te analyseren, kunnen we de waarschijnlijkheid berekenen dat het spam is (in plaats van een ja/nee beslissing te nemen). Wanneer een bericht een kans van 99,9% heeft om spam te zijn, is dat waarschijnlijk ook zo. Naarmate het filter wordt getraind met meer en meer berichten, moeten we de kans op bepaalde woorden die tot spamberichten leiden bijwerken. Geavanceerde Bayesiaanse filters kunnen meerdere woorden in een regel onderzoeken, zoals een ander gegevenspunt.