5 Gründe, warum Sie synthetische Daten benötigen

5 Gründe, warum Sie synthetische Daten benötigen

Quellknoten: 1942868

5 Gründe, warum Sie synthetische Daten benötigen
Synthetische Daten generiert aus Kubric
 

Um ein maschinelles Lernmodell zu trainieren, benötigen Sie Daten. Data-Science-Aufgaben sind normalerweise kein Kaggle-Wettbewerb, bei dem Sie einen schön großen, kuratierten Datensatz haben, der vorbeschriftet ist. Manchmal müssen Sie Ihre eigenen Daten sammeln, organisieren und bereinigen. Dieser Prozess des Sammelns und Kennzeichnens von Daten in der realen Welt kann zeitaufwändig, umständlich, teuer, ungenau und manchmal gefährlich sein. Darüber hinaus können Sie am Ende dieses Prozesses mit den Daten enden, denen Sie in der realen Welt begegnet sind, die nicht unbedingt die Daten sind, die Sie in Bezug auf Qualität, Vielfalt (z. B. Klassenungleichgewicht) und Quantität haben möchten. Im Folgenden sind häufige Probleme aufgeführt, auf die Sie bei der Arbeit mit echten Daten stoßen können: 

  • Echte Datenerfassung und Kennzeichnung sind nicht skalierbar
  • Echte Daten manuell zu kennzeichnen kann manchmal unmöglich sein
  • Echte Daten haben Datenschutz- und Sicherheitsprobleme
  • Echte Daten sind nicht programmierbar
  • Ein ausschließlich auf realen Daten trainiertes Modell ist nicht performant genug (z. B. langsame Entwicklungsgeschwindigkeit)

Glücklicherweise lassen sich solche Probleme mit synthetischen Daten lösen. Sie fragen sich vielleicht, was sind synthetische daten? Synthetische Daten können als künstlich erzeugte Daten definiert werden, die typischerweise mithilfe von Algorithmen erstellt werden, die reale Prozesse simulieren, vom Verhalten anderer Verkehrsteilnehmer bis hin zum Verhalten von Licht bei der Interaktion mit Oberflächen. Dieser Beitrag geht auf die Einschränkungen von Daten aus der realen Welt ein und erläutert, wie synthetische Daten dazu beitragen können, diese Probleme zu überwinden und die Modellleistung zu verbessern. 

Bei kleinen Datensätzen ist es normalerweise möglich, Daten zu sammeln und manuell zu kennzeichnen; Viele komplexe maschinelle Lernaufgaben erfordern jedoch riesige Datensätze für das Training. Zum Beispiel benötigen Modelle, die für autonome Fahrzeuganwendungen trainiert wurden, große Datenmengen, die von Sensoren gesammelt werden, die an Autos oder Drohnen angebracht sind. Dieser Datenerfassungsprozess ist langsam und kann Monate oder sogar Jahre dauern. Sobald die Rohdaten gesammelt sind, müssen sie von Menschen manuell kommentiert werden, was ebenfalls teuer und zeitaufwändig ist. Darüber hinaus gibt es keine Garantie dafür, dass die zurückgegebenen markierten Daten als Trainingsdaten nützlich sind, da sie möglicherweise keine Beispiele enthalten, die die aktuellen Wissenslücken des Modells aufklären. 

[eingebetteter Inhalt][eingebetteter Inhalt]

Um diese Daten zu kennzeichnen, müssen Menschen häufig von Hand Etiketten auf Sensordaten zeichnen. Dies ist sehr kostspielig, da hochbezahlte ML-Teams oft einen großen Teil ihrer Zeit damit verbringen, sicherzustellen, dass Etiketten korrekt sind, und Fehler an die Etikettierer zurücksenden. Eine große Stärke synthetischer Daten besteht darin, dass Sie so viele perfekt gekennzeichnete Daten generieren können, wie Sie möchten. Alles, was Sie brauchen, ist eine Möglichkeit, qualitativ hochwertige synthetische Daten zu generieren. 

