9 enfoques para detectar anomalías

En artículo anterior Hablamos sobre la predicción de series temporales. Una continuación lógica sería un artículo sobre la detección de anomalías.

Aplicación

La detección de anomalías se utiliza en áreas como:

1) Predicción de fallos de equipos

Así, en 2010, las centrífugas iraníes fueron atacadas por el virus Stuxnet, que estableció un modo de operación no óptimo y dañó parte del equipo debido al desgaste acelerado.

Si se hubieran utilizado algoritmos de detección de anomalías en el equipo, se podrían haber evitado situaciones de fallo.

9 enfoques para detectar anomalías

La detección de anomalías en el funcionamiento del equipo se utiliza no solo en la industria nuclear, sino también en la metalurgia y en el funcionamiento de turbinas aéreas. Y en otras áreas donde el uso de diagnóstico predictivo es más económico que las posibles pérdidas debido a un fallo impredecible.

2) Predicción de actividades fraudulentas

Si desde la tarjeta que usas en Podolsk se retiran fondos en Albania, tal vez las transacciones deban ser revisadas con más cuidado.

3) Detección de patrones de consumo anómalos

Si un grupo de clientes presenta un comportamiento anómalo, puede haber un problema del que no estás consciente.

4) Detección de demanda y carga anormales

Si las ventas en una tienda de FMCG caen por debajo del intervalo de confianza de la predicción, vale la pena averiguar la razón de lo que está ocurriendo.

Enfoques para la detección de anomalías

1) Método de soporte vectorial de una clase One-Class SVM

Es adecuado cuando los datos en el conjunto de entrenamiento se distribuyen normalmente, y en el de prueba contienen anomalías.

El método de soporte vectorial de una clase construye una superficie no lineal alrededor del origen. Se puede establecer un límite para determinar qué datos considerar anómalos.

Según la experiencia de nuestro equipo de DATA4, One-Class SVM es el algoritmo más utilizado para resolver el problema de detección de anomalías.

9 enfoques para detectar anomalías

2) Método de bosque aislante – isolate forest

Con el método 'aleatorio' de construcción de árboles, las anomalías entran en las hojas en las primeras etapas (a poca profundidad del árbol), es decir, las anomalías son más fáciles de 'aislar'. La identificación de valores anómalos ocurre en las primeras iteraciones del algoritmo.

9 enfoques para detectar anomalías

3) Sobre envolturas elípticas y métodos estadísticos

Se utiliza cuando los datos están distribuidos normalmente. Cuanto más cerca esté la medición de la cola de la mezcla de distribuciones, más anómalo será el valor.

A esta clase también se pueden clasificar otros métodos estadísticos.

9 enfoques para detectar anomalías

9 enfoques para detectar anomalías
Imagen del sitio dyakonov.org

4) Métodos métricos

Los métodos incluyen algoritmos como k vecinos más cercanos, k-ésimo vecino más cercano, ABOD (detección de outliers basada en ángulo) o LOF (factor de outlier local).

Son adecuados si la distancia entre los valores en las características es equivalente o está normalizada (para no medir una serpiente en loros).

El algoritmo k vecinos más cercanos supone que los valores normales se encuentran en una determinada área del espacio multidimensional, y que la distancia a las anomalías será mayor que a la hipersuperficie de separación.

9 enfoques para detectar anomalías

5) Métodos de clustering

La esencia de los métodos de clustering es que si un valor se aleja de los centros de los clusters más allá de un cierto umbral, se puede considerar anómalo.

Lo principal es utilizar un algoritmo que clusterice correctamente los datos, lo que depende de la tarea específica.

9 enfoques para detectar anomalías

6) Método de componentes principales

Es adecuado donde se destacan las direcciones de mayor variación en la dispersión.

7) Algoritmos basados en la predicción de series temporales

La idea es que si un valor se encuentra fuera del intervalo de confianza de la predicción, se considera anómalo. Para la predicción de series temporales se utilizan algoritmos como suavizado triple, S(ARIMA), boosting, etc.

Se habló de algoritmos de predicción de series temporales en el artículo anterior.

9 enfoques para detectar anomalías

8) Aprendizaje supervisado (regresión, clasificación)

Si los datos lo permiten, utilizamos algoritmos que van desde la regresión lineal hasta las redes neuronales recurrentes. Mediremos la diferencia entre la predicción y el valor real, y concluiremos en qué medida los datos se desvían de la norma. Es importante que el algoritmo tenga una capacidad de generalización suficiente y que el conjunto de entrenamiento no contenga valores anómalos.

9) Pruebas de modelo

Abordaremos el problema de la detección de anomalías como un problema de recomendación. Descompondremos nuestra matriz de características utilizando SVD o máquinas de factorización, y aquellos valores en la nueva matriz que se desvíen significativamente de los originales se considerarán anómalos.

9 enfoques para detectar anomalías

Imagen del sitio dyakonov.org

Conclusión

En este artículo hemos revisado los enfoques principales para la detección de anomalías.

La búsqueda de anomalías se puede considerar en gran medida un arte. No existe un algoritmo o enfoque perfecto que resuelva todos los problemas. Se suele utilizar una combinación de métodos para abordar un caso específico. La búsqueda de anomalías se realiza mediante el método de soporte vectorial de una sola clase, bosques aislantes, métodos métricos y de agrupamiento, así como utilizando componentes principales y pronósticos de series temporales.

Si conoces otros métodos, compártelos en los comentarios del artículo.

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster