Qual seria a abordagem para usar o Dynamic Time Warping (DTW) para executar o agrupamento de séries temporais?
Eu li sobre o DTW como uma maneira de encontrar semelhança entre duas séries temporais, enquanto elas poderiam ser alteradas no tempo. Posso usar esse método como uma medida de similaridade para algoritmos de cluster como k-means?
time-series
clustering
Marko
fonte
fonte
Respostas:
Você não usar k-médias para timeseries.
DTW não é minimizado pela média; O k-means pode não convergir e, mesmo se convergir, não produzirá um resultado muito bom. A média é um estimador de mínimos quadrados nas coordenadas. Minimiza a variação, não distâncias arbitrárias, e o k-means é projetado para minimizar a variação, não distâncias arbitrárias .
Suponha que você tenha duas séries temporais. Duas ondas senoidais, da mesma frequência, e um período de amostragem bastante longo; mas eles são deslocados por . Como o DTW distorce o tempo, ele pode alinhá-los para que correspondam perfeitamente, exceto o começo e o fim. A DTW atribuirá uma distância bastante pequena a essas duas séries. No entanto, se você calcular a média das duas séries, será um 0 simples - elas serão canceladas. A média não faz distorção dinâmica do tempo e perde todo o valor que a DTW recebeu. Nesses dados, o k-means pode não convergir e os resultados serão sem sentido. Os meios K realmente devem ser usados apenas com variância (= euclidiana ao quadrado) ou em alguns casos equivalentes (como cosseno, em dados normalizados de L2, onde a semelhança de cosseno éπ o mesmo que distância euclidiana ao quadrado)2 -
Em vez disso, calcule uma matriz de distância usando o DTW e execute o cluster hierárquico, como o link único. Em contraste com o k-mean, a série pode até ter um comprimento diferente.
fonte
Sim, você pode usar a abordagem DTW para classificação e agrupamento de séries temporais . Compilei os seguintes recursos , focados nesse mesmo tópico (recentemente respondi a uma pergunta semelhante, mas não neste site, por isso estou copiando o conteúdo aqui para conveniência de todos):
fonte
Um método recente DTW Barycenter Averaging (DBA) foi proposto por Petitjean et al. para séries temporais médias. Em outro artigo, eles provaram empiricamente e teoricamente como ele pode ser usado para agrupar séries temporais com k-médias. Uma implementação é fornecida no GitHub pelos autores ( link para código ).
1 F. Petitjean, G. Forestier, GI Webb, AE Nicholson, Y. Chen e E. Keogh, "A média dinâmica de distorção temporal das séries temporais permite uma classificação mais rápida e precisa", Conferência Internacional IEEE de 2014 sobre mineração de dados, Shenzhen, 2014 .
2 F. Petitjean, P. Gançarski, Resumindo um conjunto de séries temporais calculando a média: Da sequência de Steiner ao compacto alinhamento múltiplo, Ciência da Computação Teórica, Volume 414, Edição 1, 2012
fonte
O Dynamic Time Warp compara os pontos de dados realizados, que podem ou não funcionar. Uma abordagem mais rigorosa é comparar a distribuição das séries temporais por meio de uma métrica chamada distância do telescópio .
O interessante dessa métrica é que o cálculo empírico é feito ajustando uma série de classificadores binários como o SVM.
Para uma breve explicação, veja isso .
Para cluster de séries temporais, foi demonstrado que supera o DTW; veja a Tabela 1 no documento original [1].
[1] Ryabko, D. & Mary, J. (2013). Uma métrica baseada em classificação binária entre distribuições de séries temporais e seu uso em problemas estatísticos e de aprendizado. O Journal of Machine Learning Research, 14 (1), 2837-2856.
fonte
Sim. Uma abordagem ingênua e potencialmente lenta pode ser,
n! / k! / (n-k)!
. Seriam algo como centros em potencial.Eu usei isso para um pequeno projeto. Aqui está o meu repositório sobre o cluster de séries temporais e minha outra resposta sobre isso.
fonte