Donnée synthétique

Un article de Wikipédia, l'encyclopédie libre.

Dans le champ de la science des données, une donnée synthétique (synthetic data en anglais) est une donnée (numérique et native dans le cas du domaine de l'intelligence artificielle) qui n'est pas issue d'une observation réelle, mais qui a été créée artificiellement via des simulations (simulation numérique et de plus en plus souvent par une IA). Le but de cette production est souvent de générer des jeux de données ayant des propriétés statistiques et structurelles prédictives aussi proches que possible des données réelles, mais plus faciles à acquérir, et/ou ne contenant pas d'informations personnelles ni sensibles, ou ne nécessitant pas de mettre des biens ou personnes en danger à la suite de l'utilisation de données personnelles (grâce à des simulations). Elle a suscité un regain d'intérêt avec le développement du deep learning et des besoins d'apprentissage pour les IA (dans ce dernier cas, la donnée est synthétisée par les algorithmes d'une IA préalablement entraînée sur un corpus de données réelles.

La donnée synthétique ne doit pas être confondue avec la donnée issue du krigeage, ni avec la donnée augmentée (issue de techniques de « data augmentation ») qui modifient une donnée existante pour en créer une nouvelle[1].

Dans le domaine de l'intelligence artificielle (IA), ces données ont récemment (années 2020) pris une importance nouvelle car elles peuvent être créées par des IA pour entraîner ou améliorer des modèles d'intelligence artificielle générative (modèles pouvant créer de nouveaux contenus ou de nouvelles idées, comme des images, des textes, des musiques, etc.) ou encore pour le prototypage virtuel, l'enrichissement de données existantes, etc.

Éléments de définition[modifier | modifier le code]

Une donnée synthétique ne résulte pas directement d'une mesure ou d'une observation directe du monde réel ; elle est créée via un processus artificiel. Les données synthétiques ont souvent des caractéristiques identiques ou très proches des données réelles. Mais elles sont plus facile à acquérir. Elles permettent dans certains cas de ne pas révéler d'information sensible et/ou confidentielles ; d'éviter d'avoir à utiliser une donnée règlementée ou classifiée (ce qui génère des coûts d'anonymisation[2], un risque juridique et de coûts de protection contre le « cyber-risque », ou simplement une difficulté d'exploitation (gestion des accès, etc.). La donnée synthétique permet parfois d'éviter de mettre des observateurs ou expérimentateurs en danger, grâce à des simulations.

Le processus de production de ces données peut notamment s'appuyer sur des règles logiques, des modèles mathématiques, des algorithmes probabilistes, ou des techniques d'apprentissage automatique.

Classification des données synthétiques[modifier | modifier le code]

Différents type de données synthétiques existent, chacun nécessitant des méthodes spécifiques pour être généré. Il existe en 2023 plus d'une dizaine d'outils conçus pour générer de telles données aux fins d'entrainement d'IA[3].

Ces données peuvent aussi, et par exemple, être classées selon les critères suivant :

  • Degré de fidélité aux données réelles : les données synthétiques peuvent être plus ou moins proches des données réelles en termes de distribution, de corrélation, de bruit, etc. Un compromis entre la fidélité et la confidentialité doit souvent être trouvé[4] : par exemple dans le domaine de la santé, de la sexualité, de la consommation de drogues, d'eau potable ou d'énergie, plus les données synthétiques sont fidèles à la réalité, plus elles risquent de divulguer des informations privées. La production accélérée de vaccin lors de la pandémie de Covid-19 a bénéficié de l'utilisation de données synthétiques[5]
  • Type de données : les données synthétiques peuvent être numériques (par exemple, des nombres), catégorielles (par exemple, des labels), textuelles (par exemple, des phrases), visuelles (par exemple, des images), sonores (par exemple, des sons), etc.
  • Mode de génération : les données synthétiques peuvent être générées mathématiquement à partir de rien (par exemple via un modèle aléatoire), ou à partir de données réelles (via une technique d'anonymisation ou de perturbation). Il est également possible de les générer à partir d'un mélange de données réelles et synthétiques (via des techniques d'augmentation ou d'enrichissement de la réalité).

Historique[modifier | modifier le code]

Dans les années 1960, des chercheurs utilisent des modèles mathématiques pour simuler des phénomènes physiques ou biologiques. Ainsi le modèle de Lorenz a servi à créer des séries temporelles chaotiques utilisées pour étudier la météorologie. Le modèle de Lotka-Volterra a, lui, permis de générer des courbes simulant l'évolution de populations de proies et de prédateurs pour étudier la relation prédateurs-proies en écologie.

Dans les années 1980, des chercheurs ont, dans le domaine statistique, développé diverses techniques de création de corpus de données synthétiques, à partir de données réelles, par exemple pour la protection de la vie privée de personnes.
Ainsi, la méthode dite du micro-agrégat permet de regrouper les individus en petits groupes homogènes et à remplacer leurs valeurs par la moyenne du groupe. La méthode du masquage aléatoire ajoute, elle, du bruit aléatoire aux valeurs concernant des individus.

À partir des années 2000, des chercheurs ont développé des techniques d'intelligence artificielle pour générer des données synthétiques plus réalistes et plus variés.
Des réseaux de neurones ont permis de créer des images, des textes, ou des musiques à partir de données non réelles, mais ils doivent être préalablement entrainés sur de grands jeux de données ; ces données peuvent théoriquement être, pour tout ou partie, synthétiques à fin notamment d'en diminuer les coûts, mieux les calibrer et les contrôler, etc.[6]
Dans le même temps et dans d'autres domaines, l'IA crée des données synthétiques complexes qui rendent certains jeux vidéos plus immersifs et réalistes (tels que Cyberpunk 2077, Assassin's Creed Valhalla, Left 4 Dead, Alien: Isolation, The Last of Us ou Ghost of Tsushima…)[7] ou encore dans les simulateurs de vol, professionnels, civils ou militaires ou de jeux vidéo, ou dans les simulateurs de conduite de réacteurs nucléaire qui utilisent des données synthétiques (simulations de phénomènes physiques et de réactions du réacteur) pour tester les réactions des techniciens en situations normales ou accidentelles, sans mise en péril les utilisateurs et des installations (par exemple grâce à un « Réacteur Numérique », jumeau numérique d'un vrai réacteur) ; de même pour certains systèmes de crash-test, mais aussi pour modéliser des territoires à l'aide de population synthétique à base d'activités.

Au début des années 2020, les réseaux antagonistes génératifs ont permis de créer des données synthétiques de plus en plus difficiles à distinguer des données réelles qu'elles simulent de mieux en mieux[8].

Comment sont produites les données synthétiques ?[modifier | modifier le code]

Plusieurs méthodes permettent de les produire, variant selon le type de données et le mode de génération.

À titre d'exemple, on[Qui ?] distingue quatre types de méthodes :

  1. des méthodes d'échantillonnage, qui génèrent des données en échantillonnant une distribution de probabilité connue ;
  2. des méthodes de modélisation, qui génèrent des données en appliquant un modèle statistique à un ensemble de données d'entraînement ;
  3. des méthodes de transformation de données réelles ;
  4. des méthodes de création pure (à partir de zéro).

Données produites à partir de rien de réel[modifier | modifier le code]

Des modèles aléatoires (ex. : loi normale, loi uniforme, loi binomialeetc.) permettent générer des données numériques ou catégorielles à partir de rien de réel. On peut aussi pour cela utiliser des modèles mathématiques (ex. : équations différentielles, les systèmes dynamiques, les automates cellulairesetc.).

Données produites à partir du réel[modifier | modifier le code]

Pour générer des données numériques ou catégorielles synthétisées à partir de données réelles, on utilise traditionnellement des techniques d'anonymisation ou de perturbation, comme le micro-agrégat, le masquage aléatoire et des technique algorythmiques de remplacemebt de données réelles par des données synthétiques dans un ensemble de données d'entraînemen comme le swapping ou le rank swapping qui permettent d'entraîner des modèles d'IA sans avoir à collecter de données personnelles sensiblesn et/ou de protéger les données réelles contre un accès non autorisé. Depuis peu, des techniques d'apprentissage automatique, (ex. : méthodes par noyau (résolvant des problèmes de classification et de régression non linéaires en transformant les données dans un espace de dimension supérieure, où les relations non linéaires entre les données peuvent être plus facilement identifiées), méthodes par arbre de décision, méthodes par réseau neuronaletc.) sont apparues ;

  • Pour générer des données textuelles synthétiques à partir de données réelles, on peut utiliser des techniques d'anonymisation ou de « perturbation », comme :
    • le « remplacement par synonyme » (qui consiste à remplacer des données réelles par des données synthétiques similaires aux données réelles ; ces données synthétiques sont générées via un dictionnaire de synonymes pour trouver des mots ou des expressions au sens similaire aux données réelles. Ceci permet notamment de créer des ensembles de données synthétiques de grande taille pour créer un corpus de données plus complet et représentatif, sans besoin de collecter de données personnelles sensibles) ;
    • le remplacement par entité nommée (remplacement, au sein d'un corpus de données, d'« entités nommées » telles que des personnes, des organisations ou des lieux par d'autres entités nommées, jugées similaires. Ceci nécessite de disposer d'un dictionnaire d'entités nommées, à jour, contenant des métadonnées sur les entités nommées, telles que leur nom, leur type et leurs relations avec d'autres entités nommées ; ceci induit ausi une perte d'information, car les « entités nommées synthétiques » diffèrent des entités nommées réelles, avec en outre des biais possibles si le dictionnaire d'entités nommées est peu représentatif de la réalité) ;
    • le « remplacement par masque » (le masque étant ici une matrice indiquant au système quelles données réelles remplacer par une données synthétiques [qui sera générées via un modèle statistique de type « modèle de génération de texte » ou « modèle de génération d'images »…]). Le « remplacement par masque » a comme inconvénient une perte d'information, la donnée synthétique différant un peu de la donnée réelle, avec en outre un risque de biais si le modèle statistique utilisé pour générer les données synthétiques est lui-même biaisé.
    • On peut aussi utiliser des techniques d'apprentissage automatique tels que les modèles de paraphrase, les modèles de résumé, les modèles de traduction, avec un risque de perte d'information et de biais quand ces modèles ont été entraînés sur des corpus de données eux-mêmes biaisés ;
  • Pour générer des données visuelles plus « anonymes » à partir de données visuelles réelles, on peut utiliser des techniques de perturbation, comme le floutage, le pixelisation, le « recouvrement », etc. On peut aussi utiliser des techniques d'apprentissage automatique, comme les modèles de super-résolution, les modèles de style transfer, les modèles de colorisation, etc. ;
  • Pour générer des données sonores anonymisées à partir de données réelles, on peut utiliser des techniques de perturbation telles que le filtrage, la distorsion, le changement de fréquenceetc. On peut aussi utiliser des techniques d'apprentissage automatique, comme les modèles de synthèse vocale, de transformation vocale, de séparation de sources, etc.
  • Pour générer des données numériques ou catégorielles à partir d'un mélange de données réelles et synthétiques, on peut utiliser des techniques d'augmentation ou d'enrichissement, comme différentes méthodes de lissage des données (smoothing), chacune ayant ses avantages et limites ; le bootstrapping, le samplingetc. On peut aussi utiliser des techniques d'apprentissage automatique, comme les méthodes d'interpolation, d'extrapolation, d'imputationetc. ;
  • Pour générer des données textuelles à partir d'un mélange de données réelles et synthétiques, on peut utiliser des techniques d'augmentation ou d'enrichissement, comme le mélange de textes, le remplacement par synonyme contextuel, ou par une entité nommée contextuelle, etc. On peut aussi utiliser des techniques d'apprentissage automatique, comme les modèles de fusion de textes, les modèles de génération conditionnelle, les modèles de génération interactive, etc. ;
  • Pour générer des données visuelles à partir d'un mélange de données réelles et synthétiques, on peut utiliser des techniques d'augmentation ou d'enrichissement, comme la rotation, le zooming, le croppingetc. On peut aussi utiliser des techniques d'apprentissage automatique, comme les modèles de fusion d'images, les modèles de génération conditionnelle ou interactive, etc. ;
  • Pour générer des données sonores à partir d'un mélange de données réelles et synthétiques, on peut utiliser des techniques d'augmentation ou d'enrichissement, comme le mixing, le pitch shifting, le time stretchingetc. On peut aussi utiliser des techniques d'apprentissage automatique, comme les modèles de fusion de sons, les modèles de génération conditionnelle ou interactive, etc.

Enjeux et risques[modifier | modifier le code]

Les données synthétiques présentent des avantages et inconvénients, par rapport aux données réelles :

Avantages[modifier | modifier le code]

  • Protection de la vie et/ou de la vie privée des individus (pas d'utilisation d'informations personnelles ou sensibles), en respectant les principes du Règlement général sur la protection des données (RGPD qui impose aux organisations de garantir la confidentialité des données qu'elles collectent, traitent, ou partagent) ;

Des données synthétiques sont aussi utilisées pour trouver de nouveaux médicaments contre les maladies rares.

  • Elles permettent de pallier le coût, le manque ou la rareté de données réelles, en créant des données supplémentaires ou alternatives ; dans le domaine du Marketing algorithmique un article (2022) a montré que certaines études de marché basées sur l'IA « peuvent être appliquées pour répondre à des questions plus nuancées basées sur des variables démographiques ou des variations contextuelles qui sont prohibitives ou irréalisables avec des répondants humains »[9]. Des images synthétiques peuvent permettre à des modèles d'IA à s'entrainer (à la reconnaissance et interprétation d'image, jusqu'à la conduite autonome par exemple)[10] ; des animations de jeux vidéo peuvent entrainer des systèmes de vision d'IA[11].
  • Elles ont grandement amélioré et facilité l'entraînement ou l'amélioration (de la sécurité, de la rapidité et de la scalabilité dans le domaine de l'IA)[12], notamment dans certains modèles d'IA qui nécessitent souvent de grandes quantités de données variées et de qualité[1]. L'IA est ainsi mise au service de sa propre amélioration et évolution[6]. Elles peuvent favoriser un apprentissage automatique plus plus proche de celui des systèmes biologiques (qui implique un apprentissage continu, multimodal et interactif).
  • Elles facilitent et stimulent l'émergence d'idées et de contenus originaux et créatifs, dont en combinant ou modifiant des données réelles, y compris dans les domaines du design, de l'art, la musique, etc.[6].

Risques et limites des données synthétiques[modifier | modifier le code]

Les données synthétiques ne sont pas exemptes de risques et de limites :

Ce sont des données « secondaires », issues de corpus qui peuvent eux-mêmes avoir intégré des biais ou induire des erreurs dans les modèles d'IA, si elles ne reflètent pas correctement la réalité, ou si elles sont mal calibrées.
Une étude publiée par la Harvard Business Review a rappelé que la plupart des progrès de l'IA sont le fait d'un groupe socialement et culturellement homogène de chercheurs et techniciens de haut niveau, presque toujours des hommes ayant le même type de formation, qui ont donc une vision limitée du monde. De tels biais peuvent aussi exister plus en amont chez ceux qui collectent certaines données, ainsi que chez ceux qui conçoivent les modèles d'IA et leur entrainement. Ce risque de biais doit être évalué en amont, et mieux pris en compte lors de l'utilisation de données synthétiques pour l'entraînement de l'IA ; des mécanismes d'audit et de correction sont testés[14]. Ils devraient être mis en place pour lutter contre la perpétuation de ces biais (biais de genre, sexisme, racisme plus ou moins inconsciemment introduit dans les recueils de données réelles)[15].

La revue ACM Computing Surveys a publié, en 2022, une revue de la littérature sur le biais des données synthétiques (« Bias in Synthetic Data: A Survey »), qui liste quatre principaux types de biais : biais de représentation, biais de distribution, biais de modèle et biais d'utilisation[16].

La revue Nature Machine Intelligence a publié « The Dangers of Synthetic Data » en 2023, une étude confirmant que les modèles d'IA entraînés sur des données synthétiques biaisées peuvent être biaisés eux-mêmes, avec une expérience montrant comment l'utilisation de données synthétiques biaisées sur le genre a entraîné un modèle d'IA biaisé en défaveur des femmes.

Des données synthétiques trop parfaites ou trop homogènes peuvent entraîner un surapprentissage ou un sous-apprentissage des modèles.

Elles peuvent compromettre la vie privée des individus, si elles contiennent encore des traces ou des indices de certaines données réelles, susceptibles de permettre une ré-identification ou une inférence d'informations personnelles ou « sensibles ». Elles peuvent poser des problèmes éthiques ou juridiques, si elles sont utilisées à des fins malveillantes ou frauduleuses (deep fakes et autres types de fausses nouvelles, usurpations d'identitéetc.).

Les données synthétiques peuvent ne pas être représentatives de la réalité, et in fine alors rendre les modèles d'IA qui se sont entrainés sur ces données, non-performants dans le monde réel. Ceci a été démontré par un article (2023) « The Limitations of Synthetic Data » publié par la revue IEEE Transactions on Pattern Analysis and Machine Intelligence (ici, on a montré qu'un corpus de données synthétiques de visages ne représentait pas la réalité de la diversité des vrais visages).

Prospective et perspectives[modifier | modifier le code]

Ce domaine est en pleine expansion et en évolution rapide, avec dans les année 2020 diverses pistes de recherche et de développement, dont :

Amélioration de la qualité et la diversité des données synthétiques, via des techniques d'IA plus avancées et plus robustes, comme :

  1. les réseaux antagonistes génératifs progressifs (Progressive GAN),
  2. les réseaux antagonistes style-based (StyleGAN),
  3. les réseaux antagonistes auto-encodeurs variationnels (VAE-GAN), etc.

Évaluation affinée de la fidélité, de la capacité à prédire et de la confidentialité des données synthétiques, via des mesures quantitatives et qualitatives, comme le score FID (Fréchet Inception Distance), le score PPL (Perceptual Path Length), le score DP-SGD (Differential Privacy Stochastic Gradient Descent), etc.

Exploration d'applications potentielles et des impacts sociétaux des données synthétiques, en impliquant les parties prenantes et les utilisateurs finaux, en respectant les principes éthiques et juridiques, en sensibilisant et en éduquant le public, etc.

Notes et références[modifier | modifier le code]

  1. a et b Valentin Defour, « Réconcilier IA et privacy grâce aux données synthétiques », sur Rhapsodies Conseil, (consulté le ).
  2. Pascal Jutras-Dubé, Génération de données : de l’anonymisation à la construction de populations synthétiques (mémoire de maîtrise en informatique), Montréal, Université de Montréal, , 79 p. (OCLC 1381013722, hdl 1866/27945).
  3. Anesu Kafesu, « 13 Outils de génération de données synthétiques pour l'entraînement de modèles d'apprentissage automatique », sur Geekflare, (consulté le ).
  4. (en) James Jordon, Lukasz Szpruch, Florimond Houssiau et Mirko Bottarelli, « Synthetic Data -- what, why and how? », .
  5. (en) Hari Prasanna Das, Ryan Tran, Japjot Singh et Xiangyu Yue, « Conditional Synthetic Data Generation for Robust Machine Learning Applications with Limited Pandemic Data », Proceedings of the AAAI Conference on Artificial Intelligence, vol. 36, no 11,‎ , p. 11792–11800 (ISSN 2374-3468 et 2159-5399, DOI 10.1609/aaai.v36i11.21435, lire en ligne, consulté le ).
  6. a b et c La rédaction, « Les “données synthétiques” : primordiales pour la nouvelle ère de l'IA », sur IT for Business, (consulté le ).
  7. Elisa Rahouadj, « L'IA rend les jeux vidéo plus vrais que jamais », sur Journal du Geek, (consulté le ).
  8. (en) Josh Tobin, Rachel Fong, Alex Ray et Jonas Schneider, « Domain randomization for transferring deep neural networks from simulation to the real world », 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), IEEE,‎ (DOI 10.1109/iros.2017.8202133, lire en ligne, consulté le ).
  9. (en) Peiyao Li, Noah Castelo, Zsolt Katona et Miklos Sarvary, « Language Models for Automated Market Research: A New Way to Generate Perceptual Maps », SSRN Electronic Journal,‎ (ISSN 1556-5068, DOI 10.2139/ssrn.4241291, lire en ligne, consulté le ).
  10. (en) German Ros, Laura Sellart, Joanna Materzynska et David Vazquez, « The SYNTHIA Dataset: A Large Collection of Synthetic Images for Semantic Segmentation of Urban Scenes », 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), IEEE,‎ (DOI 10.1109/cvpr.2016.352, lire en ligne, consulté le ).
  11. (en) Alireza Shafaei, James Little et Mark Schmidt, « Play and Learn: Using Video Games to Train Computer Vision Models », Procedings of the British Machine Vision Conference 2016, British Machine Vision Association,‎ (DOI 10.5244/c.30.26, lire en ligne, consulté le ).
  12. « Qu'est-ce que les données synthétiques et l'IA ? », sur Accenture, (consulté le ).
  13. Laurent Delattre, « Jumeau numérique : nouvelle mode ou réelles perspectives ? », sur IT for Business, (consulté le ).
  14. (en) Ajay M. Patrikar, Arjuna Mahenthiran et Ahmad Said, « Leveraging synthetic data for AI bias mitigation », Synthetic Data for Artificial Intelligence and Machine Learning: Tools, Techniques, and Applications, SPIE, vol. 12529,‎ , p. 185–190 (DOI 10.1117/12.2662276, lire en ligne, consulté le ).
  15. Mourad Krim, « Biais dans les données : le induit de l'IA est encore mal appréhendé par les entreprises », sur IT SOCIAL, (consulté le ).
  16. (en) Khaled El Emam, Thomas J. Brunner, Daniel E. Rubinstein et Michael I. Jordan, « Bias in Synthetic Data: A Survey », ACM Computing Surveys,‎ .

Voir aussi[modifier | modifier le code]

Bibliographie[modifier | modifier le code]

  • (en) Zhang, Zhiwei, Synthetic Data for Deep Learning, Springer, (ISBN 978-3-030-30490-4).
  • (en) IGI Global, Synthetic Data: Concepts, Methodologies, Tools and Applications, IGI Global, (ISBN 978-1-7998-2460-2).
  • (en) Gupta, Brij B. et Agrawal, Dharma P., Handbook of Research on Modern Cryptographic Solutions for Computer and Cyber Security, IGI Global, , 221-243 p. (ISBN 978-1-5225-0105-3), « Synthetic Data Generation Techniques for Privacy Preserving Data Publishing ».
  • (en) Alvaro Figueira et Bruno Vaz, « Survey on Synthetic Data Generation, Evaluation Methods and GANs », Mathematics, vol. 10, no 15,‎ , p. 2733 (ISSN 2227-7390, DOI 10.3390/math10152733, lire en ligne, consulté le ).
  • (en) Jonathan Tremblay, Aayush Prakash, David Acuna et Mark Brophy, « Training Deep Networks with Synthetic Data: Bridging the Reality Gap by Domain Randomization », 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), IEEE,‎ (DOI 10.1109/cvprw.2018.00143, lire en ligne, consulté le ).

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]

  • Synthetic Data Vault, une plateforme open source pour la génération de données synthétiques
  • Synthetic Data Generator, une solution cloud pour la création de données synthétiques
  • Synthetic Data Meetup, un groupe de discussion sur les données synthétiques