paint-brush
Detección de anomalías con información privilegiada: Parte 1by@dsmoliakov
6,638
6,638

Detección de anomalías con información privilegiada: Parte 1

Dmitrii Smoliakov5m2023/12/13
Read on Terminal Reader

Explore el ámbito avanzado de la detección de anomalías a través de la descripción de datos de vectores de soporte (SVDD+). Descubra cómo la inclusión de información privilegiada durante la capacitación mejora la precisión de la clasificación. Conozca el algoritmo SVDD+ modificado, su tarea de optimización cuadrática y sus aplicaciones en la detección de anomalías médicas y el análisis de malware. Mejore su comprensión de la detección de anomalías con SVDD+.
featured image - Detección de anomalías con información privilegiada: Parte 1
Dmitrii Smoliakov HackerNoon profile picture


La descripción de datos de vectores de soporte (SVDD) es uno de los métodos de límites populares utilizados en el aprendizaje automático para la detección de anomalías. El objetivo de SVDD es crear un modelo que capture las características de los datos normales (no anómalos) y luego identifique las instancias que se desvían de estas características como anomalías.


La detección de anomalías encuentra un amplio uso en diversas aplicaciones, como la detección de fraudes en tarjetas de crédito, seguros o atención médica, detección de intrusiones para ciberseguridad, detección de fallas en sistemas críticos para la seguridad y vigilancia militar de actividades enemigas.


Imagine que tiene un conjunto de puntos de datos y la mayoría de ellos representan un comportamiento normal. SVDD tiene como objetivo crear un límite alrededor de estos puntos de datos normales de tal manera que la mayoría de los datos caigan dentro de este límite. Cualquier punto de datos fuera de este límite se considera una anomalía o un valor atípico.


En otras palabras, estamos enseñando a una computadora a reconocer cómo es "normal" basándose en un conjunto de ejemplos y luego podemos marcar algo como "inusual" si no se ajusta al patrón aprendido.


En este artículo, profundizamos en los conceptos fundamentales de SVDD y exploramos la utilización de información privilegiada durante la fase de entrenamiento, una técnica destinada a mejorar la precisión de la clasificación en escenarios de detección de anomalías.


SVDD originales

Como se dijo anteriormente, un enfoque clásico para la detección de anomalías es describir el comportamiento esperado ("normal") usando técnicas de clasificación de una clase, es decir, construir una descripción de un estado "normal" usando muchos ejemplos, por ejemplo, describiendo un lugar geométrico. de patrones de entrenamiento en un espacio de características. Si un nuevo patrón de prueba no pertenece a la clase "normal", lo consideramos anómalo.


Para construir un dominio "normal", podemos utilizar enfoques bien conocidos, como la descripción del dominio del vector de soporte.


Comenzamos con una breve explicación del SVDD original sin utilizar información privilegiada. Tenemos muestras iid (x1, . . . , xl)


La idea principal de este algoritmo es separar una parte significativa de las muestras consideradas "normales" de aquellas consideradas "anormales" en algún sentido. Denotamos por φ(·) mapear el punto de datos original a algún espacio de características más expresivo, por ejemplo, agregar algunas características polinómicas, aplicar alguna extracción de características con una red neuronal profunda o incluso asumir que el mapeo se realiza en algún espacio de dimensión infinita.


Sea a algún punto en la imagen del mapa de características y R sea algún valor positivo. Un patrón x pertenece a una clase "normal" si está dentro de la esfera ∥a − φ(x)∥ ≤ R. Para encontrar el centro a y el radio R resolvemos el problema de optimización:



Aquí ξ es la distancia desde xi, ubicado fuera de la esfera, hasta la superficie de la esfera. Si un punto está dentro de la esfera consideramos ξi = 0. La variable R puede considerarse como un radio sólo si exigimos su positividad. Sin embargo, se puede demostrar fácilmente que esta condición se cumple automáticamente si ν ∈ (0, 1), y para ν ̸ ∈ (0, 1), la solución contiene todos los puntos o no contiene ninguno.


Como probablemente adivinarás, dado que tenemos soporte en el nombre del algoritmo, resolveremos el doble problema:



Aquí reemplazamos el producto escalar (φ(xi) · φ(xj )) con el núcleo correspondiente K(xi, xj). Podemos calcular a y R usando cualquier xi tal que αi > 0



En base a esto podríamos definir la función de decisión:


