DataManip Insights ÉPISODE 1Confidentialité des donnéesGratuit
🔒 Épisode 1 · k-anonymat

« On a retiré les noms et les numéros de compteur : le fichier est anonyme. »
Avec 5 attributs ordinaires, 63 % des foyers sont les seuls de leur combinaison.

Supprimer l'identité directe ne suffit pas : la combinaison d'attributs ordinaires (commune, puissance souscrite, tarif, époque de construction, chauffage) forme une signature. Sur 5 000 foyers, 4 attributs en rendent déjà 15,7 % uniques et 88 % appartiennent à un groupe de moins de 5 ; avec 5 attributs, 63 % sont uniques. Le k-anonymat demande que chaque combinaison soit partagée par au moins k foyers.

🎯 L'analogie clé

Dans un immeuble, « la voisine du 3e, retraitée, avec un chien » suffit à désigner une personne, sans prénom. Chaque détail anodin réduit le cercle, jusqu'à une seule personne.

Le principe

Anonyme n'est pas
sans signature.

On appelle quasi-identifiants les attributs qui, pris ensemble, désignent un foyer. Avec n foyers répartis uniformément dans C combinaisons possibles, la part des foyers uniques vaut (1 − 1/C)^(n−1) : elle grimpe très vite avec le nombre d'attributs, car C est le produit de leurs nombres de valeurs. Un fichier est k-anonyme si chaque combinaison apparaît au moins k fois. L'hypothèse d'uniformité est favorable : dans la réalité, certaines combinaisons sont rares et les foyers uniques plus nombreux.

🧩
Quasi-identifiants
Des attributs anodins qui, combinés, désignent une personne.
💥
Explosion des combinaisons
Chaque attribut multiplie le nombre de cases possibles : les foyers s'y dispersent.
🛡️
k-anonymat
Garantir que chaque combinaison est partagée par au moins k foyers.
Le point clé : l'anonymat se mesure sur la combinaison d'attributs publiés, pas sur la présence ou non d'un nom.
À vous de manipuler

Chaque attribut ajouté
isole un peu plus.

Choisissez combien d'attributs sont publiés (dans l'ordre : commune 30 valeurs, puissance 6, tarif 3, époque de construction 5, chauffage 4) et le nombre de foyers. Les barres donnent la part de foyers uniques et la part de foyers dans un groupe de moins de 5 (k = 5), pour 1 à 5 attributs ; la barre du réglage actuel est en couleur vive.

Foyers repérables selon les attributs publiés
Foyers uniques et foyers dans un groupe < 5 (%) selon le nombre d'attributs

Répartition uniforme des foyers dans les combinaisons : un cas favorable, la réalité est plus risquée.

Combinaisons possibles
-
produit des nombres de valeurs
Foyers uniques
-
part des foyers
Dans un groupe de moins de 5
-
non 5-anonymes
Foyers par combinaison
-
moyenne, hypothèse uniforme
À retenir : avec 5 000 foyers et 4 attributs, il y a 2 700 combinaisons ; 15,7 % des foyers sont uniques et 88,3 % sont dans un groupe de moins de 5. Avec 3 attributs, 98,2 % des foyers sont encore dans des groupes d'au moins 5 ; avec 5 attributs, 62,9 % sont uniques.
L'effet du volume

Plus de foyers,
plus de camouflage.

Plus le fichier contient de foyers, plus chaque combinaison est partagée, donc plus on est noyé dans la foule. À l'inverse, un fichier local ou un sous-ensemble (une seule commune, un seul tarif) expose davantage. La courbe donne la part de foyers uniques selon le nombre de foyers pour 3, 4 et 5 attributs.

Foyers uniques selon le volume du fichier
Foyers uniques (%) selon le nombre de foyers

Chips : part de foyers uniques avec 5 attributs publiés.

1 000 foyers
-
5 000 foyers
-
10 000 foyers
-
20 000 foyers
-
Le point clé : avec 5 attributs, la part de foyers uniques est de 91,2 % pour 1 000 foyers, 62,9 % pour 5 000, 39,6 % pour 10 000 et 15,7 % pour 20 000. Le volume dilue le risque, mais ne le supprime pas, et il faut environ 50 000 foyers (près de 5 par combinaison) pour passer sous 1 % de foyers uniques.
En pratique

Quatre réflexes
avant de publier.

Voici la démarche, puis un exemple.

🧩
Listez les quasi-identifiants
Commune, date, tarif, équipement : tout attribut qu'un voisin pourrait connaître.
🔢
Comptez les uniques
Mesurez la taille du plus petit groupe avant de publier.
🗜️
Généralisez
Regroupez en classes, élargissez le territoire, arrondissez les dates.
✂️
Supprimez ce qui reste
Retirez ou fusionnez les groupes trop petits plutôt que de les publier.
Python · k_anonymat.py
import numpy as np
import pandas as pd

qi = ["commune", "puissance", "tarif", "epoque"]
taille = df.groupby(qi)["foyer"].transform("size")

uniques = (taille == 1).mean()            # part de foyers uniques
sous_k  = (taille < 5).mean()             # part non 5-anonyme
k_reel  = taille.min()                     # le k du fichier
Test rapide

Vérifiez votre compréhension.

Un fichier de 5 000 foyers publie 4 attributs (2 700 combinaisons), sans nom ni numéro de compteur. Que peut-on dire ?

Ce qu'il faut retenir

Épisode suivant

Ré-identification : quatre points suffisent à retrouver une trace

Quelques observations connues sur une personne suffisent à retrouver sa trace complète dans un fichier anonymisé.

ACCÈS COMPLET

Cet épisode est gratuit. Les 282 autres t'attendent.

Statistiques, finance quantitative, machine learning, deep learning, LLM, agents IA, MLOps : 321 épisodes avec des simulateurs à manipuler, pas des vidéos.

99 € (+ TVA selon le pays) · accès à vie · remboursement possible sous 7 jours
Débloquer les 282 épisodes · 99 € J'ai déjà une clé de licence
FULL ACCESS

This episode is free. The other 282 are waiting for you.

Statistics, quantitative finance, machine learning, deep learning, LLMs, AI agents, MLOps: 321 interactive episodes with simulators to play with, not videos.

€99 (+ VAT depending on country) · lifetime access · 7-day refund
Unlock the 282 episodes · €99 I already have a license key