Общий подход заключается в проведении традиционного статистического анализа вашего набора данных для определения многомерного случайного процесса, который будет генерировать данные с одинаковыми статистическими характеристиками. Преимущество этого подхода заключается в том, что ваши синтетические данные не зависят от вашей модели ML, но статистически «близки» к вашим данным. (см. ниже для обсуждения вашей альтернативы)
По сути, вы оцениваете многомерное распределение вероятностей, связанное с процессом. После того как вы оценили распределение, вы можете сгенерировать синтетические данные с помощью метода Монте-Карло или аналогичных методов повторной выборки. Если ваши данные напоминают некоторое параметрическое распределение (например, логнормальное), тогда этот подход прост и надежен. Самое сложное - оценить зависимость между переменными. См .: https://www.encyclopediaofmath.org/index.php/Multi-dimensional_statistical_analysis .
Если ваши данные нерегулярны, то непараметрические методы проще и, вероятно, более надежны. Многомерная оценка плотности ядра - это метод, который доступен и привлекателен для людей с фоном ML. Общее введение и ссылки на конкретные методы см .: https://en.wikipedia.org/wiki/Nonparametric_statistics .
Чтобы убедиться, что этот процесс работает для вас, вы снова проходите процесс машинного обучения с синтезированными данными, и в итоге вы должны получить модель, достаточно близкую к исходной. Аналогичным образом, если вы поместите синтезированные данные в свою модель ML, вы должны получить выходные данные, которые имеют распределение, аналогичное вашим исходным выходным данным.
Напротив, вы предлагаете это:
[оригинальные данные -> построить модель машинного обучения -> использовать модель ml для генерации синтетических данных .... !!!]
Это делает нечто иное, чем метод, который я только что описал. Это решило бы обратную проблему : «какие входные данные могут генерировать любой заданный набор выходных данных модели». Если ваша модель ML не слишком приспособлена к вашим исходным данным, эти синтезированные данные не будут выглядеть как ваши исходные данные во всех отношениях или даже больше.
Рассмотрим модель линейной регрессии. Одна и та же модель линейной регрессии может соответствовать идентичным данным, которые имеют очень разные характеристики. Знаменитая демонстрация этого через квартет Анскомба .
Хотя у меня нет ссылок, я считаю, что эта проблема также может возникнуть в логистической регрессии, обобщенных линейных моделях, SVM и K-средних кластеризации.
Существует несколько типов моделей ML (например, дерево решений), в которых их можно инвертировать для создания синтетических данных, хотя это требует некоторой работы. См .: Генерация синтетических данных для сопоставления шаблонов интеллектуального анализа данных .