L'écosystème tidymodels

Modéliser avec tidymodels en R

David Svancer

Data Scientist

Collection de packages de Machine Learning

Le package tidymodels

Modéliser avec tidymodels en R

Collection de packages de Machine Learning

Reéchantillonnage des données avec rsample

Modéliser avec tidymodels en R

Collection de packages de Machine Learning

Ingénierie des variables avec recipes

Modéliser avec tidymodels en R

Collection de packages de Machine Learning

Ajustement de modèles avec parnsip

Modéliser avec tidymodels en R

Collection de packages de Machine Learning

Optimisation du modèle avec tune et dials

Modéliser avec tidymodels en R

Collection de packages de Machine Learning

Évaluation du modèle avec yardstick

Modéliser avec tidymodels en R

Apprentissage supervisé

Branche du Machine Learning utilisant des données étiquetées pour ajuster un modèle

Régression

  • Prédire des résultats quantitatifs
    • Prix de vente d'un logement

 

Classification

  • Prédire des résultats catégoriels
    • Si un employé quittera l'entreprise
left_company miles_from_home salary
no 1 84500
yes 10 64820
no 5 76490
yes 19 68540

 

tidymodels rôles de variables

  • left_company est une variable de résultat
  • miles_from_home et salary sont des variables prédictives
Modéliser avec tidymodels en R

Rééchantillonnage des données

 

Créer des ensembles d'entraînement et de test

  • Évite le surapprentissage
  • Ratio courant : 75 % entraînement, 25 % test

Données d'entraînement

  • Ingénierie des variables
  • Ajustement et réglage du modèle

Données de test

  • Estimer la performance sur de nouvelles données

Créer les jeux d'entraînement et de test

Modéliser avec tidymodels en R

Données de consommation de carburant

Données de consommation de carburant de l'Environmental Protection Agency (États‑Unis)

  • La variable de résultat est hwy : consommation sur autoroute en miles par gallon (mpg)
mpg
# A tibble: 234 x 11
     hwy   cty displ   cyl manufacturer model       year trans      drv   fl    class  
   <int> <int> <dbl> <int> <chr>        <chr>      <int> <chr>      <chr> <chr> <chr>  
 1    29    18   1.8     4 audi         a4          1999 auto(l5)   f     p     compact
 2    29    21   1.8     4 audi         a4          1999 manual(m5) f     p     compact
 3    31    20   2       4 audi         a4          2008 manual(m6) f     p     compact
 4    30    21   2       4 audi         a4          2008 auto(av)   f     p     compact
 5    26    16   2.8     6 audi         a4          1999 auto(l5)   f     p     compact
# ... with 224 more rows
Modéliser avec tidymodels en R

Rééchantillonnage des données avec tidymodels

  • initial_split()

    • Spécifie comment créer les jeux d'entraînement et de test
    • prop définit la part allouée à l'entraînement
    • strata effectue une stratification selon la variable de résultat
  • Passer l'objet de découpe à la fonction training()

 

  • Passer l'objet de découpe à la fonction testing()
library(tidymodels)
mpg_split <- initial_split(mpg,
                           prop = 0.75,
                           strata = hwy)

 

mpg_training <- mpg_split %>%
  training()
mpg_test <- mpg_split %>%
  testing()
Modéliser avec tidymodels en R

Données de ventes immobilières

Ventes de logements dans la région de Seattle (Washington) entre 2015 et 2016

home_sales
# A tibble: 1,492 x 8
   selling_price home_age bedrooms bathrooms sqft_living sqft_lot sqft_basement floors
           <dbl>    <dbl>    <dbl>     <dbl>       <dbl>    <dbl>         <dbl>  <dbl>
 1        487000       10        4      2.5         2540     5001             0      2
 2        465000       10        3      2.25        1530     1245           480      2
 3        411000       18        2      2           1130     1148           330      2
 4        635000        4        3      2.5         3350     4007           800      2
 5        380000       24        5      2.5         2130     8428             0      2
# ... with 1,482 more rows
Modéliser avec tidymodels en R

Passons à la pratique !

Modéliser avec tidymodels en R

Preparing Video For Download...