Icon

Workshop Module 1 - Regressieanalyse

Taak 1: Variabelen inlezen

Run beide nodes om de variabelen in te lezen.

Informatie

Sathishkumar et al. (2020) onderzoeken hoe met behulp van data mining en regressiemodellen de vraag naar deelfietsen kan worden voorspeld, specifiek het aantal ritten dat in een bepaald uur start. Daarbij analyseren zij welke factoren, zoals weersomstandigheden en tijdsvariabelen, invloed hebben op het gebruik en vergelijken zij verschillende modellen om te bepalen welke het beste presteert. De gebruikte dataset bevat gegevens van het Seoul Bike deelfietssysteem over een periode van één jaar (december 2017 tot en met november 2018).

In deze workflow analyseren we een naar dagdata geaggregeerde versie van deze dataset, waarbij we ons beperken tot weersomstandigheden. Hierbij staat het totaal aantal ritten per dag centraal als maat voor de vraag naar deelfietsen. Met behulp van meervoudige lineaire regressie stellen we een model op om te onderzoeken welke factoren het aantal ritten op een dag beïnvloeden en in welke mate.

Het gaat om de volgende variabelen die voor iedere dag zijn gemeten:

  • Date: Datum

  • Bike Rentals: Totaal aantal ritten

  • Temperature: Gemiddelde temperatuur (graden Celsius)

  • Humidity: Gemiddelde luchtvochtigheid (%)

  • Wind Speed: Gemiddelde windsnelheid (m/s)

  • Visibility: Gemiddelde zichtbaarheid (m)

  • Dew Point Temperature: Gemiddelde dauwpuntstemperatuur (graden Celcius)

  • Solar Radiation: Gemiddelde zonnestraling (MJ/m2)

  • Rainfall: Totale regenval (mm)

  • Snowfall: Totale sneeuwval (cm)

Sathishkumar, V. E., Park, J., & Cho, Y. (2020). Using data mining techniques for bike sharing demand prediction in metropolitan city. Computer Communications, 153, 353–366. https://doi.org/10.1016/j.comcom.2020.02.007

Taak 2: Verbanden verkennen

Stel de Scatter Plot node zo in dat Bike Rentals op de verticale as wordt getoond en Temperature op de horizontale as.

Stel de Linear Correlation node zo in dat deze de Pearson correlatiecoëfficiënten berekend voor alle paren numerieke variabelen.

Vraag 2: Interpretatie verbanden

Geef van elke variabele hieronder op het oog aan (1) of er een lineair verband is met Bike Rentals en zo ja (2) de richting en sterkte daarvan. Bekijk hiervoor de scatterplot, waarbij je de horizontale variabele varieert.

  • Temperature:

  • Humidity:

  • Wind Speed:

  • Rainfall:

Open de correlatiematrix door op het op vergrootglas bij de Linear Correlation node te klikken. Hier worden de correlatiecoëfficiënten in middels een heat map getoond. Als je met de muis boven een vakje hangt zie je de precieze correlatiecoëfficiënt.

Kijk naar de variabelen waarvoor je op basis van een scatterplot een lineair verband veronderstelt met Bike Rentals. Komt voor deze variabelen wat je hierboven op basis van de scatterplot inschatte voor richting en sterkte van het verband overeen met wat je in de heatmap ziet?

Antwoord:

Taak 3: Eerste model schatten

Stel de Lineair Regression Learner Node zo in dat Bike Rentals voorspeld wordt op basis van de onafhankelijke variabelen.

Stel de Column Filter node zo in dat alleen de onafhankelijke variabelen worden geselecteerd (bij de vragen in het blok hieronder wordt duidelijk waarom we dit doen).

Taak 4: Modellen schatten en diagnostisch rapport genereren

Stel de Regression Learner node zo in dat Bike Rentals voorspeld wordt op basis van de onafhankelijke variabelen met uitzondering van Dew Point Temperature.

Selecteer in de Linear Regression Diagnostics node de juiste target.

Vraag 3: Eerste model beoordelen

Normaal gesproken kijk je eerst naar de significantie van een lineair model voordat je de coëfficiënten voor de variabelen bekijkt, maar hier is iets vreemd aan de hand bij de coëfficiënten. Namelijk bij Temperature. Wat valt op aan de coëfficiënt van Temperature en waarom is dit opvallend?

Antwoord:

Dit kan het gevolg zijn van zogeheten multicollineariteit. Dit is het verschijnsel dat twee of meer onafhankelijke variabelen in een regressiemodel sterk met elkaar samenhangen, waardoor het lastig wordt om hun afzonderlijke effect betrouwbaar te schatten, en coëfficiënten zelfs van teken kunnen veranderen.

Lees hier hoe je op multicollineariteit kunt controleren en hoe je het kunt oplossen.

