Équité, robustesse, confidentialité et sécurité
Un modèle qui décide engage une responsabilité : il peut désavantager systématiquement un groupe, se faire tromper par une entrée manipulée, ou laisser fuiter les données sur lesquelles il a été entraîné. Ces risques ne sont pas des questions de conformité à traiter à la fin : ils se traitent dans la conception, et ils ont chacun des méthodes et des métriques précises.
📋 Au programme
- D'où viennent les biais
- Définir l'équité — et leur incompatibilité
- Mesurer et atténuer
- Robustesse et attaques par évasion
- Empoisonnement et chaîne d'approvisionnement
- Confidentialité et fuite de données
- Confidentialité différentielle et fédéré
- Risques propres aux LLM
- Cadre réglementaire et checklist
1. D'où viennent les biais
Un modèle appris reproduit les régularités de ses données d'entraînement — y compris celles qui traduisent des inégalités passées. Les sources, à distinguer parce qu'elles n'appellent pas les mêmes remèdes :
Biais historique les données reflètent FIDÈLEMENT un monde inéquitable.
Un modèle statistiquement "correct" perpétue la situation.
Aucune technique statistique ne le corrige : c'est une
décision de conception, donc politique.
Biais d'échantillonnage certains groupes sont sous-représentés → variance élevée
et performance dégradée POUR EUX (module 14)
Biais de mesure la variable cible est un PROXY imparfait : "a été arrêté"
pour "a commis une infraction", "a été promu" pour "était
compétent". Le proxy porte le biais du processus qui l'a produit.
Biais d'agrégation un modèle unique pour des sous-populations aux relations
différentes : il devient optimal pour le groupe majoritaire
et médiocre pour les autres.
Biais de déploiement le modèle est utilisé dans un contexte différent de celui
pour lequel il a été validé.2. Définir l'équité — et leur incompatibilité
« Équitable » n'a pas de définition unique, et c'est le cœur du problème. Les trois familles les plus utilisées, pour un attribut sensible \(A\), une prédiction \(\hat Y\) et une vérité \(Y\) :
Parité démographique "on sélectionne la même PROPORTION dans chaque groupe"
→ ignore les différences réelles de qualification
Égalité des chances "parmi les gens QUALIFIÉS, on en retient la même proportion
dans chaque groupe" → personne de méritant n'est désavantagé
Calibration par groupe "un score de 0,7 signifie 70 % de chances, quel que soit
le groupe" → le score veut dire la même chose pour tousLe théorème d'impossibilité
Résultat démontré (Kleinberg-Mullainathan-Raghavan, Chouldechova, 2016) : si les taux de base diffèrent réellement entre groupes, calibration par groupe et égalité des taux d'erreur ne peuvent pas être satisfaites simultanément, sauf en cas de prédiction parfaite. Ce n'est pas une limite technique qu'un meilleur algorithme lèverait : c'est une incompatibilité mathématique, qui se démontre en quelques lignes à partir des définitions.
La conséquence est importante et souvent mal reçue : il faut choisir quelle notion d'équité s'applique, et ce choix est un arbitrage politique et métier — pas une décision technique qu'un data scientist prendrait seul dans son coin. C'est exactement le débat qui a entouré l'affaire COMPAS, où l'éditeur invoquait la calibration et les critiques l'égalité des taux de faux positifs : les deux camps avaient raison, sur des définitions différentes, et aucune reformulation technique ne pouvait les réconcilier.
3. Mesurer et atténuer
La première étape est toujours la même, et elle suffit souvent à découvrir un problème : ventiler toutes les métriques par sous-groupe. Une performance globale excellente masque régulièrement un groupe pour lequel le modèle est inutilisable.
from fairlearn.metrics import (MetricFrame, demographic_parity_difference,
equalized_odds_difference, selection_rate)
from sklearn.metrics import recall_score, precision_score, accuracy_score
mf = MetricFrame(
metrics={"accuracy": accuracy_score, "rappel": recall_score,
"précision": precision_score, "taux_selection": selection_rate},
y_true=y_test, y_pred=y_pred, sensitive_features=A_test,
)
print(mf.by_group) # LE tableau à regarder en premier
print(mf.difference(method="between_groups")) # l'écart max entre groupes
print(demographic_parity_difference(y_test, y_pred, sensitive_features=A_test))
print(equalized_odds_difference(y_test, y_pred, sensitive_features=A_test))
# et pour les sous-groupes CROISÉS, souvent les plus mal servis :
A_croise = A_test.astype(str) + "_" + age_groupe.astype(str)
print(MetricFrame(metrics=recall_score, y_true=y_test, y_pred=y_pred,
sensitive_features=A_croise).by_group)Les leviers d'atténuation se classent par moment d'intervention : en amont (rééquilibrer l'échantillon, corriger les étiquettes, retirer des variables trop corrélées à l'attribut sensible), pendant (contrainte d'équité dans l'optimisation, réduction lagrangienne, apprentissage adversarial où un discriminateur tente de retrouver l'attribut à partir des représentations), en aval (seuils différenciés par groupe — techniquement très efficace, mais juridiquement délicat, car c'est une différence de traitement explicite).
Deux limites à garder en tête : ces méthodes supposent l'attribut sensible observé, ce qui est rarement le cas ; et corriger selon un attribut peut dégrader l'équité selon un autre, ou selon leur intersection — un modèle équitable « par genre » et « par âge » pris séparément peut être très inéquitable pour un sous-groupe croisé, d'où le calcul ci-dessus.
4. Robustesse et attaques par évasion
La robustesse recouvre deux choses distinctes : la résistance à une variation naturelle des données (dérive, changement de capteur, nouveau segment — module 26) et la résistance à une manipulation délibérée.
Les exemples adverses exploitent une propriété structurelle des modèles à haute dimension : il existe presque toujours une perturbation minuscule \(\delta\), imperceptible pour un humain, telle que la prédiction change complètement. On la trouve par ascension de gradient sur la perte, sous contrainte de norme :
L'intuition : la frontière de décision d'un réseau est proche de presque tous les points, parce qu'en dimension élevée le volume se concentre près des surfaces. Il suffit donc d'un petit déplacement dans la bonne direction — celle du gradient — pour la franchir.
Les défenses : l'entraînement adversarial (inclure ces exemples dans l'entraînement — efficace, mais coûteux et au prix d'un peu de précision nominale), la détection d'entrées anormales, et les méthodes certifiées (lissage aléatoire) qui donnent une garantie prouvée dans un rayon donné, au prix de performances modestes.
En contexte industriel, cela dit, la menace prioritaire n'est généralement pas l'attaque adverse au pixel près, mais le contournement de règles par des acteurs économiques — fraudeurs, spammeurs, optimiseurs de référencement — qui adaptent leur comportement dès qu'ils comprennent le critère. La parade est organisationnelle autant que technique : réentraîner fréquemment, ne pas publier les variables discriminantes, et privilégier des variables coûteuses à manipuler (un historique long plutôt qu'un champ déclaratif).
Enfin, les tests de stress sont l'outil le plus rentable : perturber systématiquement les entrées — bruit, valeurs manquantes, unités changées, catégories inconnues, valeurs extrêmes — et vérifier que le modèle se dégrade de façon progressive et détectable plutôt que de basculer silencieusement.
5. Empoisonnement et chaîne d'approvisionnement
- Empoisonnement des données — un attaquant injecte des exemples dans le corpus d'entraînement, soit pour dégrader la performance, soit pour installer une porte dérobée : le modèle se comporte normalement sauf en présence d'un déclencheur précis (un motif dans une image, une séquence dans un texte). Le risque est réel dès que les données d'entraînement proviennent d'utilisateurs, du web, ou de contributions externes. Défenses : validation et provenance des données (module 26), détection d'anomalies sur le corpus, entraînement robuste, réentraînement depuis des sources vérifiées.
- Vol et inversion de modèle — un accès à l'API permet d'interroger massivement le modèle pour en entraîner une copie (distillation non consentie), ou de reconstruire des informations sur ses données d'entraînement. L'inférence d'appartenance détermine si un individu précis figurait dans le corpus — une fuite de données personnelles à part entière. Limitation du débit, restriction de la granularité des scores renvoyés (arrondir plutôt que donner 15 décimales) et confidentialité différentielle atténuent ces risques.
- Chaîne d'approvisionnement logicielle — point concret et sous-estimé : un fichier de poids au format
pickleexécute du code arbitraire à son chargement, par construction. Télécharger un modèle depuis un dépôt public revient donc à exécuter du code inconnu avec les droits de son processus. Préférer le formatsafetensors(qui ne contient que des tenseurs, sans code), vérifier les empreintes, épingler les versions de modèles et de dépendances (module 1), et scanner les images de conteneurs.
6. Confidentialité et fuite de données
L'anonymisation naïve ne fonctionne pas : la ré-identification par croisement est un résultat classique — quelques attributs quasi-identifiants (code postal, date de naissance, genre) suffisent à isoler une personne dans une population de millions d'individus. Le k-anonymat et ses raffinements (l-diversité, t-proximité) formalisent une protection en exigeant que chaque combinaison d'attributs soit partagée par au moins \(k\) personnes, mais restent vulnérables aux attaques par connaissance auxiliaire.
Un modèle entraîné mémorise aussi une partie de ses données : un réseau de grande capacité peut restituer textuellement des séquences rares de son corpus, ce qui a été démontré à plusieurs reprises sur les modèles de langage — numéros de téléphone, clés d'API, extraits de documents. La règle pratique à retenir : un modèle entraîné sur des données sensibles doit être traité comme une donnée sensible, avec les mêmes contrôles d'accès.
7. Confidentialité différentielle et fédéré
La confidentialité différentielle est la seule garantie formelle du domaine. Un mécanisme \(M\) est \((\varepsilon,\delta)\)-différentiellement privé si, pour deux jeux de données différant d'un seul individu :
Autrement dit : la présence ou l'absence d'une personne ne change quasiment pas la distribution des résultats, donc rien de spécifique à cette personne ne peut en être déduit — quelle que soit la connaissance annexe de l'attaquant, ce qui est la force du cadre. \(\varepsilon\) quantifie le budget de confidentialité : plus il est petit, plus la protection est forte et plus l'utilité diminue.
En apprentissage, DP-SGD applique le principe en deux temps : écrêter la norme du gradient de chaque exemple (pour borner l'influence d'un individu), puis ajouter un bruit gaussien calibré. Le coût est réel — perte de précision, entraînement plus lent, sensibilité accrue aux hyperparamètres — mais c'est la seule approche qui offre une garantie démontrable plutôt qu'une bonne intention. Deux propriétés la rendent utilisable : la composition (les budgets s'additionnent sur plusieurs requêtes, ce qui permet de raisonner sur un pipeline entier) et l'immunité au post-traitement (rien de ce qu'on fait ensuite ne dégrade la garantie).
L'apprentissage fédéré répond à un autre problème : entraîner sans centraliser les données. Chaque participant entraîne localement, seuls les gradients ou les poids sont envoyés et moyennés. Utile en santé, en industrie multi-sites, sur téléphone. Deux nuances importantes : les gradients fuient de l'information sur les données locales — des reconstructions d'images à partir de gradients ont été démontrées —, d'où la nécessité de combiner avec de l'agrégation sécurisée et de la confidentialité différentielle ; et l'hétérogénéité des données entre participants dégrade la convergence, ce qui reste un problème de recherche actif.
8. Risques propres aux LLM
- Injection de prompt (module 22) — le modèle ne distingue pas instructions et données. Le traitement est architectural : privilèges minimaux, validation des sorties, confirmation humaine pour les actions irréversibles.
- Fuite par le contexte — tout ce qui est envoyé dans un prompt quitte le périmètre ; et un index RAG mal cloisonné expose à un utilisateur des documents auxquels il n'a pas droit. Les droits d'accès doivent être appliqués au moment de la récupération — en filtrant l'index par les permissions de l'utilisateur — et non espérés du modèle, qui n'a aucun moyen de les faire respecter.
- Contenus préjudiciables et hallucinations — filtrage en entrée et en sortie, refus explicite prévu dans le prompt, et journalisation pour audit.
- Agents — un modèle capable d'agir (outils, code, achats) transforme une erreur de raisonnement en conséquence réelle. Le principe de moindre privilège et la validation humaine des actions irréversibles ne sont pas négociables.
9. Cadre réglementaire et checklist
Le RGPD encadre le traitement des données personnelles : base légale, minimisation, durée de conservation, droits d'accès et d'effacement, et — article 22 — encadrement des décisions entièrement automatisées produisant des effets significatifs, avec droit à une intervention humaine et à une explication.
L'AI Act européen classe les systèmes par risque : les usages à haut risque (crédit, emploi, éducation, infrastructures critiques, forces de l'ordre) imposent gestion des risques, qualité des données, documentation technique, journalisation, transparence, supervision humaine et robustesse. Ces exigences recoupent très largement les bonnes pratiques du module 26 — ce qui est une bonne nouvelle : les satisfaire ne demande pas un dispositif séparé, mais de faire correctement ce qu'on devrait faire de toute façon, et de le documenter.
Checklist responsabilité
- Les métriques sont ventilées par sous-groupe, y compris intersectionnels, et le tableau figure dans la model card (module 26).
- La notion d'équité visée est explicitement choisie et justifiée — en sachant qu'elle en exclut d'autres.
- L'attribut sensible est collecté pour l'audit, exclu des variables explicatives, et les proxys ont été recherchés.
- Des tests de stress vérifient une dégradation progressive et détectable, pas un basculement silencieux.
- La provenance des données d'entraînement est tracée ; les modèles téléchargés sont vérifiés et chargés dans un format sûr.
- L'accès au modèle est limité en débit et en granularité si les données d'entraînement sont sensibles.
- Les droits d'accès sont appliqués à la récupération dans tout système RAG.
- Une voie de recours humaine existe pour les décisions à effet significatif, et les prédictions sont journalisées pour pouvoir les expliquer.
Ce qu'il faut retenir du module
- Retirer l'attribut sensible ne supprime pas la discrimination et empêche de la mesurer.
- Les définitions d'équité sont mathématiquement incompatibles : le choix est un arbitrage, pas un calcul.
- Ventiler les métriques par sous-groupe est le geste d'audit le plus rentable.
- La menace réaliste est souvent le contournement économique plutôt que l'attaque adverse au pixel près.
- Un modèle entraîné sur des données sensibles est lui-même une donnée sensible.
- La confidentialité différentielle est la seule garantie formelle ; elle se paie en utilité.
- Charger un modèle est une exécution de code : format sûr, provenance vérifiée, versions épinglées.