Aller au contenu

~/teaching · machine learning · séance 8, vendredi 12 février 2027

Du réseau de neurones au modèle en service : rétropropagation, dérive, prédiction conforme et API

Un réseau calculé à la main, puis les questions qu'un modèle rencontre une fois sorti du notebook.

Résumé

Ce deck clôt la partie modélisation du cours de Machine Learning de Centrale Méditerranée (option DDEFI, 2026-2027). Le matin ouvre la dernière famille de modèles du cours, le réseau de neurones : une passe avant et une passe arrière calculées nombre par nombre sur des réseaux assez petits pour tenir au tableau, les réflexes d'entraînement (mini-lots, Adam, initialisation, arrêt précoce), puis la question honnête : un réseau sert-il à quelque chose sur une table de crédit où le boosting est déjà fort ?

L'après-midi quitte le notebook. Un modèle mis en service vieillit : on mesure la dérive avec l'indice de stabilité de la population et la statistique de Kolmogorov-Smirnov, et on écrit un plan de surveillance ; on autorise le modèle à dire « je ne sais pas » grâce à la prédiction conforme ; on traduit un seuil de décision en euros par an pour un lecteur qui n'ouvrira jamais le rapport ; on lit l'AI Act en ingénieur ; et on place le modèle derrière un petit service FastAPI, avec des tests et une latence mesurée.

La page s'adresse aux élèves ingénieurs et aux étudiants en finance, et aux praticiens qui veulent la mécanique sans l'emphase. À la fin, vous savez refaire un pas de rétropropagation sur papier, calculer un PSI et une marge conforme, dimensionner un test A/B pour une politique de crédit et dresser la liste de ce qu'un régulateur demandera à un score de crédit.

Les slides

Réseaux de neurones, dérive, conformité, mise en service

Séance 8, vendredi 12 février 2027. Machine Learning, Centrale Méditerranée, option DDEFI, 2026-2027.

