Een introductie tot machine learning II: lineaire regressie

Geen reacties
Tags:
Posted 14 feb 2020 in nieuws

In het vorige artikel – Een Introductie tot Machine Learning –  heb je een indruk gekregen hoe Machine Learning werkt. Hier bespraken we de belangrijkste verschillen tussen deze methodologieën. Nu gaan we de algoritmes behandelen die Machine Learning gebruikt om voorspellingen te doen.

De algoritmes maken gebruik van wiskundige concepten zoals calculus en statistiek. Laat je trouwens niet afschrikken door de benamingen van de algoritmes, er worden ook geen wiskundige aspecten gebruikt binnen de scope van het artikel.  Het eerste algoritme wat we nu gaan behandelen is lineaire regressie. Door middel van dit algoritme kan je voorspellingen doen aan de hand van een lineaire regressielijn. Daarna wordt er gekeken hoe een algoritme getraind kan worden en wat dit precies is. Na het lezen van dit artikel weet je hoe lineaire regressie werkt en wat er met data trainen gedaan kan worden

Wat lineaire regressie?

Lineaire regressie komt uit de statistiek, het wordt tegenwoordig ook toegepast in de computerwetenschap om voorspellingen te doen binnen machine learning.  Bij lineaire regressie is het belangrijk hoe sterk de relatie is tussen de twee variabelen. Dit wordt ook wel de correlatie tussen twee variabelen genoemd. Een correlatie geeft de samenhang tussen twee variabelen weer, hoe beter de correlatie des te beter de algoritme zal presteren. Wellicht klinkt het nog een beetje ingewikkeld, maar met een praktijkvoorbeeld wordt het allemaal snel duidelijker. 

Casevoorbeeld: Pieters Dating website

Om lineaire regressie beter te begrijpen maken we gebruik van een casevoorbeeld. Dit praktische voorbeeld geeft beter zicht in hoe de algoritme werkt. 

Pieter heeft een E-commerce website. Hij wil weten hoeveel geld klanten jaarlijks gemiddeld uitgeven op basis van de lengte van hun lidmaatschap. Pieter levert de data aan en wanneer dit gevisualiseerd wordt ziet het er als volgt uit.

Met het blote oog is goed te zien dat er een trend is in de datapunten.  Ze hebben een correlatie zoals je ziet. We kunnen nu een lineaire regressielijn trekken om de gemiddelde kosten te berekenen. Dit ziet er dan als volgt uit.

De regressielijn is de lijn die het gemiddelde aangeeft van het bedrag dat is uitgegeven. Als ik nu aan je vraag: “Hoeveel geeft iemand uit wanneer hij 4,5 jaar lid is van de website?” Dan is het antwoord ongeveer 550 euro.  De regressielijn is dus het belangrijkste en het algoritme zal altijd deze lijn als leidraad gebruiken om de resultaten weer te geven.

Inefficiënte regressielijn

In de praktijk ziet de data er meestal inefficiënt uit. Een dataset zoals in de onderstaande afbeelding zal minder goed presteren. We kunnen wel een regressielijn trekken, maar dit zal niet zo goed presteren als de bovenstaande dataset. De correlaties zijn namelijk slecht en als het algoritme een regressielijn zal bereken zal deze lijn geen goede resultaten geven.

Data trainen

Binnen het vakjargon van machine learning wordt het woord “trainen” gebruikt. Data trainen betekent dat het algoritme leert en kijkt of er verbanden tussen de dataeenheden zijn. In het geval van een lineair regressie algoritme betekent dat trainen van de data eigenlijk het trekken van de lineaire regressielijn is. 

Voor een mens is een regressielijn relatief makkelijk af te lezen. Maar voor de computer is dit een ander verhaal. De computer moet berekeningen doen op grote dataeenheden. Daarom hoor je vaak dat er computers nodig zijn met veel rekenkracht.

Het trainen van de data kost meestal wat tijd, dit hangt onder andere van af hoe groot je dataset is. Meestal wordt de data getraind op een speciale computer en vervolgens als uitvoerbaar bestand op een server geplaatst. Op deze manier hoeft de data niet nogmaals getraind te worden en kunnen de resultaten direct weergegeven worden.

Liniaire regressie

We weten nu hoe lineaire regressie werkt. Zoals je hebt gezien is dit best een eenvoudig algoritme. Je kan een lineaire regressielijn ook in Excel maken en op basis van het blote oog aflezen of er een trend is in je data. Als je dataset groot is, kan je beter Python gebruiken. Het lineaire regressiemodel is een simpel algoritme. In het derde deel van dit artikel gaan we wat complexere algoritmes gebruiken die je bijvoorbeeld niet in Excel zou kunnen visualiseren.

Over de auteur: Erwin Nandpersad is CEO bij Ermmedia.nl.



Lees het volledige bericht op Emerce »


Add Your Comment