Aplicación de wavelets a algoritmos de detección de anomalías basados ​​en series temporales.


25

He comenzado a trabajar a través de Tutoriales de minería de datos estadísticos de Andrew Moore (muy recomendable para cualquier otra persona que se aventura por primera vez en este campo). Comencé leyendo este PDF extremadamente interesante titulado "Introducción general de los algoritmos de detección de anomalías basados ​​en series temporales" en el que Moore rastrea muchas de las técnicas utilizadas en la creación de un algoritmo para detectar brotes de enfermedades. A la mitad de las diapositivas, en la página 27, enumera una serie de otros "métodos de vanguardia" utilizados para detectar brotes. El primero en la lista es wavelets . Wikipeida describe una wavelet como

Una oscilación en forma de onda con una amplitud que comienza en cero, aumenta y luego disminuye de nuevo a cero. Normalmente se puede visualizar como una "breve oscilación"

pero no describe su aplicación a las estadísticas y mis búsquedas en Google arrojan documentos altamente académicos que suponen un conocimiento de cómo las wavelets se relacionan con estadísticas o libros completos sobre el tema.

Me gustaría una comprensión básica de cómo se aplican las wavelets a la detección de anomalías de series temporales, de la misma manera que Moore ilustra las otras técnicas en su tutorial. ¿Alguien puede dar una explicación de cómo funcionan los métodos de detección utilizando wavelets o un enlace a un artículo entendible sobre el tema?

Respuestas:


19

