Généralisation du modèle : bootstrap et validation croisée

S'exercer aux questions d'entrevue en Machine Learning avec Python

Lisa Stuart

Data Scientist

Aperçu du chapitre 4

  • Bootstrap/validation croisée --> généralisation du modèle
  • Classes déséquilibrées
  • Variables corrélées
  • Sélection de modèle d'ensemble
S'exercer aux questions d'entrevue en Machine Learning avec Python

Généralisation du modèle

  • Capacité d'un modèle de ML à bien performer sur des données inédites
    • ensemble de test
    • données futures
  • Mesures d'entraînement $\approx$ mesures de test
  • Les modèles surajustés ne généralisent pas
S'exercer aux questions d'entrevue en Machine Learning avec Python

Arbre de décision

Graphique d'arbre de décision

1 https://medium.com/@rnbrown/creating-and-visualizing-decision-trees-with-python-f8e8fa394176
S'exercer aux questions d'entrevue en Machine Learning avec Python

Nœuds d'arbre de décision

Nœud racine d'un arbre de décision

S'exercer aux questions d'entrevue en Machine Learning avec Python

Avantages vs inconvénients

Graphique d'arbre de décision

  • Avantages :
    • Facile à comprendre
    • Facile à visualiser
  • Inconvénients :
    • Surajustement facile
    • Considéré comme « glouton »
    • Biaisé en cas de déséquilibre des classes
S'exercer aux questions d'entrevue en Machine Learning avec Python

Random Forest

Forêt aléatoire

1 https://www.researchgate.net/figure/Random-Forest-visualization_fig11_326560291
S'exercer aux questions d'entrevue en Machine Learning avec Python

Validation croisée en k volets

Validation croisée en k volets

1 https://scikit-learn.org/stable/modules/cross_validation.html
S'exercer aux questions d'entrevue en Machine Learning avec Python

Fonctions

# decision tree
`sklearn.tree.DecisionTreeClassifier` 

# random forest 
`sklearn.ensemble.RandomForestClassifier`

# cross-validated grid search
`sklearn.model_selection.GridSearchCV` 

# model accuracy
`sklearn.metrics.accuracy_score` 

# train/test split function
`sklearn.model_selection.train_test_split`

# Parameters that gave best results
`cross-val_model.best_params_`

# Mean cross-validated score of 
# estimator with best params 
`cross-val_model.best_score_`
S'exercer aux questions d'entrevue en Machine Learning avec Python

GridSearchCV vs RandomSearchCV

Recherche par grille

S'exercer aux questions d'entrevue en Machine Learning avec Python

Passons à la pratique !

S'exercer aux questions d'entrevue en Machine Learning avec Python

Preparing Video For Download...