Open-Source-Software zur Generierung synthetischer Daten: Kubric (Multi-Objekt-Videos mit Segmentierungsmasken, Tiefenkarten und optischem Fluss) und SDV (Tabellen-, relationale und Zeitreihendaten).

Einige (von vielen) Unternehmen, die Produkte verkaufen oder Plattformen bauen, die synthetische Daten generieren können, umfassen Gretel.ai (synthetische Datensätze, die den Schutz echter Daten gewährleisten), NVIDIA (Omniversum) und Parallele Domäne (autonome Fahrzeuge). Für mehr, siehe die 2022-Liste der Unternehmen für synthetische Daten

5 Gründe, warum Sie synthetische Daten benötigen
Bild aus Parallele Domäne
 

Es gibt einige Daten, die Menschen nicht vollständig interpretieren und benennen können. Im Folgenden sind einige Anwendungsfälle aufgeführt, bei denen synthetische Daten die einzige Option sind: 

  • Genaue Schätzung der Tiefe und optischer Fluss aus Einzelbildern
  • Selbstfahrende Anwendungen, die Radardaten verwenden, die für das menschliche Auge nicht sichtbar sind 
  • Generierung von Deepfakes, die zum Testen von Gesichtserkennungssystemen verwendet werden können

5 Gründe, warum Sie synthetische Daten benötigen
Bild von Michael Galanyk
 

Synthetische Daten sind sehr nützlich für Anwendungen in Bereichen, in denen Sie nicht ohne weiteres echte Daten erhalten können. Dazu gehören einige Arten von Autounfalldaten und die meisten Arten von Gesundheitsdaten, für die Datenschutzbeschränkungen gelten (z. elektronische Gesundheitsakten). In den letzten Jahren interessierten sich Forscher im Gesundheitswesen für die Vorhersage von Vorhofflimmern (unregelmäßiger Herzrhythmus) anhand von EKG- und PPG-Signalen. Die Entwicklung eines Arrhythmie-Detektors ist nicht nur eine Herausforderung, da die Annotation dieser Signale mühsam und kostspielig ist, sondern auch aufgrund von Datenschutzbeschränkungen. Dies ist ein Grund, warum es gibt Forschung zur Simulation dieser Signale

Es ist wichtig zu betonen, dass das Sammeln echter Daten nicht nur Zeit und Energie kostet, sondern sogar gefährlich sein kann. Eines der Kernprobleme bei Roboteranwendungen wie selbstfahrenden Autos ist, dass es sich um physische Anwendungen des maschinellen Lernens handelt. Sie können kein unsicheres Modell in der realen Welt einsetzen und aufgrund fehlender relevanter Daten abstürzen. Die Anreicherung eines Datensatzes mit synthetischen Daten kann Modellen dabei helfen, diese Probleme zu vermeiden. 

Im Folgenden sind einige Unternehmen aufgeführt, die synthetische Daten verwenden, um die Anwendungssicherheit zu verbessern: Toyota, Waymo und Kreuzfahrt.

5 Gründe, warum Sie synthetische Daten benötigen
Bild aus Parallele Domäne
 

Synthetisches Bild eines verschlossenen Kindes auf einem Fahrrad, das hinter einem Schulbus hervorkommt und in einer kalifornischen Vorstadtumgebung über die Straße radelt.

Autonome Fahrzeuganwendungen befassen sich oft mit relativ „ungewöhnlichen“ (im Vergleich zu normalen Fahrbedingungen) Ereignissen wie Fußgängern bei Nacht oder Radfahrern, die mitten auf der Straße fahren. Modelle benötigen oft Hunderttausende oder sogar Millionen von Beispielen, um ein Szenario zu lernen. Ein großes Problem besteht darin, dass die gesammelten realen Daten hinsichtlich Qualität, Vielfalt (z. B. Klassenungleichgewicht, Wetterbedingungen, Standort) und Quantität möglicherweise nicht das sind, wonach Sie suchen. Ein weiteres Problem besteht darin, dass Sie bei selbstfahrenden Autos und Robotern nicht immer wissen, welche Daten Sie benötigen, im Gegensatz zu herkömmlichen maschinellen Lernaufgaben mit festen Datensätzen und festen Benchmarks. Während einige Datenerweiterungstechniken, die Bilder systematisch oder zufällig verändern, hilfreich sind, können diese Techniken eigene Probleme einbringen