Las wavelets son útiles para detectar singularidades en una señal (ver, por ejemplo, el documento aquí (ver figura 3 para una ilustración) y las referencias mencionadas en este documento. ¿Supongo que las singularidades a veces pueden ser una anomalía?

La idea aquí es que la transformación de wavelet continua (CWT) tiene líneas máximas que se propagan a lo largo de las frecuencias, es decir, cuanto más larga es la línea, mayor es la singularidad. ¡Vea la Figura 3 en el documento para ver a qué me refiero! tenga en cuenta que hay un código gratuito de Matlab relacionado con ese documento, debería estar aquí .


Además, puedo darle algunas heurísticas que detallan por qué la transformada wavelet ( DWT ) DISCRETE (el ejemplo anterior trata sobre la continua ) es interesante para un estadístico (disculpa la no exhaustividad):

  • Hay una amplia clase de señales (realistas (espacio Besov)) que se transforman en una secuencia dispersa por la transformada wavelet. ( propiedad de compresión )
  • Una amplia clase de procesos (casi estacionarios) que se transforman en una secuencia con características casi no correlacionadas ( propiedad de descorrelación )
  • Los coeficientes wavelet contienen información que se localiza en el tiempo y en la frecuencia (a diferentes escalas). (propiedad multiescala)
  • Los coeficientes wavelet de una señal se concentran en sus singularidades .

19

La lista en la presentación a la que hace referencia me parece bastante arbitraria, y la técnica que se utilizará realmente dependerá del problema específico. Sin embargo, notará que también incluye filtros de Kalman , por lo que sospecho que el uso previsto es como una técnica de filtrado. Las transformaciones de wavelet generalmente caen bajo el tema del procesamiento de señales , y a menudo se utilizarán como un paso de preprocesamiento con datos muy ruidosos. Un ejemplo es el documento " Detección de anomalías a escala múltiple " de Chen y Zhan (ver más abajo). El enfoque sería realizar un análisis en el espectro diferente en lugar de en la serie ruidosa original.

Las wavelets a menudo se comparan con una transformación de Fourier de tiempo continuo, aunque tienen el beneficio de estar localizadas tanto en tiempo como en frecuencia. Las wavelets se pueden usar tanto para la compresión de la señal como para el suavizado (contracción de wavelet). En última instancia, podría tener sentido aplicar una estadística adicional después de que se haya aplicado la transformada wavelet (observando la función de autocorrelación, por ejemplo). Otro aspecto de las wavelets que podría ser útil para la detección de anomalías es el efecto de la localización: es decir, una discontinuidad solo influirá en la wavelet que está cerca (a diferencia de una transformación de Fourier). Una aplicación de esto es encontrar series temporales localmente estacionarias (usando un LSW).

Guy Nason tiene un buen libro que recomendaría si desea profundizar en la aplicación estadística práctica: " Métodos Wavelet en Estadística con R ". Esto apunta específicamente a la aplicación de wavelets al análisis estadístico, y proporciona muchos ejemplos del mundo real junto con todo el código (usando el paquete wavethresh ). El libro de Nason no aborda específicamente la "detección de anomalías", aunque sí hace un gran trabajo al proporcionar una visión general.

Por último, el artículo de wikipedia proporciona muchas buenas referencias introductorias, por lo que vale la pena revisarlo en detalle.

[Como nota al margen: si está buscando una buena técnica moderna para la detección de puntos de cambio, sugeriría probar un HMM antes de pasar demasiado tiempo con los métodos wavelet, a menos que tenga una buena razón para usar wavelets en su campo particular. Esto se basa en mi experiencia personal. Por supuesto, hay muchos otros modelos no lineales que podrían considerarse, por lo que realmente depende de su problema específico.]


1
No me queda claro cómo se utilizan los modelos ocultos de Markov para la detección de anomalías, pero me gustaría saberlo. La parte que no me resulta particularmente clara es cómo crear una máquina de estado subyacente correcta con probabilidades de transición significativas (a menos que sean solo dos estados como "anomalía" y "no anomalía" con una ingenua probabilidad de transición entre ellos).
John Robertson

6

Las funciones de base de wavelets discretas más comúnmente utilizadas e implementadas (a diferencia del CWT descrito en la respuesta de Robin) tienen dos buenas propiedades que las hacen útiles para la detección de anomalías:

  1. Son compatibles de forma compacta.
  2. Actúan como filtros de paso de banda con la banda de paso determinada por su soporte.

Lo que esto significa en términos prácticos es que su descomposición de wavelet discreta observa los cambios locales en la señal a través de una variedad de escalas y bandas de frecuencia. Si tiene (por ejemplo) ruido de alta frecuencia y gran magnitud superpuesto en una función que muestra un cambio de baja magnitud durante un período más largo, la transformada wavelet separará eficientemente estas dos escalas y le permitirá ver el cambio de la línea de base que muchas otras las técnicas fallarán; Un cambio en esta línea de base puede sugerir un brote de enfermedad o algún otro cambio de interés. De muchas maneras, puede tratar la descomposición en sí misma como más uniforme (y se ha trabajado bastante en la reducción eficiente de los coeficientes wavelet en la estimación no paramétrica, ver, por ejemplo, casi cualquier cosa en wavelets de Donoho). A diferencia de los métodos basados ​​en frecuencias puras, El soporte compacto significa que son capaces de manejar datos no estacionarios. A diferencia de los métodos puramente basados ​​en el tiempo, permiten cierto filtrado basado en la frecuencia.

En términos prácticos, para detectar anomalías o cambiar puntos, aplicaría una transformada de wavelet discreta (probablemente la variante conocida como "DWT de superposición máxima" o "DWT invariante de desplazamiento", según quién lea) a los datos, y observe en los conjuntos de coeficientes de frecuencia más baja para ver si tiene cambios significativos en la línea de base. Esto le mostrará cuándo se produce un cambio a largo plazo debajo de cualquier ruido del día a día. Percival y Walden (consulte las referencias a continuación) obtienen algunas pruebas de coeficientes estadísticamente significativos que podría usar para ver si un cambio como este es significativo o no.

Un excelente trabajo de referencia para wavelets discretas es Percival y Walden, "Métodos Wavelet para análisis de series temporales". Un buen trabajo introductorio es "Introducción a las wavelets y las transformadas de wavelets, una cartilla" de Burrus, Gopinath y Guo. Si viene de una formación en ingeniería, entonces "Elementos de wavelets para ingenieros y científicos" es una buena introducción desde el punto de vista del procesamiento de señales.

(Editado para incluir los comentarios de Robin)


El primer punto que menciona es falso en general. Sugiero que lea la primera oración del capítulo books.google.fr/… en el libro de Daubechie. Además, si hubiera leído mi respuesta, ya mencioné la buena propiedad del DWT en la segunda parte de mi respuesta ...
robin girard

Para el primer punto, tienes razón. Debería haber dicho "Funciones de base de wavelet discretas más comúnmente utilizadas / implementadas"; Lo editaré para reflejar eso. En el segundo punto, usted dio una buena respuesta sobre cómo algunos CWT (la mayoría de las veces una wavelet DOG o la wavelet Ricker relacionada; algo como, por ejemplo, la wavelet Gabor no proporcionaría el comportamiento que usted describe) pueden detectar anomalías del tipo de singularidad. Estaba tratando de dar una descripción análoga de cómo se puede usar DWT para detectar otros tipos de anomalías.
Rico

El segundo punto que menciona también es probable que sea falso: el soporte wavelet (si es compacto) está dando información sobre la localización temporal de la wavelet, no la localización de frecuencia.
robin girard

Las wavelets discretas, o al menos la gran mayoría de las que se implementan y usan comúnmente, generalmente están diseñadas para tener propiedades útiles basadas en la frecuencia bajo la restricción de soporte compacto. La condición de momento de fuga de Daubechies, por ejemplo, es más o menos equivalente a la planitud en la banda de paso. Las propiedades de localización de frecuencia de las wavelets suelen ser las que hacen que los coeficientes sean representaciones dispersas y permiten la estimación de la varianza del ruido bajo el supuesto de "señal + ruido aditivo cero".
Rico
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.