Modèles et plateformes d’IA
Qu’est-ce que les données synthétiques ?
Qu’est-ce que les données synthétiques ?
Les données synthétiques sont une tendance en pleine expansion et un outil émergent dans le domaine de la science des données. Qu’est-ce que les données synthétiques exactement ? La réponse courte est que les données synthétiques sont constituées de données qui ne sont pas basées sur des phénomènes ou des événements du monde réel, mais sont générées par un programme informatique. Mais pourquoi les données synthétiques deviennent-elles si importantes pour la science des données ? Comment les données synthétiques sont-elles créées ? Explorons les réponses à ces questions.
Qu’est-ce qu’un jeu de données synthétiques ?
Comme le terme « synthétique » le suggère, les jeux de données synthétiques sont générés par des programmes informatiques, et non par la documentation d’événements du monde réel. L’objectif principal d’un jeu de données synthétiques est d’être suffisamment polyvalent et robuste pour être utile à la formation de modèles d’apprentissage automatique.
Pour être utile à un classificateur d’apprentissage automatique, les données synthétiques doivent avoir certaines propriétés. Bien que les données puissent être catégorielles, binaires ou numériques, la longueur du jeu de données doit être arbitraire et les données doivent être générées aléatoirement. Les processus aléatoires utilisés pour générer les données doivent être contrôlables et basés sur diverses distributions statistiques. Un bruit aléatoire peut également être inséré dans le jeu de données.
Si les données synthétiques sont utilisées pour un algorithme de classification, la quantité de séparation de classe doit être personnalisable, afin que le problème de classification puisse être rendu plus facile ou plus difficile selon les besoins du problème. Pendant ce temps, pour une tâche de régression, des processus de génération non linéaires peuvent être utilisés pour générer les données.
Pourquoi utiliser des données synthétiques ?
Alors que les frameworks d’apprentissage automatique comme TensorFlow et PyTorch deviennent plus faciles à utiliser et que les modèles préconçus pour la vision par ordinateur et le traitement du langage naturel deviennent plus ubiquitaires et puissants, le problème principal que les data scientists doivent affronter est la collecte et la gestion des données. Les entreprises ont souvent du mal à acquérir de grandes quantités de données pour former un modèle précis dans un délai donné. L’étiquetage manuel des données est une méthode coûteuse et lente pour acquérir des données. Cependant, la génération et l’utilisation de données synthétiques peuvent aider les data scientists et les entreprises à surmonter ces obstacles et à développer des modèles d’apprentissage automatique de manière plus rapide.
Il existe plusieurs avantages à l’utilisation de données synthétiques. La manière la plus évidente dont l’utilisation de données synthétiques bénéficie à la science des données est qu’elle réduit le besoin de capturer des données à partir d’événements du monde réel, et pour cette raison, il est possible de générer des données et de construire un jeu de données beaucoup plus rapidement qu’un jeu de données dépendant d’événements du monde réel. Cela signifie que de grandes quantités de données peuvent être produites en un court laps de temps. C’est particulièrement vrai pour les événements qui se produisent rarement, car si un événement se produit rarement dans la nature, plus de données peuvent être simulées à partir de véritables échantillons de données. Au-delà de cela, les données peuvent être étiquetées automatiquement lorsqu’elles sont générées, ce qui réduit considérablement le temps nécessaire pour étiqueter les données.
Les données synthétiques peuvent également être utiles pour obtenir des données de formation pour les cas de bord, qui sont des instances qui peuvent se produire rarement mais sont critiques pour la réussite de votre IA. Les cas de bord sont des événements qui sont très similaires à la cible principale d’une IA, mais qui diffèrent de manière importante. Par exemple, des objets qui ne sont que partiellement visibles pourraient être considérés comme des cas de bord lors de la conception d’un classificateur d’images.
Enfin, les jeux de données synthétiques peuvent minimiser les préoccupations en matière de confidentialité. Les tentatives d’anonymisation des données peuvent être inefficaces, car même si les variables sensibles ou d’identification sont supprimées du jeu de données, d’autres variables peuvent agir comme des identificateurs lorsqu’elles sont combinées. Ce n’est pas un problème avec les données synthétiques, car elles n’ont jamais été basées sur une personne réelle ou un événement réel, pour commencer.
Cas d’utilisation des données synthétiques
Les données synthétiques ont une grande variété d’utilisations, car elles peuvent être appliquées à presque toutes les tâches d’apprentissage automatique. Les cas d’utilisation courants des données synthétiques incluent les véhicules autonomes, la sécurité, la robotique, la protection contre la fraude et les soins de santé.
L’un des premiers cas d’utilisation des données synthétiques était les voitures autonomes, car les données synthétiques sont utilisées pour créer des données de formation pour les voitures dans des conditions où il est difficile ou dangereux d’obtenir des données de formation réelles. Les données synthétiques sont également utiles pour la création de données utilisées pour former des systèmes de reconnaissance d’images, comme les systèmes de surveillance, de manière beaucoup plus efficace que la collecte et l’étiquetage manuel d’un grand nombre de données de formation. Les systèmes de robotique peuvent être lents à former et à développer avec des méthodes de collecte de données traditionnelles. Les données synthétiques permettent aux entreprises de robotique de tester et d’ingénier des systèmes de robotique par le biais de simulations. Les systèmes de protection contre la fraude peuvent bénéficier des données synthétiques, et de nouvelles méthodes de détection de la fraude peuvent être formées et testées avec des données qui sont constamment nouvelles lorsqu’elles sont utilisées. Dans le domaine des soins de santé, les données synthétiques peuvent être utilisées pour concevoir des classificateurs de santé qui sont précis, tout en préservant la confidentialité des personnes, car les données ne seront pas basées sur des personnes réelles.
Défis des données synthétiques
Alors que l’utilisation de données synthétiques présente de nombreux avantages, elle présente également de nombreux défis.
Lorsque les données synthétiques sont créées, elles manquent souvent de valeurs aberrantes. Les valeurs aberrantes se produisent naturellement dans les données, et bien qu’elles soient souvent supprimées des jeux de données de formation, leur existence peut être nécessaire pour former des modèles d’apprentissage automatique vraiment fiables. Au-delà de cela, la qualité des données synthétiques peut être très variable. Les données synthétiques sont souvent générées à partir d’une donnée de départ, ou d’une graine, et donc la qualité des données peut dépendre de la qualité des données de départ. Si les données utilisées pour générer les données synthétiques sont biaisées, les données générées peuvent perpétuer ce biais. Les données synthétiques nécessitent également une forme de contrôle de la qualité. Elles doivent être vérifiées par rapport à des données annotées par des humains, ou à des données authentiques sous une forme ou une autre.
Comment les données synthétiques sont-elles créées ?
Les données synthétiques sont créées de manière programmatique à l’aide de techniques d’apprentissage automatique. Les techniques d’apprentissage automatique classiques comme les arbres de décision peuvent être utilisées, ainsi que les techniques d’apprentissage profond. Les exigences des données synthétiques influenceront le type d’algorithme utilisé pour générer les données. Les arbres de décision et les modèles d’apprentissage automatique similaires permettent aux entreprises de créer des distributions de données non classiques et multimodales, formées sur des exemples de données du monde réel. La génération de données avec ces algorithmes fournira des données qui sont fortement corrélées avec les données de formation d’origine. Pour les cas où la distribution typique des données est connue, une entreprise peut générer des données synthétiques à l’aide d’une méthode de Monte-Carlo.
Les méthodes de génération de données synthétiques basées sur l’apprentissage profond utilisent généralement soit un auto-encodeur variationnel (VAE), soit un réseau antagoniste génératif (GAN). Les VAE sont des modèles d’apprentissage automatique non supervisés qui utilisent des encodeurs et des décodeurs. La partie encodeur d’un VAE est responsable de la compression des données en une version plus simple et compacte du jeu de données d’origine, que le décodeur analyse et utilise pour générer une représentation du jeu de données de base. Un VAE est formé avec l’objectif d’avoir une relation optimale entre les données de entrada et les données de sortie, une relation dans laquelle les données de entrada et les données de sortie sont extrêmement similaires.
Lorsqu’il s’agit de modèles GAN, ils sont appelés « antagonistes » car les GAN sont en fait deux réseaux qui se disputent. Le générateur est responsable de la génération de données synthétiques, tandis que le deuxième réseau (le discriminant) fonctionne en comparant les données générées avec un jeu de données réel et tente de déterminer lesquelles des données sont fausses. Lorsque le discriminant attrape des données fausses, le générateur est informé de cela et il apporte des modifications pour essayer d’obtenir un nouveau lot de données du discriminant. En retour, le discriminant devient de mieux en mieux à la détection des faux. Les deux réseaux sont formés les uns contre les autres, avec des faux qui deviennent de plus en plus réalistes tout le temps.












