Qu'est-ce que les données synthétiques ?

Les données synthétiques sont des informations générées artificiellement par des algorithmes informatiques au lieu d'être collectées à partir d'événements réels. C'est un peu comme un simulateur de vol pour l'intelligence artificielle (IA). Tout comme un pilote apprend à voler dans un simulateur de cockpit sans risquer de s'écraser, les modèles d'IA peuvent apprendre à reconnaître des schémas à l'aide de données simulées sans compromettre la confidentialité des utilisateurs.

La principale différence est que les données synthétiques imitent les propriétés statistiques des données réelles (comme les moyennes, les corrélations et les distributions), mais ne contiennent aucune information permettant d'identifier des personnes réelles. Elles ressemblent à un enregistrement réel, mais aucun être humain n'a participé à sa création.

Comment les données synthétiques sont-elles générées ?

La génération de données synthétiques ne se limite pas à copier-coller. Elle consiste à utiliser des modèles de machine learning avancés pour comprendre la "forme" des données réelles, puis à créer des échantillons originaux qui correspondent à cette forme.

  • Les ingénieurs utilisent souvent des modèles génératifs pour cela. Des technologies telles que les réseaux antagonistes génératifs (GAN), les auto-encodeurs variationnels (VAE) et les modèles de diffusion analysent un ensemble de données réel pour en apprendre les schémas cachés. Une fois que le modèle a appris ces schémas, il peut générer un nombre infini de nouveaux échantillons factices qui sont statistiquement identiques à l'ensemble d'origine.
  • La simulation est une autre méthode courante. Cette approche est populaire dans des secteurs comme la robotique et la conduite autonome. Les développeurs utilisent des moteurs physiques, semblables à ceux utilisés dans les jeux vidéo, pour créer des mondes virtuels. Dans ces mondes, ils peuvent générer des données en simulant des scénarios, comme une voiture roulant dans une ville pluvieuse ou un bras de robot ramassant une boîte, sans avoir besoin d'un appareil photo ou d'un capteur physique.

Types de données synthétiques

Toutes les données synthétiques ne se valent pas. Selon vos besoins en termes de confidentialité et de précision, vous pouvez choisir différents types.

Ces données sont générées en partant de zéro. Elles ne contiennent aucune donnée utilisateur d'origine, ce qui signifie qu'il n'existe aucun mappage un-à-un entre un enregistrement synthétique et une personne réelle. Comme elles ne concernent aucun individu en particulier, elles offrent le plus haut niveau de protection de la confidentialité. Cependant, elles nécessitent une validation rigoureuse pour s'assurer qu'elles sont toujours suffisamment précises pour être utiles à l'entraînement de l'IA.

Parfois, vous devez conserver certaines données réelles pour que l'ensemble de données reste utile. Les données partiellement synthétiques consistent à prendre un ensemble de données réel et à remplacer uniquement les parties sensibles (comme les noms, les numéros de sécurité sociale ou les adresses) par des valeurs synthétiques. Le reste des données reste distinct. Cette approche équilibre la confidentialité et l'utilité élevée, mais présente un risque de désanonymisation légèrement plus élevé que les données entièrement synthétiques.

Cette approche combine des enregistrements réels et synthétiques pour créer un "super-ensemble" de données. Il est souvent utilisé pour enrichir un ensemble de données réel plus petit. Par exemple, si vous disposez de nombreuses données sur les transactions bancaires courantes, mais de très peu de données sur les fraudes, vous pouvez générer des enregistrements de fraude synthétiques à mélanger avec les enregistrements réels. Cela permet de suréchantillonner les événements rares afin que le modèle d'IA dispose de suffisamment d'exemples pour apprendre.

Données synthétiques ou données réelles

Les données réelles sont la référence en matière de justesse, mais leur collecte peut être coûteuse. Elles sont souvent désordonnées ou incomplètes, et strictement limitées par les lois sur la confidentialité comme le RGPD ou la loi HIPAA. La collecte de données réelles peut également prendre des mois, voire des années.

Les données synthétiques, quant à elles, peuvent être moins coûteuses à mettre à l'échelle. Vous pouvez générer des millions d'enregistrements en quelques heures. Ils sont parfaitement étiquetés (puisque l'ordinateur les a créés, il sait exactement ce qu'il a créé) et respecte la confidentialité dès sa conception. De plus, les données synthétiques peuvent être équilibrées pour supprimer les biais naturels souvent présents dans les collections réelles.

Fonctionnalité

Données réelles

Données synthétiques

Coût

Supérieur (collecte et étiquetage)

Inférieur (puissance de calcul uniquement)

Rapidité

Plus lente (mois/années)

Plus rapide (heures/jours)

Confidentialité

Plus restreint (risques liés aux informations personnelles)

Plus sûr (aucune information personnelle identifiable)

Justesse

Supérieur (reflète la réalité)

Variable (dépend de la qualité du modèle)

Fonctionnalité

Données réelles

Données synthétiques

Coût

Supérieur (collecte et étiquetage)

Inférieur (puissance de calcul uniquement)

Rapidité

Plus lente (mois/années)

Plus rapide (heures/jours)

Confidentialité

Plus restreint (risques liés aux informations personnelles)

Plus sûr (aucune information personnelle identifiable)

Justesse

Supérieur (reflète la réalité)

Variable (dépend de la qualité du modèle)

Cas d'utilisation des données synthétiques dans différents secteurs

Les véhicules autonomes et la robotique dépendent fortement des données synthétiques, car la collecte d'informations dans le monde réel est lente. Même après avoir parcouru des millions de kilomètres, les tests physiques ne peuvent pas prendre en compte tous les scénarios d'accident possibles. En générant des environnements de conduite virtuels, les ingénieurs peuvent entraîner les voitures sur des milliards de kilomètres de routes simulées, en les testant dans des situations dangereuses comme un enfant qui court dans la rue, sans aucun risque physique.

Les données médicales sont extrêmement privées et difficiles à partager. Les données synthétiques permettent aux chercheurs de créer de faux dossiers de patients qui imitent les schémas statistiques de maladies réelles. Cela permet aux hôpitaux de partager des données pour la recherche sur le cancer ou les études sur les maladies rares sans enfreindre la loi HIPAA. Selon une enquête de ManageEngine, 81 % des établissements de santé utilisent désormais des données synthétiques pour innover tout en gérant les problèmes de confidentialité.

La détection des fraudes est difficile, car les cas de fraude sont rares. Il est donc difficile pour l'IA d'apprendre à identifier les fraudes. Les banques peuvent utiliser des données synthétiques pour générer des milliers de schémas de transactions frauduleuses. Cet "upsampling" permet d'entraîner l'IA à repérer les activités suspectes sans exposer les historiques financiers réels des clients.

Les développeurs ont besoin d'énormes quantités de données pour tester les performances d'une application sous pression. C'est ce qu'on appelle la "gestion des données de test". Au lieu d'utiliser une copie dangereuse de la base de données de production réelle, les équipes DevOps peuvent remplir un environnement de préproduction avec des millions d'utilisateurs synthétiques. Cela leur permet de tester les nouvelles mises à jour d'applications en toute sécurité et de s'assurer que le système peut gérer un trafic élevé.

Avantages des données synthétiques

Confidentialité et conformité

Les données synthétiques réduisent considérablement le risque d'exposer des informations permettant d'identifier personnellement les utilisateurs. Comme ces données ne se rapportent à aucune personne réelle, elles ne sont généralement pas soumises à des réglementations strictes comme le RGPD et la CCPA. Cela permet aux équipes internationales de partager plus facilement des ensembles de données au-delà des frontières, sans avoir à surmonter des obstacles juridiques complexes.

Coût et rapidité

L'utilisation de données synthétiques peut accélérer considérablement le cycle de vie "des données à l'IA". Vous n'avez pas besoin d'embaucher des personnes pour étiqueter manuellement les images ni d'attendre que les données soient collectées sur le terrain. Cette efficacité peut réduire les coûts et accélérer le développement.

Atténuation des biais

Les données réelles reflètent souvent les préjugés du monde réel. Si vous entraînez une IA sur des données d'embauche historiques, elle peut apprendre à privilégier un groupe démographique par rapport à un autre. Les données synthétiques permettent aux développeurs de corriger artificiellement ces déséquilibres. Vous pouvez générer davantage de données pour les groupes sous-représentés (par exemple, en veillant à ce qu'une IA reconnaisse tous les tons de peau ou tous les genres de manière égale) afin de créer des modèles plus équitables et plus robustes.

Test des cas extrêmes

