Veröffentlicht: 07. Mai 2024
Mitwirkende: Jacob Murel Ph.D., Eda Kavlakoglu
Bei der Datenerweiterung werden bereits vorhandene Daten verwendet, um neue Datenmuster zu erstellen, die die Modelloptimierung und Verallgemeinerbarkeit verbessern können.
Im allgemeinsten Sinne bezeichnet die Datenerweiterung Methoden zur Ergänzung sogenannter unvollständiger Datensätze durch fehlende Datenpunkte, um die Analysierbarkeit des Datensatzes zu erhöhen.1 Dies zeigt sich beim maschinellen Lernen durch die Erstellung modifizierter Kopien bereits vorhandener Daten, um die Größe und Vielfalt eines Datensatzes zu erhöhen. In Bezug auf das maschinelle Lernen können erweiterte Daten also als künstliche Bereitstellung potenziell fehlender Daten aus der realen Welt verstanden werden.
Die Datenerweiterung verbessert die Optimierung und Verallgemeinerung von Modellen des maschinellen Lernens. Mit anderen Worten, die Datenerweiterung kann die Überanpassung reduzieren und die Robustheit des Modells verbessern.2 Es ist ein Axiom des maschinellen Lernens, dass große, vielfältige Datensätze eine bessere Modellleistung bedeuten. Aus einer Reihe von Gründen – von Ethik und Datenschutz bis hin zum zeitaufwändigen manuellen Zusammentragen der erforderlichen Daten – kann es jedoch schwierig sein, genügend Daten zu beschaffen. Die Datenerweiterung ist ein wirksames Mittel, um den Umfang und die Variabilität des Datensatzes zu erhöhen. In der Tat verwenden Forscher häufig Datenerweiterungen, um unausgewogene Datensätze zu korrigieren.3
Viele Deep-Learning-Frameworks wie PyTorch, Keras und Tensorflow bieten Funktionen zur Anreicherung von Daten, vor allem von Bilddatensätzen. Das Python-Paket Albumentations (verfügbar auf Github) wird auch in vielen Open-Source-Projekten eingesetzt. Albumentations ermöglicht die Anreicherung von Bild- und Textdaten.
Beachten Sie, dass sich die Datenerweiterung von synthetischen Daten unterscheidet. Zugegeben, beides sind generative Algorithmen, die neue Daten zu einer Datensammlung hinzufügen, um die Leistung von Modellen für maschinelles Lernen zu verbessern. Synthetische Daten hingegen beziehen sich auf die automatische Generierung von völlig künstlichen Daten. Ein Beispiel ist die Verwendung von computergenerierten Bildern – im Gegensatz zu realen Daten – zum Trainieren eines Objekterkennungsmodells. Im Gegensatz dazu werden bei der Datenerweiterung vorhandene Daten kopiert und diese Kopien umgewandelt, um die Vielfalt und Menge der Daten in einem bestimmten Satz zu erhöhen.
Erfahren Sie mehr über die Hindernisse bei der Einführung von KI, insbesondere über das Fehlen von Lösungen für KI-Governance und -Risikomanagement.
Registrieren Sie sich, um den Leitfaden zu Foundation Models zu lesen
Es gibt eine Vielzahl von Methoden zur Datenerweiterung. Welche Techniken zur Datenanreicherung verwendet werden, hängt von der Art der Daten ab, mit denen ein Benutzer arbeitet. Beachten Sie, dass die Datenerweiterung normalerweise während der Vorverarbeitung des Trainingsdatensatzes durchgeführt wird. Beachten Sie, dass die Datenerweiterung normalerweise während der Vorverarbeitung des Trainingsdatensatzes durchgeführt wird.4
Die Datenerweiterung wurde in der Forschung für eine Reihe von Computer Vision Aufgaben eingesetzt, von der Bildklassifizierung bis zur Objekterkennung. Daher gibt es eine Fülle von Forschungsergebnissen darüber, wie erweiterte Bilder die Leistung von modernen Convolutional Neural Networks (CNNs) in der Bildverarbeitung verbessern.
Viele Tutorials und nicht-akademische Ressourcen teilen die Bilddatenerweiterung in zwei Kategorien ein: geometrische Transformationen und photometrische (oder Farbraum-) Transformationen. Beide bestehen aus einer relativ einfachen Bilddateimanipulation. Die erste Kategorie bezeichnet Techniken, die den Raum und das Layout des Originalbildes verändern, wie z. B. Größenänderung, Zoomen oder Änderungen der Ausrichtung (z. B. horizontales Spiegeln). Photometrische Transformationen verändern die RGB-Kanäle (rot-grün-blau) eines Bildes. Beispiele für eine photometrische Transformation sind die Anpassung der Sättigung und die Grauskalierung eines Bildes.5
Wie die Rauschinjektion zeigt, deckt die binäre Klassifizierung von Bildverbesserungstechniken in geometrische und photometrische Techniken nicht die gesamte Bandbreite möglicher Verbessungsstrategien ab. Ausgenommen sind Techniken zur Bildverbesserung wie Kernel-Filterung (Schärfen oder Verwischen eines Bildes) und Bildmischung. Ein Beispiel für Letzteres ist das zufällige Zuschneiden und Patchen. Bei dieser Technik werden nach dem Zufallsprinzip Ausschnitte aus mehreren Bildern ausgewählt, um ein neues Bild zu erstellen. Dieses neue Bild ist ein Kompositum aus den abgetasteten Ausschnitten der Eingabebilder. Eine verwandte Technik ist das zufällige Löschen, bei dem ein zufälliger Teil eines Bildes gelöscht wird.8 Solche Aufgaben sind bei der Bilderkennung nützlich, denn in der Praxis kann es vorkommen, dass Maschinen teilweise verdeckte Objekte erkennen müssen.
Die Erweiterung auf Instanzebene ist eine weitere Erweiterung. Bei der Augmentation auf Instanzebene werden im Wesentlichen beschriftete Regionen (z. B. Bounding Boxes) aus einem Bild kopiert und in ein anderes Bild eingefügt. Bei einem solchen Ansatz wird das Bild darauf trainiert, Objekte vor verschiedenen Hintergründen sowie durch andere Objekte verdeckte Objekte zu erkennen. Die Augmentation auf Instanzebene ist ein besonders hervorstechender Ansatz für regionsspezifische Erkennungsaufgaben, wie z. B. Objekterkennung und Bildsegmentierungsaufgaben.9
Wie bei der Bilderweiterung gibt es auch bei der Textdatenerweiterung viele Techniken und Methoden, die bei einer Reihe von Aufgaben der Verarbeitung natürlicher Sprache (Natural Language Processing, NLP) eingesetzt werden. In einigen Ressourcen wird die Textergänzung in regelbasierte (oder „einfache“) und in neuronale Methoden unterteilt. Wie bei der binären Einteilung der Techniken zur Bildverbesserung ist diese Kategorisierung natürlich nicht allumfassend.
Zu den regelbasierten Ansätzen gehören relativ einfache Such- und Ersetzungstechniken, wie z. B. das zufällige Löschen oder Einfügen. Regelbasierte Ansätze umfassen auch die Ersetzung von Synonymen. Bei dieser Strategie werden ein oder mehrere Wörter in einer Zeichenkette durch ihre jeweiligen Synonyme ersetzt, die in einem vordefinierten Thesaurus wie WordNet oder der Paraphrase Database gespeichert sind. Satzinversion und Passivierung, bei denen Objekt und Subjekt vertauscht werden, sind ebenfalls Beispiele für regelbasierte Ansätze.10
Neuronale Methoden verwenden neuronale Netzwerke, um aus den Eingabedaten neue Textmuster zu erzeugen. Eine bemerkenswerte neuronale Methode ist die Rückübersetzung. Dabei werden Eingabedaten mit Hilfe der maschinellen Übersetzung in eine Zielsprache und anschließend wieder in die ursprüngliche Eingabesprache übersetzt. Auf diese Weise nutzt die Rückübersetzung sprachliche Abweichungen, die sich aus automatischen Übersetzungen ergeben, um semantische Abweichungen im einsprachigen Datensatz zum Zweck der Erweiterung zu generieren. Die Forschung zeigt, dass dies die Leistung von maschinellen Übersetzungsmodellen verbessert.11
Das Verwechseln von Texterweiterungen ist eine weitere Strategie. Bei diesem Ansatz werden regelbasierte Lösch- und Einfügemethoden mit Hilfe von Einbettungen in neuronalen Netzwerken eingesetzt. Konkret erzeugen vorab trainierte Transformatoren (z. B. BERT) Einbettungen von Text auf Wort- oder Satzebene und wandeln den Text in Vektorpunkte um, wie in einem Bag-of-Words-Modell. Die Transformation von Text in Vektorpunkte zielt im Allgemeinen darauf ab, sprachliche Ähnlichkeit zu erfassen, d. h. es wird davon ausgegangen, dass Wörter oder Sätze, die im Vektorraum näher beieinander liegen, ähnliche Bedeutungen oder Häufigkeiten haben. Bei der Mischungserweiterung werden Textstrings innerhalb eines bestimmten Abstands zueinander interpoliert, um neue Daten zu erzeugen, die ein Aggregat der Eingabedaten sind.12
Viele Benutzer tun sich schwer damit, herauszufinden, welche Strategien zur Datenerweiterung eingesetzt werden sollen. Unterscheiden sich die Techniken zur Datenerweiterung in ihrer Wirksamkeit je nach Datensatz und Aufgabe? Vergleichende Untersuchungen zu Datenanreicherungstechniken legen nahe, dass mehrere Formen der Anreicherung eine größere positive Wirkung haben als eine einzige, aber die Bestimmung der optimalen Kombination von Techniken ist abhängig vom Datensatz und von der Aufgabe.13 Aber wie wählt man die optimalen Techniken aus?
Um dieses Problem zu lösen, hat sich die Forschung der automatischen Datenerweiterung zugewandt. Ein automatischer Augmentierungsansatz verwendet Verstärkungslernen, um Augmentierungstechniken zu identifizieren, die die höchste Validierungsgenauigkeit für einen gegebenen Datensatz liefern.14 Dieser Ansatz hat gezeigt, dass Strategien implementiert werden können, die die Leistung sowohl bei Daten innerhalb als auch außerhalb der Stichprobe verbessern.15 Ein weiterer vielversprechender Ansatz zur automatischen Augmentierung identifiziert und ergänzt falsch-positive Ergebnisse von Klassifikatoren. Auf diese Weise identifiziert die automatische Augmentation die besten Strategien zur Korrektur häufig falsch klassifizierter Elemente.16
In jüngerer Zeit hat sich die Forschung generativen Netzwerken und Modellen zugewandt, um aufgabenabhängige17 und klassenabhängige18 optimale Augmentationsstrategien zu identifizieren. Dazu gehört auch die Arbeit mit generativen adversarischen Netzwerken (GANs). GANs sind Deep-Learning-Netzwerke, die in der Regel zur Generierung synthetischer Daten verwendet werden, und aktuelle Forschungsergebnisse untersuchen ihre Verwendung zur Datenerweiterung. Einige Experimente deuten zum Beispiel darauf hin, dass synthetische Datenerweiterungen von medizinischen Bildsätzen die Klassifizierungsleistung19 und Segmentierungsleistung20 von Modellen stärker verbessern als klassische Erweiterungen. In diesem Zusammenhang nutzt die Forschung im Bereich der Texterweiterung große Sprachmodelle (LLMs) und Chatbots, um erweiterte Daten zu generieren. In diesen Experimenten werden LLMs verwendet, um mit Hilfe von Verwechslungs- und Synonymisierungstechniken erweiterte Stichproben von Eingabedaten zu generieren. Dabei zeigt sich ein größerer positiver Einfluss auf Textklassifizierungsmodelle als bei der klassischen Augmentation.21
Forscher und Entwickler setzen beim Training von Modellen für verschiedene Aufgaben des maschinellen Lernens häufig Techniken zur Datenerweiterung ein. Im Gegensatz dazu sind synthetische Daten ein vergleichsweise neues Forschungsgebiet. Vergleichende Experimente mit synthetischen und realen Daten zeigen gemischte Ergebnisse, wobei Modelle, die ausschließlich auf synthetischen Daten trainiert wurden, manchmal besser und manchmal schlechter abschneiden als Modelle, die auf realen Daten trainiert wurden. Es überrascht vielleicht nicht, dass diese Forschungsergebnisse darauf hindeuten, dass synthetische Daten am nützlichsten sind, wenn sie die Merkmale realer Daten widerspiegeln.22
Künstlich durch Computersimulationen oder durch Algorithmen erzeugt, können synthetische Daten als Alternative oder Ergänzung zu realen Daten verwendet werden, wenn diese nicht ohne weiteres verfügbar sind; sie können auch bei Data-Science-Experimenten helfen.
Synthetische Daten sind Informationen, die auf einem Computer erzeugt werden, um reale Daten zum Testen und Trainieren von KI-Modellen zu ergänzen oder zu ersetzen.
Kombinieren Sie traditionelle und Big-Data-Technologien, um die Effektivität bestehender Data Warehouses zu maximieren und zu erweitern.
f Martin Tanner und Wing Hung Wong, „The Calculation of Posterior Distributions by Data Augmentation“, Journal of the American Statistical Association, Band 82, Nr. 398 (1987), S. 528–540.
2 Sylvestre-Alvise Rebuffi, Sven Gowal, Dan Andrei Calian, Florian Stimberg, Olivia Wiles und Timothy A Mann, „Data Augmentation Can Improve Robustness“, Advances in Neural Information Processing Systems, Band 34, 2021, https://proceedings.neurips.cc/paper_files/paper/2021/hash/fb4c48608ce8825b558ccf07169a3421-Abstract.html.
3 Manisha Saini und Seba Susan, „Tackling class imbalance in computer vision: A contemporary review“, Artificial Intelligence Review, Band 54, 2023, https://link.springer.com/article/10.1007/s10462-023-10557-6.
4 Fabio Perez, Cristina Vasconcelos, Sandra Avila und 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 und 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 und Dong Sun Park, „A Comprehensive Survey of Image Augmentation Techniques for Deep Learning“, Patter Recognition, Band 137, https://www.sciencedirect.com/science/article/pii/S0031320323000481.
8 Connor Shorten und 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 und 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 und Thomas S. Huang, „Towards Instance-Level Image-To-Image Translation“, Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2019, S. 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 und 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, S. 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 und 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 und Tal Linzen, „Syntactic Data Augmentation Increases Robustness to Inference Heuristics“, Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, 2020, S. 2339–2352, https://aclanthology.org/2020.acl-main.212/.
11 Connor Shorten, Taghi M. Khoshgoftaar und 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 und Alexandra Birch, „Improving Neural Machine Translation Models with Monolingual Data“, Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics, 2016, S. 86–96, https://aclanthology.org/P16-1009/.
12 Connor Shorten, Taghi M. Khoshgoftaar und 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 und 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 und 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 und Furao Shen, „Image Data Augmentation for Deep Learning: A Survey“, 2023, https://arxiv.org/pdf/2204.08610.pdf. Alhassan Mumuni und Fuseini Mumuni, „Data augmentation: A comprehensive survey of modern approaches“, Array, Band 16, 2022, https://www.sciencedirect.com/science/article/pii/S2590005622000911. Evgin Goveri, „Medical image data augmentation: techniques, comparisons and interpretations“, Artificial Intelligence Review, Band 56, 2023, S. 12561–12605, https://link.springer.com/article/10.1007/s10462-023-10453-z.
14 Ekin D. Cubuk, Barret Zoph, Dandelion Mane, Vijay Vasudevan und Quoc V. Le, „AutoAugment: Learning Augmentation Strategies From Data“, Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2019, S. 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 und 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 und Mong Li Lee, „Explanation-based Data Augmentation for Image Classification“, Advances in Neural Information Processing Systems, Band 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 und 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 und 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 und Hayit Greenspan, „GAN-based synthetic medical image augmentation for increased CNN performance in liver lesion classification“, Neurocomputing, 2018, S. 321–331, https://www.sciencedirect.com/science/article/abs/pii/S0925231218310749.
20 Veit Sandfort, Ke Yan, Perry Pickhardt und 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 und Woomyoung Park, „GPT3Mix: Leveraging Large-scale Language Models for Text Augmentation“, Findings of the Association for Computational Linguistics: EMNLP 2021, S. 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 und Xiang Li, „AugGPT: Leveraging ChatGPT for Text Data Augmentation“, 2023, https://arxiv.org/abs/2302.13007.
22 Bram Vanherle, Steven Moonen, Frank Van Reeth und 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 und Pierre Nugues, „Object Detector Differences When Using Synthetic and Real Training Data“, SN Computer Science, Band 4, 2023, https://link.springer.com/article/10.1007/s42979-023-01704-5. Lei Kang, Marcal Rusinol, Alicia Fornes, Pau Riba und 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, S. 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.