3. Bayesiaanse statistiek en maximum likelihood estimation.

Een van de meest vernieuwende stappen in het wetenschappelijke veld die dit artikel met zich meebrengt is het fitten van een kinetisch model aan de complexe dwelltimedistributie waarover ik in mijn vorige punt uitwijdde. We hebben een distributie aan tijden die niet voor een gat te vangen is, dus het lijkt erop dat er een combinatie van verschillende verdelingen nodig is om de data te beschrijven. Waarom we dit doen leg ik in het laatste punt uit, maar we doen dit met behulp van een methode ontleend uit de Bayesiaanse statistiek: de maximum likelihood estimation.

Dit behoeft wat uitleg. Of nou ja, ik zou het model ook zonder deze andere vorm van statistiek uit kunnen leggen, maar het toepassen van deze statistische methode in de single-molecule biofysica is vernieuwend en verdient daarom een afzonderlijke post. Daarnaast, waarom zou ik iemand uitleg over een mooie statistische stroming willen onthouden? Mocht u bij het lezen van het woord ‘statistiek’ een aanval van blinde paniek krijgen: ga dan door naar het volgende punt.

Het overgrote deel van de statistiek die tegenwoordig toegepast wordt is de klassieke of frequentistische (is dat een woord?) interpretatie van kansrekening. Ze is gebaseerd op de aanname dat je uit een eerder gemeten dataset kunt afleiden of een nieuw gemeten datapunt afwijkt en hoe groot de kans (de p-waarde) is dat dit gebeurt. Hoe ver het punt afwijkt wordt getoetst aan een nulhypothese die zegt: je nieuwe datapunt hoort bij de verzameling oude datapunten. De nulhypothese wordt vervolgens al dan niet verworpen op basis van een vooraf bepaald criterium en een de p-waarde die aangeeft hoe zeker je van je zaak kunt zijn. Er wordt verder geen enkele aanname gemaakt, er wordt alleen gekeken of de nulhypothese klopt, met soms absurde conclusies als resultaat. Een mooi voorbeeld hiervan is octopus Paul, de duitse ongewervelde die zo beroemd werd tijdens het WK van 2010 omdat hij een hoop wedstrijden achter elkaar goed voorspeld had. De nulhypothese – Paul is niet helderziend – werd volgens de klassieke statistiek verworpen, met een officieel als helderziend bestempelde octopus als gevolg.*

De Bayesiaanse statistiek daarentegen onderzoekt in hoeverre een alternatieve hypothese waar is, gedeeld door de kans dat de nulhypothese klopt, en beschrijft daarmee kansen als gradaties van (on)zekerheid. In het geval van Paul zou je met Bayesiaanse statistiek niet zo snel tot de conclusie komen dat er helderziendheid in het spel is. Je zou namelijk beginnen met de aanname dat de kans op helderziendheid heel erg klein is, wat de kans dat Paul er ook zo eentje is automatisch erg klein maakt, ondanks zijn correcte voorspellingen.

Er zijn bijvoorbeeld een hoop vragenstukken waarbij je niet kunt putten uit (een grote hoeveelheid) waarnemingen om te kijken wat de kans is op een volgende waarneming. Neem een onzeker voorval: wat is de kans dat de maan ooit in een eigen baan om de zon draaide? Of wat is de kans dat al het ijs op de noordpool tegen het eind van deze eeuw is gesmolten? Niet echt vragen waarbij je kunt putten uit een dataset met eerdere voorvallen of een experiment dat je vaak kunt herhalen. Desondanks hebben we wel een idee van hoe snel bijvoorbeeld het ijs aan het smelten is. En als we nieuwe informatie krijgen, doordat er net een nieuwe sateliet is gelanceerd die het smeltproces gedetailleerder in kaart brengt bijvoorbeeld, stellen we onze aannames bij. De Bayesiaanse statistiek kijkt dus meer naar de wereld om ons heen dan de klassieke statistiek en kan daardoor krachtigere voorspellingen leveren, als het ware een soort statistische powertool. Maar net zoals bij conventionele powertools het geval is: je moet wel weten wat je doet. Aannames worden door mensen gemaakt en wij zijn nou eenmaal altijd (een beetje) subjectief.

Even kijken, waar waren we? Juist, uitleg! Het einddoel: de stelling van Bayes waarop de Bayesiaanse statistiek rust. Let op, ik doe m’n best om in dit stuk de statistische jargon tot een minimum te beperken, maar hou vol en je zult zien dat het niet moeilijk is! Een kans is een cijfer tussen 0 en 1. 0 betekent dat je zeker weet dat iets niet waar is, 1 dat iets absoluut waar is. Alles er tussenin is een gradatie van zekerheid, waarbij 0.5 (of 50%) aangeeft dat de voorspelde waarde net zo goed waar als niet waar kan zijn. Als de kans dat A absoluut waar is schrijf je dat als p(A)=1. Als de waarschijnlijkheid van A afhangt van B (een voorwaardelijke kans), zoals bijvoorbeeld de kans dat je blind een appel (A) pakt, op voorwaarde dat je het uit (B) die ene schaal met 5 appels en 5 sinaasappels pakt. Dat schrijf je dat als p(A|B) (= 0.5 in dit voorbeeld). Gezamenlijke kansen, de kans op 2 keer achter elkaar munt gooien bijvoorbeeld, is de kans op A (eerste keer munt) maal de kans op B (tweede keer munt) of: p(A en B) = p(A)p(B) = 0.5*0.5 = 0.25 = 25%. Mits B niet afhangt van A natuurlijk. Want stel dat A de kans is dat het vandaag gaat regenen en B de kans dat het morgen regent. Los van het feit dat die kansen in de lage landen hoger lijken te zijn dan elders, wordt de kans op regen morgen doorgaans beinvloed door al dan geen regen vandaag. Stel regen vandaag maakt de kans op regen morgen groter: p(B|A) > p(B). De gezamenlijke kans wordt dan p(A en B) = p(A)p(B|A).