Ouvrir les slides (mot de passe donné par l'enseignant)

Le deck lui-même est chiffré pour les élèves du cours ; cette page le résume pour tous.

La page du cours · L'attention et le transformer, pas à pas

Plan du deck

  1. Le réseau de neurones. Du perceptron de Rosenblatt au réseau 2-2-1, les activations et leurs dérivées, la passe avant, la rétropropagation et les réflexes d'entraînement qui la font marcher.
  2. Les réseaux sur données tabulaires. Pourquoi les arbres gagnent encore sur les tables moyennes, quand un réseau mérite sa place, plongements, mise à l'échelle et entrée dans la comparaison existante.
  3. La dérive et la surveillance. Trois façons de dériver, l'exemple Bike Sharing, PSI et Kolmogorov-Smirnov, étiquettes tardives, alarmes avec un responsable, politiques de réentraînement.
  4. La prédiction conforme. La version découpée en quatre étapes, un exemple à neuf scores, l'origine de la garantie, ses limites et les ensembles de prédiction pour le crédit.
  5. Le mémo client en euros. Le coût attendu d'un seuil, le gain par dossier et par an, la sensibilité aux hypothèses de coût, et la taille du test A/B qui vérifie la promesse.
  6. Atelier AI Act. Pourquoi un score de crédit est un système à haut risque, les autres textes déjà applicables, et l'analyse d'écart des articles 9 à 15 face au dépôt du projet.
  7. L'API FastAPI. Trois routes, un contrat d'entrée, un test de propriété, un test qui vérifie que le modèle servi est celui évalué, et des percentiles de latence.

Un réseau, c'est un empilement de régressions logistiques

Chaque neurone pondère ses entrées, les additionne et plie le résultat, puis le dernier neurone transforme le tout en probabilité de défaut.

Le deck part du perceptron de Rosenblatt (1958) : une somme pondérée des entrées, un biais, un seuil dur, et une règle de correction qui ne bouge les poids que lorsque la prédiction est fausse. Sa frontière est toujours une droite (un hyperplan), d'où son incapacité à apprendre le « ou exclusif », que Minsky et Papert ont soulignée en 1969. Une couche cachée lève l'obstacle : chaque neurone caché fabrique une nouvelle variable, et le neurone de sortie lit ces variables au lieu des colonnes brutes.

h=ReLU(W1x+b1),p=σ(w2Th+b2)h = \mathrm{ReLU}(W_1 x + b_1), \qquad p = \sigma(w_2^{\T} h + b_2)
(1)

La couche de sortie n'a rien de neuf : c'est la régression logistique du maximum de vraisemblance, avec la même log-loss. Sans couche cachée, une sortie sigmoïde entraînée sur la log-loss est une régression logistique. Le deck passe en revue chaque fonction d'activation (activation function) usuelle (sigmoïde, tangente hyperbolique, ReLU et ses variantes, softmax pour plusieurs classes) avec sa dérivée, car c'est la dérivée qui décide si le gradient passe. ReLU est devenue le choix par défaut des couches cachées (Nair et Hinton, 2010) parce que sa pente vaut exactement 1 dès que le neurone est actif.

L=−[yln⁡p+(1−y)ln⁡(1−p)],∂L∂z2=p−yL = -\big[y \ln p + (1-y)\ln(1-p)\big], \qquad \frac{\partial L}{\partial z_2} = p - y
(2)

Exemple chiffré : un réseau 1-1-1

Une entrée, un neurone caché ReLU, une sortie sigmoïde, quatre paramètres : w1=0.5w_1 = 0.5, b1=0b_1 = 0, w2=1w_2 = 1, b2=−1b_2 = -1. Le client a x=2x = 2 et a fait défaut, y=1y = 1. La passe avant (forward pass) garde chaque valeur intermédiaire, car la passe arrière en aura besoin.

Tableau 1 : Passe avant du réseau 1-1-1 pour un client qui a fait défaut.
QuantitéCalculValeur
z1z_10.5×2+00.5 \times 2 + 01
hhmax⁡(0,1)\max(0, 1)1
z2z_21×1−11 \times 1 - 10
ppσ(0)\sigma(0)0,5
LL−ln⁡0.5-\ln 0.50,693

Le réseau est parfaitement indécis face à un client qui a bel et bien fait défaut : sa perte est celle d'un pile ou face. Le deck refait le même exercice sur un réseau 2-2-1 à neuf paramètres, où un neurone caché s'allume et l'autre est éteint par la ReLU, et vérifie chaque nombre avec PyTorch.

Retour au sommaire.

La rétropropagation, c'est la dérivation en chaîne dans le bon ordre

On ramène l'erreur de la sortie vers les entrées en la multipliant par la pente de chaque étape, et chaque poids apprend dans quel sens bouger.

La rétropropagation (backpropagation), popularisée pour les réseaux par Rumelhart, Hinton et Williams en 1986, part de l'erreur en sortie, p−yp - y, et remonte le réseau. À chaque boîte, elle multiplie par la dérivée locale : le poids de sortie pour descendre dans la couche cachée, puis la pente de l'activation, qui vaut pour ReLU 1 si le neurone était actif et 0 sinon. Pour obtenir le gradient d'un poids, on prend l'erreur parvenue jusqu'à lui et on la multiplie par la valeur qu'il a reçue en entrée.

δj=(p−y) w2,j 1{z1,j>0},∂L∂W1,jk=δj xk,∂L∂w2,j=(p−y) hj\delta_j = (p - y)\, w_{2,j}\, \mathbf{1}\{z_{1,j} > 0\}, \qquad \frac{\partial L}{\partial W_{1,jk}} = \delta_j\, x_k, \qquad \frac{\partial L}{\partial w_{2,j}} = (p - y)\, h_j
(3)

L'exemple 1-1-1 à rebours, puis un pas avec η=0.1\eta = 0.1

  1. Sortie. p−y=0.5−1=−0.5p - y = 0.5 - 1 = -0.5, donc ∂L/∂b2=−0.5\partial L/\partial b_2 = -0.5 et ∂L/∂w2=−0.5×h=−0.5\partial L/\partial w_2 = -0.5 \times h = -0.5.
  2. Couche cachée. On multiplie par w2=1w_2 = 1 et par la pente de la ReLU, 1 puisque z1=1>0z_1 = 1 > 0 : ∂L/∂z1=−0.5\partial L/\partial z_1 = -0.5, d'où ∂L/∂b1=−0.5\partial L/\partial b_1 = -0.5 et ∂L/∂w1=−0.5×2=−1\partial L/\partial w_1 = -0.5 \times 2 = -1.
  3. Pas. On retranche 0,1 fois chaque gradient : w1=0.6w_1 = 0.6, b1=0.05b_1 = 0.05, w2=1.05w_2 = 1.05, b2=−0.95b_2 = -0.95.
  4. Vérification. Nouvelle passe avant : z1=1.25z_1 = 1.25, z2=0.3625z_2 = 0.3625, pp monte de 0,5 à 0,590 et la perte descend de 0,693 à 0,528.

Pourquoi ne pas simplement perturber chaque poids et mesurer l'effet ? Pour le réseau de crédit 23-64-1 du projet (1 601 paramètres), les différences finies demandent 1 602 passes avant par gradient ; la rétropropagation demande une passe avant et une passe arrière, quel que soit le nombre de paramètres. C'est ce rapport qui rend l'entraînement des réseaux possible. Les différences finies gardent un rôle : vérifier un gradient écrit à la main sur quelques poids.

Remarque (Réflexes d'entraînement). Mini-lots (200 lignes par défaut dans scikit-learn) et époques ; Adam comme solveur par défaut ; initialisation aléatoire à l'échelle de Glorot ou de He, jamais tout à zéro, sinon les neurones cachés restent des jumeaux ; arrêt précoce (early stopping) sur une tranche de validation prise dans les données d'entraînement. La perte d'un réseau n'est pas convexe, donc le résultat dépend de la graine : on rapporte la moyenne et la dispersion sur plusieurs graines, jamais la meilleure.

Retour au sommaire.

Sur une table de crédit, le réseau est un challenger, pas un favori

Sur des tables ordinaires de quelques milliers de lignes, les ensembles d'arbres battent en général les réseaux, qui doivent donc gagner leur place dans la même comparaison que les autres.

Le deck s'appuie sur Grinsztajn, Oyallon et Varoquaux (NeurIPS 2022) : sur 45 jeux de données tabulaires de taille moyenne, forêts aléatoires et gradient boosting restent devant les réseaux, même après un réglage généreux. Leurs trois raisons méritent d'être retenues. Les réseaux préfèrent les fonctions lisses alors que les cibles tabulaires ont des marches ; les colonnes inutiles les gênent, quand un arbre les ignore ; et ils mélangent toutes les colonnes, alors que dans une table chaque colonne a un sens propre, que l'arbre respecte en coupant un axe à la fois. Le jeu de crédit du cours, 30 000 lignes et 23 colonnes, est exactement dans ce régime.

  • Un réseau a sa chance avec des variables catégorielles à des centaines ou des milliers de modalités, grâce au plongement (embedding) appris (Guo et Berkhahn, 2016) : un petit vecteur par modalité, réglé par rétropropagation comme n'importe quel poids.
  • Il aide aussi quand la table s'accompagne de texte, d'images ou de séquences, quand les lignes sont bien plus nombreuses, ou au sein d'un ensemble avec le boosting, car ses erreurs sont peu corrélées à celles des arbres.
  • La mise à l'échelle est obligatoire : l'arbre ignore les unités, le réseau non. On standardise, on dompte les montants à queue lourde par quantiles ou logarithme signé, et on ajuste chaque transformation dans le Pipeline, sur la partie entraînement de chaque pli.

La méthode ne change pas parce que le modèle est nouveau. Le perceptron multicouche (multilayer perceptron, MLP) entre dans la comparaison existante comme une ligne de plus, sur les mêmes plis et les mêmes graines que le boosting et les forêts aléatoires, avec ses hyperparamètres réglés dans la boucle interne et la règle du champion fixée d'avance. Si le réseau ne gagne pas, c'est un résultat, et c'est celui que la littérature annonce.

Retour au sommaire.

La dérive : le monde bouge, le modèle reste figé

Un modèle en service a appris une photographie du passé ; la surveillance compare les données du jour à cette photographie et dit qui agit quand l'écart devient trop grand.

Écrire la loi jointe P(X,Y)=P(Y∣X) P(X)P(X, Y) = P(Y \mid X)\,P(X) sépare trois cas de dérive des données (data drift). Dérive des covariables : les clients entrants changent (plus jeunes après une campagne) mais le risque à profil donné ne change pas. Dérive de la cible : le taux de défaut lui-même bouge, en récession par exemple, ce qui décale la calibration et le seuil fondé sur les coûts. Dérive de concept : la relation entre profil et risque change, et aucune statistique sur les seules entrées ne la voit ; il faut les étiquettes. Le deck montre la mécanique sur les données Bike Sharing de l'UCI (Washington, 2011 et 2012), où les saisons déplacent la température et la croissance du service déplace la cible, puis la transpose au crédit.

PSI=∑i=1K(ai−ei) ln⁡aiei=KL(a ∥ e)+KL(e ∥ a)\mathrm{PSI} = \sum_{i=1}^{K} (a_i - e_i)\,\ln\frac{a_i}{e_i} = \mathrm{KL}(a \,\|\, e) + \mathrm{KL}(e \,\|\, a)
(4)

L'indice de stabilité de la population (population stability index, PSI) découpe une variable en classes sur la période de référence, compare la part eie_i de chaque classe dans la référence à sa part aia_i dans le mois courant, et fait la somme. Chaque terme est positif ou nul, donc l'indice n'est nul que pour deux histogrammes identiques. La lecture d'usage en scoring de crédit (Siddiqi, 2006) : sous 0,1 stable, de 0,1 à 0,25 à surveiller, au-dessus de 0,25 agir ; ce sont des habitudes du métier, pas des résultats statistiques, et un plan de surveillance doit justifier les siens.

Tableau 2 : PSI à quatre classes et référence uniforme, ei=0.25e_i = 0.25 dans chaque classe : la masse a glissé vers les classes hautes.
ClasseMois aia_iai−eia_i - e_iln⁡(ai/ei)\ln(a_i/e_i)Terme
10,10−0,15−0,9160,137
20,20−0,05−0,2230,011
30,30+0,050,1820,009
40,40+0,150,4700,071
PSI0,228

Un PSI de 0,228 tombe dans la zone à surveiller, juste sous le seuil d'action. Une classe vide rend un terme infini : on met un plancher sur les parts à une petite valeur, et le plan le dit. La statistique de Kolmogorov-Smirnov à deux échantillons, le plus grand écart entre les deux fonctions de répartition, la complète sans classes ; sur de grands échantillons sa p-valeur est presque toujours minuscule, d'où le choix du deck de lire l'écart lui-même.

  • Les indicateurs sur les entrées et sur le score sont disponibles le jour même ; la performance (AUC, calibration, taux de défaut par cohorte) seulement quand la cohorte a mûri, des mois plus tard pour un prêt. Deux tableaux de bord, deux rythmes.
  • Chaque indicateur reçoit un seuil, une action et un responsable, sinon ce n'est pas de la surveillance.
  • On réentraîne à date fixe, sur alarme, ou avec un challenger qui tourne à côté du champion ; dans tous les cas, un modèle réentraîné est un nouveau modèle, revalidé, et l'ancien reste prêt pour un retour arrière.

Retour au sommaire.

La prédiction conforme : un intervalle avec une promesse

Au lieu d'un seul nombre, le modèle donne une fourchette qui contient la vraie valeur au moins neuf fois sur dix, quel que soit le modèle, tant que les données de demain ressemblent à celles d'aujourd'hui.

La prédiction conforme (conformal prediction) découpée, en quatre étapes (Papadopoulos et al., 2002 ; Lei et al., 2018)

  1. Découper. Garder une tranche de calibration de nn lignes que le modèle ne voit jamais.
  2. Entraîner. Ajuster le modèle sur le reste, comme d'habitude ; n'importe quel modèle convient.
  3. Noter. Sur chaque ligne de calibration, calculer un score de non-conformité (nonconformity score), en régression le résidu absolu : plus il est grand, plus la ligne surprend le modèle.
  4. Quantile. Prendre le ⌈(n+1)(1−α)⌉\lceil (n+1)(1-\alpha) \rceil-ième plus petit score comme marge q^\hat q, et renvoyer la prédiction plus ou moins q^\hat q.
C(x)=[y^(x)−q^, y^(x)+q^],1−α≤P(Y∈C(X))<1−α+1n+1C(x) = \big[\hat y(x) - \hat q,\ \hat y(x) + \hat q\big], \qquad 1 - \alpha \le \mathbb{P}\big(Y \in C(X)\big) < 1 - \alpha + \frac{1}{n+1}
(5)

Exemple chiffré. Neuf résidus de calibration, rangés par ordre croissant : 0,1 ; 0,3 ; 0,5 ; 0,8 ; 1,2 ; 1,4 ; 1,9 ; 2,5 et 3,0, pour une couverture (coverage) visée de 80 %, soit α=0.2\alpha = 0.2. Le rang vaut ⌈10×0.8⌉=8\lceil 10 \times 0.8 \rceil = 8, et le huitième plus petit résidu est 2,5, et l'intervalle est la prédiction plus ou moins 2,5. La garantie ne vient que de l'échangeabilité (exchangeability) : le nouveau score a autant de chances d'occuper chacun des dix rangs parmi les dix scores, et il est couvert s'il tombe dans les huit premiers, d'où une couverture d'exactement 8/10. Le deck montre aussi le piège : avec neuf scores et α=0.05\alpha = 0.05, le rang serait 10, il n'y a pas de dixième score et l'intervalle devient infini.

La promesse est marginale : en moyenne sur les futurs clients, pas pour chaque sous-groupe. La couverture peut être haute pour les clients sans retard et faible pour ceux en retard tout en respectant la cible en moyenne, ce qui renvoie à l'audit d'équité ; calibrer groupe par groupe (version dite de Mondrian) aide si chaque groupe a assez de lignes. Un modèle faible garde une couverture honnête, mais avec des intervalles larges. Et la dérive casse l'échangeabilité, donc la garantie avec elle.

Pour le crédit, la même idée donne des ensembles de prédiction. Le score vaut un moins la probabilité de la vraie classe ; un nouveau client garde toutes les classes dont le score est sous q^\hat q. Un ensemble réduit à « pas de défaut » veut dire accorder, réduit à « défaut » veut dire refuser, et les deux classes à la fois veulent dire « je ne sais pas » : le dossier part chez un humain, et le taux d'abstention devient un indicateur surveillé.

Retour au sommaire.

Mettre le modèle en euros

Un seuil vaut ce qu'il fait économiser par rapport à ne rien faire, ramené à un chiffre par an qu'un décideur peut signer.

C(t)=cFP FP(t)+cFN FN(t),Δ(t)=Cno model−C(t)C(t) = c_{FP}\,FP(t) + c_{FN}\,FN(t), \qquad \Delta(t) = C_{\text{no model}} - C(t)
(6)

Le deck reprend les coûts illustratifs de la séance sur le seuil : 600 € de marge perdue pour un bon client refusé, 4 500 € de perte attendue pour un défaut accepté sur un prêt de 10 000 €. Ce sont des hypothèses de cours, et le mémo doit l'écrire.

Tableau 3 : Chiffres illustratifs : 10 000 dossiers dont 200 défauts.
PolitiqueFaux positifsFaux négatifsCoût
Tout accepter0200900 000 €
Seuil fondé sur les coûts, environ 0,1280050705 000 €
Gain195 000 €

Cela fait 19,50 € par dossier ; avec une hypothèse de 50 000 dossiers par an, 975 000 €. Le mémo montre ensuite ce qui fait bouger le chiffre : si un défaut coûte 20 % de moins, le gain au même seuil tombe à 60 000 € pour 10 000 dossiers, une hypothèse moins favorable qui divise le résultat par plus de trois. La référence compte autant que le modèle : si la banque a déjà une règle, le gain se mesure contre cette règle, pas contre « tout accepter ».

Un chiffre de mémo est une promesse, et un test A/B la vérifie. Pour détecter une baisse du taux de défaut des prêts accordés de 10 % à 8 % (taux illustratifs) avec un risque de première espèce de 5 % et une puissance de 80 %, la formule de comparaison de deux proportions donne 3 211 dossiers accordés par bras. Viser un écart deux fois plus petit multiplie la taille par quatre, et comme les défauts apparaissent des mois après le prêt, le test dure des mois. Le mémo tient sur une page en cinq blocs : la décision demandée, le gain par an, les hypothèses, la façon de le vérifier et ce qui peut mal tourner, sans aucun sigle inexpliqué.

Retour au sommaire.

L'AI Act, puis le modèle derrière une API

Un score de crédit est un système à haut risque au sens du droit européen, et le servir demande un contrat d'entrée strict, une trace de chaque décision et des tests prouvant que le modèle servi est celui qu'on a évalué.

Le règlement (UE) 2024/1689 range parmi les systèmes à haut risque, à l'annexe III point 5 b), ceux qui évaluent la solvabilité des personnes physiques, hors détection de fraude. Il est entré en vigueur le 1er août 2024 ; le deck note que la date d'application des obligations de l'annexe III a été repoussée par un règlement modificatif de 2026, et insiste pour revenir à EUR-Lex pour la rédaction en vigueur plutôt que recopier une date sur une diapositive. D'autres textes s'appliquent déjà : l'article 22 du RGPD sur les décisions entièrement automatisées (arrêt SCHUFA de la CJUE, C-634/21, décembre 2023), les obligations du déployeur aux articles 26 et 27 de l'AI Act, et la directive (UE) 2023/2225 sur le crédit aux consommateurs.

L'atelier est une analyse d'écart (gap analysis) : pour chacun des articles 9 à 15 (gestion des risques, gouvernance des données, documentation technique, journalisation, transparence, contrôle humain, exactitude et robustesse), quel fichier du projet y répond, et s'il est couvert, partiel ou manquant. Écrire honnêtement « manquant » est la réponse attendue d'un dépôt de cours. Voir aussi la séance gouvernance du cours Data Analytics.

  • GET /health dit aux opérations que le service vit ; POST /predict renvoie la probabilité, l'ensemble conforme et la décision ; GET /model-info dit à l'auditeur quelle version, quel tag git, quelle empreinte des données et quel seuil ont produit la décision.
  • Un schéma pydantic sert de contrat d'entrée : un type et un domaine par variable, tirés de la fiche de données. Un âge de 250 ans est rejeté avec un code 422 avant d'atteindre le modèle.
  • Un test de propriété (property-based test) avec Hypothesis vérifie une loi sur des centaines de clients générés, ici qu'un mois de retard en plus ne fait jamais baisser le risque prédit ; le boosting n'est pas monotone par construction, sauf si on le lui demande.
  • Deux tests ferment le bug le plus courant d'une mise en service : le modèle rechargé prédit exactement comme le modèle entraîné, et l'API renvoie la même probabilité que le modèle appelé directement.
  • La latence se mesure, elle ne se déclare pas : p50 et p95 sur mille appels, notés dans la fiche du modèle avec la machine et les versions des bibliothèques.

Retour au sommaire.

À retenir

  1. Un réseau de neurones est une régression logistique posée sur des variables que ses couches cachées apprennent ; le gradient en sortie vaut simplement p−yp - y.
  2. La rétropropagation applique la dérivation en chaîne de la sortie vers l'entrée en réutilisant chaque produit ; elle coûte environ deux passes, quel que soit le nombre de poids.
  3. Sur des tables de taille moyenne, le boosting gagne en général ; le réseau entre dans la même comparaison, avec les mêmes plis, graines et règle du champion.
  4. La dérive se mesure tout de suite sur les entrées et seulement plus tard sur la performance, quand les étiquettes mûrissent ; chaque indicateur a un seuil, une action et un responsable.
  5. La prédiction conforme découpée donne une garantie de couverture à échantillon fini pour n'importe quel modèle, marginale sur les clients et caduque dès que les données dérivent.
  6. La valeur d'un modèle est un écart de coût contre une référence explicite, ramené à un chiffre par an avec sa sensibilité, puis vérifié par un test A/B.
  7. Un modèle servi est un contrat : entrées validées, version traçable, tests d'égalité avec le modèle évalué, latence mesurée.

Glossaire

passe avant (forward pass)
Le calcul couche par couche, des entrées jusqu'à la perte, en gardant chaque valeur intermédiaire pour la passe arrière.
rétropropagation (backpropagation)
Le calcul de tous les gradients de la perte par dérivation en chaîne, de la sortie vers les entrées.
fonction d'activation (activation function)
La fonction non linéaire appliquée à la somme pondérée d'un neurone : sigmoïde, tanh, ReLU, softmax.
perceptron multicouche (multilayer perceptron, MLP)
Un réseau de couches entièrement connectées ; dans scikit-learn, MLPClassifier.
arrêt précoce (early stopping)
Arrêter l'entraînement quand la perte sur une tranche de validation cesse de baisser, et garder les meilleurs poids.
plongement (embedding)
Un vecteur appris par modalité d'une variable catégorielle, réglé par rétropropagation avec les autres poids.
dérive des données (data drift)
Un changement, après la mise en service, des entrées, du taux de la cible ou de la relation entre les deux.
indice de stabilité de la population (population stability index, PSI)
Une divergence par classes entre une distribution de référence et une distribution courante, somme de deux divergences de Kullback-Leibler.
prédiction conforme (conformal prediction)
Une méthode qui transforme n'importe quel prédicteur en intervalles ou ensembles à couverture garantie sous échangeabilité.
couverture (coverage)
La probabilité que l'intervalle ou l'ensemble contienne la vraie valeur.
score de non-conformité (nonconformity score)
La mesure de la surprise du modèle face à un exemple, par exemple le résidu absolu ou un moins la probabilité de la vraie classe.
échangeabilité (exchangeability)
L'hypothèse que l'ordre des observations n'a pas d'importance ; la dérive la casse.
analyse d'écart (gap analysis)
Un tableau des exigences du règlement face aux documents qui y répondent, avec un statut pour chacune.
test de propriété (property-based test)
Un test qui vérifie une loi sur de nombreuses entrées générées plutôt que sur un seul exemple.

Les autres fiches du cours

Un résumé public par deck, dans l'ordre du cours.

  1. IntroductionHivers de l'IA, emploi et méthode
  2. OutilsKaggle, GitHub, Python : les outils
  3. Séance 1Cadrage de projet et moindres carrés
  4. Séance 2Vraisemblance et régression logistique
  5. Séance 3Descente de gradient, ridge et lasso
  6. Séance 4Seuil de décision et ML reproductible
  7. DevoirUn modèle de référence défendable
  8. Séance 5Noyaux, SVM et arbres de décision
  9. Séance 6Forêts, boosting, comparaison honnête
  10. Séance 7SHAP, équité, ACP et partitionnement
  11. DevoirUn modèle champion documenté
  12. Séance 8Réseaux de neurones, dérive, prédiction conforme
  13. DevoirUn projet de machine learning livré
  14. Séance 9Soutenir un projet de machine learning
  15. RéférenceProjet de score de défaut de crédit
  16. RéférenceRendements boursiers : XGBoost et sentiment
  17. RéférenceLe code Python de chaque modèle
  18. RéférenceDeep learning, l'essentiel
  19. RéférenceDonnées ouvertes et projets par secteur
  20. RéférenceManuel de l'expert data et IA
  21. RéférenceData engineering, SRE et cloud
  22. RéférencePanorama des modèles de machine learning

Toutes les fiches, en liste de lecture

L'attention et le transformer, pas à pas

À propos de ces fiches

Écrites par l'enseignant à partir des slides du deck, comme un résumé public : les idées clés, les formules et un exemple calculé. Les exercices, leurs corrigés, les contrôles et la notation restent dans le deck, pour les élèves du cours.

Révision : .