Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Chapitre 3 : l’apprentissage automatique classique en géosciences

Ce chapitre couvre le machine learning classique (apprentissage automatique classique, CML) pour les géosciences : des modèles qui apprennent à partir de tables de caractéristiques (features) plutôt que de formes d’onde ou d’images brutes. L’apprentissage automatique classique est rapide à construire, peu coûteux à exécuter et facile à interroger. C’est donc le bon endroit pour acquérir les habitudes qui se transposent à l’apprentissage profond : les modèles de référence (baselines), les découpages honnêtes des données, et une évaluation qui correspond à l’usage réel du modèle.

Le parcours du chapitre

  1. Concepts (3.1) — la taxonomie de la supervision de l’entraînement : apprentissage supervisé, non supervisé, semi-supervisé, auto-supervisé, par renforcement et actif, et où chacun apparaît en géosciences.
  2. Classification et régression (3.2) — les deux types de problèmes supervisés, un premier flux de travail de bout en bout, et le découpage entraînement/validation/test.
  3. Partitionnement (3.3) — la découverte de structure non supervisée : métriques de distance, un k-means écrit à la main, diagnostics de silhouette et du coude, partitionnement hiérarchique, et un exercice sur la sismicité volcanique.
  4. Classification binaire (3.4) — la détection événement contre bruit, la comparaison de classifieurs, les métriques qui comptent quand les classes sont déséquilibrées (précision, rappel, courbes précision-rappel contre ROC), et deux leviers pour traiter le déséquilibre (pondération des classes, déplacement du seuil).
  5. Classification multiclasse (3.5) — quatre types de sources sismiques, matrices de confusion par classe, ROC un-contre-tous, et l’exercice du classement (leaderboard) de la promotion.
  6. La régression logistique à la main (3.6) — la leçon où la boîte noire s’ouvre : la fonction de perte, la descente de gradient, la différentiation automatique avec PyTorch, et un contrôle de calibration — diagrammes de fiabilité et score de Brier — sur les probabilités prédites.
  7. Arbres, forêts et boosting (3.7) — arbres de décision, régression par forêt aléatoire, importance des caractéristiques et ses pièges (importance par permutation, dépendance partielle, caractéristiques corrélées), et le gradient boosting (renforcement par gradient) comme choix par défaut moderne sur données tabulaires.
  8. Entraînement robuste (3.8) — la validation croisée pour données corrélées : pourquoi les découpages aléatoires mentent sur les séries autocorrélées ; découpages temporels, par groupes (site, événement) et spatiaux par laisser-un-groupe-dehors (leave-cluster-out) ; StratifiedGroupKFold pour les petites collections de cas déséquilibrées ; modèles de référence par persistance et intervalles de confiance bootstrap sur les scores.
  9. Apprentissage ensembliste (3.9) — vote, bagging, boosting et stacking (empilement), avec la dispersion des votes de l’ensemble comme première estimation de l’incertitude épistémique et le rappel par classe dans la comparaison des modèles.
  10. Ce qu’il est advenu de l’AutoML (3.10) — une brève histoire de la recherche automatique de modèles, les morceaux qui ont survécu (optimisation d’hyperparamètres avec Optuna, bons réglages par défaut du gradient boosting), et un exercice d’évaluation critique d’un code de modélisation généré par l’IA.

La réduction de dimension (PCA, t-SNE) est traitée au chapitre 2.12 et sert ici d’étape de prétraitement — elle n’est pas réenseignée.

Le fil de l’évaluation honnête

Une même discipline traverse tous les carnets de ce chapitre :

La leçon 3.5 met cette discipline en pratique avec un classement (leaderboard) de la promotion : les étudiants entraînent le classifieur de leur choix sur un découpage canonique d’un jeu réel de sources sismiques, soumettent leurs prédictions par pull request, et sont notés par l’intégration continue sur l’ensemble de test public comme sur l’ensemble de test caché.

Outils

Le chapitre utilise scikit-learn comme outil principal, lightgbm et le gradient boosting par histogrammes de scikit-learn pour les arbres boostés, optuna pour la recherche d’hyperparamètres, et pytorch en 3.6 pour introduire la différentiation automatique. Les jeux de données du cours proviennent du paquet mlgeo_synth (générateurs synthétiques à motivation physique), du dépôt de données du cours, et d’une archive Zenodo organisée d’événements sismiques du Nord-Ouest Pacifique.

Objectifs d’apprentissage

À la fin de ce chapitre, vous saurez :

Devoirs