Lineaire and logistische regressie worden al sinds jaar en dag gebruikt. Met creatieve constructive van regressive variabele zijn al vrij geode modellen te maken.
Lineaire and logistische regressie worden al sinds jaar en dag gebruikt. Met creatieve constructive van regressive variabele zijn al vrij geode modellen te maken.
Decision tree 20:25 – 20:35
Vanaf eind Jaren 80 al bekend met het werk van Leo Breiman
Wanneer stoppen we?
Te vroeg: missen bepaalde structuur in de data.
Te laat: de tree wordt te groot en we overfitten
Mogelijke stop strategieën
Stop met splitsen als er geen echte afname is in MSE of GINI
Te kortzichtig omdat in een verdere split de afname alsnog kan komen
Maak eerste een grote tree,
stop splitsen alleen als een minimum aantal data punten overblijft.
Pas pruning toe op de grote tree (snoeien)
Knip weer stukken van de boom af, maar alleen als dat niet tot
een te grote toename in MSE of GINI leidt.
CHAID (chi-squared automatic interaction detection)
Categorical or continuous target
Multiple splits
Criteria = Chi-Square
Stops before a tree gets too large
Uses missing values as an additional category
CART (Classification and Regression)
Categorical or continuous target
Binary splits
Criteria = Gini
Large trees then prune
Uses surrogate field for missing values
C4.5 / C5.0
Only categorical target
Multiple splits
Criteria = entropy
Large trees then prune
Imputes missing values
Rond midden Jaren 90 verschenen hier artiekelen over. Leo Breiman Bagging Predictors
Bootstrap Aggregation (Bagging)
Neem meerdere (onafhankelijke) random samples uit de data, bijvoorbeeld K samples.
Fit op elk sample een model, resulterend in model M1, M2, … ,MK
Uiteindelijke voorspelling is een meerderheids-stem of averaging van de K modellen.
Boosting
Begin met een simpel model (M1), dit model maakt goede en foute beslissingen
In een tweede iteratie: geef goed geclassificeerde cases meer gewicht en fit opnieuw een model (M2)
Ga zo door tot je de modellen M1, M2,….,MK hebt en neem als uiteindelijke model de (gewogen) meerderheids-vote van deze K modellen.
Pas onderstaande stappen een flink aantal keren toe.
Trek random N cases uit de data (met terug leggen, de bootstrap sample)
Als er P inputs zijn trek random m << P inputs uit de bootstrap sample.
Fit op de bootstrap sample met m inputs een tree (zonder pruning)
In geval van een classificatie tree:
De random forest predictie is de meerderheidsstem van alle trees
In geval van een regression tree:
De random forest predictie is het gemiddelde van alle trees
Rond 1995 geintroduceerd door Vladimir Vapnik
De punten op de maximale afstands lijnen zijn de support vectors, dit zijn er maar een paar.
Vind een lineaire decision boundary tussen twee lineair separabele groepen met maximale margin M. Dus groene lijn is beter dan blauwe lijn.
Indien de groepen niet lineair separabel zijn, moet je toestaan dat sommige punten aan de verkeerde kant liggen. Deze punten krijgen een straf. SVM maximaliseert nog steeds de margin M, maar met als restrictie dat de totale straf kleiner is dan een constante.
De wereld is niet lineair. We leggen een mapping naar een niet lineaire wereld. De inputs kunnen we transformeren bijvoorbeeld x2 , x3 , of spline(x).
Het mooie van SVM is dat in de berekeningen van de decision boundary deze transformaties niet expliciet berekend hoeven te worden.
Rond 1995 geintroduceerd door Vladimir Vapnik
De punten op de maximale afstands lijnen zijn de support vectors, dit zijn er maar een paar.
Vind een lineaire decision boundary tussen twee lineair separabele groepen met maximale margin M. Dus groene lijn is beter dan blauwe lijn.
Indien de groepen niet lineair separabel zijn, moet je toestaan dat sommige punten aan de verkeerde kant liggen. Deze punten krijgen een straf. SVM maximaliseert nog steeds de margin M, maar met als restrictie dat de totale straf kleiner is dan een constante.
De wereld is niet lineair. We leggen een mapping naar een niet lineaire wereld. De inputs kunnen we transformeren bijvoorbeeld x2 , x3 , of spline(x).
Het mooie van SVM is dat in de berekeningen van de decision boundary deze transformaties niet expliciet berekend hoeven te worden.
Rond 1995 geintroduceerd door Vladimir Vapnik
De punten op de maximale afstands lijnen zijn de support vectors, dit zijn er maar een paar.
Vind een lineaire decision boundary tussen twee lineair separabele groepen met maximale margin M. Dus groene lijn is beter dan blauwe lijn.
Indien de groepen niet lineair separabel zijn, moet je toestaan dat sommige punten aan de verkeerde kant liggen. Deze punten krijgen een straf. SVM maximaliseert nog steeds de margin M, maar met als restrictie dat de totale straf kleiner is dan een constante.
De wereld is niet lineair. We leggen een mapping naar een niet lineaire wereld. De inputs kunnen we transformeren bijvoorbeeld x2 , x3 , of spline(x).
Het mooie van SVM is dat in de berekeningen van de decision boundary deze transformaties niet expliciet berekend hoeven te worden.
binaire clasificatie 2 output nodes: Y en N
4 input variabelen 4 input nodes: X = (X1,..,X4)
1 hidden layer met 3 hidden nodes: Z = (Z1, Z2, Z3)
With Explicit rating
First Compute the difference between two items A and B: [ 2 + (-1) ] / 2 = 0.5; r_{LucyA} = 2+0.5 = 2.5
First Compute the difference between two items A and C: 3; r_{LucyC} = 5+3 = 8;
Weighted sum: r_{LucyA} = ( 2.5 * 2 + 8 ) / 3 = 4.33