Series temporales y detección de anomalías

15

Me gustaría configurar un algoritmo para detectar una anomalía en series de tiempo, y planeo usar el agrupamiento para eso.

  • ¿Por qué debería usar una matriz de distancia para la agrupación y no los datos de series temporales sin procesar?

  • Para la detección de la anomalía, utilizaré la agrupación basada en densidad, un algoritmo como DBscan, ¿funcionaría en este caso? ¿Existe una versión en línea para la transmisión de datos?

  • Me gustaría detectar la anomalía antes de que ocurra, entonces, ¿sería una buena opción usar un algoritmo de detección de tendencias (ARIMA)?

napsterockoeur
fuente
Está escrito correctamente DBSCAN. Es una abreviatura. No estoy seguro de lo que estás tratando de hacer. Detecta anomalías dentro de una serie temporal o series temporales anómalas generales.
HA SALIDO - Anony-Mousse
Sí DBSCAN, exacte! ¡Lo que estoy tratando de hacer es una anomalía de detección en línea en un conjunto de datos de series de tiempo! ¡entonces! cualquier solicitud ? gracias saludos
napsterockoeur
¿En línea como en series de tiempo en crecimiento o como series adicionales que se agregan? Una vez más, estos son muy diferentes, y debe ser muy claro a qué se refiere.
HA SALIDO - Anony-Mousse
Quiero decir, en línea (stream), una serie de tiempos de crecimiento que proviene de un sensor ... cada hora se recibe un conjunto de datos (vector) ...
napsterockoeur

Respuestas:

12

Con respecto a su primera pregunta, le recomendaría que lea este famoso artículo (La agrupación de subsecuencias de series de tiempo no tiene sentido) antes de agrupar en una serie de tiempo. Está claramente escrito e ilustra muchas trampas que desea evitar.

gui11aume
fuente
6

La detección de anomalías o "Detección de intervención" ha sido promovida por GCTiao y otros. Hacer ciencia es buscar patrones repetidos. Detectar anomalías es identificar valores que no siguen patrones repetidos. Aprendemos de Newton "Quien conozca los caminos de la Naturaleza notará más fácilmente sus desviaciones y, por otro lado, quien conozca sus desviaciones describirá con mayor precisión sus caminos". Uno aprende las reglas al observar cuándo fallan las reglas actuales. Considere las series de tiempo 1,9,1,9,1,9,5,9. Para identificar la anomalía uno necesita tener un patrón. El "5" es tanto una anomalía como lo sería "14". Para identificar el patrón simplemente use ARIMA y en este caso la "anomalía" se vuelve obvia. Pruebe diferentes enfoques / software y vea cuál sugiere un modelo ARIMA de orden 1,0, 0 con un coeficiente de -1.0. Utilice los procedimientos de búsqueda / google para encontrar "arima automática" o "detección de intervención automática". Puede que te decepcionen las cosas gratis, ya que puede valer lo que pagas. Escribirlo usted mismo puede ser interesante si tiene una gran experiencia en series de tiempo y un par de años que perder. Existen serias limitaciones para los métodos basados ​​en la distanciahttp://www3.ntu.edu.sg/SCE/pakdd2006/tutorial/chawla_tutorial_pakddslides.pdf

IrishStat
fuente
Muchas gracias Sir IrishStat, estoy totalmente de acuerdo con usted, que existen grandes limitaciones en los métodos basados ​​en la distancia y supongo que los otros métodos también, es por eso que estoy probando el método base de densidad, vi muchos artículos hablando acerca de la detección de anomalías de series de tiempo, como la investigación de la NASA, universidades ... etc. pero un pequeño progreso, para problemas de datos particulares Y recientemente encontré un buen software gratuito para la detección de valores atípicos: ¡MOA de Weka! ¿Lo probaste antes? es un software de código abierto, estoy tratando de usarlo para desarrollar e integrar mi pequeño algoritmo de anomalía de detección,
napsterockoeur
oh: FYI: estoy tratando una transmisión de datos
napsterockoeur