Detección De Anomalías Con Pocas Muestras Etiquetadas Bajo Desajuste De Distribución

Publicado el 06 agosto 2024 por Lauratuero @incubaweb

Recientemente, se ha lanzado al público SPADE (Detectión de Anomalías con Pseudo-etiquetado Semisupervisado con Ensamblaje), un marco semisupervisado para la detección de anomalías que supera algunas de las limitaciones de los métodos alternativos de detección de anomalías.

La detección de anomalías es el proceso de identificar muestras en un conjunto de datos que se desvían de un patrón esperado. Este proceso tiene amplias aplicaciones en varias industrias como la seguridad de API, el fraude financiero y la detección de defectos en la fabricación. SPADE está especialmente diseñado para entornos semisupervisados donde se dispone de un puñado de datos etiquetados y una gran cantidad de datos no etiquetados.

Crear un conjunto grande de muestras anómalas y no anómalas etiquetadas para el aprendizaje supervisado puede ser un proceso que consume tiempo, además de ser costoso y propenso a errores. Por lo tanto, los métodos no supervisados y semisupervisados han emergido como un área activa de investigación. La mayoría de estos métodos asumen que los datos etiquetados y no etiquetados provienen de la misma distribución, lo cual no siempre se cumple. En estos casos, SPADE ha mostrado un mejor rendimiento en comparación con las alternativas.

SPADE construye un conjunto de Clasificadores de Una Clase (OCCs); cada OCC es un Modelo de Mezcla Gaussiana entrenado de manera autosupervisada en un subconjunto disjunto de las muestras no etiquetadas y muestras no anómalas etiquetadas. Este conjunto se utiliza para obtener pseudo-etiquetas para los datos no etiquetados, asignando una etiqueta solo si todos los miembros del conjunto coinciden. Las pseudo-etiquetas y las etiquetas originales se utilizan juntas para entrenar un modelo de detección de anomalías supervisado. En la versión de SPADE que se ha lanzado, este modelo es un Bosque Aleatorio en TensorFlow entrenado con una pérdida de entropía cruzada binaria. Una vez entrenado, el modelo puede utilizarse para predicciones en línea o por lotes.

En experimentos detallados en un artículo publicado, se ha demostrado que SPADE supera constantemente a otros métodos supervisados, semisupervisados y no supervisados en diversos conjuntos de datos. Por ejemplo, en los conjuntos de datos CoverType y Thyroid, SPADE ha mostrado un rendimiento superior.

SPADE se ha lanzado como código abierto con scripts que permiten construir un contenedor de Docker, ejecutarlo como un Trabajo Personalizado en Vertex en Google Cloud Platform y leer el dataset desde BigQuery. Los usuarios pueden ajustar los hiperparámetros para obtener un rendimiento óptimo. El modelo entrenado se guarda como un artefacto en el Almacenamiento en la Nube de Google y puede desplegarse para servir predicciones.

Con el lanzamiento de SPADE como código abierto, se espera fomentar un mayor uso de este método innovador en la comunidad, así como invitar a contribuciones para mejorar la metodología. El modelo y código de SPADE están disponibles en Github bajo la licencia Apache 2.0.
vía: Google Blog Open Source