Bewertung des Nutzens und der Ähnlichkeit in synthetischen Datengeneratoren: Ein technischer tiefer Einblick und eine vergleichende Analyse

Veröffentlicht am:
27. Februar 2024

Einleitung

Im heutigen digitalen Zeitalter ist das Bewusstsein für den Datenschutz deutlich gestiegen. Benutzer erkennen ihre Daten zunehmend als einzigartigen digitalen Fingerabdruck, was im Falle von Datenschutzverletzungen ein Risiko für ihre Privatsphäre darstellt. Diese Sorge wird durch Vorschriften wie die DSGVO noch verstärkt, die es Benutzern ermöglichen, die Löschung ihrer Daten zu beantragen. Obwohl diese Gesetzgebung dringend erforderlich ist, kann sie für Unternehmen sehr kostspielig sein, da der Zugriff auf Daten minimiert wird. Einschränkungen, deren Überwindung oft zeit- und ressourcenaufwändig ist. 

Inhaltsverzeichnis

Was sind synthetische Datengeneratoren?

Geben Sie synthetische Daten ein, eine Lösung für dieses Rätsel. Synthetische Datengeneratoren erstellen Datensätze, die echte Benutzerdaten nachahmen und gleichzeitig Anonymität und Vertraulichkeit wahren. Dieser Ansatz gewinnt in allen Branchen an Bedeutung, vom Gesundheitswesen bis zum Finanzwesen, wo der Datenschutz an erster Stelle steht.  

Dieser Beitrag richtet sich an Datenprofis und -begeisterte und konzentriert sich auf die Bewertung synthetischer Datengeneratoren. Wir werden uns mit Schlüsselmetriken befassen und eine vergleichende Analyse zwischen der Engine von Syntho und ihren Open-Source-Alternativen durchführen und Einblicke in die effektive Bewertung der Lösungsqualität der Generierung synthetischer Daten geben. Darüber hinaus werden wir auch den Zeitaufwand jedes dieser Modelle bewerten, um weitere Einblicke in die Funktionsweise der Modelle zu erhalten. 

Wie wählt man die richtige Methode zur Generierung synthetischer Daten aus?

In der vielfältigen Landschaft der synthetischen Datengenerierung steht eine Fülle an Methoden zur Verfügung, von denen jede mit ihren einzigartigen Fähigkeiten um Aufmerksamkeit buhlt. Die Auswahl der am besten geeigneten Methode für eine bestimmte Anwendung erfordert ein gründliches Verständnis der Leistungsmerkmale jeder Option. Dies erfordert eine umfassende Bewertung verschiedener synthetischer Datengeneratoren auf der Grundlage einer Reihe genau definierter Metriken, um eine fundierte Entscheidung treffen zu können. 

Was folgt, ist eine gründliche vergleichende Analyse der Syntho Engine mit einem bekannten Open-Source-Framework, dem Synthetic Data Vault (SDV). In dieser Analyse haben wir viele häufig verwendete Metriken wie statistische Genauigkeit, Vorhersagegenauigkeit und Beziehung zwischen Variablen verwendet. 

Bewertungsmetriken für synthetische Daten

