30 votos

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

He estado empezando a trabajar mi camino a través de Tutoriales de minería estadística de datos por Andrew Moore (muy recomendable para quienes se aventuren por primera vez en este campo). Empecé leyendo esto PDF sumamente interesante titulado "Panorama introductorio de los algoritmos de detección de anomalías basados en series temporales" en la que Moore recorre muchas de las técnicas empleadas en la creación de un algoritmo para detectar brotes de enfermedades. A mitad de las diapositivas, en la página 27, enumera otros "métodos de vanguardia" utilizados para detectar brotes. El primero de ellos es wavelets . Wikipeida describe una ondícula como

una oscilación ondulatoria con un amplitud que comienza en cero, aumenta, y luego disminuye de nuevo a cero. Normalmente puede visualizarse como una "oscilación breve"

pero no describe su aplicación a la estadística y mis búsquedas en Google arrojan artículos muy académicos que presuponen un conocimiento de cómo se relacionan las ondículas con la estadística o libros completos sobre el tema.

Me gustaría tener una idea básica de cómo se aplican las ondículas a la detección de anomalías en las series temporales, de forma muy parecida a como Moore ilustra las demás técnicas en su tutorial. Puede alguien proporcionar una explicación de cómo funcionan los métodos de detección que utilizan wavelets o un enlace a un artículo comprensible sobre el tema?

19voto

David Pokluda Puntos 4284

