Arbres, forêts aléatoires et validation temporelle
Aurélien Nicosia
À la fin de la matinée
Vous saurez choisir entre une régression logistique, un arbre et une forêt sans utiliser le futur pour fabriquer le gagnant.
Une matinée, trois décisions
Protéger le futur
Choisir avant le test
Ouvrir le futur et décider
Chaque mission ajoute une règle, une preuve et une limite à la fiche finale.
Plus complexe signifie-t-il plus intelligent?
Votez: oui, non ou cela dépend.
Puis nommez la preuve qui pourrait vous faire changer d’avis.
Notre terrain: les demandes 311
Le fichier pédagogique contient 18 000 demandes créées en 2024.
Élément
Définition
Unité
une demande de service
Cible
non terminée dans les sept jours
Moment de prédiction
à la création de la demande
Usage pédagogique
comparer des probabilités futures
Une cible construite avec le futur
Pour savoir si une demande est terminée dans les sept jours, il faut observer ce qui arrive après sa création.
Cette information définit la réponse, mais elle n’est pas un prédicteur disponible au moment de la décision.
Construire la cible avec le futur est permis. Prédire avec ce futur serait une fuite.
Train, validation, test: trois rôles
Ensemble
Rôle
Règle
entraînement, janvier à septembre
apprendre le prétraitement et les paramètres
réutilisable pendant le développement
validation temporelle, dans janvier à septembre
comparer les candidats sur des mois suivants
guide le choix avant le test
test futur, octobre à décembre
estimer la performance après le choix
ouvert une seule fois
Si le test sert à choisir ou à régler le modèle, il devient une validation et ne confirme plus la performance finale.
Le futur ne ressemble pas exactement au passé
# A tibble: 4 × 4
ensemble verite n proportion
<chr> <chr> <int> <dbl>
1 Entraînement Non terminée 6326 0.441
2 Entraînement Terminée 8025 0.559
3 Test futur Non terminée 1446 0.396
4 Test futur Terminée 2203 0.604
La part non terminée passe de 44.1% à 39.6%.
Six prédicteurs disponibles à la création
Temps
Demande
Contexte
jour de la semaine
activité
type de lieu
plage horaire
arrondissement
provenance
Nous n’utilisons ni le statut futur, ni sa date, ni le délai final.
Trois candidats, trois compromis
Modèle
Force
Fragilité
Logistique
structure globale inspectable
formes à spécifier
Arbre
règles et interactions lisibles
instabilité
Forêt
flexibilité et agrégation
interprétation indirecte
Choisir un modèle est une décision
La performance ne suffit pas. Il faut aussi considérer:
la stabilité dans le temps;
l’interprétabilité requise;
le coût de calcul et de surveillance;
les conséquences des erreurs;
la calibration des probabilités.
La logistique impose une structure globale
Elle additionne des effets sur l’échelle de la log-cote, puis transforme le résultat en probabilité.
Elle peut être très performante si la structure choisie est suffisante.
Simple ne signifie ni naïf ni automatiquement stable dans le futur.
L’arbre pose des questions successives
flowchart TD
A["Toutes les demandes"] --> B{"Activité?"}
B -->|"Groupe 1"| C{"Arrondissement?"}
B -->|"Groupe 2"| D{"Provenance?"}
C --> E["Probabilité finale"]
C --> F["Probabilité finale"]
D --> G["Probabilité finale"]
D --> H["Probabilité finale"]
Une coupure recherche de l’homogénéité
À chaque noeud, l’algorithme compare des coupures candidates et retient celle qui sépare le mieux les réponses.
Le processus recommence dans chaque groupe obtenu.
Il s’arrête lorsque les règles de complexité l’imposent.
Une feuille produit une probabilité
Si une feuille contient 30 demandes, dont 18 non terminées en sept jours, la probabilité estimée est:
\[
18 / 30 = 0{,}60.
\]
Le seuil de classement est une décision supplémentaire.
Un arbre profond peut mémoriser
Arbre peu profond
Arbre très profond
règles grossières
règles très spécifiques
biais plus élevé
biais plus faible
variance plus faible
variance plus élevée
L’erreur d’entraînement récompense souvent une complexité qui échoue dans le futur.
Trois freins à la complexité
Paramètre
Question pratique
profondeur maximale
combien de questions successives?
taille minimale d’un noeud
combien de lignes avant de recouper?
pénalité de complexité
le gain justifie-t-il une branche?
La forêt perturbe et agrège
Pour chaque arbre:
rééchantillonner les observations;
proposer seulement quelques prédicteurs à chaque coupure;
construire l’arbre;
agréger les probabilités de 200 arbres.
Trois réglages de la forêt
Réglage
Valeur
Rôle
trees
200
taille de l’ensemble
mtry
4
prédicteurs candidats par coupure
min_n
30
taille minimale avant une coupure
Plus d’arbres stabilisent l’agrégation, mais ne corrigent pas un protocole biaisé.
L’importance prédictive répond à une question limitée
On permute les valeurs d’un prédicteur et on mesure la perte de performance.
Une grande perte signifie que le modèle utilisait cette information.
Elle ne donne ni le sens de l’association, ni un effet causal, ni une priorité de politique publique.
Flexibilité et variance forment un compromis
flowchart LR
A["Structure rigide"] --> B["Logistique"]
B --> C["Arbre contrôlé"]
C --> D["Forêt agrégée"]
D --> E["Structure flexible"]
La place sur cet axe ne détermine pas le gagnant. Le futur tranche.
Le test futur reste fermé
flowchart LR
A["Janvier à septembre"] --> B["Validation temporelle"]
B --> C["Choix écrit"]
C --> D["Octobre à décembre"]
D --> E["Confirmation unique"]
Pourquoi répéter la question « mois suivant »?
Une seule séparation peut être chanceuse ou défavorable.
Plusieurs fenêtres montrent:
la performance moyenne;
la variabilité entre périodes;
les mois difficiles;
la sensibilité du classement des modèles.
Cinq fenêtres temporelles
# A tibble: 5 × 3
pli apprentissage validation
<chr> <chr> <chr>
1 Slice1 2024-01-01 au 2024-04-30 2024-05-01 au 2024-05-31
2 Slice2 2024-02-01 au 2024-05-31 2024-06-01 au 2024-06-30
3 Slice3 2024-03-01 au 2024-06-30 2024-07-01 au 2024-07-31
4 Slice4 2024-04-01 au 2024-07-31 2024-08-01 au 2024-08-31
5 Slice5 2024-05-01 au 2024-08-31 2024-09-01 au 2024-09-30
Chaque modèle apprend sur quatre mois, puis prédit le mois suivant.
Pourquoi pas cinq plis aléatoires?
Plis aléatoires
Fenêtres temporelles
lignes contemporaines mélangées
passé vers mois suivant
question d’interpolation
question de déploiement futur
ignore l’ordre temporel
respecte l’ordre temporel
Les deux protocoles peuvent être valides, mais ils ne répondent pas à la même question.
Une recette commune évite un avantage caché
Les trois candidats reçoivent:
la même cible;
les mêmes prédicteurs;
les mêmes regroupements de catégories rares;
les mêmes fenêtres;
les mêmes mesures.
Le prétraitement doit apprendre dans chaque fenêtre
Problème
Traitement
catégorie jamais vue
niveau « Nouveau »
catégorie manquante
niveau « Non précisé »
catégorie très rare
regroupement « Autres »
prédicteur constant
retrait
La recette est réestimée sur chaque sous-ensemble d’apprentissage.
Trois mesures, trois questions
Mesure
Question
Sens favorable
aire ROC
classe-t-il bien deux demandes?
élevée
aire précision-rappel
repère-t-il l’événement positif?
élevée
Brier
les probabilités sont-elles proches des résultats?
faible
Le score de Brier regarde la probabilité
Pour une observation:
\[
(y - \widehat p)^2,
\]
où \(y = 1\) pour « non terminée » et \(\widehat p\) est la probabilité correspondante.
Une prédiction confiante et fausse est fortement pénalisée.