Méthodes de Confidentialité Différentielle
Aux côtés de la méthode Avatar standard, Octopize offre AvatarFastDP, une méthode de synthèse qui utilise des mécanismes de confidentialité différentielle (differential privacy, DP). Les deux méthodes partagent le même pipeline de prétraitement mais diffèrent dans la façon dont les données synthétiques sont générées dans l'espace latent.
Cette page explique ce que fait chaque méthode, quand l'utiliser et comment configurer AvatarFastDP.
Pipeline Partagée
Indépendamment de la méthode choisie, chaque avatarisation suit les quatre mêmes étapes :
- Chargement et typage — Les données sont chargées, les colonnes sont typées (int, float, category…), et les valeurs manquantes sont optionnellement imputées.
- Projection — Les données sont projetées dans un espace latent (via FAMD, Factor Analysis of Mixed Data, pour les données tabulaires contenant à la fois des données numériques et catégoriques). Le nombre de composantes principales est contrôlé par le paramètre
ncp. - Synthèse — Les coordonnées synthétiques sont générées dans l'espace latent. C'est l'étape qui diffère entre les deux méthodes.
- Projection inverse — Les coordonnées synthétiques sont projetées dans l'espace d'origine, produisant l'ensemble de données avatar final.
Les paramètres suivants sont communs aux deux méthodes : ncp, imputation, use_categorical_reduction, exclude_variable_names, column_weights. Voir la page Run Anonymization pour les détails de chacun.
Comparaison des Méthodes
| Aspect | Avatar | AvatarFastDP |
|---|---|---|
| Paramètre principal | k (voisins) | fast_dp_epsilon (ε budget de privacy) |
| Garantie DP | Aucune (confidentialité heuristique) | Utilise les mécanismes DP, mais pas DP de bout en bout |
| Méthode sous-jacente | KNN dans l'espace latent | Gaussienne / GMM / Histogramme dans l'espace latent |
| Vitesse | Rapide | Rapide |
| Meilleur pour | Usage général, contrôle fin via k | Synthèse DP rapide |
| Supporte multi-table | Oui | Oui |
| Supporte les séries chronologiques | Oui | Non |
Les deux méthodes sont mutuellement exclusives. Vous devez définir exactement l'un des deux paramètres k ou fast_dp_epsilon lors de la configuration des paramètres. Définir les deux déclenche une erreur.
Quand Utiliser Laquelle
- Avatar (standard) — Votre choix par défaut pour la plupart des cas d'usage. Il offre un contrôle fin du compromis vie privée/utilité via le paramètre
ket fonctionne avec toutes les structures de données (tabulaire, multi-table, séries chronologiques). - AvatarFastDP — Choisissez ceci quand vous voulez une synthèse rapide avec méchanismes de DP pour l'expérimentation ou quand le temps d'exécution compte. Il applique du bruit DP pendant la synthèse mais ne fournit pas une garantie DP de bout en bout.
AvatarFastDP
AvatarFastDP est une méthode de synthèse DP rapide et légère. Elle ajuste une distribution statistique sur les coordonnées projetées et échantillonne à partir d'une version bruitée de celle-ci.
Elle applique du bruit DP calibré pendant la synthèse, mais les étapes de projection et back-projection ne sont pas couvertes par la garantie DP. Elle n'est donc pas DP de bout en bout.
Paramètres
Le tableau liste les clés de avatarization_fast_dp dans une configuration YAML. Dans le SDK Python, epsilon se définit avec fast_dp_epsilon.
| Paramètre | Type | Requis | Par défaut | Description |
|---|---|---|---|---|
epsilon | float | Oui | — | Budget de confidentialité total. Doit être > 0. |
mechanism | string | Non | "gaussian" | L'un de "gaussian", "gmm", ou "histogram". |
gmm_n_components | int | Non | 5 | Nombre de composantes gaussiennes. Utilisé uniquement quand mechanism="gmm". |
histogram_n_bins | int | Non | 10 | Nombre de compartiments par dimension. Utilisé uniquement quand mechanism="histogram". |
bounds_percentile | float | Non | 5.0 | Percentile symétrique pour déduire les limites des données (par exemple, 5.0 utilise la plage du 5e–95e percentile). Doit être dans (0, 50). Utilisé par "gaussian" et "histogram". |
Python SDK
# Mécanisme gaussien par défaut
runner.set_parameters("my_table", fast_dp_epsilon=1.0)
Les options spécifiques aux mécanismes (mechanism, gmm_n_components, etc.) ne sont pas encore exposées dans set_parameters() — elles utilisent leurs valeurs par défaut. Une configuration avancée est possible via YAML.
Configuration YAML
kind: avatarization-parameters
spec:
schema: schema
avatarization_fast_dp:
my_table:
epsilon: 1.5
mechanism: gmm
gmm_n_components: 3
Mécanismes
AvatarFastDP offre trois choix de mécanismes pour la façon dont la synthèse est effectuée dans l'espace latent.
Gaussienne (par défaut)
Ajuste une distribution gaussienne multivariée (vecteur moyen + matrice de covariance) sur les coordonnées latentes et ajoute du bruit laplcien calibré à la sensibilité des données.
- Le budget de confidentialité est divisé entre l'estimation de la moyenne (30%) et l'estimation de la covariance (70%).
- Les limites des données sont déduites des percentiles empiriques (contrôlés par
bounds_percentile) et utilisées pour calibrer la sensibilité au bruit. - La covariance bruitée est symétrisée et régularisée pour rester définie positive.
- Les points synthétiques sont tirés d'une normale multivariée avec les paramètres bruités.
Meilleur pour : distributions unimodales dans l'espace latent.
GMM (Gaussian Mixture Model)
Ajuste un GMM standard en utilisant un algorithme d'espérence maximisation, puis perturbe les paramètres ajustés (poids, moyennes, covariances) avec le méchanisme de Laplace.
- Division du budget : 20% poids, 40% moyennes, 40% covariances.
- Les poids bruits sont écrêtés à des valeurs non-négatives et renormalisés. Les covariances sont symétrisées et régularisées.
- Contrôlé par
gmm_n_components(par défaut : 5).
Meilleur pour : données avec distributions multimodales dans l'espace latent.
Histogramme
Ajuste des histogrammes indépendants par dimension avec un bruit DP sur les comptes de compartiments. Ce mécanisme suppose l'indépendance entre les dimensions latentes.
- Le budget est divisé de manière égale entre les dimensions.
- Chaque dimension obtient
histogram_n_binscompartiments de largeur fixe. Le bruit Laplace est ajouté aux comptes, qui sont ensuite écrêtés et normalisés. - Les valeurs synthétiques sont tirées en sélectionnant un compartiment de l'histogramme bruits et en échantillonnant uniformément à l'intérieur.
Meilleur pour : cas d'usage simples, exploratoires. L'hypothèse d'indépendance entre les dimensions est forte et peut réduire l'utilité sur des données complexes.