A distorção dinâmica do tempo está desatualizada?

7

Em http://www.speech.zone/exercises/dtw-in-python/ , diz

Embora não seja mais realmente usado, o Dynamic Time Warping (DTW) é uma boa introdução ao conceito-chave da Programação Dinâmica.

Estou usando o DTW para processamento de sinal e fico um pouco surpreso: o que é usado no lugar?

Make42
fonte
No reconhecimento de fala por meio de aprendizado profundo, o CTC é usado.
Emre

Respostas:

6

Eu não consideraria a DTW desatualizada. Em 2006, Xi et al. mostrou que

[...] muitos algoritmos foram propostos para o problema de classificação de séries temporais. No entanto, é claro que a distância de um vizinho mais próximo com a DTW (Dynamic Time Warping) é excepcionalmente difícil de superar.

Os resultados deste artigo estão resumidos no livro "Mineração de Dados Temporais", de Theophano Mitsa, da seguinte forma:

  • Em [Che05a], uma abordagem estática de minimização-maximização gera um erro máximo de 7,2%. Com 1NN-DTW, o erro é de 0,33% com o mesmo conjunto de dados que no artigo original.
  • Em [Che05b], uma abordagem de histograma em várias escalas gera um erro máximo de 6%. Com 1NN-DTW, o erro (no mesmo conjunto de dados) é de 0,33%.
  • Em [Ead05], um algoritmo de extração de recurso guiado por gramática gera um erro máximo de 13,22%. Com 1NN-DTW, o erro foi de 9,09%.
  • Em [Hay05], as séries temporais são incorporadas em um espaço dimensional inferior usando um mapa próprio da Lapônia e distâncias de DTW. Os autores alcançaram uma precisão impressionante de 100%; no entanto, o 1NN-DTW também alcançou 100% de precisão.
  • Em [Kim04], os modelos Hidden Markov alcançam 98% de precisão, enquanto o 1NN-DTW alcança 100% de precisão.
  • Em [Nan01], uma rede neural perceptron de múltiplas camadas atinge o melhor desempenho de 1,9% de taxa de erro. No mesmo conjunto de dados, a taxa de 1NN-DTW foi de 0,33%.
  • No [Rod00], a lógica de primeira ordem com aumento fornece uma taxa de erro de 3,6%. No mesmo conjunto de dados, a taxa de erro do 1NN-DTW foi de 0,33%.
  • Em [Rod04], uma árvore de decisão baseada em DTW fornece uma taxa de erro de 4,9%. No mesmo conjunto de dados, 1NN-DTW fornece 0,0% de erro. • Em [Wu04], um conjunto de fusão de superkernel fornece uma taxa de erro de 0,79%, enquanto no mesmo conjunto de dados, 1NN-DTW fornece 0,33%.

Consulte o livro original para obter uma lista das referências mencionadas.

Uma coisa importante a se notar aqui é o fato de Xi et al. até consegui superar o desempenho de um MLP em 2006. Embora a situação possa parecer um pouco diferente hoje em dia (como temos melhores e mais rápidos algoritmos de aprendizado profundo em mãos), eu ainda consideraria a DTW uma opção válida para analisar quando trata-se de classificações de sinal.

Atualizar

Eu também gostaria de adicionar um link a um artigo mais recente chamado "A Grande Classificação de Séries Temporais: Uma Avaliação Experimental de Algoritmos Propostos Recentemente" a partir de 2016. Neste artigo, os autores "implementaram 18 algoritmos recentemente propostos de maneira comum. Framework Java e os comparou com dois classificadores de benchmark padrão (e entre si) ". As seguintes citações do artigo enfatizam que a DTW é (ou pelo menos era em 2016) de fato ainda relevante:

  1. De fato, muitos dos algoritmos não são melhores do que nossos dois classificadores de benchmark, 1-NN DTW e Rotation Forest.
  2. Para aqueles que desejam criar um modelo preditivo para um novo problema, recomendamos começar com DTW, RandF e RotF como uma verificação básica de sanidade e referência.
  3. A sabedoria recebida é que é difícil vencer o DTW.
Hagbard
fonte
4

O Dynamic Time Warping (DTW) possui complexidade quadrática. Existem várias outras versões do algoritmo, como o FastDTW (complexidade linear) que diminui a complexidade calculando aproximações. O FastDTW é implementado, por exemplo, neste módulo Python .

Pablo Suau
fonte
0

Até onde eu sei, é principalmente sobre o aspecto computacional que foi aprimorado, por isso ainda é um método adequado para medir a similaridade entre seqüências.

Eu recomendo isso como uma boa referência, especialmente a seção 4.3. Aqui está a parte em negrito desta seção:

Um caminho de distorção W é um conjunto de índices de matriz contíguos que definem um mapeamento entre duas séries temporais. Mesmo se houver um número exponencial de possíveis caminhos de distorção, o caminho ideal é aquele que minimiza o custo global de distorção. O DTW pode ser calculado usando programação dinâmica com complexidade de tempo O (n2) [Ratanamahatana e Keogh 2004a]. No entanto, várias medidas de limite inferior foram introduzidas para acelerar o cálculo. Keogh e Ratanamahatana [2005] introduziram a noção de envelope superior e inferior que representa o empenamento máximo permitido. Usando essa técnica, a complexidade se torna O (n). Também é possível impor uma restrição temporal ao tamanho da janela de distorção da DTW. Foi demonstrado que isso melhora não apenas a velocidade, mas também o nível de precisão, pois evita a correspondência patológica introduzida pelo empenamento prolongado [Ratanamahatana e Keogh 2004b]. As duas restrições globais mais frequentemente usadas são a banda Sakoe-Chiba e o paralelogramo Itakura. Salvador e Chan [2007] introduziram o algoritmo FastDTW, que possibilita o cálculo linear do tempo do DTW, projetando recursivamente um caminho de distorção para uma resolução mais alta e refinando-o. Uma desvantagem deste algoritmo é que ele é aproximado e, portanto, ACM Computing Surveys, vol. 45, nº 1, artigo 12, data de publicação: novembro de 2012. 12:18 P. Esling e C. Agon não oferecem garantia para encontrar a solução ideal. Além do empenamento dinâmico, às vezes, pode ser útil permitir que uma escala global de séries temporais alcance resultados significativos, uma técnica conhecida como Escala Uniforme (EUA). Fu et al. [2008] propuseram a medida de similaridade de correspondência em escala e deformada (SWM) que permite combinar os benefícios da DTW com os dos EUA. Outras medidas baseadas em formas foram introduzidas, como a Distância Espacial de Montagem (SpADe) [Chen et al. 2007b]; é uma medida de similaridade baseada em padrões. Esse algoritmo identifica padrões de correspondência, permitindo a mudança e a escala nos eixos temporal e de amplitude, sendo robusta na escala. O DISSIM [Frentzos et al. 2007] foi introduzida a distância para lidar com a similaridade em várias taxas de amostragem. É definido como uma aproximação da integral da distância euclidiana. Uma das propostas recentes mais interessantes é baseada no conceito de correspondência elástica de séries temporais [Latecki et al. 2005]. Latecki et al. [2007] apresentaram uma técnica de correspondência ótima de subseqüência (OSB), capaz de determinar automaticamente o melhor fator de subsequência e distorção para o cálculo da distância; inclui uma penalidade ao pular elementos. A otimização é alcançada através de um alto custo computacional; no entanto, pode ser reduzido limitando o intervalo de salto.

Kasra Manshaei
fonte