Hoe bouw je een algoritme?
Artificial intelligence, Machine learning, algoritmes, allemaal mooie en aansprekende termen, die meestal voorkomen in inspirerende toekomstvisies of technische uitwerkingen.
Maar er wordt nog te weinig in lekentaal gesproken over hoe concreet gebruik gemaakt kan worden van deze technieken binnen marketing. Dit artikel geeft inzicht in de keuzes die gemaakt zijn om binnen Cervinodata tot een werkend algoritme te komen.
Op verzoek van enkele van onze klanten heeft Cervinodata een algoritme ontwikkeld dat de marketeer helpt om de kosten per klik in de gaten te houden. Het algoritme doet een voorspelling van de verwachte kosten per klik voor de komende 14 dagen en geeft een waarschuwing als er een opvallende uitschieter plaatsvindt.
Waarom de kosten per klik?
De kosten per klik of CPC is in veel gevallen een belangrijke indicator voor de prestaties van een marketingcampagne. Waar de kosten (het budget) en de aangemaakte campagne de inputvariabelen zijn, zijn de gerealiseerde klikken (en daaruit voortvloeiende conversies) de resultaten hiervan. De CPC legt het verband tussen de input en output.
De reden waarom in eerste instantie niet voor kosten per conversie of kosten per verkoop (CPA) is gekozen, is omdat er veel meer klikken zijn dan conversies. Daardoor is sneller te zien of het algoritme nauwkeurig voorspellingen doet. Als dat zo blijkt te zijn, kunnen met hetzelfde algoritme ook andere afgeleide KPI’s (zoals de CPA) worden voorspeld.
Resultaten per platform
In eerste instantie is gekozen om de gemiddelde CPC van meerdere platformen bij elkaar te voorspellen, maar dit leverde niet het gewenste effect. Vanwege de verschillende karakteristieken van de verschillende platformen is uiteindelijk besloten om de CPC voor elk platform afzonderlijk te voorspellen. Dit levert niet alleen betere voorspellingen op, ook worden de uitschieters beter (en dus ook per platform) gedetecteerd.
Welk(e) model(len) kiezen?
Er zijn online veel modellen beschikbaar, maar de grote vraag is welk model levert de meest robuuste voorspelling op?
Na het uitproberen van complexe en minder complexe modellen bleek uiteindelijk het redelijk eenvoudige Arima model, aangevuld met enkele andere technieken, geschikt voor het voorspellen van de CPC. Er is voor dit model gekozen omdat het model op zichzelf staat en daardoor niet afhankelijk is van de data van andere klanten of andere bronnen (zoals het weer). Het is daardoor beter af te stellen en levert sneller een concreet resultaat.
Bij eerder uitgeteste en aanzienlijk complexere modellen was wel interessant om te zien dat bijvoorbeeld de dag van de week en het weer invloed hadden op de kosten per klik, maar het was slechts voor enkele klanten van relevante invloed. Voor andere klanten zaten de weergegevens alleen maar in de weg. Om die reden is het weer niet meegenomen. Ook andere complexe modellen bleken lastig toepasbaar. Vooral de benodigde (grote) hoeveelheid (trainings)data zorgt voor deze complexe modellen voor beperkingen (want de beschikbare data is niet afdoende, zelfs niet als de data van 50 of 100 klanten zou worden gebruikt).
Afstellen algoritme luistert nauw
In het door Cervinodata geïmplementeerde algoritme zijn generieke parameters en platform-specifieke parameters toegevoegd voor een meer fijnmazige afstelling van de uitschieterdetectie. Op dit moment wordt dit nog – per platform – voor alle klanten hetzelfde afgesteld, maar het zal mogelijk zijn om de gevoeligheid per klant te laten verschillen.
Hoe betrouwbaar is het model?
Geen enkel model zal in staat zijn om de toekomst perfect te voorspellen. Het is daarom verstandig om naar de betrouwbaarheidsintervallen van de voorspelling te kijken. Voor de CPC voorspelling van Cervinodata wordt gewerkt met een 95% betrouwbaarheidsinterval. Dat geeft aan dat in 95 procent van de gevallen de CPC ligt tussen de gestelde bandbreedte boven en onder de voorspelde CPC. In de dataset die na berekening wordt teruggeleverd zitten naast de CPC ook een minimum en maximumwaarde van de CPC op basis van dat interval voor de voorspelde waarde van vandaag, vanmorgen, van 7 dagen vooruit en 14 dagen vooruit. Zoals verwacht neemt de bandbreedte van het betrouwbaarheidsinterval toe naarmate er verder vooruit wordt voorspeld.
Schaalbaarheid is niet vanzelfsprekend
Hoewel Cervinodata in staat is om continue data uit de verschillende platformen te halen en beschikbaar te maken voor gebruikers is het niet vanzelfsprekend dat een algoritme ook direct automatisch werkt.
Nadat de proof of concept tot een succesvolle voorspelling en detectie had geleid kostte het de nodige inspanningen voordat het algoritme ook robuust en permanent beschikbaar was op een infrastructuur die gericht is op schaalbaarheid en elke ochtend automatisch nieuwe voorspellingen deed. Hiervoor is het algoritme op een server geïmplementeerd en zijn er scripts geschreven die periodiek data ophalen, de berekeningen doen en voor zorgen dat het resultaat via een opvraagbare REST url of als tabel in bijvoorbeeld Google BigQuery beschikbaar komt. Zodat het resultaat in een dashboard kan worden getoond.
Binnenkort uit Bèta
Nu de code binnen de Cervinodata infrastructuur is geïmplementeerd, maken steeds meer beta testers gebruik van het algoritme. Op basis van de feedback van deze gebruikers en op basis van de toenemende hoeveelheid data die door het algoritme geïnterpreteerd wordt, kan het algoritme verder worden verbeterd. Hierdoor kan in de nabije toekomst nog nauwkeuriger worden voorspeld en nog relevantere waarschuwingen voor uitschieters worden gegeven.
Eerste resultaten
De eerste klanten reageren heel positief op de aan hun data toegevoegde intelligentie. Een van de eerste conclusies die mag worden getrokken is dat verschillende platformen andere patronen hebben, maar dat in een aanzienlijk aantal gevallen het veranderen van een budget leidt tot uitschietende kosten per klik. Dit gegeven wordt verder onderzocht en kan mogelijk als variabele worden toegevoegd aan volgende versies van het model.
Toekomstvisie
Dit eerste voorspellingsmodel, uitgebreid met uitschieterdetectie was een test om te zien of het toevoegen van intelligence tot concrete interesse in Cervinodata leidt. Uit voorafgaande gesprekken bleek wel veel interesse voor het voorspellen van de kosten per klik, maar het is altijd afwachten hoe het wordt ontvangen als er daadwerkelijk een voorspelling wordt gedaan.
Om te voorkomen dat slechts een handvol data scientists en techneuten algoritmes kunnen gebruiken en daarmee een bottleneck zouden kunnen vormen in de verspreiding van deze krachtige technologie ontwikkelt Cervinodata haar producten nadrukkelijk voor marketeers.
Het doel van Cervinodata’s intelligence is om complexe algoritmes en later machine learning en A.I. in bredere zin, op een begrijpelijke en gebruiksvriendelijke manier beschikbaar te maken voor marketeers.
De achterliggende gedachte is dat als marketeers hun buikgevoel kunnen versterken met de juiste cijfers, de effectiviteit van campagnes drastisch kan toenemen.
Vragen over Cervinodata?
Cervinodata is een product van Cervino Marketing dat al sinds 2012 dashboards en datadiensten levert voor marketing bureaus en eindklanten. Cervinodata maakt het voor bureaus en organisaties eenvoudig om de resultaten van verschillende advertentieplatformen en van Google Analytics bij elkaar te brengen in Google BigQuery. Binnenkort komt daar dus de intelligence functionaliteit bij. Neem gerust contact op met erik@cervinodata.com als je interesse hebt om ook beta tester te worden, als je wilt weten wanneer het op de markt komt of als er andere vragen zijn.
Plaats een reactie
Uw e-mailadres wordt niet op de site getoond