¿Puede utilizarse una red generativa adversarial (GAN) para aumentar los datos (es decir, para generar ejemplos sintéticos que se añaden a un conjunto de datos)? ¿Tendría alguna repercusión en el rendimiento de un modelo entrenado con el conjunto de datos aumentado?
Respuestas
¿Demasiados anuncios?Sí, GAN puede utilizarse para "alucinar" datos adicionales como forma de aumento de datos.
Consulte estos documentos que hacen más o menos lo que usted pide:
- Aumento de datos Redes Generativas Adversariales
- Aprendizaje a partir de datos imaginarios
- Aumento de imágenes médicas sintéticas basado en GAN para aumentar el rendimiento de la CNN en la clasificación de lesiones hepáticas
Si su GAN está suficientemente bien entrenado, no hay razón para que esto no ayude a mejorar el rendimiento del modelo. Si tu GAN es malo, obtendrás basura.
Como ya se ha mencionado, depende de los datos con los que entrenes tu GAN. Pero también depende de lo que espere como resultado del GAN. La mayoría de los métodos se centran en nuevos datos sintéticos completos, pero no es la única opción. Este enfoque de aterrizaje AI parece ser más prometedor que limitarse a generar nuevos datos artificiales, sino que aumentan los datos existentes utilizando un GAN para enriquecerlos con sucesos poco frecuentes. Esto puede ayudar a generar datos para clases que están infrarrepresentadas en los datos de entrenamiento o podría ayudar a mitigar el sesgo en algunos casos.
(Mi respuesta se centrará principalmente en los datos tabulares, ya que son los más difíciles de sintetizar debido a su heterogeneidad y arbitrariedad general).
Sí, podemos utilizar una red generativa adversarial (GAN) para generar datos sintéticos. Un recurso excepcional al respecto es Bóveda de datos sintéticos iniciativa en la que se incluyen diversos enfoques relativos a la generación de datos sintéticos. Como usted correctamente evalúa, los GANs pueden ser utilizados para la generación de datos sintéticos, una serie de enfoques se implementan en el adjunto sdv
paquete. Señalaré aquí que, en realidad, los autocodificadores variacionales (VAE) parecen ser un muy alternativa competitiva a los GAN para esta tarea. En los dos últimos años se han publicado bastantes artículos sobre el tema:
- Modelado de datos tabulares mediante condicional GAN (2019) por Xu et al.
- Datos Síntesis basada en redes generativas adversariales Adversariales Generativas (2018) de Park et al.
- Aprendizaje de modelos de cópula de vid para datos sintéticos generación (2018) de Sun et al.
Por experiencia propia: La generación de datos sintéticos puede ser excepcionalmente difícil de conseguir "arbitrariamente correcta", pero puede ser posible sacarle un rendimiento razonable. Por ejemplo: Hacer un conjunto de datos sintéticos en el que un clasificador no pueda distinguir entre los datos originales y los sintéticos es muy duro . Hacer un conjunto de datos sintéticos para pasar a los colaboradores para que entrenen algún clasificador tal que funcione adecuadamente en datos reales no vistos es simplemente duro . Hacer un conjunto de datos sintéticos para pasárselos a un colaborador para que haga algún EDA y material de presentación suele ser realizable . Por lo tanto, debemos tener en cuenta por qué necesitamos los datos sintéticos para empezar:
- ¿es para una tarea de preservación de la intimidad?
- ¿es un problema de escasez de datos?
- ¿es por requisitos de ensayo de modelos? (común en aplicaciones financieras - ej. pruebas de resistencia en la banca )
(También existen otros casos de uso más exóticos: acuerdos complicados para compartir datos, aplicaciones de aprendizaje adversarial, modelización basada en agentes, etc., pero son bestias más raras).
Estos puntos no son particulares de los datos tabulares, sino que se extienden a todo tipo de datos. Por ejemplo, un centro sanitario puede querer o tener que evitar compartir resonancias magnéticas de pacientes reales (datos de imágenes / escenario de preservación de la privacidad), mientras que una empresa tecnológica puede necesitar entrenar su software de reconocimiento de voz con múltiples hablantes (datos de voz / escenario de escasez de datos). En particular, incluso los modelos GAN con sólidos fundamentos teóricos ( Wassenstein GAN (2017) Arjovsky et al.) pueden no ser del todo apropiados, por ejemplo, los datos de series temporales financieras tienen correlaciones a largo plazo, agrupaciones de volatilidad y asimetrías (por ejemplo, muchos movimientos positivos pequeños pero pocos movimientos negativos grandes) que nos obligan a utilizar métricas especializadas para evaluar su representatividad.
Recapitulando: el uso de modelos generativos profundos (GANs, VAEs, EBM s) para la generación de datos sintéticos es un área extremadamente fructífera de la investigación en ML. Ya existen pruebas de concepto de grupos de investigación, así como algunos primeros productos industriales; su utilidad variará enormemente entre las distintas aplicaciones, tanto en términos de tipos de datos (imágenes, voz, tabulares, etc.) como de campos de aplicación (sanidad, comercio minorista, etc.). Por lo tanto, no disponemos de un método establecido para cuantificar de forma general su impacto en el rendimiento de un modelo. Dicho esto, tendremos una visión más clara en un par de años; GDPR/CCPA son poderosos motivadores para que ciertas empresas multimillonarias convenzan a los legisladores sobre la benignidad de su uso de datos - la generación de datos sintéticos es una pieza de ese rompecabezas.
Después de mucho tiempo, concluiría que la respuesta es no, basándome en unos fundamentos teóricos bastante sólidos https://en.wikipedia.org/wiki/Data_processing_inequality
- Ver respuestas anteriores
- Ver más respuestas