Detección de anomalías en series multivariable con modelos generativos.
Supervisor(es): Fernández, Alicia - Gómez, Gabriel
Resumen:
La detección de anomalías es un campo de estudio relevante para muchas aplicaciones y contextos. En el monitoreo de sistemas, la recopilación de múltiples variables es esencial para tener un conocimiento del estado del sistema y resolver a tiempo eventuales problemas. Un análisis eficiente de anomalías puede ser útil para detectar problemas de rendimiento, fallas, ataques externos e intentos de fraude. Aunque la detección de anomalías en series temporales es un área de investigación madura, la aparición de grandes plataformas de datos que permiten el procesamiento de cantidades masivas y diversas de datos, junto con la reciente gran exploración científica de nuevas herramientas para aplicación de aprendizaje profundo, plantean nuevas oportunidades y desafíos para investigar en el tema. En particular, la detección de anomalías en series multivariables es un desafío, ya que generalmente los métodos de detección tiene dos esquemas: el análisis univariable, ejecutando un detector independiente para cada serie de tiempo, o el análisis multivariable, tomando a cada instante de tiempo de manera independiente. En este trabajo se plantea la idea de monitorear todas las series de un sistema con un solo modelo teniendo en cuenta la relación temporal. Para esto se recurrió al uso de modelos generativos no-supervisados basados en redes neuronales, los cuales han demostrado una gran capacidad para aprender la distribución de datos complejos. Además, el uso de estas herramientas ayudan a resolver otros dos grandes problemas en la detección de anomalías que son: el alto desequilibrio entre los datos normales y anómalos, y la falta de etiquetas para fines de aprendizaje y validación. Se implementaron dos métodos, el primero basado en el error de reconstrucción utilizando Varationals Auto-Encoders (VAE), y el segundo utilizando redes recurrentes entrenadas bajo el enfoque de las Generative Adversarial Networks (GAN), explotando no solo las propiedades generativas, sino también las discriminativas. Como un aporte importante con respecto al estado del arte, en este trabajo se logra visualizar tanto la capacidad de detección de los métodos como la capacidad de generación que es la base de los mismos. Las evaluaciones fueron hechas en dos conjuntos diferentes de datos reales, uno propio y otro público, obteniéndose muy buenos resultados. Las implementaciones fueron realizadas con la librería keras, logrando que la arquitectura del código sea compacta y sencilla de entender.
2020 | |
Detección de anomalías Series multivariables Modelos generativos Análisis de datos Aprendizaje profundo Reconocimiento de patrones Big data |
|
Español | |
Universidad de la República | |
COLIBRI | |
https://hdl.handle.net/20.500.12008/25395 | |
Acceso abierto | |
Licencia Creative Commons Atribución - No Comercial - Sin Derivadas (CC - By-NC-ND 4.0) |
Sumario: | La detección de anomalías es un campo de estudio relevante para muchas aplicaciones y contextos. En el monitoreo de sistemas, la recopilación de múltiples variables es esencial para tener un conocimiento del estado del sistema y resolver a tiempo eventuales problemas. Un análisis eficiente de anomalías puede ser útil para detectar problemas de rendimiento, fallas, ataques externos e intentos de fraude. Aunque la detección de anomalías en series temporales es un área de investigación madura, la aparición de grandes plataformas de datos que permiten el procesamiento de cantidades masivas y diversas de datos, junto con la reciente gran exploración científica de nuevas herramientas para aplicación de aprendizaje profundo, plantean nuevas oportunidades y desafíos para investigar en el tema. En particular, la detección de anomalías en series multivariables es un desafío, ya que generalmente los métodos de detección tiene dos esquemas: el análisis univariable, ejecutando un detector independiente para cada serie de tiempo, o el análisis multivariable, tomando a cada instante de tiempo de manera independiente. En este trabajo se plantea la idea de monitorear todas las series de un sistema con un solo modelo teniendo en cuenta la relación temporal. Para esto se recurrió al uso de modelos generativos no-supervisados basados en redes neuronales, los cuales han demostrado una gran capacidad para aprender la distribución de datos complejos. Además, el uso de estas herramientas ayudan a resolver otros dos grandes problemas en la detección de anomalías que son: el alto desequilibrio entre los datos normales y anómalos, y la falta de etiquetas para fines de aprendizaje y validación. Se implementaron dos métodos, el primero basado en el error de reconstrucción utilizando Varationals Auto-Encoders (VAE), y el segundo utilizando redes recurrentes entrenadas bajo el enfoque de las Generative Adversarial Networks (GAN), explotando no solo las propiedades generativas, sino también las discriminativas. Como un aporte importante con respecto al estado del arte, en este trabajo se logra visualizar tanto la capacidad de detección de los métodos como la capacidad de generación que es la base de los mismos. Las evaluaciones fueron hechas en dos conjuntos diferentes de datos reales, uno propio y otro público, obteniéndose muy buenos resultados. Las implementaciones fueron realizadas con la librería keras, logrando que la arquitectura del código sea compacta y sencilla de entender. |
---|