c't 11/2024
S. 42
Praxis
Datengeneratoren in PyTorch
Bild: KI Midjourney | Collage c’t

Datenlieferant

Dataset-Klassen erschließen Daten für PyTorch

Sollen eigene Daten fürs Training in ein KI-Modell fließen, muss ein bisschen Software sie leiten. Die ist schnell geschrieben, wenn sie auf der Dataset-Klasse von PyTorch aufbaut. Wie das geht, zeigen wir an zwei Beispielen.

Von Pina Merkert

Beim Thema künstliche Intelligenz herrscht Goldgräberstimmung: Es gibt kaum eine Datenquelle, der Data Scientists nicht mit der einen oder anderen KI-Methode zu Leibe rücken, um ihr möglicherweise enthaltene Informationsmuster zu entlocken. Allerdings liegen die Daten nur selten in einem Format vor, das für die Weiterverarbeitung mit KI ideal geeignet ist: Exotische Dateiformate wollen auseinandergedröselt werden. Manche Datensätze sind zu groß, um sie am Stück in den Rechner- oder Grafikkartenspeicher zu laden, und müssen zunächst sinnvoll partitioniert werden. Andere Quellen liefern zu wenige Daten, um damit eine KI sinnvoll zu trainieren – hierbei helfen oft künstlich erzeugte Trainingsdaten.

In KI-Frameworks gibt es für solche und ähnliche Aufgaben sogenannte Datengeneratoren. In PyTorch, der KI-Bibliothek für Python, die wir in dieser Artikelstrecke verwenden, heißt die zuständige Klasse Dataset. Von ihr können Data Scientists eigene Klassen ableiten. Die komplexe Logik, um die Daten effizient in den richtigen Speicher zu bekommen, müssen sie dabei nicht anfassen. Der im Verlauf dieses Artikels entwickelte Code zeigt eine selbst geschriebene Dataset-Klasse, die Bilddateien von der Festplatte liest und an PyTorch weiterreicht. Nach dieser Fingerübung stellen wir Ihnen noch ein Experiment vor, das ergründet, wie robust neuronale Netze gegen mehr oder weniger verfälschte Trainingsdaten sind. Möglich macht das Experiment ebenfalls ein Datengenerator.

Kommentieren