Hernoemen en aanvullingen

This commit is contained in:
2022-01-31 13:05:45 +01:00
parent b8a257a3e2
commit e27c2085f0
7 changed files with 114 additions and 28 deletions

View File

@ -1,20 +0,0 @@
## Discussiecollege
### Probability
**Experiment** - *Iets* dat een bepaalde set van mogelijkheiden als uitkomst heeft
**Sample Space** - Aangegeven met $s$, de set van alle mogelijkheden
**Event** - Set van uitkomsten of criteria.
### Statistics
**Mean** - Het gemiddelde som delen door n (n = hoeveelheid getallen)
**Median** - Het middelste getal in een gesorteerde lijst
**Mode** - Wat het meest voorkomt
**Variance** -
**Standard daviation** -
**Linear correlation** - Hiermee wordt de (lineaire) relatie tussen twee variabelen gemeten
### Wiskunde
**logaritme** - Het omgekeerde van een exponent.

2
lesstof/Week 9.md Normal file
View File

@ -0,0 +1,2 @@
## Hoorcollege

View File

@ -16,4 +16,25 @@ Types Machine Learning:
### Types van supervised Learning
* **Classification** - Iets toewijzen tot een discrete set van van mogelijkheden. Zoals spam/geen-spam of bloed type
* **Regressie** - Het voorspellen van een numerieke waarde.
* **Regressie** - Het voorspellen van een numerieke waarde.
## Discussiecollege
### Probability
**Experiment** - *Iets* dat een bepaalde set van mogelijkheiden als uitkomst heeft
**Sample Space** - Aangegeven met $s$, de set van alle mogelijkheden
**Event** - Set van uitkomsten of criteria.
### Statistics
**Mean** - Het gemiddelde som delen door n (n = hoeveelheid getallen)
**Median** - Het middelste getal in een gesorteerde lijst
**Mode** - Wat het meest voorkomt
**Variance** -
**Standard daviation** -
**Linear correlation** - Hiermee wordt de (lineaire) relatie tussen twee variabelen gemeten
### Wiskunde
**logaritme** - Het omgekeerde van een exponent.

View File

