Der allgemeine Ansatz besteht darin, eine herkömmliche statistische Analyse Ihres Datensatzes durchzuführen, um einen mehrdimensionalen Zufallsprozess zu definieren, der Daten mit denselben statistischen Merkmalen generiert. Der Vorteil dieses Ansatzes ist, dass Ihre synthetischen Daten unabhängig von Ihrem ML-Modell sind, aber statistisch "nah" an Ihren Daten liegen. (siehe unten für die Diskussion Ihrer Alternative)
Im Wesentlichen schätzen Sie die mit dem Prozess verbundene multivariate Wahrscheinlichkeitsverteilung. Sobald Sie die Verteilung geschätzt haben, können Sie synthetische Daten mit der Monte-Carlo-Methode oder ähnlichen Methoden für wiederholte Stichproben erstellen. Wenn Ihre Daten einer parametrischen Verteilung ähneln (z. B. lognormal), ist dieser Ansatz einfach und zuverlässig. Der schwierige Teil besteht darin, die Abhängigkeit zwischen Variablen abzuschätzen. Siehe: https://www.encyclopediaofmath.org/index.php/Multi-dimensional_statistical_analysis .
Wenn Ihre Daten unregelmäßig sind, sind nicht parametrische Methoden einfacher und wahrscheinlich robuster. Die multivariate Kerndichteschätzung ist eine Methode, die für Menschen mit ML-Hintergrund zugänglich und attraktiv ist. Eine allgemeine Einführung und Links zu bestimmten Methoden finden Sie unter: https://en.wikipedia.org/wiki/Nonparametric_statistics .
Um zu bestätigen, dass dieser Prozess für Sie funktioniert hat, führen Sie den maschinellen Lernprozess mit den synthetisierten Daten erneut durch, und Sie sollten ein Modell erhalten, das Ihrem Original ziemlich nahe kommt. Wenn Sie die synthetisierten Daten in Ihr ML-Modell einfügen, sollten Sie ebenfalls Ausgaben erhalten, die eine ähnliche Verteilung aufweisen wie Ihre ursprünglichen Ausgaben.
Im Gegensatz dazu schlagen Sie Folgendes vor:
[Originaldaten -> Modell für maschinelles Lernen erstellen -> ml-Modell verwenden, um synthetische Daten zu generieren .... !!!]
Dies bewirkt etwas anderes als die soeben beschriebene Methode. Dies würde das umgekehrte Problem lösen : "Welche Eingaben könnten eine bestimmte Menge von Modellausgaben erzeugen". Sofern Ihr ML-Modell nicht zu stark an Ihre Originaldaten angepasst ist, sehen diese synthetisierten Daten nicht in jeder Hinsicht oder sogar in den meisten Fällen wie Ihre Originaldaten aus.
Betrachten Sie ein lineares Regressionsmodell. Dasselbe lineare Regressionsmodell kann identische Anpassungen an Daten mit sehr unterschiedlichen Merkmalen aufweisen. Eine berühmte Demonstration davon ist durch das Quartett von Anscombe .
Obwohl ich keine Referenzen habe, glaube ich, dass dieses Problem auch bei logistischen Regressionen, verallgemeinerten linearen Modellen, SVM und K-Mittel-Clustering auftreten kann.
Es gibt einige ML-Modelltypen (z. B. Entscheidungsbaum), bei denen es möglich ist, sie zu invertieren, um synthetische Daten zu generieren, obwohl dies einige Arbeit erfordert. Siehe: Synthetische Daten generieren, um mit Data Mining-Mustern übereinzustimmen .