Cover
Start nu gratis Samenvatting DAML.pdf
Summary
# Soorten data en centrale maten
Dit onderwerp introduceert de verschillende typen numerieke en categorische data, samen met fundamentele statistische maten zoals gemiddelde, mediaan en modus, en het concept van uitschieters.
### 1.1 Soorten data
Data kan worden ingedeeld in numerieke en categorische typen, elk met specifieke subcategorieën die hun kenmerken en toepassingen bepalen [1](#page=1).
#### 1.1.1 Numerieke data
Numerieke data zijn gegevens die uitgedrukt worden in getallen [1](#page=1).
##### 1.1.1.1 Continue numerieke data
Continue numerieke data, ook wel kwantitatieve data genoemd, omvatten getallen die elke mogelijke waarde binnen een bepaald bereik kunnen aannemen. Deze data ontstaan vaak door metingen [1](#page=1).
**Voorbeelden:**
* Lengte en afstand (bv. de lengte van een persoon, de afstand van een wandeling) [1](#page=1).
* Tijd (bv. reistijd, looptijd van een marathon) [1](#page=1).
* Temperatuur (vloeiend stijgend of dalend) [1](#page=1).
##### 1.1.1.2 Discrete numerieke data
Discrete numerieke data bestaan uit afzonderlijke, telbare waarden. Deze data worden verkregen door te tellen en kunnen niet zinvol worden opgesplitst in kleinere eenheden. Hoewel vaak gehele getallen, kunnen discrete waarden ook losse decimale getallen omvatten, zoals schoenmaten (bv. 38, 38.5, 39) [1](#page=1).
**Voorbeelden:**
* Aantal personen (bv. leerlingen in een klas, klanten in een winkel) [1](#page=1).
* Beoordelingen op een schaal (bv. 1 tot 5 sterren) [1](#page=1).
* Sportuitslagen (bv. aantal doelpunten) [1](#page=1).
#### 1.1.2 Categorische data
Categorische data zijn gegevens die uit categorieën bestaan [1](#page=1).
##### 1.1.2.1 Nominale categorische data
Nominale categorische data bestaan uit categorieën zonder een inherente rangorde of volgorde. Deze categorieën kunnen niet logisch van "hoog naar laag" of "belangrijk naar onbelangrijk" worden gesorteerd, en er kan niet mee worden gerekend. De modus is de enige zinvolle centrummaat voor nominale data [1](#page=1).
**Voorbeelden:**
* Land van herkomst (bv. België, Frankrijk, Duitsland) [1](#page=1).
* Kleur (bv. oogkleur) [1](#page=1).
* Geslacht (bv. man, vrouw, non-binair) [1](#page=1).
##### 1.1.2.2 Ordinale categorische data
Ordinale categorische data bestaan uit categorieën met een natuurlijke en logische rangorde. Hoewel de volgorde duidelijk is (bv. categorie A is "hoger" dan categorie B), zijn de intervallen tussen de categorieën niet noodzakelijk vast of meetbaar [2](#page=2).
**Voorbeelden:**
* Lidmaatschapsniveaus (bv. "Standard" < "Silver" < "Gold") [2](#page=2).
* Klanttevredenheid (bv. schalen van "Zeer ontevreden" tot "Zeer tevreden") [2](#page=2).
* Opleidingsniveau (bv. basisonderwijs < middelbare school < bachelor < master) [2](#page=2).
### 1.2 Centrale maten
Centrale maten zijn statistische methoden om het "centrum" of de typische waarde van een dataset te beschrijven [2](#page=2).
#### 1.2.1 Gemiddelde (Mean)
Het gemiddelde is de som van alle elementen in een dataset, gedeeld door het totale aantal elementen [2](#page=2).
$$ \text{Gemiddelde} = \frac{\sum_{i=1}^{n} x_i}{n} $$
#### 1.2.2 Mediaan
De mediaan is de middelste waarde in een reeks getallen die van klein naar groot (of groot naar klein) is gesorteerd. Als er een even aantal waarden is, is de mediaan het gemiddelde van de twee middelste waarden [2](#page=2).
**Waarom de mediaan gebruiken?**
* **Minder gevoelig voor uitschieters:** De mediaan wordt nauwelijks beïnvloed door extreem hoge of lage waarden die het gemiddelde zouden kunnen vertekenen [2](#page=2).
* **Ideaal voor scheve data:** Wanneer de data niet symmetrisch verdeeld is, zoals bij inkomens, geeft de mediaan een beter beeld van de typische waarde [2](#page=2).
> **Voorbeeld:** Bij inkomens als zal het gemiddelde hoog uitvallen door de 300, terwijl de mediaan beter aangeeft wat de meeste mensen verdienen [2](#page=2) .
* **Efficiëntie:** De mediaan is relatief eenvoudig te berekenen als de data eenmaal gesorteerd is [2](#page=2).
#### 1.2.3 Modus (Mode)
De modus is de waarde die het meest frequent voorkomt in een dataset. Het geeft de meest voorkomende of "populairste" observatie weer [3](#page=3).
**Kenmerken van de modus:**
* **Meest voorkomende waarde:** In een dataset over het aantal benen van mensen is de modus 2, omdat de meeste mensen twee benen hebben [3](#page=3).
* **Verschil met de mediaan:** De modus kijkt naar de frequentie, terwijl de mediaan naar de middelste positie in een gesorteerde reeks kijkt [3](#page=3).
* **Meerdere modi:** Een dataset kan geen modus hebben (alle waarden komen één keer voor), één modus hebben (unimodaal), of meerdere modi hebben (bv. bimodaal als twee waarden even vaak voorkomen) [3](#page=3).
**Waarom de modus gebruiken?**
* **Toepasbaar op categorische data:** Dit is de enige centrummaat die gebruikt kan worden voor kwalitatieve (categorische) gegevens. Je kunt geen gemiddelde berekenen van categorieën zoals "Land" of "Kleur" [3](#page=3).
> **Voorbeeld:** Als "België" het meest voorkomt in een dataset van landen van herkomst, dan is "België" de modus [3](#page=3).
### 1.3 Uitschieters (Outliers)
Uitschieters zijn datapunten die significant verschillen van de rest van de gegevens in een dataset [2](#page=2).
**Oorzaken van uitschieters:**
* **Meetfouten:** Verkeerde eenheden of metingen (bv. centimeters in plaats van meters) [3](#page=3).
* **Menselijke fouten:** Typfouten bij data-invoer [3](#page=3).
**Impact op statistiek:**
* **Gemiddelde:** Het gemiddelde is zeer gevoelig voor uitschieters; een enkele extreme waarde kan het gemiddelde sterk beïnvloeden [3](#page=3).
* **Mediaan:** De mediaan is robuuster en minder gevoelig voor uitschieters, omdat deze zich richt op de middelste positie [3](#page=3).
---
# Spreidingsmaten en visualisatie van data
Dit gedeelte behandelt methoden voor het meten van de spreiding van data, waaronder kwartielen, de InterQuartile Range (IQR) en boxplots, en introduceert de concepten van populatie en steekproef.
### 2.1 Kwartielen en de InterQuartile Range (IQR)
Kwartielen zijn belangrijke spreidingsmaten die helpen bij het begrijpen van de verdeling van data.
#### 2.1.1 Definitie van Kwartielen
* **Q1 (Eerste Kwartiel / 25e percentiel)**: Dit is de middelste waarde van de onderste helft van de data. Het geeft aan dat 25% van de waarden in de dataset onder dit punt ligt [4](#page=4).
* **Q3 (Derde Kwartiel / 75e percentiel)**: Dit is de middelste waarde van de bovenste helft van de data. Het geeft aan dat 75% van de waarden in de dataset onder dit punt ligt (en dus 25% erboven) [4](#page=4).
#### 2.1.2 Belang van Kwartielen
Samen met de mediaan (die feitelijk Q2 is), worden kwartielen gebruikt om de InterQuartile Range (IQR) te berekenen [4](#page=4).
* **IQR = Q3 - Q1**: Dit vertegenwoordigt de hoogte van de "box" in een boxplot [4](#page=4).
* **Spreiding**: De IQR bevat de middelste 50% van je data [4](#page=4).
* **Outliers**: De kwartielen worden gebruikt om de "whiskers" (snorharen) te bepalen; alles wat verder dan 1,5 keer de IQR van de box afligt, wordt gezien als een outlier [4](#page=4).
### 2.2 Boxplots
Een boxplot is een grafische weergave die de spreiding en verdeling van een dataset visualiseert.
#### 2.2.1 Opbouw van een Boxplot
Een boxplot bestaat uit een rechthoek (de "box") met twee lijnen die eraan vastzitten (de "whiskers" of snorharen) [5](#page=5).
* **De Box**: De onderkant van de box wordt gevormd door Q1 (het 25e percentiel) en de bovenkant door Q3 (het 75e percentiel). De hoogte van deze box bevat de middelste 50% van alle data, ook wel de InterQuartile Range (IQR) genoemd [5](#page=5).
* **De Mediaan**: Een dikke lijn binnenin de box geeft de mediaan aan, de middelste waarde van de dataset [5](#page=5).
* **De Whiskers**: Deze lijnen strekken zich uit vanaf de box naar de hoogste en laagste waarden in de dataset. Ze zijn echter begrensd en gaan tot maximaal 1,5 keer de hoogte van de box (1,5 x IQR) [5](#page=5).
* **Outliers**: Datapunten die verder liggen dan de whiskers worden weergegeven als losse puntjes of cirkeltjes, wat duidt op uitschieters in de data [5](#page=5).
#### 2.2.2 Voordelen van Boxplots
Boxplots zijn essentieel om de "essence" van een grote hoeveelheid data in één beeld te vangen [5](#page=5).
1. **Vorm van de data**: Direct zichtbaar of data symmetrisch verdeeld is of een "skew" (scheefheid) vertoont naar links of rechts [5](#page=5).
2. **Vergelijken van groepen**: Meerdere boxplots kunnen naast elkaar worden geplaatst om bijvoorbeeld de leeftijd van verschillende groepen te vergelijken [5](#page=5).
3. **Spreiding**: Een grotere box indiceert meer variatie in de middelste helft van de data [5](#page=5).
### 2.3 Populatie en Steekproef
In data-analyse is het onderscheid tussen een populatie en een steekproef fundamenteel.
#### 2.3.1 Definitie
* **Populatie**: Dit omvat alle datapunten of individuen waar je geïnteresseerd in bent, zoals de gehele Belgische bevolking of alle studenten Informatica [5](#page=5).
* **Steekproef (Sample)**: Dit is een subset of een kleiner deel van de populatie. In data-analyse wordt vrijwel altijd met steekproeven gewerkt [5](#page=5).
#### 2.3.2 Waarom Steekproeven Gebruiken?
Het meten van de hele populatie is vaak onhaalbaar vanwege beperkingen in tijd, kosten en toegang [6](#page=6).
#### 2.3.3 Representativiteit en Bias
Het doel van een steekproef is om kenmerken van de populatie te schatten, waardoor representativiteit cruciaal is [6](#page=6).
* De steekproef moet een redelijke afspiegeling zijn van de populatie om betrouwbare conclusies te kunnen trekken [6](#page=6).
* Biased sampling (vertekende steekproeftrekking) moet vermeden worden. Een voorbeeld is het bevragen van jongeren over coderen enkel onder IT-studenten, wat de steekproef niet representatief maakt voor álle jongeren [6](#page=6).
### 2.4 Spreidingsmaten
Spreidingsmaten zijn statistische waarden die aangeven hoe verspreid of gevarieerd datapunten in een dataset zijn. Ze zijn essentieel voor het beoordelen van de consistentie, betrouwbaarheid of het risico van data [6](#page=6).
#### 2.4.1 Mean Absolute Deviation (MAD)
De MAD is het gemiddelde van de absolute verschillen tussen elk datapunt en het gemiddelde van de dataset [6](#page=6).
* **Kenmerk**: Gemakkelijker te berekenen en te interpreteren dan andere maten [6](#page=6).
* **Nadeel**: Legt minder nadruk op uitschieters (outliers) [6](#page=6).
* **Formule**: De formule voor MAD wordt hier niet expliciet weergegeven in de brontekst.
> **Tip:** Spreidingsmaten bieden inzicht in de variabiliteit van data, wat cruciaal is voor diverse toepassingen zoals financiële analyses of kwaliteitscontrole in productieprocessen [6](#page=6).
---
# Geavanceerde statistische concepten en modellen
Dit deel van de studiehandleiding behandelt geavanceerde statistische concepten, meetinstrumenten voor spreiding, de principes van supervised learning en belangrijke wiskundige modellen.
## 3 Geavanceerde statistische concepten en modellen
Dit hoofdstuk verdiept zich in diverse statistische eigenschappen zoals scheefheid en kurtosis, correlatie en introduceert fundamentele principes van supervised learning met bijbehorende algoritmen zoals KNN, decision trees en regressie.
### 3.1 Spreidingsmaten en verdelingsvormen
De basis van het begrijpen van data ligt in het kwantificeren van de spreiding en de vorm van de verdeling.
#### 3.1.1 Spreidingsmaten
Naast het gemiddelde zijn er verschillende maten om de spreiding van data te kwantificeren, elk met hun eigen kenmerken en toepassingen.
* **Variantie (Variance)**: De variantie is het gemiddelde van de gekwadrateerde afwijkingen van het gemiddelde. Door afwijkingen te kwadrateren, worden grotere afwijkingen zwaarder bestraft. Een nadeel is dat de eenheden in het kwadraat zijn (bijvoorbeeld "vierkante euro's"), wat de directe interpretatie bemoeilijkt [7](#page=7) [8](#page=8).
* **Standaarddeviatie (Standard Deviation)**: Dit is de vierkantswortel van de variantie. Het is de meest gebruikte spreidingsmaat in de praktijk. Een belangrijk voordeel is dat de waarde in dezelfde eenheid als de oorspronkelijke data staat, wat de interpretatie vergemakkelijkt [7](#page=7) [8](#page=8).
* **Mean Absolute Deviation (MAD)**: De MAD is het gemiddelde van de absolute verschillen tussen elk datapunt en het gemiddelde. Het is intuïtief te interpreteren en omdat er niet wordt gekwadrateerd, legt deze maat minder nadruk op uitschieters dan de andere maten [7](#page=7).
#### 3.1.2 Scheefheid (Skewness)
Skewness is een statistische maatstaf die de mate van asymmetrie in een kansverdeling beschrijft [8](#page=8).
* **Positieve skew (Right-skewed)**: De staart aan de rechterkant van de grafiek is langer. De meeste waarden zijn geconcentreerd aan de linkerkant, met enkele hoge uitschieters die de rechterstaart uitrekken. Meestal is het gemiddelde hier groter dan de mediaan [8](#page=8).
* **Negatieve skew (Left-skewed)**: De staart aan de linkerkant van de grafiek is langer. De meeste waarden bevinden zich aan de rechterkant, met enkele zeer lage uitschieters die de linkerstaart veroorzaken. Hier is het gemiddelde meestal kleiner dan de mediaan [8](#page=8).
* **Symmetrische verdeling**: De linker- en rechterkant zijn elkaars spiegelbeeld. Er is geen significante staart aan één specifieke zijde. Bij een perfect symmetrische verdeling vallen het gemiddelde, de mediaan en de modus samen [8](#page=8).
Skewness helpt bij het identificeren van outliers [8](#page=8).
#### 3.1.3 Kurtosis
Kurtosis is een statistische maatstaf die de "tailedness" (de dikte van de staarten) of de scherpte van de piek van een verdeling meet [9](#page=9).
* **Leptokurtisch (Hoge kurtosis)**: Een scherpere piek en dikkere staarten. Dit betekent dat een groot deel van de variantie wordt veroorzaakt door extreme uitschieters en de kans op waarden ver van het gemiddelde groter is dan bij een normale verdeling [9](#page=9).
* **Platykurtisch (Lage kurtosis)**: Een plattere verdeling met dunnere staarten. Extreme waarden of uitschieters komen minder vaak voor [9](#page=9).
* **Mesokurtisch**: Komt overeen met een normale verdeling en dient als standaard voor vergelijking [9](#page=9).
### 3.2 Correlatie en data-preparatie
Correlatie is essentieel voor het begrijpen van relaties tussen variabelen, terwijl data-preparatie de basis legt voor modellering.
#### 3.2.1 Correlatie
Correlatie is een statistische maatstaf die de relatie tussen twee verschillende variabelen beschrijft [9](#page=9).
* **De Correlatiecoëfficiënt (r)**:
* $r = 1$: Perfecte positieve correlatie, waarbij beide variabelen proportioneel in dezelfde richting bewegen [9](#page=9).
* $r = -1$: Perfecte negatieve correlatie, waarbij variabelen in tegenovergestelde richting bewegen [9](#page=9).
* $r = 0$: Geen lineair verband tussen de variabelen [9](#page=9).
**Belangrijke Nuances bij Correlatie:**
* **Correlatie is geen Causatie (Correlation ≠ Causation)**: Alleen omdat twee variabelen samen bewegen, betekent dit niet dat de ene de andere veroorzaakt. Een derde, ongeziene factor kan de oorzaak zijn [10](#page=10).
* **Spurious Correlations (Schijincorrelaties)**: Correlaties die puur toevallig lijken te bestaan of worden veroorzaakt door een ongeziene factor, zonder logisch verband. De kans hierop neemt toe in grote datasets [10](#page=10).
#### 3.2.2 Data-preparatie
Data-preparatie is cruciaal om ruwe data geschikt te maken voor analyse en modellering.
* **One-hot encoding**: Een techniek om categorische variabelen om te zetten naar een numeriek formaat door voor elke unieke categorie een nieuwe, binaire kolom aan te maken (1 als de observatie tot die categorie behoort, 0 anders). Dit wordt beschouwd als een onderdeel van Data Cleansing [10](#page=10).
* **Soorten missing values**:
* **Missing Completely at Random (MCAR)**: Het ontbreken van data is volledig willekeurig en ongerelateerd aan andere data [10](#page=10).
* **Missing at Random (MAR)**: Het ontbreken is gerelateerd aan andere geobserveerde data, maar niet aan de ontbrekende waarde zelf [11](#page=11).
* **Missing Not at Random (MNAR)**: De reden voor het ontbreken is direct gerelateerd aan de waarde die ontbreekt [11](#page=11).
* **Strategieën voor het afhandelen van ontbrekende data**:
1. **Negeren of Verwijderen**: Volledige rijen of waarden overslaan [11](#page=11).
2. **Imputeren (Vervangen)**: Vervangen door 0, het gemiddelde, de mediaan, de modus, of een voorspelde waarde [11](#page=11).
3. **Markeren en Onderzoeken**: De waarde markeren als "missend" en patronen in het ontbreken onderzoeken [11](#page=11).
### 3.3 Supervised Learning
Supervised learning-algoritmen leren van gelabelde data om voorspellingen te doen.
#### 3.3.1 Classificatie vs. Regressie
* **Classificatie (Classification)**: Het doel is om een categorie of label toe te kennen aan een nieuwe observatie (discrete output). Voorbeelden zijn churn prediction, fraudedetectie en beeldherkenning [12](#page=12).
* **Regressie (Regression)**: Het doel is om een numerieke waarde of continu getal te voorspellen (numerieke output). Voorbeelden zijn prijsvoorspelling, verkoopvolumes en voorraadbeheer [12](#page=12).
#### 3.3.2 K-Nearest Neighbors (KNN)
KNN is een algoritme dat zowel voor classificatie als regressie kan worden gebruikt en wordt een "Lazy Learner" genoemd omdat het model tijdens de trainingsfase niets doet [12](#page=12).
* **Hoe het werkt**:
1. Nieuwe data invoeren [13](#page=13).
2. Zoek de K meest gelijkende datapunten (buren) in de bestaande dataset [13](#page=13).
3. Voorspel:
* Classificatie: Meerderheidsstemming onder de K buren [13](#page=13).
* Regressie: Gemiddelde van de waarden van de K buren [13](#page=13).
* **De rol van K**: Bepaalt het aantal buren dat geraadpleegd wordt [13](#page=13).
* **Het meten van gelijkenis (Afstanden)**:
* Euclidean distance: Voor continue numerieke variabelen [13](#page=13).
* Manhattan distance: Voor data in een rasterstructuur [13](#page=13).
* Hamming distance: Voor binaire variabelen [13](#page=13).
* **Distance-weighted KNN**: Geeft meer gewicht aan dichterbij gelegen buren [13](#page=13).
#### 3.3.3 Decision trees
Een decision tree verdeelt data in steeds kleinere subgroepen op basis van kenmerken [13](#page=13).
* **Structuur**: Bestaat uit een Root Node, Internal Nodes en Leaf Nodes [14](#page=14).
* **Hoe de boom wordt gebouwd (Splitting)**: Gebruikt metrieken zoals Entropy, Information Gain en Gini Index om de data zo "puur" mogelijk te splitsen [14](#page=14).
* **Belangrijke kenmerken**: Geen lussen en toepasbaar voor zowel classificatie als regressie [14](#page=14).
#### 3.3.4 Random Forest
Een geavanceerd algoritme dat de voorspellingen van meerdere decision trees combineert voor nauwkeurigere resultaten, gebaseerd op het principe van "Wisdom of the Crowd". Het introduceert diversiteit door willekeurige subsets van data en kenmerken te gebruiken [14](#page=14) [15](#page=15).
* **Voorspellingen maken**: Via Majority Voting (classificatie) of middeling (regressie) [15](#page=15).
#### 3.3.5 Lineaire regressie
Lineaire regressie voorspelt een numerieke, continue waarde op basis van één of meerdere onafhankelijke variabelen [15](#page=15).
* **Typen**:
* **Enkelvoudige lineaire regressie**: Gebruikt één voorspellende variabele ($X$) om $y$ te bepalen. De formule is $y = \beta_0 + \beta_1x$ [15](#page=15) [16](#page=16).
* **Meervoudige lineaire regressie**: Gebruikt een set van meerdere voorspellende variabelen ($X_1, X_2,..., X_p$) om $y$ te voorspellen. De formule wordt uitgebreid naar [15](#page=15):
$$y = \beta_0 + \beta_1x_1 + \beta_2x_2 + \dots + \beta_px_p + \epsilon$$ [15](#page=15) [16](#page=16).
* **Belangrijke concepten**:
* **Coëfficiënten ($\beta$)**: Vertegenwoordigen de helling en de invloed van elke variabele op de voorspelling. $\beta_0$ is het intercept [16](#page=16).
* **Ruis ($\epsilon$)**: De afwijking die niet door de variabelen verklaard kan worden [16](#page=16).
* **Regressielijn**: Een lijn die zo wordt getrokken dat de totale fout tussen de werkelijke datapunten en de lijn minimaal is [16](#page=16).
* **Lineaire vs. Niet-Lineaire Regressie**: Een rechte lijn werkt bij lineaire relaties, maar bij curven is een polynomial model (niet-lineaire regressie) nodig. Een voorbeeld van een polynomial model is $y = b_0 + b_1x_1 + b_2x_1^2$ [16](#page=16).
> **Tip:** Visualiseer je data met een scatter plot om te bepalen of lineaire of niet-lineaire regressie het meest geschikt is.
#### 3.3.6 Logistic Regression
Logistische regressie voorspelt de waarschijnlijkheid dat een waarneming tot een specifieke categorie behoort, meestal voor binaire classificatie [17](#page=17).
* **Hoe het werkt**: Gebruikt een wiskundige vergelijking die begint met een lineaire formule en vervolgens de uitkomst door de Sigmoid-functie haalt, wat resulteert in een S-curve tussen 0 en 1 [17](#page=17).
* **Threshold (Drempelwaarde)**: Wordt ingesteld (meestal 0,5) om een definitieve keuze te maken tussen twee klassen. De drempelwaarde kan worden aangepast om specifieke fouten te vermijden [18](#page=18).
* **Regularisatie**: Technieken zoals Lasso en Ridge regressie worden gebruikt om te voorkomen dat het model te complex wordt of te veel op onbelangrijke variabelen vertrouwt [18](#page=18).
### 3.4 Statistische verdelingen en significantie
Het begrijpen van statistische verdelingen en het concept van statistische significantie is cruciaal voor data-analyse.
#### 3.4.1 Statistische Verdelingen
Statistische verdelingen geven weer hoe datapunten over verschillende waarden verspreid zijn [18](#page=18).
* **Continue Verdelingen**: Gebruikt voor data die elke waarde binnen een bereik kan aannemen [18](#page=18).
* **Normale Verdeling (Bell Curve)**: Symmetrisch rond het gemiddelde. De 68-95-99.7 Regel beschrijft de spreiding rond het gemiddelde [19](#page=19).
* **Student-t Verdeling**: Lijkt op de normale verdeling maar met dikkere staarten, gebruikt bij kleine steekproeven of onbekende standaarddeviatie [19](#page=19).
* **Exponentiële Verdeling**: Beschrijft vaak de tijd tussen gebeurtenissen [19](#page=19).
* **Discrete Verdelingen**: Gebruikt voor telbare waarden [19](#page=19).
* **Uniforme Verdeling**: Elke mogelijke uitkomst heeft een gelijke kans [19](#page=19).
* **Poisson Verdeling**: Meet het aantal gebeurtenissen in een vast tijdsinterval [19](#page=19).
* **Bernoulli Verdeling**: Voor een enkel experiment met twee mogelijke uitkomsten [19](#page=19).
* **Binomiale Verdeling**: Beschrijft het aantal successen in een reeks van onafhankelijke Bernoulli-experimenten [19](#page=19).
#### 3.4.2 Statistical Significance
Statistische significantie geeft aan hoe waarschijnlijk het is dat een gevonden resultaat op toeval berust [19](#page=19).
* **De Nulhypothese ($H_0$)**: Het uitgangspunt dat er geen effect of verschil is [19](#page=19).
* **De P-waarde (P-value)**: De waarschijnlijkheid om de geobserveerde data (of extremer) te vinden als de nulhypothese waar is [20](#page=20).
* Lage p-waarde (< 0,05): Resultaat is statistisch significant; nulhypothese kan worden verworpen [20](#page=20).
* Hoge p-waarde (> 0,05): Resultaat is niet statistisch significant; nulhypothese kan niet worden verworpen [20](#page=20).
* **Statistische vs. Praktische Significantie**: Statistische significantie geeft aan dat er een effect is, terwijl praktische significantie aangeeft of dit effect in de echte wereld belangrijk is [20](#page=20).
* **Valkuilen**: Steekproefgrootte en p-hacking kunnen leiden tot misleidende resultaten [20](#page=20).
---
# Model evaluatie en validatie
Dit onderdeel behandelt de methoden en metrieken die gebruikt worden om de prestaties van machine learning modellen te beoordelen en te valideren, met specifieke aandacht voor classificatie- en regressiemodellen.
### 4.1 De Data Science Workflow en de rol van evaluatie
De Data Science Workflow is een gestructureerd proces voor het ontwikkelen en inzetten van data science projecten, waarbij de CRISP-DM methode centraal staat. Deze methode omvat de volgende fasen: Business Understanding, Data Understanding, Data Preparation, Modeling, Evaluation en Deployment. De Evaluation fase is cruciaal om te beoordelen of het ontwikkelde model de oorspronkelijke bedrijfsdoelstellingen behaalt en of er geen belangrijke zakelijke aspecten over het hoofd zijn gezien. Het proces is iteratief; inzichten uit de evaluatiefase kunnen leiden tot terugkeer naar eerdere fasen [21](#page=21) [22](#page=22).
### 4.2 Prestatie-evaluatie van classificatiemodellen
De prestaties van classificatiemodellen worden gemeten aan de hand van hoe goed ze nieuwe data correct kunnen labelen. Omdat simpele "percentage correct"-scores misleidend kunnen zijn, worden diverse metrieken gebruikt voor een compleet beeld [22](#page=22).
#### 4.2.1 De confusion matrix
De basis voor classificatiemetrieken is de confusion matrix, die werkelijke waarden vergelijkt met voorspelde waarden. De componenten zijn [22](#page=22):
* **True Positive (TP):** Model voorspelde "Ja" en het was inderdaad "Ja".
* **True Negative (TN):** Model voorspelde "Nee" en het was inderdaad "Nee".
* **False Positive (FP):** Model voorspelde "Ja", maar het was eigenlijk "Nee" (Type I fout).
* **False Negative (FN):** Model voorspelde "Nee", maar het was eigenlijk "Ja" (Type II fout).
#### 4.2.2 Belangrijke classificatiemetrieken
Op basis van de confusion matrix kunnen de volgende scores worden berekend [23](#page=23):
* **Accuracy (Nauwkeurigheid):** Het percentage correcte voorspellingen van het totaal. Dit is minder betrouwbaar bij ongebalanceerde datasets [23](#page=23).
* **Precision (Precisie):** Hoeveel van de positieve voorspellingen waren werkelijk positief. Cruciaal wanneer de kosten van een False Positive hoog zijn (bijv. onterechte fraudeaanklacht) [23](#page=23).
* **Recall (Sensitivity):** Hoeveel van de werkelijke positieve gevallen het model heeft gevonden. Essentieel wanneer de kosten van een False Negative hoog zijn (bijv. het missen van een kankergeval) [23](#page=23).
* **F1-Score:** Het harmonisch gemiddelde van Precision en Recall, nuttig voor het vinden van een balans, vooral bij scheve datasets [23](#page=23).
##### 4.2.2.1 Sensitivity versus Specificity (medisch perspectief)
* **Sensitivity (Recall):** Meet hoe goed een test patiënten met de ziekte correct identificeert. Het is het percentage werkelijk zieke mensen dat een positief testresultaat krijgt. Hoge sensitivity minimaliseert False Negatives en is cruciaal bij gevaarlijke ziektes [23](#page=23).
* **Specificity:** Meet hoe goed een test mensen zonder de ziekte correct identificeert. Het is het percentage gezonde mensen dat een negatief testresultaat krijgt. Hoge specificity minimaliseert False Positives en is belangrijk wanneer vervolgbehandelingen riskant of duur zijn [23](#page=23).
##### 4.2.2.2 Recall versus Precision (machine learning perspectief)
* **Precision:** Beantwoordt de vraag: "Van alle gevallen die het model als positief voorspelde, hoeveel waren er werkelijk positief?" Het focust op de nauwkeurigheid van positieve voorspellingen en is belangrijk bij hoge kosten van een False Positive, zoals bij spamfilters [24](#page=24).
* **Recall:** Beantwoordt de vraag: "Van alle werkelijke positieve gevallen, hoeveel heeft het model correct geïdentificeerd?" Het focust op het vermogen om alle relevante gevallen te vinden en is cruciaal bij hoge kosten van een False Negative, zoals bij kankeronderzoek [24](#page=24).
#### 4.2.3 Van regressie naar classificatie
Regressiemodellen kunnen voor classificatie worden gebruikt door een drempelwaarde (threshold) in te stellen op de voorspelde waarschijnlijkheid. Het aanpassen van deze drempelwaarde beïnvloedt de balans tussen Accuracy, Recall en Precision van het model [25](#page=25).
#### 4.2.4 Lift Curve
Een Lift Curve evalueert hoe effectief een model is in het identificeren van "meest waarschijnlijke kandidaten" vergeleken met een willekeurige selectie [25](#page=25).
* **Concept:** Het meet hoeveel meer "successen" (bijv. kopers) men vindt door de top X% kandidaten te selecteren op basis van de modelvoorspelling, ten opzichte van het gemiddelde succespercentage in de gehele dataset [25](#page=25).
* **Berekening:** De liftwaarde is de ratio van het succespercentage in een gesegmenteerd deel van de data (bijv. top 14%) gedeeld door het gemiddelde succespercentage over de gehele dataset [25](#page=25).
> **Voorbeeld:** Als de dataset een gemiddeld succespercentage van 64% heeft en een segment van de top 2 personen (14% van de data) toont 100% succes, dan is de lift $1 / 0,64 = 1,56$ [25](#page=25).
* **Interpretatie:**
* Lift > 1: Het model is effectief [26](#page=26).
* Lift = 1: Het model presteert niet beter dan willekeurig gokken [26](#page=26).
* In een grafiek neemt de lift meestal af naarmate meer data wordt toegevoegd, stabiliserend naar 1 voor de gehele dataset [26](#page=26).
### 4.3 Prestatie-evaluatie van regressiemodellen
Bij regressiemodellen, die continue waarden voorspellen, wordt de "correctheid" gemeten aan de hand van de residuals (fouten): het verschil tussen de werkelijke waarde ($y_i$) en de voorspelde waarde ($\hat{y}_i$) [24](#page=24).
#### 4.3.1 Belangrijkste regressiemetrieken
De totale kwaliteit van een regressiemodel wordt beoordeeld met de volgende statistieken [24](#page=24):
* **Mean Absolute Error (MAE):** Het gemiddelde van alle absolute fouten. Geeft de gemiddelde foutgrootte aan in de eenheid van de data [24](#page=24).
* **Mean Squared Error (MSE):** Het gemiddelde van de gekwadrateerde fouten. Bestraft grote uitschieters zwaarder [24](#page=24).
* **Mean Absolute Percentage Error (MAPE):** De gemiddelde fout uitgedrukt als een percentage van de werkelijke waarde [24](#page=24).
* **Total Sum of Squared Errors:** De som van alle gekwadrateerde fouten [24](#page=24).
### 4.4 Modelvalidatie
Modelvalidatie is essentieel om te bepalen of de output van een model een acceptabele weergave is van de realiteit, en of het goed presteert op zowel bekende als onbekende data. Het doel is om de aansluiting bij de businessvraag te controleren [26](#page=26).
#### 4.4.1 Soorten validiteit
Er worden drie typen validiteit onderscheiden op basis van de gebruikte data [26](#page=26):
* **Apparent Validity:** Getest op de eigen steekproef (training set) [26](#page=26).
* **Internal Validity:** Getest op de eigen populatie (validation set) [26](#page=26).
* **External Validity:** Getest op een andere populatie (test set) [26](#page=26).
#### 4.4.2 Validatietechnieken
Om de betrouwbaarheid te waarborgen en overfitting te voorkomen, worden specifieke methoden gebruikt voor data-splitsing en modeltesten [26](#page=26).
##### 4.4.2.1 Data Splitting
De dataset wordt verdeeld in drie onafhankelijke sets [26](#page=26):
* **Training set:** Gebruikt om het model te bouwen [26](#page=26).
* **Validation set:** Gebruikt om het model te tunen (bv. hyperparameters aanpassen) en modellen te vergelijken [26](#page=26).
* **Test set:** Wordt uitsluitend gebruikt voor de finale evaluatie van het gekozen model [26](#page=26).
##### 4.4.2.2 Cross Validation (K-Fold)
Dit is een robuustere methode waarbij de data herhaaldelijk wordt gesplitst [26](#page=26).
1. De data wordt eerst gesplitst in een training- en testset [26](#page=26).
2. De trainingset wordt verdeeld in $k$ subsets [27](#page=27).
3. Telkens wordt één subset gebruikt voor validatie, en de overige $k-1$ subsets voor training [27](#page=27).
4. Dit proces wordt $k$ keer herhaald, zodat elke subset één keer als validatieset fungeert [27](#page=27).
5. Het beste model wordt gekozen op basis van deze resultaten en vervolgens geëvalueerd op de originele testset [27](#page=27).
##### 4.4.2.3 Leave One Out (LOO)
Dit is een extreme vorm van Cross Validation waarbij $k$ gelijk is aan het aantal datapunten in de dataset. Telkens wordt één datapunt weggelaten voor validatie, terwijl op alle andere datapunten getraind wordt [27](#page=27).
#### 4.4.3 Belang van validatie
Zonder goede validatie bestaat het risico op overfitting: het model leert de ruis in de trainingsdata in plaats van echte patronen, wat leidt tot falen op nieuwe data [27](#page=27).
> **Tip:** Modelvalidatie is cruciaal om te garanderen dat een model niet alleen goed presteert op de data waarmee het getraind is, maar ook generaliseert naar nieuwe, ongeziene data. Dit voorkomt teleurstellingen bij de uiteindelijke inzet van het model.
---
# Unsupervised learning en speciale algoritmen
Dit deel behandelt technieken voor unsupervised learning, waaronder clustering en associatieregels, evenals recommender systems en de onderliggende matrixfactorisatie methoden.
### 5.1 Unsupervised learning: toepassingen en principes
Unsupervised learning is een breed veld binnen machine learning waarbij algoritmen patronen in data ontdekken zonder dat er vooraf gedefinieerde labels of uitkomsten zijn. De belangrijkste toepassingen omvatten [27](#page=27):
* **Clustering (Data Partitionering):** Het groeperen van objecten die op elkaar lijken binnen één cluster, maar verschillen van objecten in andere clusters. Dit is nuttig in marketing (doelgroepen identificeren), verzekeringen (risicoprofielen groeperen), stadsplanning en gezondheidszorg (kankercellen classificeren) [27](#page=27).
* **Datacompressie en Visualisatie:** Het verkleinen van datahoeveelheden met behoud van essentie, of het omzetten van hoog-dimensionale data naar een visueel formaat (zoals met PCA of t-SNE) om patronen te herkennen [27](#page=27).
* **Detectie van Afwijkingen (Anomaly Detection):** Het opsporen van datapunten die significant afwijken van de rest (novelty detection), cruciaal in cybersecurity voor het herkennen van ongebruikelijke netwerkpatronen [27](#page=27).
* **Voorbereiding voor andere modellen (Preprocessing):** Clustering kan dienen als een tussenstap om data te vereenvoudigen of kenmerken te extraheren voor supervised learning modellen, of voor dichtheidsschatting [27](#page=27).
#### 5.1.1 Clustering
Clustering is een vorm van unsupervised learning die data groepeert zonder vooraf bekende labels. Het doel is om structuur te vinden door objecten in clusters te verdelen, met de kernmerken van een goede clustering [28](#page=28):
* **Hoge intra-klasse gelijkenis:** Objecten binnen hetzelfde cluster moeten sterk op elkaar lijken [28](#page=28).
* **Lage inter-klasse gelijkenis:** Objecten in verschillende clusters moeten duidelijk van elkaar verschillen [28](#page=28).
Belangrijke concepten binnen clustering zijn:
* **Afstandsmaten:** Gebruikt om de gelijkenis tussen objecten te bepalen, zoals de Euclidische, Manhattan of Pearson correlation afstand [28](#page=28).
* **Types toewijzing:**
* **Hard clustering:** Elk item behoort tot precies één cluster [28](#page=28).
* **Soft clustering:** Elk item heeft een waarschijnlijkheid om tot bepaalde clusters te behoren [29](#page=29).
* **Overlapping clustering:** Een item kan in meerdere clusters tegelijk zitten [29](#page=29).
Er zijn twee hoofdbenaderingen in clustering:
1. **Hiërarchische clustering:** Bouwt een boomstructuur van clusters (een dendrogram), ofwel van onderaf (agglomerative) of van bovenaf (divisive) [29](#page=29).
2. **Partitionele clustering:** Verdeelt de data direct in een specifiek aantal ($k$) groepen, zoals bij het K-means algoritme [29](#page=29).
De kwaliteit van een clustering is vaak afhankelijk van de toepassing en kan subjectief zijn, omdat er geen eenduidige "juiste" clustering bestaat [29](#page=29).
##### 5.1.1.1 Afstanden en gelijkenissen
Afstandsmaten zijn cruciaal voor clustering om de afstand tussen individuele instanties, een cluster en een instantie, of tussen clusters onderling te bepalen. Veelgebruikte formules voor de afstand tussen twee punten $x$ en $y$ zijn [30](#page=30):
* **Euclidean distance:** De rechtstreekse afstand tussen twee punten.
* **Manhattan distance:** De som van de absolute verschillen tussen de coördinaten ('taxi-afstand').
* **Pearson correlation distance:** Een maatstaf voor de correlatie tussen variabelen.
##### 5.1.1.2 Hiërarchische clustering
Hiërarchische clustering bouwt een hiërarchie van clusters op in de vorm van een dendrogram. De twee benaderingen zijn [30](#page=30):
* **Agglomerative (Bottom-up):** Elk datapunt start als een eigen cluster. Clusters worden stapsgewijs samengevoegd op basis van gelijkenis, tot alles in één groot cluster zit [31](#page=31).
* **Divisive (Top-down):** Begint met één groot cluster en splitst dit herhaaldelijk op in kleinere groepen [31](#page=31).
De afstanden tussen clusters worden berekend met verschillende **linkage** types:
* **Single Link:** De afstand tussen de twee dichtstbijzijnde punten van de clusters [31](#page=31).
* Voordelen: Kan langgerekte clusters identificeren, computationeel efficiënt [31](#page=31).
* Nadelen: Gevoelig voor ruis/uitbijters, kan "chaining" (onterechte verbinding) veroorzaken [31](#page=31).
* **Complete Link:** De afstand tussen de twee verste punten van de clusters [31](#page=31).
* Voordelen: Produceert compacte clusters, minder gevoelig voor ruis [31](#page=31).
* Nadelen: Gevoelig voor uitbijters, kan grote clusters onterecht breken [32](#page=32).
* **Average Link:** De gemiddelde afstand tussen alle paren van punten in de clusters [32](#page=32).
* Voordelen: Goede balans tussen compactheid en het voorkomen van ketenvorming [32](#page=32).
* Nadelen: Computationeel duurder [32](#page=32).
* **Centroid Link:** De afstand tussen de middelpunten (gemiddelden) van de clusters [32](#page=32).
* Voordelen: Werkt goed bij bolvormige clusters, intuïtieve aanpak [32](#page=32).
* Nadelen: Gevoelig voor uitbijters, kan leiden tot niet-intuïtieve splitsingen [32](#page=32).
##### 5.1.1.3 Partitionele clustering algoritmen
Partitionele algoritmen verdelen een dataset van $n$ objecten in $k$ clusters, waarbij een bepaald criterium wordt geoptimaliseerd. Omdat het vinden van de globale optimale oplossing (door alle mogelijke verdelingen te controleren) vaak onmogelijk is, worden heuristische methoden zoals k-means en k-medoids gebruikt [32](#page=32).
De belangrijkste verschillen tussen k-means en k-medoids zijn:
* **K-means:** Elk cluster wordt vertegenwoordigd door het gemiddelde (centroid) van de objecten in dat cluster. Dit centroid hoeft geen bestaand datapunt te zijn [33](#page=33).
* **K-medoids (PAM):** Elk cluster wordt vertegenwoordigd door een medoïde, wat een daadwerkelijk, centraal gelegen object binnen het cluster is [33](#page=33).
Het **K-means Algoritme** volgt deze stappen:
1. **Initialisatie:** Selecteer willekeurig $k$ initiële middelpunten (centroids) [33](#page=33).
2. **Toewijzing:** Wijs elk datapunt toe aan het dichtstbijzijnde middelpunt op basis van de Euclidische afstand [33](#page=33).
3. **Update:** Bereken de middelpunten opnieuw als het gemiddelde van alle datapunten die aan dat cluster zijn toegewezen [33](#page=33).
4. **Iteratie:** Herhaal de toewijzing en update totdat de middelpunten niet meer veranderen of een maximum aantal iteraties is bereikt [33](#page=33).
**Sterktes en zwaktes van K-means:**
* **Sterktes:** Efficiënt, eenvoudig te implementeren, kan herstart worden voor betere lokale optima [33](#page=33).
* **Zwaktes:** Vereist voorafgaande specificatie van $k$, gevoelig voor ruis en uitbijters, kan geen niet-bolvormige clusters vinden [33](#page=33).
Partitionele clustering kenmerkt zich door disjuncte clusters met een platte structuur. Belangrijke vraagstukken zijn het bepalen van het aantal clusters ($k$) en de representatie van die clusters. Een partitionele clustering kan ook gegenereerd worden door een hiërarchische boom op een bepaald niveau door te snijden [34](#page=34).
#### 5.1.2 Clustering toepassingen
Clustering kent diverse toepassingen in verschillende domeinen:
* **Veiligheid en Wetenschap:**
* Cybersecurity: Groeperen van patronen in netwerkverkeer voor detectie van cyberaanvallen [34](#page=34).
* Kankeronderzoek: Clusteren van kankercellen op basis van genexpressie om effectieve behandelingen te bepalen [34](#page=34).
* Seismologie: Clusteren van aardbevings-epicentra langs breuklijnen [34](#page=34).
* Landgebruik: Identificeren van gebieden met vergelijkbaar landgebruik uit aardobservatiedata [34](#page=34).
* **Verzekeringen:** Groeperen van polishouders met een vergelijkbaar (hoog) claimrisico of gemiddeld hoge claimkosten [27](#page=27) [34](#page=34).
### 5.2 Associatieregels
Associatieregels zijn een techniek binnen unsupervised learning om "If-Then"-relaties tussen items te ontdekken die vaak samen voorkomen in transacties [35](#page=35).
**Basisbegrippen:**
* **Transactie:** Een lijst met items die samen voorkomen (bv. een kassabon, een webpagina, een zin) [35](#page=35).
* **Itemset:** Een verzameling van één of meer items. Een $k$-itemset bevat $k$ items [35](#page=35).
* **Co-occurrence:** Regels tonen aan dat items samen voorkomen, maar impliceren geen causaliteit [35](#page=35).
#### 5.2.1 Het Apriori Algoritme
Het Apriori algoritme is een stapsgewijze methode om alle frequente itemsets te vinden (itemsets die vaker voorkomen dan een ingestelde **Support Threshold**) [35](#page=35):
1. Vind alle frequente 1-itemsets door elk item te tellen [35](#page=35).
2. Genereer kandidaat-itemsets door frequente 1-itemsets te combineren tot potentiële 2-itemsets [35](#page=35).
3. Elimineer kandidaat-itemsets die onder de drempelwaarde vallen [35](#page=35).
4. Herhaal door frequente itemsets te combineren tot grotere groepen (bv. 3-itemsets) totdat er geen nieuwe meer zijn [35](#page=35).
**Toepassingen:**
* **Retail:** Market Basket Analysis om producten te identificeren die vaak samen worden gekocht voor promoties of winkelindeling (bv. bier en luiers) [36](#page=36).
* **Sociale Media:** Identificeren van woorden die vaak samen voorkomen in posts (bv. "Hypotheek" en "Recessie") [36](#page=36).
* **Plagiaatdetectie:** Controleren van gedeelde zinnen tussen documenten [36](#page=36).
### 5.3 Recommender Systems
Recommender Systems zijn ontworpen om de beste suggesties voor items (producten, diensten) te geven aan specifieke gebruikers, gebaseerd op een user/item matrix met beoordelingen of interacties [36](#page=36).
**Basisconcepten:**
* **Items:** Duizenden producten, films, nummers, etc. [36](#page=36).
* **Users:** Vaak miljoenen gebruikers [36](#page=36).
* **Feedback:** Kan expliciet zijn (ratings) of impliciet (klikken, aankopen) [36](#page=36).
* **Sparsity:** De user/item matrix is in de praktijk vaak "sparse" (leeg), omdat gebruikers slechts een fractie van alle items beoordelen [36](#page=36).
#### 5.3.1 Typen Recommender Systems
Er zijn twee hoofdvormen van filtering, vaak gecombineerd:
1. **Content-Based Filtering:**
* **Werking:** Adviseert items die lijken op wat de gebruiker eerder leuk vond, door itemkenmerken (genre, trefwoorden) te analyseren en gelijkenis te berekenen met vectoren van items en gebruikersprofielen (bv. via cosine similarity) [36](#page=36).
* Voordeel: Geen grote groep gebruikers nodig [36](#page=36).
* Nadeel: Kan leiden tot een "echo chamber" (te beperkte focus) en heeft moeite met het bieden van variatie [36](#page=36).
2. **Collaborative Filtering:**
* **Werking:** Baseert zich op het gedrag van vergelijkbare gebruikers in plaats van op de inhoud van het item [36](#page=36).
* **User-based CF:** Zoekt gebruikers met vergelijkbare ratingpatronen en raadt items aan die zij leuk vonden [37](#page=37).
* **Item-based CF:** Zoekt naar items die vaak samen door dezelfde mensen gewaardeerd worden [37](#page=37).
* **Matrix Factorization:** Een geavanceerde techniek die "latente (verborgen) eigenschappen" van gebruikers en items leert om scores te voorspellen [37](#page=37).
* **Voordelen:** Vangt complexe, verborgen smaken op; bevordert ontdekking & serendipiteit; vereist geen item-metadata [37](#page=37).
* **Nadelen:** Vereist veel interactiedata; last van de "Cold Start" (nieuwe gebruikers/items); problemen met sparse matrices [37](#page=37).
**Vergelijking: User-based vs. Item-based:**
* **User-based:** Werkt het best bij veel overlappende interacties, maar is rekenkundig duurder omdat gebruikersprofielen sneller veranderen [37](#page=37).
* **Item-based:** Vaak geprefereerd in grote systemen omdat itemrelaties stabieler zijn dan de smaak van gebruikers [37](#page=37).
#### 5.3.2 Matrix Factorization
Matrix Factorization (matrixfactorisatie) is een geavanceerde techniek binnen Collaborative Filtering om een grote, vaak lege user/item matrix te ontbinden in twee kleinere, compacte matrices die verborgen voorkeuren en kenmerken blootleggen [38](#page=38).
* **Het basisconcept (ontbinding):** Een matrix $R$ met gebruikers en items wordt opgedeeld in:
* **User Latent Matrix ($U$):** Bevat vectoren die beschrijven wat een gebruiker leuk vindt (latente kenmerken) [38](#page=38).
* **Item Latent Matrix ($V$):** Bevat vectoren die beschrijven welke eigenschappen een item heeft (latente kenmerken) [38](#page=38).
* **Latente Features:** Dit zijn verborgen kenmerken die het algoritme zelf ontdekt uit de data, zonder expliciete benoeming. Ze kunnen abstract zijn of interpreteerbaar (bv. genre, akoestisch niveau) [38](#page=38).
**Voordelen van Matrix Factorization:**
* **Omgang met Sparsity:** Kan accurate voorspellingen doen zelfs bij zeer lege tabellen [38](#page=38).
* **Ontdekking van patronen:** Vindt complexe verbanden tussen gebruikers die verder gaan dan simpele overeenkomsten [38](#page=38).
* **Efficiëntie:** Comprimeert interacties naar een beperkt aantal factoren, wat opslag en berekening versnelt [38](#page=38).
#### 5.3.3 Cold Start Probleem
Het cold start probleem doet zich voor wanneer er onvoldoende data is om betrouwbare aanbevelingen te doen:
1. **New User Cold Start:** Nieuwe gebruikers hebben nog geen interactiegeschiedenis, waardoor personalisatie onmogelijk is. Vaak wordt gevraagd om direct interesses te kiezen [39](#page=39).
2. **New Item Cold Start:** Nieuwe items hebben nog geen gebruikersinteracties, waardoor ze moeilijk worden aanbevolen door Collaborative Filtering. Content-Based Filtering presteert hier vaak beter [39](#page=39).
3. **System Cold Start:** Een nieuw platform met een beperkte gebruikersgroep en catalogus heeft simpelweg niet genoeg data voor betrouwbare modellen [39](#page=39).
#### 5.3.4 Ethische overwegingen bij Recommender Systems
* **Echo Chambers & Filter Bubbles:** Algoritmes isoleren gebruikers in hun eigen bubbel door content te tonen die ze al leuk vinden, wat kan leiden tot beperkte blootstelling aan diverse standpunten, versterkte vooroordelen, polarisatie en misinformatie [39](#page=39).
* **Popularity Bias:** Algoritmes promoten al populaire content, waardoor nieuwe, niche of minder bekende makers minder ontdekt worden [40](#page=40).
* **Manipulatie & Verkeerde Incentives:** Platforms optimaliseren vaak voor betrokkenheid of advertentie-inkomsten in plaats van het welzijn van de gebruiker, wat gedragsbeïnvloeding en democratische risico's met zich meebrengt [40](#page=40).
* **Data & Eerlijkheid (Fairness):** Grootschalige dataverzameling brengt privacyrisico's met zich mee. Bestaande ongelijkheden in trainingsdata kunnen leiden tot algoritmische bias en onterechte uitkomsten voor bepaalde groepen [40](#page=40).
---
# Model complexiteit, bias-variance trade-off en neurale netwerken
Dit onderwerp verkent de uitdagingen van modelcomplexiteit, de impact van de bias-variance trade-off en de structuur en toepassingen van neurale netwerken.
## 6. Model complexiteit, bias-variance trade-off en neurale netwerken
### 6.1 Beperkingen van eenvoudige modellen
Eenvoudige modellen, zoals lineaire regressie, lopen tegen beperkingen aan wanneer de realiteit complexer is dan de aannames van het model.
#### 6.1.1 De vloek van dimensionaliteit (Curse of Dimensionality)
Naarmate het aantal kenmerken (dimensies) in een dataset toeneemt, ontstaan er specifieke problemen [41](#page=41):
* De dataruimte neemt exponentieel toe, waardoor de data "ijler" wordt [41](#page=41).
* Het concept van "afstand" verliest zijn betekenis, omdat punten in hoog-dimensionale ruimtes op gelijke afstanden van elkaar komen te liggen [41](#page=41).
* Algoritmen die afhankelijk zijn van afstandsberekeningen, zoals k-Nearest Neighbors (KNN), functioneren hierdoor minder goed [41](#page=41).
#### 6.1.2 Lineariteit versus complexiteit
Eenvoudige modellen zijn vaak beperkt in het weergeven van niet-lineaire relaties [41](#page=41).
* Lineaire regressie gaat uit van een lineaire relatie, terwijl de werkelijkheid zelden uit rechte lijnen bestaat [41](#page=41).
* Bij niet-lineaire data vereisen oplossingen zoals 'binning' of handmatige keuzes van functievormen veel menselijke input en voorkennis [41](#page=41).
* Zonder deze aanpassingen missen eenvoudige modellen de flexibiliteit om complexe patronen automatisch te herkennen [41](#page=41).
### 6.2 Naar meer complexe modellen
Om niet-lineariteit aan te pakken en complexere vormen te modelleren, worden technieken zoals polynomiale features en Support Vector Machines (SVMs) gebruikt [41](#page=41).
#### 6.2.1 Polynomiale Features
Het toevoegen van machten van originele kenmerken (bijv. $x^2$ of $x^3$) kan bochten en interacties in data modelleren, waardoor lineaire modellen niet-lineaire relaties kunnen vastleggen. Dit helpt bij het modelleren van U-vormige of S-vormige curven [41](#page=41) [44](#page=44).
#### 6.2.2 Support Vector Machines (SVMs)
SVMs gebruiken de "Kernel Trick" om data naar een hoger-dimensionale ruimte te mappen, waardoor complexe scheidingsvlakken mogelijk worden. Dit stelt SVMs in staat om niet-lineair scheidbare data toch te classificeren door middel van een niet-lineaire grens in de oorspronkelijke ruimte [41](#page=41) [45](#page=45).
#### 6.2.3 Regulering (Regularization)
Meer modelkracht brengt een verhoogd risico op overfitting met zich mee. Regulering pakt dit aan door een straf-term toe te voegen aan de verliesfunctie, waardoor het model minder gevoelig wordt voor ruis [41](#page=41) [42](#page=42) [45](#page=45).
* **LASSO (L1):** Kan coëfficiënten tot exact nul reduceren, wat leidt tot automatische feature selectie. De straf is de absolute waarde van de coëfficiënten [42](#page=42) [45](#page=45).
* **Ridge (L2):** Verkleint coëfficiënten richting nul, maar behoudt alle kenmerken in het model. De straf is het kwadraat van de coëfficiënten [42](#page=42) [45](#page=45).
* **Elastic Net:** Een combinatie van LASSO en Ridge die vaak beter presteert dan de individuele technieken door feature selectie en krimp te combineren [42](#page=42) [45](#page=45).
### 6.3 De bias-variance trade-off
Bij het ontwikkelen van modellen is het essentieel om de juiste balans te vinden tussen bias en variantie om overfitting en underfitting te voorkomen [42](#page=42).
#### 6.3.1 Bias (Vooringenomenheid)
* **Definitie:** De fout die ontstaat door te simpele aannames van een model over een complex probleem [42](#page=42).
* **Kenmerk:** Een hoge bias leidt tot underfitting, waarbij het model de onderliggende patronen in de data niet kan leren [42](#page=42) [43](#page=43).
* **Voorbeeld:** Een lineair model toepassen op data met een duidelijke niet-lineaire trend [42](#page=42).
#### 6.3.2 Variance (Variantie)
* **Definitie:** De fout die ontstaat door de gevoeligheid van een model voor kleine fluctuaties of ruis in de trainingsdata [42](#page=42).
* **Kenmerk:** Een hoge variantie leidt tot overfitting, waarbij het model de ruis in de data leert in plaats van de onderliggende patronen [42](#page=42) [43](#page=43).
* **Voorbeeld:** Een beslissingsboom met onbeperkte diepte die perfect presteert op trainingsdata, maar faalt op nieuwe data [42](#page=42).
#### 6.3.3 Overfitting en Underfitting
* **Underfitting (High Bias):** Het model is te simpel om de data te leren, resulterend in hoge fouten op zowel trainings- als testdata [43](#page=43).
* **Overfitting (High Variance):** Het model is te complex en leert de ruis in de trainingsdata, wat leidt tot een lage fout op trainingsdata maar een hoge fout op testdata, waardoor het slecht generaliseert [43](#page=43).
> **Tip:** Het vinden van de "sweet spot" is cruciaal; naarmate modellen complexer worden, nemen de bias af, maar de variance toe [42](#page=42).
### 6.4 Parametrische versus non-parametrische modellen
#### 6.4.1 Parametrische Modellen
* **Kenmerken:** Gaan uit van een specifieke datavorm en worden gedefinieerd door een vast aantal parameters, ongeacht de hoeveelheid data. Ze zijn data-efficiënt en interpreteerbaar, maar inflexibel en kunnen een hoge bias hebben bij foute initiële aannames [43](#page=43).
* **Voorbeelden:** Lineaire Regressie, Logistische Regressie, Naive Bayes [43](#page=43).
#### 6.4.2 Non-Parametrische Modellen
* **Kenmerken:** Passen hun complexiteit aan op basis van de data, met een variabele complexiteit die kan groeien met de dataset. Ze zijn flexibel en nauwkeurig, maar rekenkundig duurder en lopen een groter risico op overfitting (hoge variantie) [44](#page=44).
* **Voorbeelden:** k-NN, Beslissingsbomen, SVM (met RBF-kernel), Neurale Netwerken [44](#page=44).
### 6.5 Feature Engineering en Regularisatie
#### 6.5.1 Feature Engineering
Het proces waarbij domeinkennis wordt gebruikt om ruwe data te transformeren tot een format dat het probleem beter representeert voor het model. Technieken omvatten het creëren van polynomiale features en interactietermen, waarbij nieuwe kenmerken worden gemaakt door machten van bestaande kenmerken of door variabelen met elkaar te vermenigvuldigen [44](#page=44).
#### 6.5.2 Regularisatie
Voorkomt overfitting door een straf-term toe te voegen aan de verliesfunctie [45](#page=45).
| Techniek | Type straf (Penalty) | Effect op het model |
| :----------- | :-------------------------- | :----------------------------------------------------------------------------------- |
| LASSO (L1) | Absolute waarde van coëfficiënten | Kan coëfficiënten tot exact nul reduceren, wat resulteert in automatische feature selectie. | [45](#page=45).
| Ridge (L2) | Kwadraat van coëfficiënten | Verkleint coëfficiënten richting nul, maar behoudt alle kenmerken in het model. | [45](#page=45).
| Elastic Net | Combinatie van L1 en L2 | Meestal effectiever dan de afzonderlijke technieken door feature selectie en krimp te combineren. | [45](#page=45).
### 6.6 Neurale Netwerken
Neurale netwerken zijn algoritmen geïnspireerd op het menselijk brein, ingezet voor diverse taken zoals classificatie en regressie [48](#page=48).
#### 6.6.1 Componenten van een neuraal netwerk
* **Neurons (nodes):** De fundamentele eenheden [48](#page=48).
* **Lagen (Layers):** Input layer, hidden layers, en output layer [48](#page=48).
* **Weights (Gewichten):** Bepalen de invloed van een input op de output [48](#page=48).
* **Biases:** Extra waarden om voorspellingen te verschuiven [48](#page=48).
#### 6.6.2 Berekening in een neuron
1. **Weighted Sum:** De som van gewichten vermenigvuldigd met inputwaarden, plus de bias ($(\sum w_i x_i) + b$) [48](#page=48).
2. **Activation Function:** Een functie die bepaalt of en hoe een neuron activeert, en non-lineariteit introduceert [48](#page=48).
#### 6.6.3 Activatie-functies
* **ReLU (Rectified Linear Unit):** Gebruikt in hidden layers. Output is de input bij positieve waarden, anders 0 [48](#page=48).
* **Sigmoid:** Gebruikt voor binaire classificatie. Zet input om naar een waarde tussen 0 en 1 [48](#page=48).
* **Softmax:** Gebruikt voor multiclass classificatie. Zet scores om in kansen die samen 1 vormen [48](#page=48).
* **Geen activatie:** Gebruikt voor regressie om continue waarden zonder bereiksbeperking te voorspellen [48](#page=48).
#### 6.6.4 Forward en Backward Propagation
* **Forward Propagation:** Data reist van de input layer door de hidden layers naar de output layer om een voorspelling te doen. De berekende fout wordt vergeleken met de werkelijke output [49](#page=49).
* **Backward Propagation:** De berekende error wordt terug door het netwerk gestuurd. Gradiënten worden berekend voor elk gewicht om de bijdrage aan de fout te bepalen, en gewichten worden aangepast via Gradient Descent om de fout te verkleinen [49](#page=49).
#### 6.6.5 Epochs en batching
De dataset wordt opgedeeld om de rekenkracht te beheren:
* **Batch:** Een subset van de data die door het netwerk gaat voordat parameters worden bijgewerkt [50](#page=50).
* **Epoch:** Eén volledige iteratie over de gehele dataset [50](#page=50).
* **Iteratie:** De uitvoering van één batch [50](#page=50).
#### 6.6.6 Parameters versus Hyperparameters
* **Parameters:** Interne waarden (gewichten, biases) die het model zelfstandig leert tijdens training [50](#page=50).
* **Hyperparameters:** Externe instellingen (learning rate, aantal lagen, batch size, epochs) die vooraf door de mens worden gekozen en het leerproces bepalen [50](#page=50).
#### 6.6.7 Basistypen neurale netwerken
* **Feedforward Neural Networks (FNN):** Eenvoudige netwerken met informatie die in één richting stroomt van input naar output. Geschikt voor eenvoudige, laag-dimensionale problemen, maar kunnen gevoelig zijn voor overfitting [51](#page=51).
* **Convolutional Neural Networks (CNN):** Gespecialiseerd in raster-achtige data (afbeeldingen). Gebruiken convolution layers voor lokale patroonextractie en pooling om dimensionaliteit te verminderen. Uitstekend voor beeld- en videoverwerking [51](#page=51).
* **Recurrent Neural Networks (RNN):** Ontworpen voor sequentiële data (tekst, spraak). Bevatten lussen die informatie over tijd behouden via een hidden state, wat ze effectief maakt voor taken waarbij context cruciaal is. Ze kunnen echter moeite hebben met lange sequenties door het vanishing gradient problem [51](#page=51).
#### 6.6.8 Voordelen en nadelen van neurale netwerken
* **Voordelen:** Modelleren complexe relaties, hoge flexibiliteit, schaalbaarheid, automatische feature extraction (vooral bij CNNs) [52](#page=52).
* **Nadelen:** Vereisen grote hoeveelheden data, computationeel duur, black-box model (minder interpreteerbaar), gevoelig voor overfitting [52](#page=52).
#### 6.6.9 Wanneer neurale netwerken te gebruiken
* Complexe patroonherkenning (afbeeldingen, spraak, tekst) [52](#page=52).
* Grote datasets [52](#page=52).
* Hoog-dimensionale data [52](#page=52).
* Niet-lineaire relaties [52](#page=52).
* Sequentiële of temporele data (met RNNs) [53](#page=53).
* Creatieve taken (genereren van data) [53](#page=53).
#### 6.6.10 Wanneer neurale netwerken NIET te gebruiken
* Kleine datasets [53](#page=53).
* Behoefte aan interpreteerbaarheid [53](#page=53).
* Eenvoudige problemen ("overkill") [53](#page=53).
* Beperkte computationele middelen [53](#page=53).
* Real-time applicaties waar snelle respons vereist is [53](#page=53).
### 6.7 Generatieve modellering
Generatieve modellen richten zich op het begrijpen van de volledige datadistributie om nieuwe, realistische data te kunnen genereren [53](#page=53) [54](#page=54).
#### 6.7.1 Variational Autoencoders (VAE)
Compressen data naar een lagere dimensie (encoder) en reconstrueren deze (decoder), waardoor een "latent space" ontstaat waaruit nieuwe samples gegenereerd kunnen worden [54](#page=54).
#### 6.7.2 Transformers
Gebruiken een attention mechanism om te kijken naar alle woorden in een zin tegelijk en te bepalen welke relevant zijn voor elkaar. Ze verwerken sequenties parallel, wat ze schaalbaar maakt [54](#page=54) [55](#page=55).
#### 6.7.3 Foundation Models (zoals ChatGPT)
Grote generatieve modellen, vaak gebaseerd op de Transformer-architectuur, die verfijnd zijn met menselijke feedback om veiligere en natuurlijkere antwoorden te genereren [54](#page=54).
### 6.8 Taalmodellering (Language Modeling)
Taalmodellering transformeert menselijke taal naar een computer-leesbaar formaat, met behoud van betekenis [55](#page=55).
#### 6.8.1 Van statische naar semantische representaties
* **Bag-of-Words:** Telt simpelweg woorden, negeert context en semantiek [55](#page=55).
* **Word2vec:** Gebruikt neurale netwerken om woorden semantische representaties (embeddings) te geven, waarbij vergelijkbare woorden gelijkaardige waarden krijgen [55](#page=55).
* **Complexe Embeddings:** Moderne modellen gebruiken veel-dimensionale vectoren voor diepere semantische relaties [55](#page=55).
#### 6.8.2 Contextueel begrip met RNNs en Attention
* **RNNs:** Goed voor sequenties, maar hebben moeite met lange afhankelijkheden [55](#page=55).
* **Attention-mechanisme:** Verbetert RNNs door het model te laten focussen op relevante delen van de invoerreeks [55](#page=55).
#### 6.8.3 Transformers en LLMs
Transformer-architectuur (geïntroduceerd in 2017) maakt parallelle verwerking en self-attention mogelijk, wat leidt tot schaalbare modellen zoals Large Language Models (LLMs) [55](#page=55).
* **Encoder (bv. BERT):** Leert taalrepresentaties door woorden te voorspellen (representation learning) [56](#page=56).
* **Decoder (bv. GPT):** Gericht op generatief leren door het volgende token te voorspellen (generative modeling) [56](#page=56).
#### 6.8.4 Representation Learning vs. Generative Learning
* **Representation Learning (Encoder-focus):** Converteert ruwe data naar een compacte, betekenisvolle vorm in een latent space, met behoud van kernkenmerken en negeren van ruis [56](#page=56).
* **Generative Learning (Decoder-focus):** Gebruikt geleerde representaties om nieuwe data te creëren, door te samplen uit de latent space of het volgende element in een reeks te voorspellen [56](#page=56).
#### 6.8.5 Kerncomponenten van een LLM
Een LLM verwerkt tekst van ruwe invoer naar uitvoer via:
1. **Tokenizer:** Splitst invoertekst op in tokens (woorden/subwoorden), die worden omgezet in numerieke embeddings [57](#page=57).
2. **Stack van Transformer Blocks:** Het "brein" van het model, bestaande uit self-attention (contextuele relevantie) en feedforward netwerken (patroonherkenning) [57](#page=57).
3. **Language Modeling (LM) Head:** Vertaalt de uitvoer van transformer-blokken naar een waarschijnlijkheidsverdeling om het volgende token te kiezen [57](#page=57).
---
## Veelgemaakte fouten om te vermijden
- Bestudeer alle onderwerpen grondig voor examens
- Let op formules en belangrijke definities
- Oefen met de voorbeelden in elke sectie
- Memoriseer niet zonder de onderliggende concepten te begrijpen
Glossary
| Term | Definition |
|------|------------|
| Continue numerieke data | Continue numerieke data (of kwantitatieve data) verwijst naar getallen die elke mogelijke waarde kunnen aannemen binnen een bepaald bereik, zoals lengte, afstand of tijd. |
| Discrete numerieke data | Discrete numerieke data zijn gegevens die bestaan uit afzonderlijke, telbare waarden die niet deelbaar zijn in zinvolle kleinere eenheden, zoals het aantal personen of sportuitslagen. |
| Nominale categorische data | Nominale categorische data zijn gegevens die bestaan uit categorieën zonder inherente rangorde of volgorde, zoals land van herkomst, kleur of geslacht. |
| Ordinale categorische data | Ordinale categorische data zijn gegevens die bestaan uit categorieën met een natuurlijke en logische rangorde, maar zonder vaste intervallen tussen de categorieën, zoals lidmaatschapsniveaus of opleidingsniveaus. |
| Gemiddelde (Mean) | Het gemiddelde is de som van alle elementen in een dataset gedeeld door het totaal aantal elementen. |
| Mediaan | De mediaan is de middelste waarde in een reeks getallen die van klein naar groot (of groot naar klein) is gesorteerd, en is minder gevoelig voor uitschieters dan het gemiddelde. |
| Outliers (Uitschieters) | Outliers zijn datapunten die significant verschillen van de rest van de gegevens in een dataset en kunnen veroorzaakt worden door meetfouten of menselijke fouten. |
| Modus (Mode) | De modus is de waarde die het meest frequent voorkomt in een dataset en is de enige centrummaat die toepasbaar is op categorische data. |
| Kwartielen (Q1, Q3) | Q1 (Eerste Kwartiel) is de middelste waarde van de onderste helft van de data (25e percentiel), en Q3 (Derde Kwartiel) is de middelste waarde van de bovenste helft van de data (75e percentiel). |
| InterQuartile Range (IQR) | De IQR is het verschil tussen Q3 en Q1 ($IQR = Q3 - Q1$) en vertegenwoordigt de spreiding van de middelste 50% van de data. |
| Box plot (Snorredoos) | Een box plot is een visuele weergave die de spreiding en verdeling van een dataset weergeeft met behulp van een rechthoek (box), mediaanlijn en snorharen (whiskers). |
| Populatie | De populatie omvat alle datapunten of individuen waar je geïnteresseerd in bent in een onderzoek. |
| Steekproef (Sample) | Een steekproef is een subset of een kleiner deel van de populatie dat wordt onderzocht om kenmerken van de grotere populatie te schatten. |
| Representativiteit | Representativiteit verwijst naar de mate waarin een steekproef een redelijke afspiegeling is van de populatie, wat cruciaal is voor betrouwbare conclusies. |
| Biased sampling (Vertekende steekproeftrekking) | Vertekende steekproeftrekking treedt op wanneer de selectiemethode voor de steekproef ervoor zorgt dat deze niet representatief is voor de populatie. |
| Measures of spread (Spreidingsmaten) | Spreidingsmaten zijn statistische waarden die aangeven hoe verspreid of gevarieerd de datapunten in een dataset zijn, zoals MAD, variantie en standaarddeviatie. |
| Mean Absolute Deviation (MAD) | De MAD is het gemiddelde van de absolute verschillen tussen elk datapunt en het gemiddelde van de dataset. |
| Variantie (Variance) | De variantie is het gemiddelde van de kwadratische afwijkingen van het gemiddelde, waarbij grotere afwijkingen zwaarder worden "bestraft". |
| Standaarddeviatie (Standard Deviation) | De standaarddeviatie is de vierkantswortel van de variantie en is de meest gebruikte spreidingsmaat omdat de waarde in dezelfde eenheid als de oorspronkelijke data staat. |
| Skewness (Scheefheid) | Skewness is een statistische maatstaf die de mate van asymmetrie in een kansverdeling beschrijft, onderscheidend tussen positieve (rechts), negatieve (links) en symmetrische verdelingen. |
| Kurtosis | Kurtosis is een statistische maatstaf die de "tailedness" (de dikte van de staarten) of de scherpte van de piek van een verdeling meet, onderscheidend tussen leptokurtisch (scherpe piek, dikke staarten), platykurtisch (platte piek, dunne staarten) en mesokurtisch (normale verdeling). |
| Correlatie | Correlatie is een statistische maatstaf die de lineaire relatie tussen twee verschillende variabelen beschrijft, uitgedrukt door de correlatiecoëfficiënt (r). |
| Correlatie ≠ Causation | Een belangrijke waarschuwing dat correlatie tussen twee variabelen niet impliceert dat de ene variabele de andere veroorzaakt; er kan een derde factor spelen. |
| Spurious Correlations (Schijincorrelaties) | Schijincorrelaties zijn toevallige verbanden tussen variabelen die geen logische relatie hebben en kunnen ontstaan door een ongeziene factor of simpelweg door toeval in grote datasets. |
| One-hot encoding | One-hot encoding is een techniek om categorische variabelen om te zetten naar een numeriek formaat door voor elke unieke categorie een aparte binaire kolom aan te maken. |
| Missing Completely at Random (MCAR) | MCAR betekent dat de kans dat een waarde ontbreekt volledig willekeurig is en ongerelateerd aan andere data in de set. |
| Missing at Random (MAR) | MAR betekent dat het ontbreken van data gerelateerd is aan andere geobserveerde data, maar niet aan de ontbrekende waarde zelf. |
| Missing Not at Random (MNAR) | MNAR betekent dat de reden waarom data ontbreekt direct gerelateerd is aan de waarde die ontbreekt. |
| Imputeren | Imputeren is het proces van het vervangen van ontbrekende waarden in een dataset door geschatte waarden, zoals het gemiddelde, de mediaan of een voorspelde waarde. |
| Supervised Learning | Supervised learning is een type machine learning waarbij het model leert van gelabelde data om voorspellingen te doen op nieuwe, ongeziene data. |
| Classificatie (Classification) | Classificatie is een supervised learning taak waarbij het doel is om een categorie of label toe te kennen aan een nieuwe observatie, met discrete waarden als output. |
| Regressie (Regression) | Regressie is een supervised learning taak waarbij het doel is om een numerieke waarde of een continu getal te voorspellen, met continue getallen als output. |
| K-Nearest Neighbors (KNN) | KNN is een supervised learning algoritme dat, voor zowel classificatie als regressie, voorspellingen doet op basis van de K meest gelijkende datapunten in de trainingsset. |
| Euclidean distance | Euclidische afstand is een metriek die de "vogelvlucht"-afstand tussen twee punten in een continue numerieke ruimte berekent. |
| Manhattan distance | Manhattan distance berekent de afstand als de som van de absolute verschillen tussen de coördinaten van twee punten, vergelijkbaar met de afstand die een taxi zou afleggen in een rasterstructuur. |
| Hamming distance | Hamming distance meet het aantal posities waarop twee binaire variabelen verschillen. |
| Decision trees (Beslissingsbomen) | Een decision tree is een supervised learning algoritme dat data opdeelt in steeds kleinere subgroepen op basis van specifieke kenmerken om zo tot een voorspelling te komen. |
| Root Node (Wortel) | De root node is het startpunt van een beslissingsboom waar de eerste splitsing plaatsvindt. |
| Internal Nodes (Interne knopen) | Interne knopen zijn tussenliggende stappen in een beslissingsboom waar de data verder wordt gesplitst. |
| Leaf Nodes (Bladeren) | Leaf nodes zijn de eindpunten van een beslissingsboom die het uiteindelijke resultaat bevatten. |
| Entropy | Entropy is een metriek die de mate van wanorde of mix in een groep datapunten meet; een waarde van 0 betekent een volledig pure groep. |
| Information Gain | Information gain meet de afname in entropie na een bepaalde splitsing in een beslissingsboom, waarbij de splitsing met de hoogste gain wordt gekozen. |
| Gini Index | Gini index meet de waarschijnlijkheid dat een willekeurig gekozen item fout geclassificeerd wordt; een waarde van 0 betekent een perfect pure groep. |
| Random Forest | Random Forest is een ensemble learning methode die de voorspellingen van meerdere individuele beslissingsbomen combineert om nauwkeurigere en robuustere resultaten te behalen. |
| Lineaire regressie | Lineaire regressie is een supervised learning algoritme dat een lineaire relatie tussen variabelen probeert te modelleren om een continue waarde te voorspellen. |
| Enkelvoudige lineaire regressie | Enkelvoudige lineaire regressie gebruikt slechts één voorspellende variabele ($X$) om de waarde van $y$ te bepalen, met de formule $y = \beta_0 + \beta_1x$. |
| Meervoudige lineaire regressie | Meervoudige lineaire regressie gebruikt een set van meerdere voorspellende variabelen ($X_1, X_2, ..., X_p$) om $y$ te voorspellen, met de formule $y = \beta_0 + \beta_1x_1 + ... + \beta_px_p + \epsilon$. |
| Coëfficiënten ($\beta$) | Coëfficiënten representeren de helling en geven aan hoe sterk elke variabele de voorspelling beïnvloedt; $\beta_0$ is het snijpunt. |
| Ruis ($\epsilon$) | Ruis staat voor de "error" of "noise" in de data; de afwijking die niet door de variabelen verklaard kan worden. |
| Niet-lineaire Regressie (Polynomial Model) | Een niet-lineair regressiemodel, zoals een polynomial model, buigt de lijn om datapunten beter te volgen, bijvoorbeeld met de formule $y = b_0 + b_1x_1 + b_2x_1^2$. |
| Logistische Regressie | Logistische regressie is een supervised learning algoritme dat de waarschijnlijkheid voorspelt dat een waarneming tot een specifieke (meestal binaire) categorie behoort, resulterend in een S-curve. |
| Sigmoid Functie | De sigmoid-functie (of logistische functie) buigt een lineaire uitkomst om naar een karakteristieke S-vorm, waardoor de waarden tussen 0 en 1 vallen, ideaal voor kansberekeningen. |
| Threshold (Drempelwaarde) | Een drempelwaarde is een ingestelde grens (meestal 0,5) die wordt gebruikt om een definitieve keuze te maken tussen twee klassen op basis van een voorspelde kans. |
| Regularisatie | Regularisatie is een techniek die wordt toegepast om te voorkomen dat een model te complex wordt of te veel vertrouwt op onbelangrijke variabelen door een straf toe te voegen. |
| Lasso Regressie (L1) | Lasso regressie kan onbelangrijke variabelen volledig verwijderen door hun coëfficiënten naar nul te dwingen, wat helpt bij feature selectie. |
| Ridge Regressie (L2) | Ridge regressie maakt de invloed van minder belangrijke variabelen heel klein, maar verwijdert ze niet volledig. |
| Statistical Distributions (Statistische Verdelingen) | Statistische verdelingen zijn weergaven die laten zien hoe datapunten over verschillende waarden verspreid zijn, zoals de normale verdeling, Student-t verdeling of Poisson verdeling. |
| Normale Verdeling (Bell Curve) | De normale verdeling is een symmetrische verdeling waarbij data geclusterd is rond het gemiddelde; 68% van de data ligt binnen één standaarddeviatie. |
| Student-t Verdeling | De student-t verdeling lijkt op de normale verdeling maar heeft dikkere staarten en wordt gebruikt bij kleine steekproeven of onbekende standaarddeviatie. |
| Exponentiële Verdeling | De exponentiële verdeling beschrijft vaak de tijd tussen gebeurtenissen, zoals de levensduur van een product. |
| Uniforme Verdeling | Bij een uniforme verdeling heeft elke mogelijke uitkomst een gelijke kans, zoals bij het gooien van een eerlijke dobbelsteen. |
| Poisson Verdeling | De Poisson verdeling meet het aantal gebeurtenissen in een vast tijdsinterval met een constante gemiddelde snelheid en onafhankelijke gebeurtenissen. |
| Bernoulli Verdeling | De Bernoulli verdeling is de eenvoudigste verdeling voor een enkel experiment met twee mogelijke uitkomsten (binair), zoals muntgooien. |
| Binomiale Verdeling | De binomiale verdeling beschrijft het aantal successen in een vaste reeks van onafhankelijke Bernoulli-experimenten. |
| Statistical Significance (Statistische Significantie) | Statistische significantie geeft aan hoe waarschijnlijk het is dat een gevonden resultaat op toeval berust in plaats van een echt effect. |
| Nulhypothese ($H_0$) | De nulhypothese is het uitgangspunt dat er geen effect of geen verschil is in een test. |
| P-waarde (P-value) | De p-waarde is de waarschijnlijkheid dat de geobserveerde data (of extremer) wordt gevonden als de nulhypothese waar zou zijn; een lage p-waarde (< 0,05) duidt op significantie. |
| Praktische Significantie | Praktische significantie beoordeelt of een statistisch significant effect groot genoeg is om in de echte wereld belangrijk te zijn. |
| Data Science Workflow | De Data Science Workflow is een gestructureerd proces dat data scientists volgen, vaak gemodelleerd naar CRISP-DM, om van ruwe data naar een gevalideerd model te komen. |
| CRISP-DM | CRISP-DM (Cross Industry Standard Process for Data Mining) is een gestructureerd procesmodel voor data mining en data science projecten, bestaande uit Business Understanding, Data Understanding, Data Preparation, Modeling, Evaluation en Deployment. |
| Confusion Matrix | Een confusion matrix is een tabel die de werkelijke waarden vergelijkt met de voorspelde waarden van een classificatiemodel, met termen als True Positive (TP), True Negative (TN), False Positive (FP) en False Negative (FN). |
| Accuracy (Nauwkeurigheid) | Accuracy is het percentage van de totale voorspellingen dat correct was, maar minder betrouwbaar bij ongebalanceerde datasets. |
| Precision (Precisie) | Precision meet hoeveel van de positieve voorspellingen werkelijk positief waren en is belangrijk wanneer de kosten van een False Positive hoog zijn. |
| Recall (Sensitivity) | Recall meet hoeveel van de werkelijke positieve gevallen het model heeft gevonden en is cruciaal wanneer de kosten van een False Negative hoog zijn. |
| F1-Score | De F1-score is het harmonisch gemiddelde van Precision en Recall, gebruikt voor een balans tussen beide bij scheve datasets. |
| Specificity | Specificity meet hoe goed een test is in het correct identificeren van mensen die de ziekte niet hebben; het percentage gezonde mensen dat een negatief testresultaat krijgt. |
| Residuals (Fouten) | Residuals zijn de verschillen tussen de werkelijke waarde ($y_i$) en de voorspelde waarde ($\hat{y}_i$) in regressiemodellen. |
| Mean Absolute Error (MAE) | MAE is het gemiddelde van alle absolute fouten in een regressiemodel en geeft de gemiddelde fout in de eenheid van de data aan. |
| Mean Squared Error (MSE) | MSE is het gemiddelde van de gekwadrateerde fouten in een regressiemodel, waarbij grote uitschieters zwaarder worden bestraft. |
| Mean Absolute Percentage Error (MAPE) | MAPE is de gemiddelde fout uitgedrukt als een percentage van de werkelijke waarde. |
| Lift Curve | Een Lift Curve is een evaluatiemethode die meet hoeveel beter een model presteert in het identificeren van de "meest waarschijnlijke kandidaten" vergeleken met een willekeurige selectie. |
| Model Validatie | Modelvalidatie is een cruciale fase in de Data Science Workflow die bepaalt of de output van een model een acceptabele weergave is van de echte wereld en of het goed presteert op nieuwe data. |
| Apparent Validity | Apparent validity verwijst naar de prestaties van een model getest op de eigen trainingset. |
| Internal Validity | Internal validity verwijst naar de prestaties van een model getest op de eigen populatie of validation set. |
| External Validity | External validity verwijst naar de prestaties van een model getest op een andere populatie of test set. |
| Data Splitting | Data splitting is een techniek waarbij de dataset wordt verdeeld in training-, validation- en testsets voor modelbouw en evaluatie. |
| Cross Validation (K-Fold) | Cross-validation is een robuuste validatiemethode waarbij de data herhaaldelijk wordt gesplitst en getraind/getest om overfitting te voorkomen. |
| Leave One Out (LOO) | LOO is een extreme vorm van cross-validation waarbij telkens één datapunt voor validatie wordt gebruikt en de rest voor training. |
| Unsupervised Learning | Unsupervised learning is een type machine learning waarbij het model leert van ongelabelde data om patronen en structuren te ontdekken. |
| Clustering | Clustering is een unsupervised learning techniek waarbij data in groepen (clusters) wordt verdeeld op basis van gelijkenis, zonder vooraf gedefinieerde labels. |
| Datacompressie en Visualisatie | Unsupervised learning technieken zoals PCA en t-SNE worden gebruikt om grote datasets te comprimeren en te visualiseren voor patroonherkenning. |
| Detectie van Afwijkingen (Anomaly Detection) | Anomaly detection is het opsporen van datapunten die significant afwijken van de rest, wat nuttig is in cybersecurity en fraudeopsporing. |
| Association Rules (Associatieregels) | Associatieregels zijn technieken binnen unsupervised learning die "If-Then"-relaties vinden tussen items die vaak samen voorkomen in transacties. |
| Transactie | Een transactie is een lijst met items die samen voorkomen, zoals een aankoop op een kassabon of een bezochte webpagina. |
| Itemset | Een itemset is een verzameling van één of meer items die samen voorkomen. |
| Co-occurrence | Co-occurrence geeft aan dat items samen voorkomen, maar impliceert geen causaliteit. |
| Apriori Algoritme | Het Apriori algoritme is een stapsgewijze aanpak om alle frequente itemsets te vinden die vaker voorkomen dan een ingestelde drempelwaarde (Support Threshold). |
| Recommender Systems | Recommender systems zijn systemen die aanbevelingen doen voor specifieke gebruikers op basis van hun gedrag of voorkeuren en die van vergelijkbare gebruikers. |
| User/item matrix | Een user/item matrix is een tabel waarin gebruikers en items worden weergegeven met hun interacties of beoordelingen, vaak "sparse" (ijdel) in de praktijk. |
| Content-Based Filtering | Content-based filtering beveelt items aan die lijken op wat de gebruiker in het verleden leuk vond, gebaseerd op itemkenmerken. |
| Collaborative Filtering | Collaborative filtering baseert zich op het gedrag van andere, vergelijkbare gebruikers om aanbevelingen te doen. |
| User-based CF | User-based CF zoekt gebruikers met vergelijkbare ratingpatronen en raadt items aan die zij leuk vonden. |
| Item-based CF | Item-based CF zoekt naar items die vaak samen door dezelfde mensen gewaardeerd worden. |
| Matrix Factorization | Matrix factorization is een geavanceerde techniek binnen collaborative filtering om een grote, sparse user/item matrix te ontbinden in kleinere matrices die verborgen voorkeuren en itemkenmerken blootleggen. |
| Latent Features | Latent features zijn verborgen kenmerken die een algoritme zelf ontdekt uit de data, zonder dat ze expliciet zijn benoemd. |
| Cold Start Problem | Het cold start problem treedt op bij recommender systems wanneer er te weinig data is over nieuwe gebruikers of nieuwe items om effectieve aanbevelingen te doen. |
| Echo Chambers & Filter Bubbles | Echo chambers en filter bubbles zijn risico's waarbij algoritmes gebruikers isoleren in hun eigen bubbel van gelijkgestemde meningen, wat blootstelling aan diverse standpunten kan beperken. |
| Popularity Bias | Popularity bias treedt op wanneer algoritmes de neiging hebben om reeds populaire content te promoten, wat het moeilijker maakt voor nieuwe of niche content om ontdekt te worden. |
| Manipulatie & Verkeerde Incentives | Dit verwijst naar het conflict tussen wat goed is voor de gebruiker en wat goed is voor het platform, waarbij platforms content optimaliseren voor betrokkenheid of winst, wat de autonomie van de gebruiker kan onderdrukken. |
| Data & Eerlijkheid (Fairness) | Dit betreft privacyrisico's door grootschalige dataverzameling en mogelijke algoritmische bias die bestaande ongelijkheden in de maatschappij weerspiegelt en versterkt. |
| Curse of Dimensionality (Vloek van Dimensionaliteit) | De vloek van dimensionaliteit treedt op wanneer het aantal kenmerken in een dataset toeneemt, waardoor de data schaarser wordt en afstandsberekeningen minder betekenisvol worden. |
| Lineariteit versus complexiteit | Eenvoudige modellen, zoals lineaire regressie, zijn beperkt in het weergeven van complexe realiteit en vereisen vaak menselijke input om niet-lineaire patronen te modelleren. |
| Polynomiale Features | Polynomiale features voegen machten van originele kenmerken toe (bijv. $x^2$) om bochten en interacties te modelleren. |
| Support Vector Machines (SVMs) | SVMs zijn krachtige machine learning-modellen, primair voor classificatie, die de optimale scheidingslijn (hyperplane) tussen klassen vinden met maximale marge. |
| Kernel Trick | De Kernel Trick stelt SVMs in staat om niet-lineair scheidbare data te classificeren door de data naar een hogere dimensie te mappen waar lineaire scheiding wel mogelijk is. |
| Ensemble Methods | Ensemble methods combineren de voorspellingen van meerdere individuele modellen om de flexibiliteit te behouden en de variantie te verminderen. |
| Bagging (Bootstrap Aggregating) | Bagging vermindert variantie door meerdere variaties van de trainingsdata te maken en modellen parallel te trainen, met Random Forest als voorbeeld. |
| Boosting | Boosting is een sequentiële techniek die zich richt op het verminderen van zowel bias als variantie door modellen te trainen op de fouten van vorige modellen. |
| Stacking | Stacking combineert de sterktes van verschillende soorten modellen door een overkoepelend meta-model te trainen op de resultaten van individuele learners. |
| Gradient Descent | Gradient descent is een optimalisatie-algoritme dat iteratief stappen neemt in de richting van de steilste daling van een verliesfunctie om het minimum te vinden. |
| Loss function (Verliesfunctie) | De verliesfunctie meet de fouten van een model; het doel is om het minimum van deze functie te vinden. |
| Learning Rate (Leersnelheid) | De learning rate bepaalt de grootte van de stappen die worden genomen tijdens gradient descent; te kleine stappen zijn langzaam, te grote stappen kunnen het minimum missen. |
| Neural Networks (Neurale Netwerken) | Neurale netwerken zijn algoritmen geïnspireerd op het menselijk brein, gebruikt voor diverse taken zoals classificatie, regressie en patroonherkenning. |
| Neurons (nodes) | Neurons zijn de fundamentele eenheden van een neuraal netwerk. |
| Layers (Lagen) | Een neuraal netwerk bestaat uit input, hidden en output lagen. |
| Weights (Gewichten) | Weights zijn getallen die aan verbindingen zijn gekoppeld en bepalen de invloed van een input op de output. |
| Biases | Biases zijn extra waarden die worden toegevoegd om voorspellingen te helpen verschuiven. |
| Activation Function (Activatiefunctie) | Activatiefuncties introduceren non-lineariteit, waardoor het netwerk complexe patronen kan leren. |
| ReLU | ReLU (Rectified Linear Unit) is een activatiefunctie die output gelijk is aan input bij positieve waarden, anders 0, veel gebruikt in hidden layers. |
| Sigmoid | Sigmoid is een activatiefunctie die input omzet naar een waarde tussen 0 en 1, gebruikt in binaire classificatie. |
| Softmax | Softmax is een activatiefunctie die scores omzet in kansen die samen 1 vormen, gebruikt in multiclass classificatie. |
| Forward Propagation (Voorwaartse verspreiding) | Forward propagation is het proces waarbij data door het netwerk reist van input naar output om een voorspelling te doen. |
| Backward Propagation (Terugwaartse verspreiding) | Backward propagation is het proces waarbij de berekende fout wordt teruggestuurd door het netwerk om gewichten aan te passen met behulp van gradient descent. |
| Epochs | Een epoch vertegenwoordigt één volledige iteratie over de gehele trainingsdataset. |
| Batch | Een batch is een subset van de data die door het netwerk gaat voordat de parameters worden bijgewerkt. |
| Iteration | Een iteratie is de uitvoering van één batch. |
| Parameters | Parameters zijn de interne waarden die het model zelfstandig leert tijdens het trainingsproces, zoals weights en biases. |
| Hyperparameters | Hyperparameters zijn instellingen die voorafgaand aan de training door de mens worden gekozen, zoals learning rate en netwerkarchitectuur. |
| Feedforward Neural Networks (FNN) | FNN's zijn de eenvoudigste neurale netwerken waarbij informatie in één richting beweegt van input naar output. |
| Convolutional Neural Networks (CNN) | CNN's zijn gespecialiseerd in raster-achtige data, zoals afbeeldingen, en gebruiken convolution layers om lokale patronen te extraheren. |
| Recurrent Neural Networks (RNN) | RNN's zijn ontworpen voor sequentiële data, zoals tekst en tijdreeksen, en bevatten lussen om informatie over tijd te behouden. |
| Black-box model | Een black-box model is een model waarvan de interne werking en beslissingen moeilijk te interpreteren zijn. |
| Generative modeling | Generatieve modellering richt zich op het begrijpen van de volledige datadistributie om nieuwe samples te kunnen genereren die lijken op de originele dataset. |
| Variational Autoencoders (VAE) | VAEs zijn generatieve modellen die data comprimeren naar een latent space en deze vervolgens weer reconstrueren om nieuwe data te genereren. |
| Transformers | Transformers zijn een type neuraal netwerk dat een attention mechanism gebruikt om alle woorden in een zin tegelijk te bekijken en relevante context te bepalen, zeer schaalbaar voor grote datasets. |
| Foundation Models | Foundation models zijn grote, generatieve AI-modellen gebaseerd op de Transformer-architectuur, zoals ChatGPT, die getraind zijn op enorme hoeveelheden data. |
| Language modeling | Language modeling richt zich op het omzetten van menselijke taal naar een formaat dat een computer kan verwerken, met behoud van context en semantiek. |
| Bag-of-Words | Bag-of-words is een vroege methode om zinnen om te zetten in numerieke vectoren door simpelweg woorden te tellen, zonder rekening te houden met context of semantiek. |
| Word2vec | Word2vec is een methode die woorden een semantische representatie geeft door woorden die vaak nabij elkaar staan gelijkaardige numerieke waarden (embeddings) toe te kennen. |
| Attention-mechanisme | Het attention-mechanisme dwingt een model om zich te concentreren op de relevante delen van een invoerreeks, wat helpt bij het begrijpen van context. |
| Encoder | Een encoder is een deel van een neuraal netwerk dat ruwe data omzet naar een compacte, betekenisvolle representatie in een latent space. |
| Decoder | Een decoder is een deel van een neuraal netwerk dat een representatie uit de latent space omzet naar bruikbare data. |
| Representation Learning | Representation learning focust op het omzetten van ruwe data naar een betekenisvolle, compacte vorm in een latent space, waarbij de belangrijkste kenmerken behouden blijven. |
| Generative Learning | Generative learning gebruikt geleerde representaties om nieuwe data-punten te creëren die lijken op de originele dataset. |
| Large Language Models (LLM) | LLMs zijn moderne taalmodellen, gebaseerd op de Transformer-architectuur, die tekst verwerken van ruwe invoer naar gegenereerde uitvoer met behulp van tokenizers, transformer blocks en een language modeling head. |
| Tokenizer | Een tokenizer is de eerste stap in een LLM waarbij invoertekst wordt opgesplitst in tokens (woorden of subwoorden) die vervolgens worden omgezet in numerieke embeddings. |
| Transformer Blocks | Transformer blocks zijn de kerncomponenten van een LLM, bestaande uit self-attention en feedforward neural networks, die de data verwerken om patronen en verbanden te vinden. |
| Language Modeling (LM) Head | De LM Head is de laatste laag van een LLM die de uitvoer van de transformer blocks vertaalt naar een waarschijnlijkheidsverdeling over het vocabulaire om het volgende token te kiezen. |