Analytics behind the scenes: humans and computers versus big data

"Analytics" is een term die in de data-analyse wereld vaak gebruikt wordt, maar waar weinig consensus over de inhoud van deze term bestaat. Zo beschrijft men analytics vaak als een manier  om een antwoord te bieden aan vragen over de inhoud van de data (descriptive analytics) of over toekomstige ontwikkelingen die kunnen voorspeld worden op basis van de huidige data (predictive analytics). Daarnaast kan men analytics ook classifiseren volgens de methodes/technieken die gebruikt worden om een antwoord te bieden aan de voornoemde vraagstukken. In dit laatste geval spreken we dan vaak over methodes zoals statistische analyses, data mining, artificiele intelligentie, classificaties of machine learning.

Human versus computational analytics

In deze blogpost gaan we analytics op een andere manier indelen: volgens de actor die analytics uitvoert. Actors zijn diegenen die de analytics technieken uitvoeren en beoordelen, om vervolgens de nodige conclusies te trekken.  Zo kunnen we spreken over twee soorten analytics:

  • Human analytics, wat alle technieken omvat waar men manueel op zoek gaat naar patronen, afwijkingen, ... in de data. Dit zijn meestal technieken die gebaseerd zijn op visualisaties van bepaalde parameters. Deze technieken laten toe om de finesses van een bepaald soort data leren te kennen, de volledigheid in te schatten en te bepalen welke variabelen belangrijk zijn of niet. Een groot voordeel van deze techniek is dat hij kan ingezet worden voor heel veel verschillende types problemen en types van data. Een nadeel is dat men vaak slechts een beperkt aantal parameters kan visualiseren/interpreteren en dat men bij hele grote volumes data vaak met steekproeven dient te werken om een niet te cluttered beeld van de data te verkrijgen.
  • Computational analytics, zijn alle technieken waar de computer autonoom (i.e. volgens bepaalde regels en algoritmes) op zoek gaat naar patronen in de data. Dit zijn meestal methodes die gebaseerd zijn op artificiele intelligentie (neurale netwerken, support vector machines), machine learning (decision trees) of geavanceerde statistiek (verscheidene regressie analyse technieken). Een groot voordeel aan deze technieken is dat ze automatisch op regelmatige tijdstippen of ten gevolge van bepaalde events kunnen uitgevoerd worden en de nodige resultaten leveren. Computational analytics mogen we echter niet aanzien als een magische oplossing voor alle analyse problemen. Zo verwachten bijna al deze technieken een zeer strikt data-schema (de eerste normaalvorm), wat heel wat transformaties vooraf nodig maakt. Deze transformaties dienen door mensen bedacht en beschreven te worden, wat de nodige tijd kost. Voorts is niet elke techniek even geschikt voor elk probleem: soms is techniek één goed voor een binaire keuze uit een set numerieke variabelen daar waar techniek twee met heel veel verscheidene soorten variabelen en een ongebalanceerde data-verdeling overweg kan.

Het human-computational data-analyse proces

De opdeling uit de vorige sectie laat ons nu toe om een typisch data-analyse proces te beschrijven waar zowel human als computational analytics noodzakelijk zijn. De stappen die we in zo een typisch human-computational data-analyse proces nemen zijn de volgende:

  1. We passen éérst human-analytics technieken toe om de data die relevant is voor een bepaald probleem te leren kennen. Zo kunnen we de impact van bepaalde variabelen inschatten en de links tussen bepaalde bronnen leren kennen. In deze eerste fase kunnen we de geproduceerde, human-readable, visualisaties gebruiken tijdens overleg met de klant om bepaalde keuzes beter af te wegen.
  2. Nadat we tijdens de eerste fase de data hebben leren kennen kunnen we de nodige data-transformaties implementeren. Deze data-transformaties dienen gebouwd te worden om in de volgende fase de computational-analytics technieken van input te voorzien. Typische transformaties die hier gebouwd worden zijn: het discretiseren/omvormen van continue variabelen, het omzetten van netwerkdata naar een reeks van variabelen en het herkennen van features in multimedia data.
  3. Nu we een reeks van variabelen gebouwd hebben dmv van data-transformaties kunnen we het computational-analytics algoritme van input voorzien. Dit gebeurt in twee stappen:
    • De trainingsfase, een subset van de data (de trainingsset) wordt door het algoritme geanalyseerd. Dit leidt tot een predictief model dat bepaalde beslissingen over de data kan nemen op basis van nieuwe inputdata.
    • De toepassingsfase, het predictief model wordt losgelaten op de nieuwe data, wat zal leiden tot een reeks van voorspellingen/schattingen over deze nieuwe data.

