Red de conocimiento informático - Material del sitio web - Varios métodos de detección de valores atípicos que los científicos de big data deben dominar

Varios métodos de detección de valores atípicos que los científicos de big data deben dominar

Introducción

La detección de valores atípicos y las alarmas siempre han sido temas de gran preocupación para la industria. La detección automática y precisa de valores atípicos del sistema no solo puede ahorrar una gran cantidad de mano de obra y recursos materiales, sino también. permitir la detección temprana Descubra anomalías del sistema y recupere pérdidas innecesarias. GeTui también concede gran importancia a la detección de valores atípicos en big data. Por ejemplo, en el negocio de gestión del tráfico del departamento de operación y mantenimiento, GeTui ha iniciado la práctica de la detección de valores atípicos desde muy temprano y ha acumulado una rica experiencia. Este artículo presentará la detección de valores atípicos desde los siguientes aspectos.

1. Antecedentes de la investigación sobre la detección de valores atípicos

2. Principio del método de detección de valores atípicos

3. Práctica de aplicación de la detección de valores atípicos

Anomalía Antecedentes de la investigación de detección de valores

Los valores atípicos, de ahí el nombre, son valores que son diferentes de los valores normales. Matemáticamente, se puede expresar en términos de valores atípicos, de modo que el problema de detección de valores atípicos se puede transformar en un problema matemático a resolver.

La detección de valores atípicos se utiliza ampliamente en muchos escenarios, como por ejemplo:

1. Monitoreo del tráfico

El número de visitas a ciertos servidores en Internet puede tener una periodicidad. O tendencia: en circunstancias normales, es relativamente estable, pero cuando ciertos piratas informáticos atacan, el número de visitas puede cambiar significativamente. La detección temprana de estos cambios anormales tiene un buen efecto de alarma preventiva para las empresas.

2. Control de riesgos financieros

En las cuentas normales, el comportamiento de transferencia de los usuarios es generalmente un evento de baja frecuencia, pero en algunos casos de fraude financiero, las cuentas de algunos sospechosos pueden tener altos niveles de Eventos de frecuencia. Comportamiento de transferencia frecuente. Si el sistema de detección de anomalías puede detectar estos comportamientos anormales y tomar las medidas pertinentes de manera oportuna, se evitarán muchas pérdidas.

3. Detección de fallas de la máquina

Una línea de ensamblaje en funcionamiento puede estar equipada con diferentes sensores para monitorear la máquina en funcionamiento. Estos datos de los sensores reflejan el estado de funcionamiento de la máquina. Los datos de monitoreo de tiempo tienen las características de un gran volumen de datos y grandes dimensiones. Será muy costoso monitorearlos manualmente. Los algoritmos eficientes de detección automática de anomalías podrán resolver bien este problema.

Principio del método de detección de valores atípicos

Este artículo divide principalmente los métodos de detección de valores atípicos en dos categorías: una es la detección de valores atípicos basada en estadísticas y la otra es la detección de valores atípicos basada en modelos.

¿Métodos basados ​​en estadísticas?

Métodos basados ​​en modelos

1. Métodos de detección de valores atípicos basados ​​en estadísticas

Métodos comunes basados ​​en estadísticas Hay dos métodos de detección de valores atípicos, uno se basa en la regla 3σ y el otro se basa en el diagrama de caja.

¿Regla 3σ?

Diagrama de caja

La regla 3σ significa que cuando la muestra obedece a la distribución normal, generalmente se puede considerar que es menor que μ- 3σ o mayor que μ 3σ El valor de la muestra es una muestra anormal, donde μ es la media de la muestra y σ es la desviación estándar de la muestra. En el uso real, aunque no conocemos la verdadera distribución de la muestra, siempre que la verdadera distribución no sea muy diferente de la distribución normal, esta regla general se aplica en la mayoría de los casos.

El diagrama de caja también es un método de detección de valores atípicos relativamente común. Generalmente, se toman el punto percentil 25 Q1 y el punto percentil 75 Q3 de todas las muestras. , se puede considerar que los valores de muestra inferiores a Q1-1.5IQR o superiores a Q3 1.5IQR son muestras anormales.

La detección de anomalías basada en estadísticas a menudo tiene las características de un cálculo simple y una base estadística sólida, pero sus deficiencias también son muy obvias, por ejemplo, requiere una gran cantidad de datos de muestra para las estadísticas y es difícil. para detectar valores atípicos en datos de muestra de alta dimensión. Pruebas, etc.