Bekijk de uitkomsten van de Variance Inflation Factor (VIF) node. Bij welke onafhankelijke variabelen is de VIF groter dan 5?

Antwoord:

Open nogmaals de correlatiematrix uit Taak 2. Zijn de hierboven benoemde onafhankelijke variabelen sterk met elkaar gecorreleerd?

Antwoord:

Een manier om multicollineariteit tegen te gaan is om onafhankelijke variabelen die sterk gecorreleerd zijn met andere onafhankelijke variabelen te verwijderen. Aangezien Temperature een sterker en beter interpreteerbaar verband heeft met Bike Rentals, kiezen we ervoor om Dew Point Temperature te verwijderen.

Pas de Column Filter node zo aan dat Dew Point Temperature uitgesloten wordt.

Bekijk de VIF scores opnieuw. Zijn er nog onafhankelijke variabelen met een VIF groter dan 5?

Antwoord:

Vraag 4: Interpretatie modellen en diagnostisch rapport

Open het diagnostisch rapport voor het model met alle onafhankelijke variabelen behalve Dew Point Temperature door op het vergrootglas te klikken bij de Linear Regression Diagnostics node. Bekijk de ANOVA tabel. Wat vertelt de p-waarde over de significantie van het geschatte regressiemodel?

Antwoord:

Open het coëfficiënten overzicht door op het vergrootglas van de Linear Regression node te klikken. Van welke variabelen wijkt de regressiecoëfficiënt niet significant van nul af bij alpha = 0,05?

Antwoord:

Gebruik de zogeheten step-down procedure (dit is een vereenvoudigde manier van modelselectie) om onafhankelijke variabelen met niet-significante regressiecoëfficiënten weg te laten uit het model:

  1. Laat de variabele met de hoogste p-waarde > 0,05 weg en schat het model opnieuw

  2. Bekijk de nieuwe p-waarden voor de coëfficiënten

  3. Zijn er p-waarden > 0,05, ga dan weer naar stap 1; anders einde

Wat is de regressievergelijking van het uiteindelijke model? (rond coëfficiënten af op gehele getallen)

Antwoord:

De effectgrootte van het model beoordelen we via R-squared (determinatiecoëfficiënt). Deze vind je bij het overzicht dat je krijgt door op het vergrootglas bij de Linear Regression Learner node te klikken. Wat is de waarde van R-squared? Wat vertelt dit?

Antwoord:

Run de Linear Regression Diagnostics node nogmaals met het uiteindelijke model en open het diagnostics rapport.

De significantietoetsing bij lineaire regressie stemt ook voort uit de centrale limietstelling. De residuen zullen dan ook bij kleine datasets bij benadering normaal verdeeld moeten zijn. Bekijk het histogram van de residuen in het diagnostics rapport. Zijn de residuen normaal verdeeld?

Antwoord:

Een andere aanname die we moeten checken is die van lineariteit. Als de lineaire regressievergelijking Total Rentals goed voorspelt en er dus voldaan wordt aan de aanname van lineariteit zullen de residuen in de Error vs predicted values plot willekeurig verspreid rondom de nul-lijn moeten liggen. Is dit het geval?

Antwoord:

De laatste aanname die we checken is die van homoscedasticiteit. Dit houdt in dat de variantie van de residuen constant is voor alle waarden van de voorspelde waarden. Dit kunnen we in dezelfde plot checken. Is de spreiding in de residuen hetzelfde voor alle predicted values?

Antwoord:

Vraag 1: Typering variabelen en verwachtingen vooraf

Geef van elke variabele hieronder aan wat (1) het meetniveau is (nominaal, ordinaal, interval of ratio) en (2) wat de rol van de variabele in de analyse is (afhankelijke of onafhankelijke variabele):

  • Bike Rentals:

  • Temperature:

  • Humidity:

  • Wind speed:

  • Rainfall:

Geef van elke variabele hieronder aan welk type verband (negatief, positief of geen) je verwacht met Bike Rentals:

  • Temperature:

  • Humidity:

  • Wind Speed:

  • Rainfall:

Alleen onafhankelijkevariabelen
Column Filter
VIF scores vooronafhankelijke variabelen
Variance Inflation Factor (VIF)
Stapsgewijs naarhet eindmodel
Linear Regression Learner
Beoordeling van de kwaliteit van een lineair regressiemodel
Linear Regression Diagnostics
Visuele weergave verband afhankelijke enonafhankelijke variabele
Scatter Plot
Correlatiecoëfficiëntenvoor verbanden tussennumerieke variabelen
Linear Correlation
Leid de benodigdevariabelen af
Data Transformation
Lees de ruwe data in
CSV Reader
Model met alleonafhankelijke variabelen
Linear Regression Learner

Nodes

Extensions

Links