Big Data

Het belang van patroonherkenning

 

Arno Siebes is hoogleraar Algoritmische Data Analyse aan het Departement Informatica van de Universiteit Utrecht. Hij doet onderzoek op het gebied van data mining: het zoeken naar patronen in grote databestanden. Dit gebied verbindt de diepe theorie met praktische toepassingen. De toepassingsgebieden variëren van de financiële wereld tot wetenschappen als de bio-informatica. Naast zijn bijdrage aan onderwijs en onderzoek, is hij ook lid van een aantal tijdschriftredacties en meerdere programmacommissies van conferenties.

Siebes start zijn verhaal met de constatering dat informatie in feite immaterieel is. En dat er maar één machine voor nodig is – de computer-, die alles wat je met informatie zou kunnen willen doen, je ook in staat stelt om dat te kunnen doen. Informatie heeft geen materiële grootte, waardoor het mogelijk was om apparaten te laten krimpen. In tegenstelling tot de apparaten nemen wel de databases toe in grootte, zoals grote digitale bibliotheken, clouds en social networks. Daarmee zijn we beland in een wereld van Big Data.

1

Big Data is feitelijk een marketingterm gedefinieerd door de drie V’s: volume, velocity (snelheid) en variety (verschillende vormen en groottes). Big is echt Big. In 2012 heeft de wereld 1,8 zettabyte aan data geproduceerd.

Het is interessant dat er veel data wordt geproduceerd, maar waarom wordt alles bewaard? Ten eerste uploaden gebruikers persoonlijke data over zichzelf via social media, waardoor het aantal dataproducenten vele malen groter is geworden. En ten tweede gebruiken bedrijven deze data om profielen te schetsen om daarop te anticiperen in de vorm van het genereren van aanbevelingen en het behouden van klanten, zoals we ook al in de eerste sessie over personalization & recommendation zagen. Om aanbevelingen te kunnen doen moeten eerst bepaalde patronen vastgesteld worden.

 

Patronen en profielen

Een patroon is een set van karakteristieken die gedeeld worden door een bepaalde groep (bijv. klanten of patiënten). De karakteristieken kunnen dan bijvoorbeeld zijn: alle patiënten met dezelfde ziekte, of alle klanten die de afgelopen maand meer dan 1000 euro hebben besteed in je webshop. Omdat mensen meer op elkaar lijken dan ze denken (“birds of a feather flock together”), komen bij patroonherkenning meer overeenkomsten naar boven dan het ene resultaat dat ze >1000 euro hebben besteed. Zo’n heel patroon van interessante overeenkomsten kan ingezet worden als een profiel.

Op basis van digitale gebruiks- en gedragspatronen kan deze groep steeds rijker en gedetailleerder beschreven worden en kunnen vervolgens voorspellingen zoals aanbevelingen gedaan worden. Dataminers kunnen met behulp van algoritmes relatief efficiënt alle interessante patronen voor deze doelgroep vinden in de database (van een ziekenhuis, een webshop, etc).

Kortom, met een goede database en een eerst goede beschrijving van een subgroep (>1000 euro besteed) kunnen complete profielen worden opgesteld: mensen die >1000 euro hebben besteed, wonen gemiddeld in een huis van meer dan 7 ton, gaan 3x per jaar op vakantie waarvan 1 x transatlantisch, en hebben gemiddeld 2,3 kinderen.

Een datascientist heeft voor het trainen van algoritmes voor patroonherkenning ook altijd een domeinexpert nodig die kan omschrijven welke karakteristieken in een patroon zinvol zijn, want niet elk gevonden patroon in de datastromen leidt tot zinvolle profielen in de echte wereld. Want misschien laat bovenstaand profiel op basis van de patronen ook zien dat ze in hun jeugd een goudvis bezaten, maar dat interesseert de webshop-marketeer niet bij het doen van product-aanbevelingen.

Een andere beperking die Siebes schetst bij patroonherkenning is de mogelijke schending van privacy. Aan de hand van slechts vier kenmerken kan een algoritme namelijk al ontdekken wie jij bent en wat je hebt gedaan. Hij noemt dit de paradox of patterns, waarbij patronen zowel een vloek zijn door het schenden van privacy, als een geschenk doordat ze data omzetten tot actionable knowledge.

 

Recommendations

Er zijn heleboel technieken om een recommender system te maken en één daarvan is, zoals ook behandeld in bijeenkomst 1, collaborative filtering. Er zijn twee manieren om collaborative filtering toe te passen: user centric en item centric. Bij user centric wordt er gekeken naar soortgelijke patronen van andere gebruikers, die overeenkomen met de huidige gebruiker. Hierbij wordt de cosinus tussen twee gebruikers berekend, en kan het algoritme inschatten in hoeverre deze gebruikers gelijk zijn. Hoe dichter de uitkomst ligt bij de 1, hoe groter de gelijkenis.

De item centric-manier kijkt paarsgewijs naar bijvoorbeeld tegelijk gekochte gekochte items, in plaats van naar het koopgedrag van op elkaar lijkende gebruikers: men bouwt een matrix waarbij de relaties tussen paren worden vastgesteld. Elke klant vormt een item set (alle items die hij heeft gekocht krijgen) en deze item set vormt een van de vele subsets van alle rijen in de matrix. Daarna gaat het algoritme op zoek naar items die je nog niet hebt gekocht op basis van alle subsets waar de reeds gekochte items ook in voorkomen, en doet hiervoor een aanbeveling.

Valkuilen in het recommender-systeem

Er zijn heel veel meer 0’en dan 1’en in een matrix. Hoewel mensen op elkaar lijken, lijken ze ook niet helemaal op elkaar. Ook wordt er nog geen rekening gehouden met de factor tijd. Denk aan transacties van een jaar geleden, die momenteel niet meer relevant voor gebruikers zijn. Ook betekent één user account niet perse één gebruiker. Zoals we ook gezien hebben bij de vorige sessie zijn de algoritmes in de aanbevelingssystemen nog altijd in ontwikkeling en worden ze steeds slimmer. In de toekomst zal het er op gaan lijken dat deze valkuilen vermeden kunnen worden, aldus Siebes. Genoeg uitdagingen voor de aanbevelingsystemen. Een andere tak van sport waar datamining ook niet stil staat, is het puur doorzoekbaar maken van audiovisuele data.