2. Detección de valores atípicos basada en modelos

Por lo general, la detección de valores atípicos puede considerarse como un problema de clasificación binaria, es decir, todas las muestras se dividen en muestras normales y muestras anormales, pero esto es A diferencia de los problemas convencionales de dos clasificaciones, la clasificación convencional de dos generalmente requiere que las muestras positivas y negativas estén equilibradas. Si las muestras positivas y negativas son desiguales, los resultados del entrenamiento a menudo no serán buenos.

Sin embargo, en el problema de la detección de valores atípicos, a menudo nos enfrentamos al problema de muestras desiguales positivas (valores normales) y negativas (valores atípicos). Los valores atípicos suelen ser mucho menores que los valores normales, por lo que es necesario realizar algunas mejoras en el modelo convencional de dos clasificaciones. hecho.

La detección de valores atípicos basada en modelos generalmente se puede dividir en detección de valores atípicos de modelo supervisado y detección de valores atípicos de modelo no supervisado. Los modelos supervisados ​​típicos incluyen oneclassSVM, codificadores automáticos basados ​​en redes neuronales, etc. OneclassSVM se mejora sobre la base del SVM clásico. Reemplaza el hiperplano con una hiperesfera. Los valores dentro de la hiperesfera son valores normales y los valores fuera de la hiperesfera son valores anormales.

¿SVM clásico?

1 Método basado en modelos

2

La estructura del codificador automático basado en una red neuronal se muestra en la figura figura a continuación.

Codificador automático (AE)

Las muestras normales se utilizan para el entrenamiento del modelo. La función de pérdida entre la entrada y la salida puede utilizar un error cuadrático medio común, por lo que durante el proceso de detección, cuando se utilizan muestras normales. Cuando se ingresan muestras anormales, el error cuadrático medio será mayor. Al establecer un umbral apropiado, se pueden detectar muestras anormales. Sin embargo, este método también tiene desventajas, es decir, es mejor para discriminar muestras normales que son relativamente similares a las muestras de entrenamiento. Sin embargo, si las muestras normales son muy diferentes de las muestras de entrenamiento, el modelo puede realizar un juicio erróneo.

La detección de valores atípicos por modelo no supervisado es el método principal en la detección de valores atípicos, porque el costo de etiquetar los valores atípicos suele ser alto y la generación de valores atípicos a menudo es impredecible, por lo que algunos valores atípicos pueden haber ocurrido en el pasado. nunca apareció en la muestra en absoluto, lo que hará que algunas muestras anormales no puedan etiquetarse, lo cual también es la limitación del modelo supervisado. Los modelos de detección de valores atípicos no supervisados ​​más comunes incluyen agrupación de densidad (DBSCAN), IsolationForest (IF), RadomCutForest (RCF), etc. Entre ellos, DBSCAN es un método típico de agrupación no supervisada y también puede detectar ciertos tipos de valores atípicos. . Hay mucha información sobre el principio de este algoritmo en Internet, por lo que este artículo no lo presentará en detalle.

El algoritmo IF fue propuesto por primera vez por el equipo de Zhou Zhihua, decano de la Escuela de Inteligencia Artificial de la Universidad de Nanjing. Es un método de detección de valores atípicos muy eficiente. Este método no requiere ninguna suposición a priori. los datos de muestra. Basado en el hecho de que los valores atípicos son solo unos pocos y tienen valores de atributos que son muy diferentes de los valores normales. Al igual que Random Forest se compone de una gran cantidad de árboles de decisión, IsolationForest también se compone de una gran cantidad de árboles. El árbol en IsolationForest se llama árbol de aislamiento, o iTree para abreviar. El árbol iTree es diferente del árbol de decisión y su proceso de construcción es más simple que el árbol de decisión porque es un proceso completamente aleatorio.

Suponga que el conjunto de datos tiene N piezas de datos Al construir un iTree, se muestrean uniformemente n muestras de las N piezas de datos (generalmente muestreo sin reemplazo) como muestras de entrenamiento para el árbol.

En la muestra, seleccione aleatoriamente una característica y seleccione aleatoriamente un valor dentro de todos los rangos de valores de esta característica (entre el valor mínimo y el valor máximo), realice una división binaria de la muestra y divida la muestra menor que Las que tienen este valor se dividen en el lado izquierdo del nodo, y las que tienen un valor mayor o igual a este valor se dividen en el lado derecho del nodo.