Bevor wir eine bestimmte Metrik einführen, müssen wir anerkennen, dass es zahlreiche Ideologien zur Auswertung synthetischer Daten gibt, von denen jede Einblick in einen bestimmten Aspekt der Daten gibt. Vor diesem Hintergrund stechen die folgenden drei Kategorien als wichtig und umfassend hervor. Diese Metriken bieten Einblicke in verschiedene Aspekte der Datenqualität. Diese Kategorien sind: 

      1. Statistische Genauigkeitsmetriken: Untersuchen grundlegender statistischer Merkmale der Daten, wie Mittelwerte und Varianzen, um sicherzustellen, dass die synthetischen Daten mit dem statistischen Profil des Originaldatensatzes übereinstimmen. 

        1. Vorhersagegenauigkeit: Untersuchen der Leistung von Modellen zur Generierung synthetischer Daten, Training mit Originaldaten und Auswertung anhand synthetischer Daten (Train Real – Test Synthetic, TRTS) und umgekehrt (Train Synthetic – Test Real, TSTR) 

          1. Beziehungen zwischen Variablen: Diese kombinierte Kategorie umfasst: 

            • Funktionskorrelation: Mithilfe von Korrelationskoeffizienten beurteilen wir, wie gut die synthetischen Daten die Beziehungen zwischen Variablen aufrechterhalten. Eine bekannte Metrik wie der Propensity Mean Squared Error (PMSE) wäre von diesem Typ. 

            • Gegenseitige Information: Wir messen die gegenseitigen Abhängigkeiten zwischen Variablen, um die Tiefe dieser Beziehungen zu verstehen, die über reine Korrelationen hinausgehen. 

          Vergleichende Analyse: Syntho Engine vs. Open-Source-Alternativen

          Die vergleichende Analyse wurde unter Verwendung eines standardisierten Bewertungsrahmens und identischer Testtechniken für alle Modelle, einschließlich Syntho Engine- und SDV-Modelle, durchgeführt. Indem wir Datensätze aus identischen Quellen synthetisieren und sie denselben statistischen Tests und Modellbewertungen für maschinelles Lernen unterziehen, stellen wir einen fairen und unvoreingenommenen Vergleich sicher. Im folgenden Abschnitt wird die Leistung jedes synthetischen Datengenerators für den oben dargestellten Metrikbereich detailliert beschrieben.  

           

          Für den für die Auswertung verwendeten Datensatz haben wir verwendet UCI-Erwachsenenzählungsdatensatz Dies ist ein bekannter Datensatz in der Community des maschinellen Lernens. Wir haben die Daten vor dem gesamten Training bereinigt und den Datensatz dann in zwei Sätze aufgeteilt (einen Trainings- und einen Holdout-Satz zum Testen). Wir haben den Trainingssatz verwendet, um mit jedem der Modelle 1 Million neue Datenpunkte zu generieren, und verschiedene Metriken für diese generierten Datensätze ausgewertet. Für weitere Auswertungen des maschinellen Lernens verwendeten wir den Holdout-Satz, um Metriken auszuwerten, die sich beispielsweise auf TSTR und TRTS beziehen.  

           

          Jeder Generator wurde mit Standardparametern betrieben. Da einige der Modelle, wie Syntho, sofort mit allen Tabellendaten arbeiten können, wurde keine Feinabstimmung vorgenommen. Die Suche nach den richtigen Hyperparametern für jedes Modell würde viel Zeit in Anspruch nehmen, und Tabelle 2 zeigt bereits einen großen Zeitunterschied zwischen Synthos Modell und den getesteten Modellen. 

           

          Bemerkenswert ist, dass der Gaussian Copula Synthesizer im Gegensatz zu den übrigen Modellen in SDV auf statistischen Methoden basiert. Im Gegensatz dazu basiert der Rest auf neuronalen Netzen wie Generative Adversarial Networks (GAN)-Modellen und Variations-Auto-Encodern. Aus diesem Grund kann die Gaußsche Copula als Grundlage für alle besprochenen Modelle angesehen werden. 

          Die Ergebnisse

          Datenqualität

          Abbildung 1. Visualisierung grundlegender Qualitätsergebnisse für alle Modelle

          Die zuvor diskutierten Einhaltungen von Trends und Darstellungen in den Daten finden sich in Abbildung 1 und Tabelle 1. Dabei kann jede der verwendeten Metriken wie folgt interpretiert werden:

          • Gesamtqualitätsbewertung: Gesamtbewertung der Qualität synthetischer Daten, die verschiedene Aspekte wie statistische Ähnlichkeit und Datenmerkmale kombiniert. 
          • Spaltenformen: Bewertet, ob die synthetischen Daten für jede Spalte dieselbe Verteilungsform wie die realen Daten beibehalten. 
          • Spaltenpaartrends: Bewertet Beziehungen oder Korrelationen zwischen Spaltenpaaren in synthetischen Daten im Vergleich zu realen Daten. 
          •  

          Insgesamt lässt sich feststellen, dass Syntho durchweg sehr hohe Werte erzielt. Betrachtet man zunächst die Gesamtdatenqualität (ausgewertet mit der SDV-Metrikbibliothek), kann Syntho ein Ergebnis von über 99 % erzielen (mit einer Einhaltung der Spaltenform von 99.92 % und einer Einhaltung der Spaltenpaarform von 99.31 %). Dabei erzielt SDV ein Ergebnis von maximal 90.84 % (mit Gaußscher Copula mit einer Säulenformtreue von 93.82 % und einer Säulenpaarformtreue von 87.86 %). 

          Eine tabellarische Darstellung der Qualitätswerte jedes generierten Datensatzes pro Modell

          Tabelle 1. Eine tabellarische Darstellung der Qualitätswerte jedes generierten Datensatzes pro Modell 

          Datenabdeckung

          Das Diagnoseberichtsmodul von SDV macht uns darauf aufmerksam, dass in den von SDV generierten Daten (in allen Fällen) mehr als 10 % der numerischen Bereiche fehlen; Im Fall des Triplet-Based Variational Autoencoder (TVAE) fehlt im Vergleich zum Originaldatensatz auch die gleiche Menge an kategorialen Daten. Bei den mit Syntho erzielten Ergebnissen wurden keine derartigen Warnungen generiert.  

          Visualisierung der durchschnittlichen spaltenweisen Leistungsmetriken für alle Modelle
           
           

          Abbildung 2. Visualisierung der durchschnittlichen spaltenweisen Leistungsmetriken für alle Modelle 

          In der vergleichenden Analyse zeigt das Diagramm in Abbildung 2, dass SDV-Archive mit einigen ihrer Modelle (nämlich mit GaussianCopula, CopulaGAN und Conditional Tabular GAN – CTGAN) geringfügig bessere Ergebnisse bei der Kategorieabdeckung erzielen. Dennoch ist es wichtig hervorzuheben, dass die Zuverlässigkeit der Syntho-Daten die der SDV-Modelle übertrifft, da die Diskrepanz in der Abdeckung zwischen Kategorien und Bereichen minimal ist und lediglich eine Varianz von 1.1 % aufweist. Im Gegensatz dazu weisen SDV-Modelle eine erhebliche Variation auf, die zwischen 14.6 % und 29.2 % liegt. 

           

          Die hier dargestellten Kennzahlen können wie folgt interpretiert werden: 

          • Kategorieabdeckung: Misst das Vorhandensein aller Kategorien in synthetischen Daten im Vergleich zu realen Daten.
          • Bereichsabdeckung: Bewertet, wie gut der Wertebereich in synthetischen Daten mit dem in realen Daten übereinstimmt. 
          Eine tabellarische Darstellung der durchschnittlichen Abdeckung eines bestimmten Attributtyps pro Modell

          Tabelle 2. Eine tabellarische Darstellung der durchschnittlichen Abdeckung eines bestimmten Attributtyps pro Modell 

          Dienstprogramm

          Wenn wir uns nun dem Thema der Nützlichkeit synthetischer Daten zuwenden, wird die Frage des Trainingsmodells anhand der Daten relevant. Um einen ausgewogenen und fairen Vergleich zwischen allen Frameworks zu ermöglichen, haben wir den standardmäßigen Gradient Boosting Classifier aus der SciKit Learn-Bibliothek ausgewählt, da er als leistungsstarkes Modell mit sofort einsatzbereiten Einstellungen durchaus akzeptiert wird.  

           

          Es werden zwei verschiedene Modelle trainiert, eines auf den synthetischen Daten (für TSTR) und eines auf den Originaldaten (für TRTS). Das auf den synthetischen Daten trainierte Modell wird mithilfe eines Holdout-Testsatzes ausgewertet (der bei der Generierung der synthetischen Daten nicht verwendet wurde) und das auf Originaldaten trainierte Modell wird am synthetischen Datensatz getestet.  

          Visualisierung der AUC-Werte (Area Under the Curve) pro Methode und Modell

          Abbildung 3. Visualisierung der AUC-Werte (Area Under the Curve) pro Methode und Modell 

           Die oben visualisierten Ergebnisse zeigen die Überlegenheit der synthetischen Datengenerierung durch die Syntho-Engine im Vergleich zu anderen Methoden, da es keinen Unterschied zwischen den mit den verschiedenen Methoden erzielten Ergebnissen gibt (was auf eine hohe Ähnlichkeit zwischen den synthetischen und echten Daten hinweist). Außerdem ist die rot gepunktete Linie im Diagramm das Ergebnis, das durch die Bewertung der Basisleistung eines TRTR-Tests (Train Real, Test Real) erhalten wurde, um eine Basislinie für die beobachteten Metriken bereitzustellen. Diese Linie stellt den Wert 0.92 dar. Dies ist der Area Under the Curve-Score (AUC-Score), der von dem Modell erreicht wird, das auf realen Daten trainiert und auf realen Daten getestet wurde. 

          Eine tabellarische Darstellung der von TRTS bzw. TSTR erzielten AUC-Werte pro Modell.

          Tabelle 3. Eine tabellarische Darstellung der von TRTS bzw. TSTR pro Modell erzielten AUC-Werte. 

          Zeitlicher Vergleich

          Natürlich ist es wichtig, die Zeit zu berücksichtigen, die in die Generierung dieser Ergebnisse investiert wird. Die folgende Visualisierung veranschaulicht genau dies.

          Visualisierung der Zeit, die zum Trainieren und Durchführen der synthetischen Datengenerierung von einer Million Datenpunkten mit einem Modell mit und ohne GPU benötigt wird.

          Abbildung 5. Visualisierung der für Training und Leistung benötigten Zeit synthetische Datengenerierung von einer Million Datenpunkten mit einem Modell mit und ohne GPU. 

          Abbildung 5 zeigt die Zeit, die zum Generieren synthetischer Daten in zwei verschiedenen Umgebungen benötigt wird. Die ersten davon (hier als „Ohne GPU“ bezeichnet) waren Testläufe auf einem System mit einer Intel Xeon-CPU mit 16 Kernen und einer Taktfrequenz von 2.20 GHz. Die als „mit einer GPU ausgeführt“ gekennzeichneten Tests fanden auf einem System mit einer AMD Ryzen 9 7945HX-CPU mit 16 Kernen bei 2.5 GHz und einer NVIDIA GeForce RTX 4070 Laptop-GPU statt. Wie in Abbildung 2 und Tabelle 2 unten zu sehen ist, ist zu erkennen, dass Syntho bei der Generierung synthetischer Daten (in beiden Szenarien) erheblich schneller ist, was in einem dynamischen Arbeitsablauf von entscheidender Bedeutung ist. 

          Eine Tabelle, die die Zeit veranschaulicht, die für die Generierung synthetischer Daten von 1 Million Datenpunkten bei jedem Modell mit und ohne GPU benötigt wird

          Tabelle 5. Eine tabellarische Darstellung der benötigten Zeit synthetische Datengenerierung von einer Million Datenpunkten mit jedem Modell mit und ohne GPU 

          Abschließende Bemerkungen und zukünftige Richtungen 

          Die Ergebnisse unterstreichen die Bedeutung einer gründlichen Qualitätsbewertung bei der Auswahl der richtigen Methode zur Generierung synthetischer Daten. Die Engine von Syntho zeigt mit ihrem KI-gesteuerten Ansatz bemerkenswerte Stärken bei bestimmten Metriken, während Open-Source-Tools wie SDV durch ihre Vielseitigkeit und von der Community vorangetriebene Verbesserungen glänzen. 

          Da sich der Bereich der synthetischen Daten ständig weiterentwickelt, ermutigen wir Sie, diese Metriken in Ihren Projekten anzuwenden, ihre Feinheiten zu erkunden und Ihre Erfahrungen auszutauschen. Seien Sie gespannt auf zukünftige Beiträge, in denen wir tiefer in andere Metriken eintauchen und reale Beispiele ihrer Anwendung hervorheben. 

          Letztendlich kann die vorgestellte Open-Source-Alternative für diejenigen, die synthetische Daten testen möchten, angesichts der Zugänglichkeit eine gerechtfertigte Wahl sein; Allerdings müssen Fachleute, die diese moderne Technologie in ihren Entwicklungsprozess integrieren, jede Chance auf Verbesserung nutzen und alle Hindernisse vermeiden. Daher ist es wichtig, die beste verfügbare Option zu wählen. Anhand der oben bereitgestellten Analysen wird ziemlich deutlich, dass Syntho und damit die Syntho Engine ein sehr leistungsfähiges Werkzeug für Praktiker ist. 

          Über Syntho

          Synth bietet eine intelligente Plattform zur Generierung synthetischer Daten, die mehrere synthetische Datenformen und Generierungsmethoden nutzt und es Unternehmen ermöglicht, Daten intelligent in einen Wettbewerbsvorteil umzuwandeln. Unsere KI-generierten synthetischen Daten ahmen statistische Muster der Originaldaten nach und gewährleisten so Genauigkeit, Datenschutz und Geschwindigkeit, wie von externen Experten wie SAS bewertet. Mit intelligenten De-Identifikationsfunktionen und konsistenter Zuordnung werden vertrauliche Informationen geschützt und gleichzeitig die referenzielle Integrität gewahrt. Unsere Plattform ermöglicht die Erstellung, Verwaltung und Kontrolle von Testdaten für Nicht-Produktionsumgebungen und nutzt regelbasierte Methoden zur Generierung synthetischer Daten für gezielte Szenarien. Darüber hinaus können Benutzer synthetische Daten programmgesteuert generieren und realistische Testdaten erhalten, um problemlos umfassende Test- und Entwicklungsszenarien zu entwickeln.  

          Möchten Sie mehr praktische Anwendungen synthetischer Daten erfahren? Fühlen sich frei Demo vereinbaren!

          Über die Autoren

          Softwaretechniker Intern

          Rohanam ist Bachelorstudent an der Technischen Universität Delft und Praktikant im Bereich Software Engineering Synth 

          Maschinenlernen Ingenieur

          Mihai erlangte seinen Doktortitel an der University of Bristol zum Thema „Hierarchical Reinforcement Learning“ in Anwendung auf die Robotik und eine Ingenieur für maschinelles Lernen at Synth. 

          Syntho-Guide-Cover

          Speichern Sie jetzt Ihren Leitfaden für synthetische Daten!