From 3c335a34841befbbf16abceeec7822b55fb663ab Mon Sep 17 00:00:00 2001 From: lgaliana Date: Wed, 23 Oct 2024 13:43:28 +0000 Subject: [PATCH] begin --- content/modelisation/index.qmd | 54 +++++++++++++++++++++------------- 1 file changed, 33 insertions(+), 21 deletions(-) diff --git a/content/modelisation/index.qmd b/content/modelisation/index.qmd index 24cde01aa..20045f5f4 100644 --- a/content/modelisation/index.qmd +++ b/content/modelisation/index.qmd @@ -7,9 +7,11 @@ categories: - Modélisation description: | La facilité à modéliser des processus très diverses a grandement - participé au succès de `Python`. La librairie `scikit` offre une - grande variété de modèles et permet ainsi d'avoir un code - fonctionnel en très peu de temps. + participé au succès de `Python` dans les années 2010. La popularité de + `Python` est indissociable de l'essor du _machine learning_ comme technique + de modélisation. Cette partie vise à introduire aux problématiques spécifiques + en présentant principalement la librairie `Scikit Learn` qui permet d'avoir un + _pipeline_ de _machine learning_ opérationnel très rapidement. bibliography: ../../reference.bib image: https://minio.lab.sspcloud.fr/lgaliana/generative-art/pythonds/hal9000.png --- @@ -31,16 +33,40 @@ nettoyage et structuration des données mis en oeuvre en amont. La mise en oeuvre de modèles complexes, qui s'accomodent de données peu structurées, est gourmande en ressources et coûteuse. Ce ne sont donc qu'un nombre limité d'acteurs qui peuvent entraîner, _ex nihilo_, -des grands modèles de langage[^1], capables de dépenser au moins 300 000 dollars +des grands modèles de langage[^llm], capables de dépenser au moins 300 000 dollars dans l'entraînement d'un modèle, avant même toute phase d'inférence [@izsak2021train]. Ces besoins computationnels pour entraîner de grands modèles de langage sont d'ailleurs assez gourmands en énergie, ce qui peut amener à des empreintes carbones non négligeables [@strubell2019energy; @arcep2019]. +[^llm]: Nous reviendrons de manière épisodique +sur ce principe des grands modèles de langage +qui sont devenus, en quelques années, +centraux dans l'écosystème de la _data science_ mais sont également +amenés à devenir des outils grands publics, à la manière de `ChatGPT`. + Heureusement, il est possible de mettre en oeuvre des modélisations plus -légères (celles que nous présenterons dans les prochains chapitres) -ou de réutiliser des modèles pré-entraînés pour les spécialiser -sur un nouveau jeu de données (principe du [_fine tuning_](https://huggingface.co/docs/transformers/training)[^2]). +légères[^finetuning], celles que nous présenterons dans les prochains chapitres. +Cette partie du cours se concentrera principalement sur la présentation +d'algorithmes de _machine learning_ (apprentissage automatique en Français). On peut définir +ce terme de manière large comme un ensemble de techniques +permettant, à partir d'un ensemble d'observations, à des algorithmes de dégager des structures ou +régularités statistiques sans que celles-ci aient été définies _a priori_ par les modélisateurs. +Cette définition permet de distinguer cette approche d'autres champs de l'intelligence artificielle[^russel-norvig], +notamment les IA symboliques, où chaque observation est caractérisée à partir d'un ensemble de règles exhaustives et prédéfinies. +Bien que cette définition large permette d'englober la statistique inférentielle traditionnelle, elle permet néanmoins de comprendre la différence philosophique majeure entre l'approche par apprentissage automatique et l'économétrie comme nous allons pouvoir l'évoquer par la suite. + + + +[^russel-norvig]: @RN2020 définissent l'intelligence artificielle comme + + > « L'étude des agents [intelligents] qui reçoivent des préceptes de l'environnement et agissent. Chacun de ces agents est mis en œuvre par une fonction qui associe les perceptions aux actions, et nous couvrons différentes manières de de représenter ces fonctions, telles que les systèmes de production, les agents réactifs, les planificateurs logiques, les réseaux de neurones et les systèmes de gestion de l'information et les systèmes de théorie de la décision » + + +Le choix de se concentrer sur des algorithmes simples de _machine learning_ dans la partie modélisation +plutôt que d'aller directement aux réseaux de neurone, permet d'abord de +présenter la démarche scientifique liée à l'apprentissage, notamment pour obtenir des performances satisfaisantes lorsqu'on extrapole sur des données non rencontrées lors de la phase d'apprentissage. +Cela permet également de souligner des enjeux qui seront également valables pour des modèles plus complexes, par exemple la préparation des données permettant de réduire le bruit dans les données afin que les modèles puissent dégager des structures plus fiables dans les données. En fait, pour être plus pertinent que des approches plus parcimonieuses, les techniques de _deep learning_, notamment les réseaux de neurones, nécessitent soit des volumes de données très @@ -49,22 +75,8 @@ des données à la structure complexe comme le langage naturel ou les images. Dans de nombreux cas, des modèles plus simples comme les techniques d'apprentissage automatique (_machine learning_) suffisent largement. -[^1]: Nous reviendrons de manière épisodique -sur ce principe des grands modèles de langage -qui sont devenus, en quelques années, -centraux dans l'écosystème de la _data science_ mais sont également -amenés à devenir des outils grands publics, à la manière de `ChatGPT`. -[^2]: Historiquement, cette approche nécessitait de disposer de données labellisées donc d'être -dans un cadre d'apprentissage supervisé. - Cependant, avec l'utilisation de plus en plus -fréquente de données non structurées, sans _labels_, a émergé une approche intéressante -qui ne nécessite plus forcément de labelliser des volumes importants de données en amont : -le [_reinforcement learning with human feedback_](https://huggingface.co/blog/rlhf). - - [Cet article d'Andrew Ng](https://www.deeplearning.ai/the-batch/building-ai-systems-no-longer-requires-much-data/?ref=dl-staging-website.ghost.io) revient sur la manière dont cette approche -change la donne dans l'entraînement ou le ré-entraînement de modèles. ## La modélisation, une approche au coeur de la statistique {.unnumbered}