A/B-testen: wanneer is stoppen beter dan doorgaan?
A/B-testen vormt de ruggengraat van de e-commerce. Optimale conversie realiseer je echter niet alleen door te testen, maar ook door te weten wanneer je een test stopt en een nieuwe start. Hoe je dat moment bepaalt? Het antwoord ligt in de Bayesiaanse statistiek.
Als je ervaring hebt met A/B-testen zal het je ongetwijfeld bekend voorkomen. Samen met de specialisten heb je twee interessante tests bedacht en na een zorgvuldige afweging besloten met welke je van start gaat. Na een paar weken testen zijn de resultaten nog steeds niet significant. Je vraagt je af of je de lopende test niet beter op kunt geven en voor de tweede moet gaan. Maar dan kieper je weken van data verzamelen in de digitale prullenbak. Voor dit vraagstuk biedt de Bayesiaanse statistiek de oplossing.
De traditionele benadering is het bewijzen van een hypothese. Dit wordt gedaan door te proberen het tegengestelde (de nulhypothese) te verwerpen. Hiervoor wordt een van te voren vastgestelde hoeveelheid data gebruikt. Er zijn twee uitkomsten mogelijk: of er is genoeg bewijs om de hypothese aan te nemen, of de test is zonder resultaat. Meer data verzamelen en de volledige dataset opnieuw analyseren mag niet, omdat de statistische berekeningen dan niet meer correct zijn.
Deze werkwijze is bij commerciële tests natuurlijk niet handig. Vanuit het bedrijfsperspectief is het juist van belang tussentijds naar de voortgang van een A/B-test te kijken om te bepalen of de test moet worden voortgezet. Met Bayesiaanse statistiek kun je met behulp van simulaties alle mogelijke scenario’s doormeten.
Stel, je hebt als nulhypothese: een rode bestelknop is even effectief als een blauwe bestelknop. Een wetenschapper zou een A/B-test uitvoeren om te bewijzen dat deze hypothese niet klopt, dus hij zoekt een zeer lage waarschijnlijkheid als antwoord. Als je uitgangspunt optimale conversie is, ga je echter niet op zoek naar de absolute waarheid, maar naar de beste keuze. Hierbij speelt de zekerheid waarmee een conclusie kan worden getrokken een belangrijke rol. Het behalen van deze zekerheid moet wel worden afgewogen tegenover de tijd die nodig is om de data te verzamelen. Het resultaat is dan misschien niet voldoende om een wetenschappelijk paper over te publiceren, maar zakelijk gezien is het vaak niet zinvol om langer door te testen.
Wel of geen winnaar
In de commerciële setting van A/B-testen wil je dus op elk moment je besluitvorming kunnen baseren op de tussenresultaten. Telkens als je de data bekijkt zijn er drie opties: de test stopzetten zodra er genoeg data zijn om een winnende variant te kiezen; de test voortzetten om meer data te verzamelen; of de test stopzetten zonder dat er een winnaar uit komt.
Doorgaan tot er een significant resultaat is behaald komt voort uit de ouderwetse (wetenschappelijke) benadering: pas als je genoeg gegevens hebt, kun je een antwoord vinden op je vraag. Door Bayesiaanse statistiek toe te passen stop je zoals gezegd niet alleen bij een significant verschil in prestatie tussen twee varianten, maar stop je ook als het verschil te klein is om door te testen. Dit wordt nu vooral bepaald op basis van de Region Of Practical Equivalence (ROPE): als er genoeg data zijn verzameld om met zekerheid te zeggen dat het verschil tussen twee varianten niet groter is dan een bepaald ‘verwaarloosbaar’ percentage stopt de test.
Vanuit bedrijfsperspectief is deze methode echter nog steeds te sterk gericht op het behalen van een significant resultaat. Een goede A/B-test heeft de gewenste conversieratio als uitkomst én toont dit aan binnen een acceptabele termijn.
Bayes bepaalt stopmoment
In de praktijk wordt de beslissing om door te gaan of te stoppen met een test die nog niet significant is genomen op basis van de expertise van de conversieoptimalisatiespecialist. Door Bayesiaanse statistiek toe te passen kun je in plaats van te vertrouwen op je intuïtie, uitrekenen wat de juiste beslissing is. Dat gebeurt in mijn optiek nog veel te weinig bij A/B-testen, waardoor er kostbare tijd wordt verspild.
Om een test uit te kunnen voeren heb je een bepaald aantal gebruikers nodig. Je kunt dus niet eindeloos tests naast elkaar uitvoeren. Daarom is het zinvol om te bepalen hoeveel nut een experiment nog heeft. Zorg ook altijd dat de volgende test klaar staat, mocht het sein op rood gaan. Zo benut je de beschikbare testruimte volledig en kun je zoveel mogelijk ideeën uitproberen. In de dynamische omgeving van het digitale speelveld is de leersnelheid van je bedrijf een essentieel onderdeel van je concurrentiepositie.
Should I stay or should I go?
Hoe neem je nu die beslissing om te stoppen? Samen met de conversie-optimalisatiespecialisten schat de data-analist in wat een realistische conversiestijging is in een bepaalde periode. Menselijke expertise blijft dus een essentieel onderdeel, maar dat levert weinig risico op. Het is niet erg om er een paar procent naast te zitten: zie de schatting als een richtlijn – je moet ongeveer op koers liggen om deze doelstelling te behalen. Of dat het geval is, kun je vervolgens uitrekenen.
Belangrijk onderdeel van dit ‘stay or go’ algoritme is dat het meeneemt hoe snel data verzameld wordt voor een specifieke test. Met behulp van Bayes kun je op basis van de testduur, het aantal gebruikers en de tussentijdse resultaten van verschillende scenario’s berekenen hoe lang je moet doortesten om de conversiestijging significant aan te tonen, en of je op koers ligt voor het behalen van je target. Als extraatje berekent het algoritme ook hoeveel dagen het waarschijnlijk duurt om tot een significant resultaat te komen.
Efficiënt ideeën uitproberen
Om efficiënt A/B-testen te runnen ben je dus niet langer volledig aangewezen op de intuïtie en ervaring van data-analisten of conversie-optimalisatiespecialisten. Met het Bayes-algoritme krijg je concreet een gefundeerd antwoord op de vraag: is het slim om door te testen of kunnen we beter doorgaan met het volgende experiment? Voor bedrijven die snel (en veel) ideeën willen toetsen, is deze toepassing van Bayes een uitkomst.
Deel dit bericht
Plaats een reactie
Uw e-mailadres wordt niet op de site getoond
2 Reacties
Annemarie
Hi Ruben,
Interessant artikel. Wat ik dan meteen denk: hoe kan ik dit nu doen als ik het wil toepassen? Welke cijfers heb ik nodig en hoe kan ik uitrekenen of ik de test al kan stoppen? De theorie klinkt interessant, maar ik kan er geen actie op ondernemen op basis van deze informatie.
Zelf hebben we recent een Bayesiaanse testcalculator ontwikkeld. Weliswaar gaat deze uit van dezelfde testduur als een frequentistische A/B-test, maar het testresultaat is een stuk makkelijker te interpreteren: http://www.abtestguide.com/bayesian.
Christian Vriens
Voor de a/b testen die met ons IQNOMY platform worden uitgevoerd hebben we inderdaad dit algoritme ook ingebouwd in de applicatie zodat je constant kunt volgen. Een goed werkend inzicht, maar de conclusie is dat A of B wint en dat deze content aan iedereen wordt getoond. Je haalt dan in mijn ogen niet het maximale uit je uitingen. Wij gebruiken de A/B testen ook om een machine learning algoritme te trainen. Volgens mij wordt dit ook de rol van A/B testen in de toekomst.