De esta manera, se obtiene una condición de división y los conjuntos de datos izquierdo y derecho, y luego se repite el proceso anterior en los conjuntos de datos izquierdo y derecho hasta que se alcanza la condición de terminación. Hay dos condiciones de terminación, una es que los datos en sí no se pueden dividir (solo se incluye una muestra o todas las muestras son iguales) y la otra es que la altura del árbol alcance log2 (n). A diferencia de los árboles de decisión, iTree ha limitado la altura del árbol en el algoritmo. Aunque es factible sin restricciones, por razones de eficiencia, el algoritmo generalmente requiere una altura de log2(n) de profundidad.

Una vez construidos todos los árboles iTree, se pueden predecir los datos de prueba.

El proceso de predicción consiste en mover los datos de prueba hacia abajo en el árbol iTree a lo largo de la rama condicional correspondiente hasta llegar al nodo hoja y registrar la longitud de la ruta h (x) pasada en el proceso, es decir, desde el nodo raíz hasta los nodos intermedios. , Finalmente llega al nodo hoja, el número de aristas recorridas (longitud del camino). Finalmente, h (x) se incluye en la fórmula, donde E (.) Representa la expectativa de cálculo y c (n) representa la longitud promedio de la ruta cuando el número de muestras es n, de modo que la anomalía de cada dato a Las puntuaciones que se van a probar se pueden calcular (puntuación de anomalía). La puntuación anormal s tiene las siguientes propiedades:

1) Si la puntuación s está más cerca de 1, la posibilidad de que la muestra sea un valor atípico es mayor

2) Si la puntuación; s está más cerca de 0, mayor es la posibilidad de que la muestra sea un valor normal.

El algoritmo RCF y el algoritmo IF son similares en pensamiento, y el primero puede verse como algunas mejoras del algoritmo IF; . Para los factores de series de tiempo que no se consideran en el algoritmo IF, el algoritmo RCF toma este factor en consideración y realiza algunas mejoras en la estrategia de muestreo de muestras de datos, lo que hace que la detección de valores atípicos sea más precisa y eficiente en comparación con el algoritmo IF, y se puede aplicar mejor a Detección de datos en streaming.

Algoritmo IF

Algoritmo RCF

La figura anterior muestra las similitudes y diferencias entre el algoritmo IF y el algoritmo RCF para la detección de valores atípicos. Podemos ver que hay dos valores de datos anormales de mutación en los datos originales. Para el último valor atípico de mutación más grande, tanto el algoritmo IF como el algoritmo RCF lo detectaron, pero para el primer valor atípico de mutación más pequeño, el algoritmo IF no detectó. salió, pero el algoritmo RCF aún lo detectó, lo que significa que RCF tiene un mejor rendimiento de detección de valores atípicos.

Práctica de aplicación de detección de valores atípicos

La teoría debe combinarse con la práctica A continuación, tomaremos los cambios de actividad diaria de una aplicación del 2016.08.16 al 2019.09.21 como ejemplo. Analizar la detección de valores atípicos Los escenarios de aplicación reales de El error provocó fluctuaciones significativas en la actividad diaria. A continuación se utilizan métodos estadísticos y métodos basados ​​en modelos para detectar valores atípicos en los datos de la secuencia de actividad diaria.

Basado en la regla 3σ (basado en estadísticas)

Algoritmo RCF (basado en el modelo)

Como se puede ver en la figura, para mutaciones grandes valores atípicos, 3σ Tanto la regla como el algoritmo RCF pueden detectarlo mejor, pero para valores atípicos de mutación más pequeños, el algoritmo RCF funciona mejor.

Resumen

Lo anterior explica los principios del método y las prácticas de aplicación de la detección de valores atípicos. En conjunto, existen varios algoritmos de detección de anomalías, cada uno con sus propias ventajas, desventajas y alcance de aplicación. Es difícil juzgar directamente qué algoritmo de detección de anomalías es el mejor. En el combate real, debemos determinar cuál es el mejor. Nuestras propias características comerciales, como requisitos computacionales, tolerancia a valores atípicos, etc., seleccionan un algoritmo de detección de valores atípicos apropiado.

A continuación, Getui también combinará sus propias prácticas para continuar profundizando sus esfuerzos en la detección de anomalías de big data, continuar optimizando el rendimiento de los modelos de algoritmos en diferentes escenarios comerciales y continuar compartiendo conceptos y Lo último con el plan de práctica.