Bovenstaand proces toont aan dat de rol van de computer - computational analytics - slechts beperkt is in de hele data-analyse. Mensen - analisten - dienen eerst de data voldoende te begrijpen, de nodige transformaties te bouwen en het juiste algoritme te kiezen alvorens een computer de data op regelmatige basis kan analyseren. Bovendien is het belangrijk op te merken dat dit een iteratief proces is. Zo zal men initieel vaak transformaties maken op basis van de visualisaties, maar blijken deze niet significant voor het uiteindelijke predictief model. Dan dient men terug te grijpen naar nieuwe, meer gedetailleerdere visualisaties, om andere transformaties te maken die vervolgens het resultaat van het predictief model positief kunnen beinvloeden.

De uitdaging: "Big(ger) Data"

Door technieken als human en computational analytics te combineren kunnen we data via een vast stramien gaan analyseren en het resulterende model later op een structurele manier exploiteren. Toch schuilt er een addertje onder het gras: het volume aan data dat we analyseren heeft een grote invloed op de snelheid van het proces. Zo is het moeilijk om hele grote volumes aan data te visualiseren op een een begrijpbare, niet cluttered manier (er zijn immers slechts ~3 miljoen pixels die kunnen benut worden in een visualisatie). Dit zal leiden tot foute interpretaties, wat vervolgens de aanleiding kan zijn voor niet optimale transformaties en kwalitatief minder goeie input voor de predictieve modellen. Bovendien duurt het uitvoeren van de transformaties op grote hoeveelheden data ook veel langer en vraagt het bouwen van een visualisatie uit een grote data-set ook meer tijd.

Om om te gaan met de problematiek van "big(ger) data" zien we twee interessante ontwikkelingen:

  • krachtigere en gedistribueerde server-infrastructuren, die het mogelijk maken om bijzonder grote hoeveelheden informatie op een heel korte tijd te verwerken. We denken hier eenerzijds aan cluster of gedistribueerde infrastructuren die verscheidene servers in parallel gebruiken om queries uit te voeren. Anderzijds denken we aan data warehouse appliances die via een compleet getunede architectuur bijzonder snel analytics vraagstukken kunnen oplossen.
  • nieuwe visualisatietechnieken, die het mogelijk maken om ondanks een bijzonder grote hoeveelheid data toch door het bos de bomen nog te zien. Visualisatietechnieken die hierbij een belangrijke rol spelen zijn smoothingaggregatie (binning) en interactie:
    • Smoothing zal bepaalde lokale effecten uitvlakken (gebruik makende van bv. piecewise regression) om een globaal beeld op de data te werpen.
    • Aggregatie deelt data op in bins met als maximum aantal bins het aantal pixels die beschikbaar zijn voor de visualisatie. Van elk van deze bins gaat men vervolgens een aantal summary statistics bouwen die men visualiseert op het scherm. Zo krijgt men een idee van welke data zich in elke bin bevindt.
    • Via interactie-technieken kan men dan inzoomen op bepaalde bins om details over deze bins te bekijken, kan men bepaalde parameters interactief filteren, data op een andere manier voorstellen, ... .

Besluit

Analytics is geen magische techniek die een arbitraire hoeveelheid data als input krijgt om vervolgens de nodige conclusies te trekken. Er is een belangrijke rol weggelegd voor de menselijke analist, die de data dient te analyseren en transformeren alvorens hij door een computer kan geinterpreteerd worden dmv computational analytics. Daarnaast worden analytics technieken enorm beinvloed door de hoeveelheid data die men wenst te analyseren. Om op een goede manier met grote volumes aan data om te gaan is de vooruitgang in processing power voor analytics en visualisatie- en interactietechnieken cruciaal.

Leave a Reply

Your email address will not be published.