Certains scénarios sont trop dangereux ou trop rares pour être testés dans la vie réelle. Vous ne pouvez pas détruire un millier de vraies voitures juste pour voir comment fonctionne le capteur d'airbag. Les données synthétiques vous permettent de créer ces "cas extrêmes" en toute sécurité. Vous pouvez simuler des événements rares, comme un blizzard à Phoenix ou une défaillance moteur spécifique, pour entraîner les systèmes sur des situations qui représentent moins de 0,01 % des données réelles, mais qui sont essentielles pour la sécurité.

Générer des données tabulaires synthétiques à l'aide de Gemini sur Gemini Enterprise Agent Platform

Pour les développeurs, le moyen le plus rapide de générer un ensemble de données synthétique de petite ou moyenne taille (par exemple, pour des tests unitaires ou des démonstrations simples) n'est souvent pas d'entraîner un GAN complexe, mais d'exploiter les capacités génératives des grands modèles de langage (LLM). Ces fonctionnalités sont désormais unifiées dans Gemini Enterprise Agent Platform (anciennement Vertex AI). Cette plate-forme fournit un environnement complet pour créer, déployer et faire évoluer des modèles de machine learning, y compris l'accès à des modèles puissants comme Gemini.


Dans ce tutoriel, nous allons utiliser le SDK Agent Platform (anciennement SDK Vertex AI) pour Python et Gemini afin de générer de toutes pièces un ensemble de données synthétiques de "transactions client". Imaginez que vous êtes un développeur qui crée un tableau de bord pour une entreprise dans le domaine des fintech. Vous avez besoin de 50 lignes de "données de transaction" pour tester votre interface.

Vous avez besoin des champs suivants : transaction_id, timestamp, amount, merchant_category et is_fraud.

Étape 1 : Configurer votre environnement

Tout d'abord, assurez-vous que le SDK Agent Platform est installé dans votre environnement Python. Bien que la plate-forme ait été rebaptisée, le package Python est toujours google-cloud-aiplatform.

  • Bash
Chargement en cours...

Étape 2 : Initialiser le SDK Agent Platform

Importez la bibliothèque et initialisez-la avec les détails de votre projet. Il s'agit de la configuration standard pour l'utilisation de modèles Gemini via le SDK Agent Platform dans Gemini Enterprise Agent Platform.

  • Python
Chargement en cours...

Étape 3 : Élaborez une requête structurée

La qualité des données synthétiques générées par un LLM dépend fortement de votre prompt. Vous devez être précis sur le schéma, les contraintes (par exemple, pas de nombres négatifs) et le format de sortie (CSV ou JSON). Des instructions claires et spécifiques sont essentielles pour des prompts engineering efficaces avec les modèles Gemini sur Gemini Enterprise Agent Platform.

  • Python
Chargement en cours...

Générer et analyser les données

Envoyez le prompt au modèle et chargez la réponse directement dans un DataFrame Pandas. La méthode generate_content fait partie du SDK Agent Platform.

  • Python
Chargement en cours...

L'utilisation d'un LLM à usage général comme Gemini pour générer des données tabulaires synthétiques est souvent plus rapide que l'entraînement d'un modèle statistique personnalisé (comme un VAE) lorsque vous n'avez besoin que de données "plausibles" pour tester les fonctionnalités d'un logiciel.

  • Vitesse : vous obtenez des données en quelques secondes.
  • Flexibilité : vous pouvez modifier le schéma en modifiant simplement le prompt textuel.
  • Logique : vous pouvez demander au modèle d'intégrer une logique complexe (par exemple, "Si le marchand est 'Voyage', le montant doit être supérieur à 100 $"), ce qui est difficile à faire avec de simples outils de randomisation.

*Remarque pour une utilisation à l'échelle de l'entreprise : Si vous devez générer des millions de lignes qui clonent statistiquement un ensemble de données privé volumineux, vous passerez probablement d'un simple prompt LLM à l'utilisation de pipelines Gemini Enterprise Agent Platform (anciennement Vertex AI Pipelines) intégrés à des partenaires spécialisés comme Gretel.ai ou MOSTLY AI, qui sont disponibles directement sur Google Cloud Marketplace. Ces workflows avancés peuvent être orchestrés et gérés dans la solution plus large Gemini Enterprise Agent Platform.

Relevez vos plus grands défis avec Google Cloud

Les nouveaux clients bénéficient de 300 $ de crédits à dépenser sur Google Cloud.

Passez à l'étape suivante

Profitez de 300 $ de crédits gratuits et de plus de 20 produits Always Free pour commencer à créer des applications sur Google Cloud.

Google Cloud