Classification - Prediction Tot hiertoe: vooral classification Naive Bayes k-nearest Neighbours... Op basis van predictor variabelen X 1, X 2,..., X p klasse Y (= discreet) proberen te bepalen. Training data: om model te bouwen Validatie data: om accuraatheid model te testen confusion matrix
Nu: ook prediction k-nearest Neighbours Multiple Linear Regression... Op basis van predictor variabelen X 1, X 2,..., X p waarde van continue variabele Y proberen te voorspellen. Training data: om model te bouwen Validatie data: om accuraatheid model te testen numerieke maten Voor elke observatie i, prediction error (residu): e i = y i ŷ i met y i : de echte waarde ŷ i : de voorspelde waarde (door het model)
Numerieke maten voor accuraatheid prediction model MAE/MAED (Mean Absolute Error/Deviation) Average Error 1 n 1 n n i=1 e i n e i i=1 MAPE (Mean Absolute Percentage Error) 100% 1 n n i=1 e i y i RMSE (Root Mean Squared Error) 1 n n e 2 i i=1 TSSE Total Sum of Squared Erros n e 2 i i=1
Enkelvoudige lineaire regressie Op basis van 1 predictor variabele X de waarde van 1 continue output variabele Y proberen te voorspellen. Theoretisch model (populatie): Y = β 0 + β 1 X + ɛ met ɛ ruis, spreiding in Y. Veronderstellingen: spreiding in Y voor elke waarde van X hetzelfde (ɛ N(0, σ 2 )) = homoscedasticiteit prediction errors (residuen) onafhankelijk van elkaar Training data (v.b. 40% volledige dataset) coëfficiënten β 0 en β 1 schatten Y = b 0 + b 1 X parameter ɛ, spreiding in Y schatten Std. Dev. estimate in output
Hoe goed is gevonden model? afhankelijk van het doel! Doel analyse: beschrijving (typisch statistiek) goodness of fit berekenen op training data! R 2 (of R) berekenen hoe dichter bij 1 (of -1), hoe beter R-squared in output Doel analyse: voorspelling (typisch data mining) numerieke maten voor accuraatheid voorspelling (zie vorige slide) berekenen op validatie data! Validation Data scoring in output evenwicht zoeken tussen de twee voor data mining: vooral voorspellende kracht belangrijk
Wat bij een andere partitie? bijvoorbeeld verhouding 60%-40%, maar andere seed bijvoorbeeld andere verhouding, maar zelfde seed andere schattingen b 0 en b 1 voor β 0 en β1 hoe veel kan dit verschillen van partitie tot partitie? para- schattingen voor de spreiding in de meters van partitie tot partitie Std. Error in output bij Coefficient
Meervoudige lineaire regressie Op basis van meerdere predictor variabelen X 1, X 2,..., X p de waarde van 1 continue output variabele Y proberen te voorspellen. Theoretisch model (populatie): Y = β 0 + β 1 X 1 +... + β p X p + ɛ met ɛ ruis, spreiding in Y. Veronderstellingen: spreiding in Y voor elke waarde van X hetzelfde (ɛ N(0, σ 2 )) = homoscedasticiteit prediction errors (residuen) onafhankelijk van elkaar Training data (v.b. 40% volledige dataset) parameters β 0, β 1,..., β p schatten Y = b 0 + b 1 X 1 +... + b p X p parameter ɛ, spreiding in Y schatten Std. Dev. estimate in output
Welke predictor variabelen dragen echt bij tot de voorspelling? Welke coëfficiënten b 0, b 1,... b p zijn significant verschillend van 0? Het niet nul zijn van een coëfficiënt in het model kan toeval zijn! (bijvoorbeeld door de (toevallige) observaties in de training data) p-waarde berekenen p-waarde: kans om die waarde voor coëfficiënt toevallig bij het model in de training data te vinden als die coëfficiënt in de populatie nul is. Kleine p-waarde: coëfficiënt signifcant verschillend van nul, levert echte bijdrage tot de voorspelling p-value in output bij Coefficient
Optimaal aantal + keuze predictor variabelen? Te veel variabelen: kans op overfitting! eventueel weinig voorspellingskracht Liefst geen variabelen opnemen die geen bijdrage leveren tot de voorspelling. verhogen de spreiding in de voorspellingen Liefst geen variabelen vewijderen die wel echte bijdrage leveren tot de voorspelling. verhogen de gemiddelde fout in voorspellingen Opgelet voor predictor variabelen die onderling sterk gecorreleerd zijn! kan coëfficiënten vertekenen onderlinge correlaties opsporen ( matrix plot of correlation matrix ) Opgelet voor outliers! Vuistregel: aantal observaties n in training data minstens gelijk aan 5 (p + 2)
Methodes om de beste subset van predictor variabelen te kiezen eerst: met domeinkennis aantal predictor variabelen reeds reduceren daarna: algoritmes gebruiken Exhaustive search : alle subsets van predictor variabelen proberen Forward selection : starten met 1 predictor variabele, telkens de meest significante toevoegen Backward selection : starten met alle predictor variabelen, telkens de minst signifcante verwijderen...