@ -28,9 +28,7 @@ Formeel gezien wat een model doet: $Y = f(\textbf{X}) + \epsilon$
* *Irreducible Error*: Error dat niet verkleind kan worden onafhankelijk van hoe goed we $f$ inschatten. Dit type is onbekend en onmeetbaar.
* $Y$ representeerd de output variabelen (afhankelijke)
*Statistical Learning* bevat methodes om deze $f(\textbf{X})$ in te schatten.
Waarom proberen we $f(\textbf{X})$ te schatten?
*Statistical Learning* bevat methodes om deze $f(\textbf{X})$ in te schatten. Redenen hiervoor zijn:
* **Prediction** - Wanneer we een goede estimate hebben van $\hat{f}(\textbf{X}$ kunnen we deze gebruiken om voorspellingen te maken op nieuwe data. We gebruiken $\hat{f}$ als een *black box*. We geven er niet om hoe of waarom het werkt, zolang de uitkomst redelijk accuraat is.
* **Inferentie** - We willen begrijpen wat de relatie is tussen $\textbf{X}$ en $Y$. We behandelijk $\hat{f}$ niet langer als een *black box*. We willen begrijpen hoe $Y$ verandert ten opzichte van $\textbf{X}$
@ -39,3 +37,19 @@ Waarom proberen we $f(\textbf{X})$ te schatten?
* *underfitting* - Betekent dat er een hoge *bias* is en het model niet helemaal klopt
* *Overfitting* - Betekent dat het model te veel is afgestemd op de trainingsset
## Discussiecollege
Metrics:
* **Confusion Matrix** -
* **Accuracy** - Ratio van correcte voorspellingen over totale voorspellingen. $ accuracy = \frac{TP+TN}{TP+TN+FN+FP}$
* **Precision** - Hoevaak de classifier correct is met het voorspellen van *positives*. $precision = \frac{TP}{TP+FP}$
* **Recall / Sensitivity** - Hoevaak de classifier correct is $ recall = \frac{TP}{TP+FN} $
* **Specificity** - Hoevaak de classifier correct is met het voorspellen van *negatives*. $ specificity = \frac{TN}{FP+TN} $
Cross validation:
* **Validation Set** - Splits data in train- en validatieset. Train model op trainingsset en test op validatieset.
* **Leave-One-Out CV (LOOCV)** - Splits data in train- en validatieset. Alleen bestaat de validatieset uit slechts één record. Herhaal dit totdat elke record in de validatieset heeft gezeten. Test error is het gemiddelde van alle tests
* **k-Fold CV** - randomly divide data into k groups (folds) of approximately equal size. First fold is used as validation and the rest as training. Then repeat k times and find average of the k estimates.

67
lesstof/week 5.md Normal file
View File

@ -0,0 +1,67 @@
## Hoorcollege
### Decision Trees
Decision trees hebben de volgende **voordelen**:
* Non-linearity
* Support for categorical variables
* Easy to interpret
* Application to regression
**Nadelen**:
* Prone to overfitting
* Instable (not rebust to noise)
* High variance
* Low bias
Decision Trees worden gemaakt op ongeveer de volgende manier (recursive partitioning steps):
1. Kies een predictor $X_i$
2. Kies een waarde $S_i$ uit $X_i$ welke de waardes in 2 splits (niet perse gelijk)
3. Meet hoe *puur* deze splitsing is. Puur = wanneer deze splitsing perfect classificeert
4. Met een algoritme worden verschillende waardes van $X_i$ en $S_i$ vergeleken om de *puurheid* te maximaliseren op de eerste split.
5. Wanneer deze *maximale puurheid* behaalt is wordt hetzelfde process doorlopen voor een tweede splits enzovoorts.
Meten van puurheid ($m$ is het aantal categorieën):
* Gini Index
* Waarde tussen $0,0$ en $1 - 1 / m$
* Volledig puur wanneer $I(A) = 0$
* Entropy
* Volledige puur wanneer $ Ent(A) = 0 $
**Pruning**
* CART (*'Classification and Regression Trees'*) laat de tree volledig tot stand komen (deze is dus overfit)
* Probeer het punt te vinden waar de validatie error begint op te lopen
* Genereer steeds kleinere trees door leaves te prunen
* Op elk pruning moment zijn er meerdere verschillende mogelijkheden
* Gebruik een *cost complexity* functie om de beste tree te kiezen
**Regression Trees for Prediction**
* Wordt gebruikt bij *continue* uitkomst variabelen (afhankelijke)
* Vergelijkbare procedure als een classification tree
* Veel splits worden geprobeerd, kies de split welke impurity minimaliseerd
* Voorspelling is het gemiddelde van het numerische doelvariabelen in de vierkant (Bij Classification Trees is het een majority vote)
* impuurheid gemeten door de som van deviatie in het kwadraat
* Performance gemeten door RMSE (root mean squared error)
### Ensemble
Ensemble learning is een strategie waarbij meerdere verschillende classifiers/models in één model worden gecombineerd. Dit reduceert *variantie* in de voorspelling. Er zijn verschillende Ensemble methodes:
* **Bagging** - Er worden meerdere instanties van hetzelfde model gebouwd elk getrained op een verschillende subset van de originele dataset. Staat voor *"Bootrstrapping and Aggregating"*
* **Random Forests** - Een methode specifiek voor Decision Trees. Werkt voort op dezelfde basis als **bagging** alleen wordt meer *randomness* gehanteerd bij het creeren van splitsingen in de boom.
* **Boosting** - Verbeterd een model door informatie te gebruiken van vorige classifiers.
Samengevat:
1. Presteren over het algemeen beter dan individuele modellen
2. Hebben vele varianten (averaging, weighted avereging, voting, medians, resampling)
3. Bevorderd "parallel processing"
4. Helpt tegen overfitting (but does not cure it)
5. Zijn black-box modellen met hoge transparantie verliezen dit wanneer ensembled

View File

@ -52,14 +52,16 @@ Martijn Remmen
\pagebreak
\chapter{Week 1}
\markdownInput{lesstof/1 - hoorcollege.md}
\markdownInput{lesstof/1 - discussiecollege.md}
\markdownInput{lesstof/week 1.md}
\chapter{Week 2}
\markdownInput{lesstof/2 - hoorcollege.md}
\markdownInput{lesstof/week 2.md}
\chapter{Week 3}
\markdownInput{lesstof/3 - hoorcollege.md}
\markdownInput{lesstof/week 3.md}
\chapter{Week 5}
\markdownInput{lesstof/week 5.md}
\chapter{Data Science Design Manual}
\markdownInput{dsdm/chapter_2.md}