Las ondículas son útiles para detectar singularidades en una señal (véase, por ejemplo, el artículo aquí (véase la 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 transformada 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. Véase la figura 3 en el documento para ver lo que quiero decir! tenga en cuenta que hay código Matlab libre relacionado con ese documento, debe ser aquí .


Además, puedo darte algunos detalles heurísticos por qué la transformada wavelet DISCRETA (el ejemplo anterior se refiere a la continua) ( DWT ) es interesante para un estadístico (disculpe la falta de exhaustividad) :

  • Existe una amplia clase de señales (realistas (espacio de Besov)) que se transforman en un dispersa secuencia mediante la transformada wavelet. ( propiedad de compresión )
  • Una amplia clase de procesos (cuasi-estacionarios) que se transforman en una secuencia con características casi no correlacionadas ( propiedad de descorrelación )
  • Los coeficientes wavelet contienen información localizada en tiempo y en frecuencia (a diferentes escalas). (propiedad multiescala)
  • Coeficientes wavelet de una señal concentrarse en sus singularidades .

19voto

Jon Galloway Puntos 28243

La lista de la presentación a la que hace referencia me parece bastante arbitraria, y la técnica que se utilice dependerá realmente del problema concreto. Sin embargo, observará que también incluye Filtros Kalman por lo que sospecho que el uso previsto es como técnica de filtrado. Las transformadas wavelet suelen ser objeto de tratamiento de señales y se utilizará a menudo como etapa de preprocesamiento con datos muy ruidosos. Un ejemplo es el " Detección de anomalías multiescala "de Chen y Zhan (véase más abajo). El enfoque consistiría en realizar un análisis sobre el espectro diferente en lugar de sobre la serie ruidosa original.

Las ondículas suelen compararse con una transformada de Fourier en tiempo continuo, aunque tienen la ventaja de estar localizadas tanto en el tiempo como en la frecuencia. Las ondículas pueden utilizarse tanto para la compresión de señales como para el suavizado (wavelet shrinkage). En última instancia, podría tener sentido aplicar otra estadística después de aplicar la transformada wavelet (observando la función de autocorrelación, por ejemplo). Otro aspecto de las ondículas que podría ser útil para detectar anomalías es el efecto de localización: es decir, una discontinuidad sólo influirá en la ondícula que esté cerca de ella (a diferencia de la transformada de Fourier). Una aplicación de esto es encontrar series temporales localmente estacionarias (utilizando una LSW).

Guy Nason tiene un buen libro que recomendaría si se quiere profundizar en la aplicación estadística práctica: " Métodos Wavelet en Estadística con R ". Está dirigido 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 (utilizando el programa paquete wavethresh ). El libro de Nason no aborda específicamente la "detección de anomalías", aunque hace un trabajo admirable al ofrecer una visión general.

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

[Nota al margen: si está buscando una buena técnica moderna para la detección de puntos de cambio, le sugeriría que probara un HMM antes de dedicar demasiado tiempo a los métodos de ondícula, a menos que tenga buenas razones para utilizar ondículas en su campo concreto. Esto se basa en mi experiencia personal. Por supuesto, hay muchos otros modelos no lineales que se podrían considerar, así que realmente depende de su problema específico].

6voto

Bernard Puntos 10700

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

  1. Tienen un soporte compacto.
  2. Actúan como filtros pasabanda con la banda de paso determinada por su soporte.

En la práctica, esto significa que la descomposición de ondículas discretas tiene en cuenta los cambios locales de la señal en distintas escalas y bandas de frecuencia. Si tenemos (por ejemplo) un ruido de gran magnitud y alta frecuencia superpuesto a una función que muestra un desplazamiento de baja magnitud durante un periodo más largo, la transformada wavelet separará eficazmente estas dos escalas y nos permitirá ver el desplazamiento de la línea de base que muchas otras técnicas pasarían por alto; un desplazamiento de esta línea de base puede sugerir un brote de enfermedad o algún otro cambio de interés. En muchos sentidos, se puede tratar la propia descomposición como un suavizador (y se ha trabajado bastante en la reducción eficiente de los coeficientes de ondículas en la estimación no paramétrica; véase, por ejemplo, prácticamente cualquier cosa sobre ondículas de Donoho). A diferencia de los métodos basados puramente en la frecuencia, el soporte compacto significa que son capaces de manejar datos no estacionarios. A diferencia de los métodos basados puramente en el tiempo, permiten cierto filtrado basado en la frecuencia.

En la práctica, para detectar anomalías o puntos de cambio, se aplicaría a los datos una transformada wavelet discreta (probablemente la variante conocida como "DWT de solapamiento máximo" o "DWT invariante de desplazamiento", según a quién se lea) y se observarían los conjuntos de coeficientes de baja frecuencia para ver si hay desplazamientos significativos en la línea de base. Esto le mostrará cuándo se está produciendo un cambio a largo plazo por debajo de cualquier ruido cotidiano. Percival y Walden (véanse las referencias más abajo) derivan algunas pruebas para coeficientes estadísticamente significativos que podría utilizar para ver si un cambio como éste es significativo o no.

Una excelente obra de referencia sobre ondículas discretas es Percival y Walden, "Wavelet Methods for Time Series Analysis". Una buena obra introductoria es "Introduction to wavelets and wavelet transforms, a primer", de Burrus, Gopinath y Guo. Si tiene formación en ingeniería, "Elements of wavelets for engineers and scientists" es una buena introducción desde el punto de vista del procesamiento de señales.

(Editado para incluir los comentarios de Robin)

0voto

Tekdream Puntos 31

¡Muy buenas respuestas hasta ahora!

Para la demostración matemática relativa a la primera frase de robin, (es decir. Las ondículas son útiles para detectar singularidades en una señal ), originalmente de Yves Meyer, véase Detección y procesamiento de singularidades con wavelets (Mallat y Hwang, 1992). No sólo son útiles, son garantizado concentrarse alrededor de las singularidades y hacerlas cuantificables a través de su medida de Lipschitz, una especie de condición "si y sólo si".

Dicho esto, me gustaría reflexionar sobre la hipótesis de robin de que las singularidades pueden ser una anomalía, y posiblemente ampliarla diciendo más bien que, dado que las representaciones wavelet se concentran más en las singularidades, el resultado es generalmente más disperso, y una representación más dispersa puede permitir identificar anomalías con mayor fiabilidad (aunque sólo sea como consecuencia de tener menos parámetros).

Por supuesto, no todo se puede resolver con wavelets, ya no estamos en los años 90. Ahora utilizamos redes neuronales para todo.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X