OP EEN EFFICIËNTE MANIER LEREN OM VERANTWOORD DATA TE ANALYSEREN (en, kan ChatGPT ons daarbij helpen?)
Leestijd: 10 minuten.
Onderwerp: Dit artikel geeft nadere uitleg over waarom ik ben gestart met de Data Analyse Academie. Kort gezegd: ik meen dat de bestaande opleidingen veel te technisch van aard zijn, te weinig praktijkgericht, onnodig veel tijd vragen, en last but not least dat ze hun doel missen, namelijk om te leren hoe je verantwoord data analyseert. Kortom, het motto van de Data Analyse Academie is: Efficiënt Leren en Verantwoord Analyseren!
Inhoud: Als je zoekt naar cursussen Statistiek, Data Analyse, of Data Science, dan zul je talloze hits krijgen. Wat, zo zou je je af kunnen vragen, is dan de meerwaarde van het starten van een bedrijf dat nóg meer cursussen over deze onderwerpen aanbiedt?
In dit artikel licht ik toe in welke opzichten het curriculum van de Data Analyse Academie zich onderscheidt van wat gangbaar is
Vooraf: Wat heb je nodig om een rijbewijs te halen?
Denk eens even terug aan het behalen van je rijbewijs. Tijdens de rijlessen en het examen lag de nadruk op vaardigheden die nodig zijn om veilig en verantwoord te rijden, zoals kennis van de verkeersregels, een juiste bediening van het voertuig, en een gepaste reactie op verschillende verkeerssituaties. Hoogstwaarschijnlijk werd je niet gevraagd om motorproblemen of andere kwesties onder de motorkap op te lossen, dat is immers het werk van een automonteur.
Waarschijnlijk heb je wel voldoende basiskennis om eventuele problemen te herkennen. Als een dashboardlampje je waarschuwt dat de druk van de rechter-achterband te laag is, dan zul je enige tijd later stoppen bij een benzinestation en het probleem verhelpen. Of, als het olielampje begint te knipperen omdat er geen motorolie meer is, dan zul je waarschijnlijk direct je auto parkeren en hulp inschakelen om de olie bij te vullen (of het zelf bijvullen, als je weet hoe dat moet).
Kortom, je kunt veilig van A naar B rijden zonder iets te weten van wat er zich onder de motorkap afspeelt. Zolang je het dashboard maar in de gaten houdt en indien nodig actie onderneemt, is er geen probleem.
Moet je onder de motorkap kijken om een onderzoeks- of een businessvraag te kunnen beantwoorden?
In dit verband deel ik graag een persoonlijke ervaring. In het laatste deel van de jaren '80 gaf ik mijn eerste Statistiek cursus als Junior Docent aan eerstejaarsstudenten Psychologie. We begonnen met Waarschijnlijkheidstheorie, waaronder verzamelingenleer, kansruimten, variabelen en verdelingen, hetgeen ons enkele maanden kostte. De daaropvolgende maanden waren gewijd aan Statistiek, waarbij we diep ingingen op talloze formules.
Helpen deze formules bj het beantwoorden van een onderzoeksvraag?
Welnu, hoe dieper we in de formules doken, des te minder de studenten van de fundamentele concepten begrepen. Men zag door de bomen het bos niet meer. En bovenal had deze aanpak tot gevolg dat studenten gedemotiveerd werden voor statistiek of onderzoek.
Kortom, deze aanpak deed sterk denken aan het alles moeten weten over wat er zich onder de motorkap afspeelt, met als ultiem resultaat dat studenten het begrip misten, het examen bijna onoverkomelijk vonden, en, last but not least, niet in staat waren om datgene wat ze hadden geleerd te vertalen naar onderzoeksvragen (Disclaimer: voor studenten Wiskunde of Econometrie kan het heel relevant zijn om grondig onder de motorkap te kijken, maar voor studenten Psychologie... nee.)
De cruciale vraag is: wat zijn de minimale vereisten om gegevens verantwoord te analyseren?
Enkele jaren later maakte ik de overstap naar een positie als opleider bij een bedrijf dat "statistische producten en service solutions" aanbood. Nu, in een zakelijke omgeving, is tijd geld, en hoe sneller cursisten de onderwerpen onder de knie krijgen, des te beter. Vandaar dat de cruciale vraag werd: wat zijn de minimale vereisten om gegevens verantwoord te analyseren. Dus, wat moet je weten over- en begrijpen van statistiek en onderzoek om interpreteerbare resultaten te krijgen en de onderzoeks- of businessvraag te beantwoorden?
Eén ding zal duidelijk zijn: je moet weten met welk type variabelen je te maken hebt.
Bezie, bijvoorbeeld, de gegevens verzameld bij een enquête naar politieke voorkeur. Genoteerd is het geslacht en gevraagd is naar regio, leeftijd, politieke voorkeur en inkomen. Hier hebben we enkele, laten we zeggen, "categoriale" variabelen (GESLACHT, REGIO, POLITIEKE VOORKEUR) en een paar "continue" variabelen (LEEFTIJD, INKOMEN). De variabele ID geeft het respondentnummer weer.
Een dataset van rijen (ook wel “cases” of “records”genoemd, en kolommen (“variabelen”). Omdat het intypen van tekst meer tijd kost dan het intypen van getallen zijn er codes gebruikt voor de categoriale variabelen. Zo zou de code 1 bij GESLACHT “Vrouw” kunnen betekenen.
Wanneer je nu 1,000 respondenten hebt en de gegevens wilt samenvatten, dan zul je waarschijnlijk niet rapporteren dat 'de gemiddelde REGIO 2.7' is, aangezien dat getal niks zegt. Aan de andere kant heeft een uitspraak als 'de gemiddelde leeftijd is 38.9' wél betekenis. Het idee dat verschillende typen variabelen verschillende statistische maten vergen, is vrij intuïtief. Echter, het is interessant om te merken dat deze zeer intuïtieve notie ergens onderweg in het statistiekonderwijs verloren lijkt te gaan.
Zo kunnen we ons bijvoorbeeld afvragen welke variabelen met elkaar samenhangen in onze dataset. Je zou op het idee kunnen komen dat je daarvoor de "correlaties" moet opvragen, omdat 'samenhang' en 'correlatie' in het dagelijks taalgebruik hetzelfde is. Het uitvoeren van deze analyse levert de tabel op die hier rechts is getoond.
Welke van deze correlaties hebben betekenis?
Omdat de gegevens allemaal numeriek zijn (geen tekst) worden statistische maten berekend die feitelijk niet van toepassing zijn. De "correlatie" is namelijk een statistische maat die alleen voor continue variabelen betekenis heeft; de correlatie tussen, zeg, GESLACHT en REGIO heeft geen betekenis, hoe overtuigend het uitgerekende getal wellicht ook is. Precies dit bedoelen we met Efficiënt Leren en Verantwoord Analyseren: het vergt maar een paar minuten om uit te leggen of om in te zien waarom de correlatie tussen categoriale variabelen geen betekenis heeft en met dit in het achterhoofd zou men om het verband tussen GESLACHT en REGIO te onderzoeken een andere statistische maat kiezen.
Overigens is het interessant (en eigenlijk nogal teleurstellend) om te merken dat statistische software geen waarschuwing geeft wanneer je een statistiek opvraagt die niet geschikt is voor het type variabelen in de desbetreffende analyse. Met andere woorden, het feit dat software een statistische maat berekent betekent niet noodzakelijkerwijs dat deze maat ook betekenis heeft. Het is dus de verantwoordelijkheid van de analist om een gepaste statistiek te gebruiken.
Het identificeren van het type van de variabelen, een zeer intuïtieve notie, is een fundamentele vereiste voor een verantwoorde data analyse. Het type van de variabelen bepaalt immers de keuze van de analysemethode, simpelweg: je gebruikt andere statistische maten en methoden voor een variabele zoals REGIO dan voor een variabele zoals LEEFTIJD.
Meer in het algemeen zijn er slechts een paar algemene, intuïtieve richtlijnen om je gegevens verantwoord te analyseren; geen Wiskunde, Kansrekening of Lineaire algebra vereist! Met een goed begrip van fundamentele concepten ben je in staat om onderzoeksvragen te beantwoorden en zul je ook Machine Learning modellen kunnen bouwen op een verantwoorde manier.
Kan ChatGPT ons assisteren?
We kunnen ons afvragen of ChatGPT kan helpen bij het analyseren van onze gegevens. Als dat het geval is, dan zou dat de noodzaak om Wiskunde, etcetera te kennen, nóg verder verminderen. We leggen drie vraagstellingen aan ChatGPT voor.
Is er een verband tussen REGIO en POLITIEKE VOORKEUR?
Ten eerste een bivariate analyse ("bivariaat" omdat het gaat om het verband tussen twee variabelen).
Prompt: Welke statistische procedure moet ik uitvoeren als ik wil weten of REGIO en POLITIEKE VOORKEUR gerelateerd zijn?
ChatGPT: Het antwoord op deze vraag hangt af van het type variabelen dat je hebt (categorisch of continu) en de aard van de relatie die je wilt onderzoeken. Als REGIO en POLITIEKE VOORKEUR beide categorische variabelen zijn, kun je overwegen om een chi-kwadraattoets voor associatie uit te voeren. Deze test kan aantonen of er een statistisch significante associatie is tussen de twee categorische variabelen. Als een van de variabelen continue gegevens bevat en de andere categorisch is, zou je ... etc
De boodschap van ChatGPT is dat het type van de variabelen leidend is voor de keuze van de analysemethode, perfect!
ChatGPT suggereert ook dat je een kruistabel kunt maken om het verband tussen deze twee variabelen te beoordelen. Het vertelt ons echter niet hoe we meer inzicht kunnen krijgen in dit verband. Daarvoor zouden we specifieke percentages moeten aanvragen. Dus, wij moeten zelf weten dat percentages ons meer inzicht kunnen verschaffen en bovendien zouden we moeten weten wat voor soort percentages relevant zijn. (Misschien wordt dit duidelijk als je maar lang genoeg doorvraagt, maar als je niet weet waar je naar op zoek bent is een goede prompt wellicht nog lastig.)
Is er een relatie tussen INKOMEN en LEEFTIJD?
We zijn hierbij niet geïnteresseerd in de technische details (hoe de statistiek te berekenen, hoe hypothesen te testen), maar we willen wel weten wat de aannames zijn van de analysemethode en welke aandachtspunten er zijn bij de analyse.
Prompt: Welke statistische procedure moet ik uitvoeren om te zien of INKOMEN en LEEFTIJD gerelateerd zijn? Geef geen technische details in het antwoord, maar vermeld de aannames en aandachtspunten.
ChatGPT: Om te beoordelen of INKOMEN en LEEFTIJD gerelateerd zijn kun je overwegen een correlatieanalyse uit te voeren. Hierbij is het belangrijk om enkele aannames en aandachtspunten in overweging te nemen.
Er volgen twee aannames, namelijk verondersteld wordt dat de relatie rechtlijnig verloopt en dat bepaalde variabelen normaal verdeeld moeten zijn. Ook worden er twee aandachtspunten genoemd, namelijk de impact van uitschieters op de correlatie en dat een verband niet per sé een causale relatie tussen de variabelen betekent.
Op zich een prima antwoord, echter, je zou er nog wel een paar aannames en aandachtspunten aan kunnen toevoegen, bijvoorbeeld "invloedrijke punten"; en, de aanname van normaal verdeeldheid is alleen relevant als je statistisch wilt toetsen. Ook hier is de conclusie dat we verder zouden moeten doorvragen voor een vollediger antwoord.
Kunnen we INKOMEN voorspellen met LEEFTIJD en REGIO?
Laten we eens kijken hoe ver ChatGPT komt bij een multivariate analyse ("multivariaat": er zijn meer dan twee variabelen bij betrokken), met tegelijkertijd een mix van typen van variabelen (categoriaal en continue).
Prompt: Welke statistische procedure moet ik uitvoeren om INKOMEN te voorspellen op basis van LEEFTIJD en REGIO?
ChatGPT: Om INKOMEN te voorspellen op basis van LEEFTIJD en REGIO zou je een lineaire regressieanalyse kunnen uitvoeren.
Een goed antwoord, alleen: regressie-analyse is een methode voor continue variabelen en ChatGPT pikt niet op dat REGIO categoriaal is. Laten we de vraag herformuleren.
Prompt: Welke statistische procedure moet ik uitvoeren om INKOMEN te voorspellen op basis van LEEFTIJD en REGIO, waarbij REGIO een categoriale variabele is.
ChatGPT: Als REGIO een categoriale variabele is, kun je overwegen om een regressieanalyse uit te voeren waarbij je gebruik maakt van zogenaamde dummy-variabelen. Deze dummy-variabelen representeren de verschillende categorieën van de REGIO-variabele. ... etc...
Het maken van dummy variabelen is inderdaad de aangewezen methode om een categoriale variabele als voorspeller in regressie-analyse mee te nemen. Je zou nog kunnen doorvragen naar de reden waarom je dummy variabelen moet maken voor een categoriale variabele, meer informatie vragen over hoe je dummy variabelen maakt, en dergelijke. Ook hier is de conclusie dat je geen genoegen moet nemen met het eerste het beste antwoord en vervolgvragen moet stellen (als het eerste antwoord als leidraad zou nemen kan dat leiden tot onverantwoorde analyses).
Bevindingen van het gebruik van ChatGPT
Opvallend genoeg zijn de antwoorden van ChatGPT geformuleerd in termen van het type variabelen in de analyse ("categoriaal", "continu"). Het toont niet alleen aan dat kennis van het type van je variabelen veel belangrijker is dan een gedegen kennis van Wiskunde etc. Het laat ook zien dat als je ChatGPT om advies vraagt, het raadzaam is om informatie over het type van de variabelen mee te geven op de prompt, immers, dan is de kans op een juist antwoord groter.
Een andere bevinding is dat ChatGPT met stapsgewijze instructies kan komen, met daarbij veel details over aannames- en aandachtspunten van de analysemethode. Enerzijds is dit zeer verhelderend, anderzijds, vanuit een pragmatisch oogpunt, kan dat ook té gedetailleerd zijn. Er komen namelijk vaak allerlei kansverdelingen in de antwoorden voor ("Chi-kwadraat", "Normale verdeling", etc). Je zou ook kunnen afzien van deze details, want zodra je het onderliggende idee van statistisch toetsen begrijpt maakt de feitelijke toets niet meer uit. Hier kun je dus aanzienlijke tijdwinst boeken door niet en detail in te gaan op elke verdeling.
We hebben slechts enkele vragen gesteld, en het moet gezegd worden dat ChatGPT uitstekend werk levert. Maar, de antwoorden moeten wel worden gevalideerd. Bovendien pikt ChatGPT ook niet op dat je soms andere procedures moet uitvoeren voorafgaand aan de analyse waar het om feitelijk om gaat.
Achtergrondkennis in Data Analyse of Statistiek zal veel helpen om de antwoorden van ChatGPT te valideren en aan te vullen. Hiertoe volstaat een goed begrip van de basisprincipes, zoals het identificeren van het type van de variabelen, het idee van statistisch toetsen, en dergelijke. Kennis van Wiskunde, Waarschijnlijkheidsrekening, Lineaire Algebra voegt daar weinig aan toe.
Dit geldt des te meer omdat je een uur van je tijd slechts één keer kunt besteden; als je zou willen, zou je kunnen blijven studeren op Machine Learning modellen (as we speak worden er weer nieuwe modellen ontwikkeld), maar er zijn veel meer vaardigheden die je moet beheersen om een succesvolle Data Analist of Data Scientist te worden. Het draait niet alleen om Machine Learning modellen. Andere vaardigheden zijn: duidelijke en tijdige communicatie, efficiënte datapreparatie (datavoorbereiding maakt 80% van een project uit), domeinkennis, dashboarding en storytelling, om er enkele te noemen.
Kortom, omarm ChatGPT of andere AI-tools om je te begeleiden bij je analyses, maar ga er voorzichtig mee om. Je hebt wat meer achtergrondkennis en begrip nodig om er het meeste uit te halen. En het goede nieuws: met de juiste opleidingen vergt dit een investering van slechts enkele weken in plaats van jaren (Efficiënt Leren en Verantwoord Analyseren!).
Onze visie: Iedereen kan een Data Analist of Data Scientist worden!
Gelet op het feit dat het diep ingaan op technische details onder de motorkap het begrip niet ten goede komt en gezien de alom beschikbaarheid van AI en geautomatiseerde tools, zijn wij van mening dat de vereisten voor een curriculum om Data Analisten of Data Scientists op te leiden aanzienlijk verschilt van de gangbare opleidingen. We menen stellig dat je geen wiskundige of statisticus hoeft te zijn om een succesvolle data analist of data scientist te worden.
Wij omarmen AI-tools, maken gebruik van geautomatiseerde modelleringsmogelijkheden en kiezen een intuïtieve, toegankelijke, pragmatische, en praktische benadering. Onze focus op concepten zorgt ervoor dat je leert om verantwoord data te analyseren. En voor zover technische kennis relevant is, hebben wij de vertaalslag al gemaakt naar real-life scenario's.
Onze visie: Raak eerst vertrouwd met de concepten voordat je gaat programmeren
Een belangrijk onderscheidend kenmerk van ons curriculum is ook onze overtuiging dat het leren van concepten vooraf moet gaan aan het programmeren (commando's intypen, ook wel "coderen" genoemd) met tools zoals Python of R. Wij raden aan om niet te beginnen met programmeren omdat een simpele typefout meteen wordt afgestraft en leiden tot direct tot cryptische en mysterieuze foutmeldingen).
In plaats daarvan kun je beter starten met een grafische interface, zodat je vertrouwd raakt met alle concepten, binnen een fractie van de tijd die je nodig hebt met programmeren. Een grafische interface is je beste vriend om te leren wat Data Analyse en Data Science behelst. Zelfs als je uiteindelijke doel is om te programmeren, begin met een gebruikersvriendelijke interface, de tijd die nodig is om vertrouwd te raken met zo'n interface is minimaal, de leercurve is zeer steil, en wanneer je eenmaal alle begrippen kent zul je veel sneller kunnen programmeren.
Ter illustratie laten we hieronder twee voorbeelden van een grafische interface de revue passeren.
Voorbeeld 1: Het vergelijken van groepsgemiddelden(met IBM SPSS Statistics)
Stel dat we de relatie tussen GENDER (code 0 voor "Man", code 1 voor "Vrouw") en INKOMEN statistisch willen toetsen. We hebben een test nodig die geschikt is voor een categoriale variabele en een continue variabele aan de andere kant.
Wanneer de categoriale variabele twee groepen definieert, is de T-test geschikt (dat wil zeggen, geschikt als we bepaalde aannames doen). In, bijvoorbeeld, IBM SPSS Statistics is de route in het menu Analyze > Compare Means > Independent Samples T Test, wat strookt met je doel om groepsgemiddelden te vergelijken, hier het gemiddelde INKOMEN van de mannen met het gemiddelde INKOMEN van de vrouwen.
In het vakje Test Variable(s) staat de variabele waarvoor je het gemiddelde wilt berekenen, terwijl de variabele die de groepen definieert onder Grouping Variable staat. Zeer inituïtief en bovendien is hulp met slechts één muisklik op te roepen. De analyse duurt hoogstens één minuut, je hoeft je geen zorgen te maken over spelfouten of typefouten en je kunt je volledig concentreren op de uitvoer van de toets.
Enthousiaste cursisten kunnen verdere opties bestuderen of andere onderzoeksvragen formuleren.
Het vergelijken van twee groepsgemiddelden: de T Toets voor onafhankelijke groepen.
Voorbeeld 2: Het bouwen en toepassen van een Machine Learning model (met IBM SPSS Modeler)
Het volgende voorbeeld betreft een telecomprovider, waar de vraagstelling is om de 1,000 klanten te selecteren die het meest waarschijnlijk hun abonnement zullen opzeggen, zodat ze benaderd kunnen worden in een marketingcampagne. (Overigens: zou je ook klanten willen selecteren die een grote kans hebben om op te zeggen maar nauwelijks omzet vertegenwoordigen? Dit soort vragen moet ook worden geadresseerd en ook hiervoor geldt dat Wiskunde en dergelijke niet helpen om hierover te beslissen.)
Een grafische interface stelt je in staat om een 'flow' te creëren waarin een model wordt gebouwd dat op basis van historische gegevens ("historisch": bekend is wie wel en wie niet heeft opgezegd) groepen vindt met hoge opzegpercentages, waarna je dat model kunt toepassen op de huidige klanten.
De flow importeert eerst de dataset met historische gegevens. De data wordt vervolgens geschoond en verrijkt, waarna de data wordt gesplitst in een trainings- en testset, om het model te bouwen respectievelijk te evalueren.
Het XGBoost-algoritme wordt gebruikt om klantgroepen te zoeken waar het percentage opzeggers hoog is. Zijn deze eenmaal gevonden dan wordt deze informatie in een model bewaard en kan het model worden geëvalueerd: kan het model goed voorspellen of een klant al dan niet opzegt? (Het XGBoost is overigens snel uit te leggen, mits je afziet van alle technische details, anders kun je er wel een maand op studeren...)
Als het model bevredigend blijkt te zijn, dan kan het worden gebruikt om te voorspellen wat de opzegkans is voor de huidige klanten, waarna de gegevens van de 1,000 klanten met het grootste risico om op te zeggen kunnen worden geëxporteerd zodat de marketing-afdeling deze klanten in een campagne kan benaderen. Dit is de onderste "tak" van de flow.
Het creëren van deze flow kost een fractie van de tijd die nodig is om code te schrijven. En belangrijker, in het kader van het vertrouwd raken met concepten: de flow laat veel interessante aspecten zien, zoals het verschil tussen een 'algoritme' en een 'model', een 'trainingset' versus een 'testset', en het evalueren van een model. De flow kan ook vragen oproepen die je begrip versterken, zoals waarom er geen XGBoost-algoritme is in de onderste tak van de flow.
Eindconclusie
We zijn ervan overtuigd dat iedereen Data Analist of Data Scientist kan worden (mits gemotiveerd, uiteraard). Dat kan omdat de Data Analyse Academie kies voor een intuïtieve, gebruikersvriendelijke, pragmatische en praktische benadering, waarvoor geen wetenschappelijke achtergrond nodig is.
Vergeleken met andere opleidingen bespaart onze benadering de cursist tijd, wordt de cursist geënthousiasmeerd en uitgedaagd door praktische vraagstellingen, en leert de cursist om data op een verantwoorde manier te analyseren, daarbij geholpen door AI en geautomatiseerde tools. Kortom, de cursist leert om het gehele analysetraject van A naar B op een verantwoorde manier te doorlopen, vergelijkbaar met het leren autorijden.
Anders gezegd: het feit dat veel cursisten moeite hebben met de gangbare opleidingen Statistiek, Data Analyse, Data Science ligt niet aan de cursisten, maar aan deze opleidingen. Iedereen kan een succesvolle Data Analist of Data Scientist worden!
Hartelijk dank en happy learning!
Geef een reactie