Deformación dinámica del tiempo para series temporales irregulares

10

He estado leyendo mucho sobre Dynamic Time Warping (DTW) últimamente. Estoy muy sorprendido de que no haya literatura en absoluto sobre la aplicación de DTW a series temporales irregulares, o al menos no pude encontrarla.

¿Alguien podría darme una referencia a algo relacionado con ese problema, o tal vez incluso una implementación del mismo?

Remi D
fuente
Comenzaría con cran.r-project.org/web/packages/dtw/index.html
kjetil b halvorsen el

Respuestas:

11

Según tengo entendido, por series de tiempo irregulares te refieres a series de tiempo desigualmente espaciadas , también conocidas como series de tiempo muestreadas irregularmente . Como tengo curiosidad sobre las series temporales en general, he realizado una breve investigación sobre el tema de su interés (y ahora el mío). Los resultados siguen.

A pesar de la gran popularidad del enfoque de deformación dinámica del tiempo (DTW) en el análisis, agrupamiento y clasificación de series temporales, las series temporales irregulares presentan algunos desafíos para la aplicación directa de DTW a ese tipo de datos (por ejemplo, vea este documento y este documento ). En base a mis esfuerzos de investigación relativamente breves, no me resulta totalmente claro si es imposible aplicar DTW directamente, ya que algunas investigaciones sugieren lo contrario (ver también este documento / capítulo ). Para una mayor exhaustividad, también me gustaría mencionar una OMI excelente y relevante para la disertación del tema sobre series temporales irregulares .

Sin embargo, parece que este tema está cubierto principalmente por las siguientes dos corrientes de investigación :

Finalmente, me gustaría referirme al tema del software de código abierto , disponible para investigación o implementación de sistemas , enfocado en DTW y compatible con algunos de los algoritmos mencionados anteriormente para series temporales irregulares. Dicho software incluye un proyecto de módulo cDTW basado en Python / NumPy , así como un proyecto CUDA-DTW basado en CUDA centrado en GPU . Para los entusiastas, también debe mencionarse un proyecto completo de Dynamic Time Warp ( paquete correspondiente R dtwestá disponible en CRAN). Aunque puede no ser compatible con muchos algoritmos DTW para series temporales irregulares en este momento (aunque creo que es compatible con cDTW), creo que es solo cuestión de tiempo hasta que este proyecto ofrezca un soporte más completo para los algoritmos DTW, centrados en ese tipo de datos. Espero que hayas disfrutado leyendo mi respuesta tanto como yo he disfrutado investigando el tema y escribiendo esta publicación.

Aleksandr Blekh
fuente
1

He implementado con éxito DTW en 'C' aplicado a la verificación dinámica de firmas. Utilicé una base de datos de prueba de firmas chinas y holandesas para verificar EER y obtuve resultados muy impresionantes. Actualmente se implementa como una demostración en un iPad. Mi algoritmo fue codificado a mano a partir de varias descripciones publicadas. Compartiré el código si hay una forma de enviárselo. Una cosa que también contribuyó al éxito fue 'normalizar' los datos de entrada. Esto facilitó mucho la comparación de datos dispares con diferentes frecuencias de muestreo.

user6009837
fuente
¡Bienvenido a nuestro sitio! Tenga en cuenta que su nombre de usuario, identicon y un enlace a su página de usuario se agregan automáticamente a cada publicación que realice, por lo que no es necesario firmar sus publicaciones.
Silverfish
2
Queremos que nuestras respuestas sean útiles para los futuros lectores en lugar de solo el póster original personalmente, por lo que la posibilidad de compartir el código sería más útil si pudiera cargar en algún lugar y compartir un enlace aquí. Pero si eso no es posible, quizás podría arrojar algo de luz sobre "Mi algoritmo fue codificado a mano a partir de varias descripciones publicadas". ¿Podría citar las que utilizó en caso de que alguien más quiera seguir sus pasos e implementarlos?
Silverfish
0

Solo estoy entrando en DTW y no he usado personalmente los paquetes mencionados a continuación, pero espero que lo siguiente pueda ayudarlo.

El Proyecto Cran.R, en particular: • "ts" es la clase básica para series de tiempo regularmente espaciadas que usan marcas de tiempo numéricas. • El paquete "zoo" proporciona infraestructura para series temporales espaciadas regularmente e IRREGULARMENTE utilizando clases arbitrarias para las marcas de tiempo. Está diseñado para ser lo más consistente posible con "ts". • zoo: Infraestructura S3 para series temporales regulares e irregulares (observaciones ordenadas de Z)

Referencias: http://cran.r-project.org/web/views/TimeSeries.html y http://cran.r-project.org/web/packages/zoo/index.html

Los mejores deseos.

TonyMorland
fuente
1
Mi pregunta fue sobre la adaptación de DTW como método al contexto de series temporales irregulares. Los paquetes como Zoo no proporcionan una solución a ese problema.
Remi D
0

TSdist tiene una función que determina la distancia a través de dtw. Acepta series temporales irregulares del zoológico.

tiagovrtr
fuente
1
"Acepta" no significa que los maneja. Siempre debe verificar el código fuente de una función.
Remi D