Bayes aan de hand van koekjes


OK, nu echt op naar Bayes. Stel nu dat je 2 schalen met koekjes hebt: schaal 1 bevat 30 vanille- en 10 chocoladekoekjes. Schaal 2 heeft 20 van elk. Stel je kiest willekeurig een schaal en pakt daar willekeurig een koekje uit. Het is een vanillekoekje geworden. Naast het feit dat je lichtelijk baalt omdat je zin had in chocolade, wat is de kans dat het koekje uit schaal 1 komt? Dit is een voorwaardelijke kans: wat is de kans op schaal 1 op voorwaarde dat we vanille hebben gepakt? p(schaal 1|vanille) dus. Maar hoe bereken je dat? Dat ligt niet voor de hand. Omgekeerd, p(vanille|schaal 1) is een stuk makkelijker: dat is een kans van 30 op een totaal van 40 koekjes ofwel 3/4 = 0.75. Helaas is p(schaal 1|vanille) niet hetzelfde als p(vanille|schaal 1), maar er is een uitweg en dat is (jawel!) de stelling van Bayes.

De gezamenlijke kansen van A en B schrijf je als p(A en B) en is hetzelfde als p(B en A). Zoals met de regen duidelijk werd geldt p(A en B) = p(A)p(B|A). Als we even die regen loslaten en niets weten over A en B geldt p(B en A) = p(B)p(A|B). Als

p(B en A) = p(A en B)

dan

p(B)p(A|B) = p(A)p(B|A)

als we het geheel door p(B) delen krijgen we

 

En daar heb je het! De stelling van Bayes. Het lijkt niet zoveel voor te stellen, maar dit blijkt over behoorlijke powertoolcapaciteiten te beschikken. Terug naar het koekjesprobleem. Wat is p(schaal 1|vanille)? volgens Bayes wordt dit

We kunnen dus, als we zo’n vies vanillekoekje hebben gepakt, berekenen wat de kans is dat het uit schaal 1 komt! De kans op het kiezen van schaal 1 uit de 2 schalen: p(schaal 1) = 1/2. De kans op vanille is 30 uit schaal 1 plus 20 uit nummer 2 is 50 uit een totaal van 80 koekjes of p(vanille) = 5/8. Dus p(schaal 1|vanille) = (1/2*3/4)/(5/8) = 3/5 = 0.6 = 60%. Dus met een waarschijnlijkheid van 60% komt je willekeurig gekozen vanillekoekje uit schaal 1.


Een meer algemene vorm van deze stelling, gegeven een hypothese H en een dataset D kunnen we schrijven als:

  • waarbij p(H) de kans is op de hypothese voordat we de data hebben gezien (als in: de kans op helderziendheid is klein!): de prior.
  • p(D|H) de kans op de data, gegeven de hypothese: de waarschijnlijkheid of likelihood.
  • p(D) de kans op data in het algemeen, maakt niet uit welke hypothese: de normalisatiefactor.
  • p(H|D) wat we willen weten: de kans op de hypothese, gegeven dat we de data hebben ofwel de posterior.

Maximum likelihood estimation (MLE) legt zichzelf nu al bijna vanzelf uit: Hoe groter de likelihood, hoe groter de posterior kans wordt. We kunnen dus gaan kijken hoe we de parameters van onze hypothese zo in kunnen stellen dat onze kans op de verkregen data het grootst wordt. MLE concentreert zich op de vraag: Met welke set parameters wordt de likelihood op de verkregen data het grootst? Zodra we een hypothese met een set parameters gedefinieerd hebben, doet computerkracht de rest.** Wat dit concreet betekent voor onze polymerase? U bent nu echt klaar voor het volgende punt.


* Er zijn ook een hoop studies waarbij de conclusies grotere gevolgen hebben, zoals hier wordt beschreven.

** Wat er precies gemaximaliseerd wordt en hoe je dit op een pc doet is ook erg interessant en wellicht nog de moeite van een toekomstig stukje waard, maar gaat voor nu iets te ver.

Geraadpleegde literatuur, eveneens leestips:

Pattern Recognition and Machine Learning – Christopher M. Bishop – bevat een zeer uitgebreide inleiding tot de Bayesiaanse statistiek, en kun je beschouwen als de bijbel van de zgn. big data analyse.

Think Bayes – Allen B. Downey – een helder geschreven boek (koekjesprobleem komt hier vandaan) dat je Bayesiaanse statistiek leert door het meteen toe te passen in de programmeertaal python.

Naked Statistics – Charles Wheelan – vermakelijk boek voor leken over statistiek in de maatschappij dat een goed beeld geeft van de kracht en gevaren van het werken met dan wel vertrouwen op statistiek.

Leave a Reply

Your email address will not be published. Required fields are marked *