Hier kommen synthetische Daten ins Spiel. Mit APIs zur Generierung synthetischer Daten können Sie Datensätze entwickeln. Diese APIs können Ihnen viel Geld sparen, da es sehr teuer ist, Roboter zu bauen und Daten in der realen Welt zu sammeln. Es ist viel besser und schneller zu versuchen, Daten zu generieren und die technischen Prinzipien mithilfe der synthetischen Datensatzgenerierung herauszufinden.

Die folgenden Beispiele zeigen, wie programmierbare synthetische Daten Modellen beim Lernen helfen: Verhinderung betrügerischer Transaktionen (American Express), bessere Radfahrererkennung (Parallel Domain) und Operationsanalyse und -überprüfung (Hutom.io).

5 Gründe, warum Sie synthetische Daten benötigen
Phasen des Modellentwicklungszyklus | Bild von Jules S. Damji 
 

In der Industrie gibt es viele Faktoren, die die Durchführbarkeit/Leistung eines maschinellen Lernprojekts sowohl in der Entwicklung als auch in der Produktion beeinflussen (z. B. Datenerfassung, Annotation, Modelltraining, Skalierung, Bereitstellung, Überwachung, Modellumschulung und Entwicklungsgeschwindigkeit). In letzter Zeit, 18 Machine-Learning-Ingenieure nahmen an einer Interviewstudie teil die das Ziel hatten, gängige MLOps-Praktiken und -Herausforderungen in Organisationen und Anwendungen (z. B. autonome Fahrzeuge, Computerhardware, Einzelhandel, Anzeigen, Empfehlungssysteme usw.) zu verstehen. Eine der Schlussfolgerungen der Studie war die Bedeutung der Entwicklungsgeschwindigkeit, die grob als die Fähigkeit definiert werden kann, Ideen schnell zu prototypisieren und zu iterieren.

Ein Faktor, der die Entwicklungsgeschwindigkeit beeinflusst, ist die Notwendigkeit, über Daten zu verfügen, um das anfängliche Modelltraining und die Evaluierung durchzuführen sowie häufige Modellumschulungen aufgrund einer im Laufe der Zeit nachlassenden Modellleistung aufgrund von Datendrift, Konzeptdrift oder sogar einer Schieflage zwischen Training und Training. 

 

5 Gründe, warum Sie synthetische Daten benötigen
Bild aus Offensichtlich KI
 

Die Studie berichtete auch, dass dieser Bedarf einige Organisationen dazu veranlasste, ein Team einzurichten, um Live-Daten häufig zu kennzeichnen. Dies ist teuer, zeitaufwändig und schränkt die Fähigkeit einer Organisation ein, Modelle häufig neu zu trainieren. 

 

5 Gründe, warum Sie synthetische Daten benötigen
Bild aus Gretel.ai
 

Beachten Sie, dass dieses Diagramm nicht behandelt, wie synthetische Daten auch für Dinge wie verwendet werden können MLOps-Tests in Recommendern.

Synthetische Daten haben das Potenzial, mit realen Daten im Lebenszyklus des maschinellen Lernens (siehe Abbildung oben) verwendet zu werden, um Organisationen dabei zu helfen, ihre Modelle länger leistungsfähig zu halten. 

Die Generierung synthetischer Daten wird in Machine-Learning-Workflows immer üblicher. In der Tat, Gartner prognostiziert, dass bis 2030 synthetische Daten viel mehr als Daten aus der realen Welt zum Trainieren von Modellen für maschinelles Lernen verwendet werden. Wenn Sie Fragen oder Gedanken zu diesem Beitrag haben, können Sie sich gerne in den Kommentaren unten oder über melden Twitter.
 
 
Michael Galanyk ist Data Science Professional und arbeitet im Bereich Developer Relations bei Anyscale.
 

Zeitstempel:

Mehr von KDnuggets