L’augmentation des données s’appuie sur des données préexistantes pour créer de nouveaux échantillons de données qui peuvent améliorer l’optimisation et la généralisation des modèles.
Dans son sens le plus général, l’augmentation des données désigne des méthodes permettant de compléter des jeux de données dits incomplets en fournissant des points de données manquants afin d’augmenter l’analysabilité du jeu de données.1 On l’observe dans le domaine du machine learning, en générant des copies modifiées de données préexistantes pour augmenter la taille et la diversité d’un jeu de données. Ainsi, en ce qui concerne le machine learning, les données augmentées peuvent être comprises comme fournissant artificiellement des données du monde réel potentiellement absentes.
L’augmentation des données améliore l’optimisation et la généralisation des modèles de machine learning. En d’autres termes, l’augmentation des données peut réduire le surajustement et améliorer la robustesse du modèle.2 Ces grands jeux de données diversifiés se traduisant par une performance améliorée des modèles sont un axiome du machine learning. Néanmoins, pour un certain nombre de raisons, des questions d’éthique et de confidentialité à la simple compilation manuelle des données nécessaires, il peut être difficile d’acquérir des données suffisantes. L’augmentation des données constitue un moyen efficace d’augmenter la taille et la variabilité des jeux de données. D’ailleurs, les chercheurs ont généralement recours à l’augmentation des données pour corriger des jeux de données déséquilibrés.3
De nombreux cadres d’apprentissage profond, tels que PyTorch, Keras et Tensorflow, proposent des fonctions permettant d’augmenter les données, principalement les jeux de données d’images. Le paquet Python Ablumentations (disponible sur Github) est également adopté dans de nombreux projets open source. Ablumentations permet d’enrichir les données d’images et de textes.
L’augmentation des données est distincte des données synthétiques. Il est vrai que les deux sont des algorithmes génératifs qui ajoutent de nouvelles données à une collection de données afin d’améliorer les performances des modèles de machine learning. Les données synthétiques, quant à elles, font référence à la génération automatique de données entièrement artificielles : par exemple, l’utilisation d’images générées par ordinateur, par opposition aux données du monde réel, pour entraîner un modèle de détection d’objets. En revanche, l’augmentation de données copie les données existantes et transforme ces copies pour accroître la diversité et la quantité de données dans un ensemble précis.
Il existe différentes méthodes d’augmentation des données. Les techniques spécifiques utilisées pour augmenter les données dépendent de la nature des données avec lesquelles l’utilisateur travaille. Notez que l’augmentation des données est généralement mise en œuvre lors du prétraitement d’un jeu de données entraîné. Certaines études s’intéressent à l’effet de l’augmentation sur l’ensemble de validation ou de test, mais les applications de l’augmentation en dehors des jeux entraînés sont plus rares.4
L’augmentation des données a été largement mise en œuvre dans la recherche pour toute une série de tâches de vision par ordinateur, de la classification d’images à la détection d’objets. À ce titre, de nombreuses recherches expliquent comment les images augmentées améliorent les performances des réseaux neuronaux convolutifs de pointe dans le traitement des images.
Bon nombre de tutoriels et ressources non académiques classent l’augmentation des données d’images en deux catégories : les transformations géométriques et les transformations photométriques (ou espaces colorimétriques). Les deux consistent en une manipulation de fichiers image relativement simple. La première catégorie regroupe les techniques qui modifient l’espace et la disposition de l’image originale, comme le redimensionnement, le zoom ou les changements d’orientation (par exemple, le retournement horizontal). Les transformations photométriques modifient les canaux RVB (rouge-vert-bleu) d’une image. Parmi les exemples de transformation photométrique, citons le réglage de la saturation et la mise en niveaux de gris d’une image.5
Certaines sources catégorisent l’injection de bruit avec les transformations géométriques6, tandis que d’autres la classent avec les transformations photométriques.7 L’injection de bruit intègre des pixels noirs, blancs ou de couleur de manière aléatoire dans une image selon une loi normale.
Comme l’illustre l’injection de bruit, la classification binaire des techniques d’augmentation d’image en lien avec les transformations géométriques et photométriques ne couvre pas toutes les stratégies d’augmentation possibles. Les techniques d’augmentation d’image exclues sont le filtrage de noyau (affiner ou rendre une image floue) et le mélange d’images. Un exemple de cette dernière option est le rognage et l’application de correctifs aléatoires. Cette technique échantillonne de manière aléatoire des sections de plusieurs images pour en créer une nouvelle. Cette nouvelle image est un composite créé à partir des sections échantillonnées des images d’entrée. L’effacement aléatoire est une technique connexe qui supprime une partie aléatoire d’une image.8 Ces tâches sont utiles pour la reconnaissance d’images, car les cas d’utilisation réels peuvent nécessiter que des machines identifient des objets partiellement obscurcis.
L’augmentation au niveau d’une instance est un autre type d’augmentation. L’augmentation au niveau de l’instance copie essentiellement des régions étiquetées (par exemple, des cadres de délimitation) à partir d’une image et les insère dans une autre. Une telle approche entraîne l’image à identifier des objets sur différents arrière-plans ainsi que des objets masqués par d’autres objets. L’augmentation au niveau de l’instance est une approche particulièrement importante pour les tâches de reconnaissance dans une région donnée, comme la détection d’objets et les tâches de segmentation d’images.9
À l’instar de l’augmentation d’image, l’augmentation de données de texte se compose de nombreuses techniques et méthodes utilisées dans une gamme de tâches de traitement automatique du langage naturel (NLP). Quelques ressources divisent l’augmentation de texte en méthodes basées sur des règles (ou « faciles ») et neuronales. Bien sûr, comme pour la division binaire des techniques d’augmentation d’image, cette catégorisation n’est pas exhaustive.
Les approches basées sur des règles comprennent des techniques de recherche et de remplacement relativement simples, comme la suppression ou l’insertion aléatoire. Elles englobent également le remplacement de synonyme. Dans cette stratégie, un ou plusieurs mots d’une chaîne sont remplacés par leurs synonymes respectifs, tels qu’ils sont enregistrés dans un thésaurus prédéfini, comme WordNet ou la base de données Paraphrase. L’inversion de phrase et la transformation passive, processus qui consiste à permuter l’objet et le sujet, sont également des exemples d’approches basées sur des règles.10
Selon leur classification, les méthodes neuronales utilisent des réseaux neuronaux pour générer de nouveaux échantillons de texte à partir des données d’entrée. Une méthode neuronale notable est la rétrotraduction. Elle utilise la traduction automatique pour traduire les données d’entrée dans une langue cible, puis dans la langue d’entrée d’origine. De cette façon, la rétrotraduction exploite les variances linguistiques qui aboutissent à des traductions automatiques pour générer des variances sémantiques dans un jeu de données unilingues à des fins d’augmentation. Les recherches suggèrent que cette méthode est efficace pour améliorer les performances d’un modèle de traduction automatique.11
Les augmentations de texte mixtes constituent une autre stratégie. Cette approche déploie des méthodes de suppression et d’insertion basées sur des règles à l’aide d’intégrations de réseaux neuronaux. Plus précisément, les mécanismes pré-entraînés (par exemple, BERT) génèrent des intégrations de texte au niveau des mots ou des phrases, transformant le texte en points vectoriels, comme dans un modèle de bag of words. La transformation du texte en points vectoriels vise généralement à capturer la similitude linguistique, c’est-à-dire que les mots ou les phrases les plus proches dans l’espace vectoriel sont censés partager une signification ou une fréquence similaire. L’augmentation par mélange interpole les chaînes de texte à une distance spécifiée les unes des autres pour produire de nouvelles données regroupant les données d’entrée.12
De nombreux utilisateurs ont du mal à identifier les stratégies d’augmentation des données à mettre en œuvre. Les techniques d’augmentation des données varient-elles en efficacité entre les jeux de données et les tâches ? Des recherches comparatives sur les techniques d’augmentation des données suggèrent que plusieurs formes d’augmentation ont un impact positif plus important qu’une seule, mais la détermination de la combinaison optimale de techniques dépend du jeu de données et de la tâche.13 Mais comment sélectionner les techniques optimales ?
Pour résoudre ce problème, les recherches se sont tournées vers l’augmentation automatique des données. Une approche d’augmentation automatisée utilise l’apprentissage par renforcement pour identifier les techniques d’augmentation qui renvoient la plus grande précision de validation sur un jeu de données précis.14 Cette approche a permis de mettre en œuvre des stratégies qui améliorent les performances sur les données dans et hors de l’échantillon.15 Une autre approche prometteuse de l’augmentation automatisée identifie et augmente les faux positifs à partir des sorties du classificateur. De cette manière, l’augmentation automatique identifie les meilleures stratégies pour corriger les éléments fréquemment mal classés.16
Plus récemment, les recherches se sont tournées vers les réseaux et les modèles génératifs pour identifier les stratégies d’augmentation optimales dépendantes de la tâche17 et de la classe18. Cela inclut le travail avec des réseaux antagonistes génératifs (GAN). Les GAN sont des réseaux d’apprentissage profond généralement utilisés pour générer des données synthétiques, et des recherches récentes étudient leur utilisation dans le cadre de l’augmentation des données. Quelques expériences, par exemple, suggèrent que les augmentations de données synthétiques des ensembles d’images médicales améliorent les performances des modèles de classification19 et de segmentation20 plus que les augmentations classiques. De la même façon, la recherche sur l’augmentation de texte s’appuie sur de grands modèles de langage (LLM) et des chatbots pour générer des données augmentées. Ces expériences utilisent des LLM pour générer des échantillons augmentés de données d’entrée avec des techniques de mélange et de synonymisation, montrant un impact positif plus important sur les modèles de classification de texte que l’augmentation classique.21
Les chercheurs et les développeurs s’appuient régulièrement sur les techniques d’augmentation de données lors de l’entraînement de modèles pour diverses tâches de machine learning. En revanche, les données synthétiques sont un domaine de recherche relativement plus récent. Les expériences comparatives sur des données synthétiques par rapport à des données réelles montrent des résultats mitigés, les modèles entraînés entièrement sur des données synthétiques étant parfois plus performants, parfois moins performants que les modèles entraînés sur des données du monde réel. Sans surprise, cette recherche suggère que les données synthétiques sont plus utiles lorsqu’elles reflètent les caractéristiques des données du monde réel.22
Obtenez des informations uniques sur l’évolution des solutions ABI, mettant en évidence les principales conclusions, hypothèses et recommandations pour les responsables des données et de l’analytique.
Simplifiez l’accès aux données et automatisez la gouvernance des données. Découvrez la puissance de l’intégration d’une stratégie de data lakehouse dans votre architecture de données, notamment l’optimisation des coûts de vos workloads et le dimensionnement de l’IA et des analyses, avec toutes vos données, partout.
Explorez le guide pour les responsables des données sur le développement d’une organisation axée sur les données et d’un avantage métier.
Découvrez comment une approche de type data lakehouse ouvert peut fournir des données fiables et accélérer l’exécution des analyses et des projets d’IA.
Alignez votre stratégie de données et d’analyse sur les objectifs de l’entreprise grâce à ces quatre étapes clés.
Examinez de plus près les raisons pour lesquelles les défis en matière de business intelligence peuvent persister et ce qu’ils signifient pour les utilisateurs au sein d’une organisation.
Pour prospérer, les entreprises doivent exploiter les données pour fidéliser leur clientèle, automatiser les processus métier et innover avec des solutions pilotées par l’IA.
Avec IBM Consulting, exploitez les données de votre entreprise et développez une organisation basée sur les informations pour tirer des avantages métier.
Découvrez Cognos Analytics 12.0, des informations alimentées par l’IA pour une prise de décision plus éclairée.
f Martin Tanner et Wing Hung Wong, « The Calculation of Posterior Distributions by Data Augmentation », Journal of the American Statistical Association, vol. 82, n° 398 (1987), p. 528-540.
2 Sylvestre-Alvise Rebuffi, Sven Gowal, Dan Andrei Calian, Florian Stimberg, Olivia Wiles et Timothy A Mann, « Data Augmentation Can Improve Robustness », Advances in Neural Information Processing Systems, vol. 34, 2021, https://proceedings.neurips.cc/paper_files/paper/2021/hash/fb4c48608ce8825b558ccf07169a3421-Abstract.html.
3 Manisha Saini et Seba Susan, « Tackling class imbalance in computer vision: A contemporary review », Artificial Intelligence Review, vol. 54, 2023, https://link.springer.com/article/10.1007/s10462-023-10557-6.
4 Fabio Perez, Cristina Vasconcelos, Sandra Avila et Eduardo Valle, « Data Augmentation for Skin Lesion Analysis », OR 2.0 Context-Aware Operating Theaters, Computer Assisted Robotic Endoscopy, Clinical Image-Based Procedures, and Skin Image Analysis, 2018, https://link.springer.com/chapter/10.1007/978-3-030-01201-4_33.
5 Connor Shorten and Taghi M. Khoshgoftaa, « A survey on Image Data Augmentation for Deep Learning, » Journal of Big Data, 2019, https://journalofbigdata.springeropen.com/articles/10.1186/s40537-019-0197-0.
6 Duc Haba, Data Augmentation with Python, Packt Publishing, 2023.
7 Mingle Xu, Sook Yoon, Alvaro Fuentes, and Dong Sun Park, « A Comprehensive Survey of Image Augmentation Techniques for Deep Learning, » Patter Recognition, Vol. 137, https://www.sciencedirect.com/science/article/pii/S0031320323000481.
8 Connor Shorten and Taghi M. Khoshgoftaa, « A survey on Image Data Augmentation for Deep Learning, » Journal of Big Data, 2019, https://journalofbigdata.springeropen.com/articles/10.1186/s40537-019-0197-0. Terrance DeVries and Graham W. Taylor, « Improved Regularization of Convolutional Neural Networks with Cutout, » 2017, https://arxiv.org/abs/1708.04552.
9 Zhiqiang Shen, Mingyang Huang, Jianping Shi, Xiangyang Xue, and Thomas S. Huang, « Towards Instance-Level Image-To-Image Translation, » Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2019, p. 3683-3692, https://openaccess.thecvf.com/content_CVPR_2019/html/Shen_Towards_Instance-Level_Image-To-Image_Translation_CVPR_2019_paper.html. Golnaz Ghiasi, Yin Cui, Aravind Srinivas, Rui Qian, Tsung-Yi Lin, Ekin D. Cubuk, Quoc V. Le et Barret Zoph, « Simple Copy-Paste Is a Strong Data Augmentation Method for Instance Segmentation », Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2021, p. 2918-2928, https://openaccess.thecvf.com/content/CVPR2021/html/Ghiasi_Simple_Copy-Paste_Is_a_Strong_Data_Augmentation_Method_for_Instance_CVPR_2021_paper.html.
10 Connor Shorten, Taghi M. Khoshgoftaar and Borko Furht, « Text Data Augmentation for Deep Learning, » Journal of Big Data, 2021, https://journalofbigdata.springeropen.com/articles/10.1186/s40537-021-00492-0. Junghyun Min, R. Thomas McCoy, Dipanjan Das, Emily Pitler et Tal Linzen, « Syntactic Data Augmentation Increases Robustness to Inference Heuristics », Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, 2020, p. 2339-2352, https://aclanthology.org/2020.acl-main.212/.
11 Connor Shorten, Taghi M. Khoshgoftaar, and Borko Furht, « Text Data Augmentation for Deep Learning, » Journal of Big Data, 2021, https://journalofbigdata.springeropen.com/articles/10.1186/s40537-021-00492-0. Rico Sennrich, Barry Haddow et Alexandra Birch, « Improving Neural Machine Translation Models with Monolingual Data », Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics, 2016, p. 86-96, https://aclanthology.org/P16-1009/.
12 Connor Shorten, Taghi M. Khoshgoftaar, and Borko Furht, « Text Data Augmentation for Deep Learning, » Journal of Big Data, 2021, https://journalofbigdata.springeropen.com/articles/10.1186/s40537-021-00492-0. Lichao Sun, Congying Xia, Wenpeng Yin, Tingting Liang, Philip Yu, and Lifang He, « Mixup-Transformer: Dynamic Data Augmentation for NLP Tasks, » Proceedings of the 28th International Conference on Computational Linguistics, 2020, https://aclanthology.org/2020.coling-main.305/. Hongyu Guo, Yongyi Mao, and Richong Zhang, « Augmenting Data with Mixup for Sentence Classification: An Empirical Study, » 2019. https://arxiv.org/abs/1905.08941.
13 Suorong Yang, Weikang Xiao, Mengchen Zhang, Suhan Guo, Jian Zhao, and Furao Shen, « Image Data Augmentation for Deep Learning: A Survey, » 2023, https://arxiv.org/pdf/2204.08610.pdf. Alhassan Mumuni and Fuseini Mumuni, « Data augmentation: A comprehensive survey of modern approaches, » Array, Vol. 16, 2022, https://www.sciencedirect.com/science/article/pii/S2590005622000911. Evgin Goveri, « Medical image data augmentation: techniques, comparisons and interpretations, » Artificial Intelligence Review, Vol. 56, 2023, p. 12561-12605, https://link.springer.com/article/10.1007/s10462-023-10453-z.
14 Ekin D. Cubuk, Barret Zoph, Dandelion Mane, Vijay Vasudevan, and Quoc V. Le, « AutoAugment: Learning Augmentation Strategies From Data, » Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2019, p. 113-123, https://openaccess.thecvf.com/content_CVPR_2019/papers/Cubuk_AutoAugment_Learning_Augmentation_Strategies_From_Data_CVPR_2019_paper.pdf.
15 Barret Zoph, Ekin D. Cubuk, Golnaz Ghiasi, Tsung-Yi Lin, Jonathon Shlens, and Quoc V. Le, « Learning Data Augmentation Strategies for Object Detection, » Proceedings of the 16th European Conference on Computer Vision, 2020, https://link.springer.com/chapter/10.1007/978-3-030-58583-9_34.
16 Sandareka Wickramanayake, Wynne Hsu, and Mong Li Lee, « Explanation-based Data Augmentation for Image Classification, » Advances in Neural Information Processing Systems, Vol. 34, 2021, https://proceedings.neurips.cc/paper_files/paper/2021/hash/af3b6a54e9e9338abc54258e3406e485-Abstract.html.
17 rishna Chaitanya, Neerav Karani, Christian F. Baumgartner, Anton Becker, Olivio Donati, and Ender Konukoglu, « Semi-supervised and Task-Driven Data Augmentation, » Proceedings of the 26th International Conference on Information Processing in Medical Imaging, 2019, https://link.springer.com/chapter/10.1007/978-3-030-20351-1_3.
18 Cédric Rommel, Thomas Moreau, Joseph Paillard, and Alexandre Gramfort, « ADDA: Class-wise Automatic Differentiable Data Augmentation for EEG Signals, » International Conference on Learning Representations, 2022, https://iclr.cc/virtual/2022/poster/7154.
19 Maayan Frid-Adar, Idit Diamant, Eyal Klang, Michal Amitai, Jacob Goldberger, and Hayit Greenspan, « GAN-based synthetic medical image augmentation for increased CNN performance in liver lesion classification, » Neurocomputing, 2018, p. 321-331, https://www.sciencedirect.com/science/article/abs/pii/S0925231218310749.
20 Veit Sandfort, Ke Yan, Perry Pickhardt, and Ronald Summers, « Data augmentation using generative adversarial networks (CycleGAN) to improve generalizability in CT segmentation tasks, » Scientific Reports, 2019, https://www.nature.com/articles/s41598-019-52737-x.
21 Kang Min Yoo, Dongju Park, Jaewook Kang, Sang-Woo Lee, and Woomyoung Park, « GPT3Mix: Leveraging Large-scale Language Models for Text Augmentation, » Findings of the Association for Computational Linguistics: EMNLP 2021, p. 2225-2239, https://aclanthology.org/2021.findings-emnlp.192/. Haixing Dai, Zhengliang Liu, Wenxiong Liao, Xiaoke Huang, Yihan Cao, Zihao Wu, Lin Zhao, Shaochen Xu, Wei Liu, Ninghao Liu, Sheng Li, Dajiang Zhu, Hongmin Cai, Lichao Sun, Quanzheng Li, Dinggang Shen, Tianming Liu, and Xiang Li, « AugGPT: Leveraging ChatGPT for Text Data Augmentation, » 2023, https://arxiv.org/abs/2302.13007.
22 Bram Vanherle, Steven Moonen, Frank Van Reeth, and Nick Michiels, « Analysis of Training Object Detection Models with Synthetic Data, » 33rd British Machine Vision Conference, 2022, https://bmvc2022.mpi-inf.mpg.de/0833.pdf. Martin Georg Ljungqvist, Otto Nordander, Markus Skans, Arvid Mildner, Tony Liu, and Pierre Nugues, « Object Detector Differences When Using Synthetic and Real Training Data, » SN Computer Science, Vol. 4, 2023, https://link.springer.com/article/10.1007/s42979-023-01704-5. Lei Kang, Marcal Rusinol, Alicia Fornes, Pau Riba, and Mauricio Villegas, « Unsupervised Writer Adaptation for Synthetic-to-Real Handwritten Word Recognition, » Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision (WACV), 2020, p. 3502-3511, https://openaccess.thecvf.com/content_WACV_2020/html/Kang_Unsupervised_Writer_Adaptation_for_Synthetic-to-Real_Handwritten_Word_Recognition_WACV_2020_paper.html.