Si f(x) > 0, entonces un patrón x está ubicado fuera de la esfera y se considera anómalo. También podríamos notar que el valor de retorno de f(x) y podríamos ajustar el umbral para lograr un nivel objetivo de valores verdaderos positivos y verdaderos negativos.


SVDD y la información privilegiada

Para la máquina de vectores de soporte original de dos clases, un algoritmo que crea un límite óptimo entre diferentes clases de puntos de datos, Vapnik propuso una modificación que permite tener en cuenta información privilegiada durante la fase de entrenamiento para mejorar la precisión de la clasificación.


Veamos algunos ejemplos de información privilegiada. Si resolvemos un problema de clasificación de imágenes, entonces, como información privilegiada, podemos utilizar una descripción textual de la imagen. En el caso de la detección de malware, podemos utilizar un código fuente de malware para obtener funciones adicionales para la clasificación.


Dicha información no está disponible durante la fase de prueba (por ejemplo, podría ser computacionalmente prohibitiva o demasiado costosa de obtener) cuando utilizamos el modelo entrenado para la detección y clasificación de anomalías. Aún así, se puede utilizar durante la fase de entrenamiento.


Supongamos que los datos de entrenamiento vienen en pares (xi, xi*). Por ejemplo, imaginemos que intentamos detectar anomalías en imágenes de rayos X. Disponemos tanto de la imagen en sí como de la descripción del médico. Generalmente, una descripción de texto es más que suficiente pero requiere ayuda adicional. ¿Se pueden utilizar durante el entrenamiento del modelo pero solo hacer predicciones utilizando imágenes? Es posible utilizar esta información adicional para mejorar la detección.


En la formulación anterior tenemos un error en la forma ξi. supongamos que los datos privilegiados son tan buenos que podrían predecir el tamaño de un error:


Podríamos pensar en esto como un profesor inteligente que dice durante el entrenamiento que no se puede cometer un pequeño error con este valor. Es razonable concentrarse en otros ejemplos más valiosos.


Ahora, escribamos esta ecuación monstruosa:

Aquí γ es un parámetro de regularización para la aproximación lineal de las variables de holgura. ζi son variables instrumentales que evitan que se penalicen aquellos patrones que pertenecen a un semiplano "positivo". Tenga en cuenta que si γ llega al infinito, entonces la solución está cerca de la solución original de SVDD.


Para evitar complicaciones al jugar con la función de Lagrange, escriba la forma dual de este problema:



Aquí reemplazamos el producto escalar (φ* (xi* ) · φ*(xj* )) con la función kernel correspondiente K* (xi*, xj*). Al final, la función de decisión tiene la misma forma que en el caso del SVDD original:


Tenga en cuenta que, a pesar de ser un poco más aterradora que el problema original, esta tarea es un tipo específico de optimización llamada optimización cuadrática y puede resolverse fácilmente mediante enfoques estándar como la función de barrera logarítmica.


Conclusión

El enfoque SVDD original se centra en construir un límite alrededor de puntos de datos normales en un espacio de alta dimensión. Sin embargo, la teoría SVDD+ introduce el concepto de información privilegiada durante la fase de entrenamiento para mejorar la precisión de la clasificación.


La información privilegiada, que no está disponible durante las pruebas, se puede utilizar durante el entrenamiento para proporcionar información adicional, mejorando la capacidad del modelo para detectar anomalías. La incorporación de información privilegiada implica una modificación del algoritmo SVDD original, lo que le permite considerar datos complementarios durante el entrenamiento, como descripciones textuales que acompañan a las imágenes en la detección de anomalías médicas.


La inclusión de información privilegiada se enmarca como una forma de guía inteligente, similar a un maestro informado que proporciona conocimientos valiosos para mejorar el aprendizaje del modelo. La formulación SVDD+ modificada implica una tarea de optimización cuadrática, que se puede resolver mediante enfoques estándar como la función de barrera logarítmica. A pesar de la complejidad introducida por la inclusión de información privilegiada, la función de decisión en la teoría SVDD+ mantiene una forma similar a la SVDD original, lo que facilita la implementación práctica.


En resumen, la teoría SVDD+ muestra una vía prometedora para mejorar la detección de anomalías aprovechando información privilegiada durante la fase de capacitación, ofreciendo aplicaciones potenciales en varios campos, incluida la clasificación de imágenes y la detección de malware.