O Transformer King está de volta! Sem modificar nenhum módulo, a previsão de tempo conduz a todos os aspetos

Fonte original: Shin Ji Yuan

Fonte da imagem: Gerado por Unbounded AI

Nos últimos anos, o Transformer fez avanços contínuos no processamento de linguagem natural e tarefas de visão computacional, e tornou-se um modelo básico no campo da aprendizagem profunda.

Inspirado por isso, inúmeras variantes do modelo Transformer foram propostas no campo das séries temporais.

No entanto, um número crescente de estudos recentes descobriu que usar um modelo preditivo linear simples baseado em camadas pode alcançar melhores resultados do que todos os tipos de transformadores mágicos.

Recentemente, em resposta a perguntas sobre a eficácia do Transformer no campo da previsão de séries temporais, o Laboratório de Aprendizado de Máquina da Escola de Software da Universidade de Tsinghua e acadêmicos do Ant Group lançaram conjuntamente um trabalho de previsão de séries temporais, que provocou discussões acaloradas no Reddit e em outros fóruns.

Entre eles, o iTransformer proposto pelo autor, considerando as características dos dados de séries temporais multidimensionais, não modifica nenhum módulo do Transformer, mas quebra a estrutura do modelo convencional, e alcançou uma liderança abrangente em tarefas complexas de previsão de séries temporais, tentando resolver os pontos problemáticos da modelagem de dados de séries temporais do Transformer.

Endereço em papel:

Implementação de código:

Com a bênção do iTransformer, o Transformer completou uma reversão abrangente na tarefa de previsão de séries temporais.

Antecedentes do problema

Os dados de séries temporais do mundo real tendem a ser multidimensionais, incluindo dimensões variáveis além da dimensão temporal.

Cada variável pode representar uma quantidade física observada diferente, como múltiplos indicadores meteorológicos usados na previsão do tempo (velocidade do vento, temperatura, umidade, pressão do ar, etc.), ou pode representar diferentes assuntos de observação, como a geração de energia horária de diferentes equipamentos em uma usina.

Em geral, variáveis diferentes têm significados físicos completamente diferentes, e mesmo que a semântica seja a mesma, suas unidades de medida podem ser completamente diferentes.

No passado, os modelos preditivos baseados em Transformers geralmente incorporavam várias variáveis no mesmo momento no Token Temporal, usavam uma rede feed-forward para codificar os recursos de cada momento e usavam o módulo de atenção para aprender a correlação entre diferentes momentos.

No entanto, esta abordagem pode ter os seguintes problemas:

Ideias de Design

Ao contrário de cada palavra (Token) em linguagem natural com forte informação semântica independente, cada "Token Temporal" visto na perspetiva do Transformer existente muitas vezes carece de semântica na mesma sequência de dados de séries temporais, e enfrenta problemas como o não alinhamento de carimbos de data/hora e campos recetivos muito pequenos.

Em outras palavras, as capacidades de modelagem dos transformadores tradicionais em séries temporais foram muito enfraquecidas.

Para isso, os autores propõem uma perspetiva completamente nova de invertida.

Como mostrado na figura abaixo, invertendo o módulo original do Transformer, o iTransformer primeiro mapeia toda a sequência da mesma variável em uma representação de feição de alta dimensão (iate Token), e o vetor de feição obtido toma a variável como o corpo principal descrito e retrata de forma independente o processo histórico que ela reflete.

Depois disso, o módulo de atenção pode modelar naturalmente a Correlação Mulitiiate, e a rede feedforward codifica as características de observações históricas camada por camada na dimensão temporal, e mapeia as características aprendidas em previsões futuras.

Em contraste, LayerNorm, que não foi explorado em profundidade em dados de séries temporais no passado, também desempenhará um papel crucial na eliminação de diferenças de distribuição entre variáveis.

iTransformer

Estrutura Geral

Ao contrário da estrutura mais complexa do codificador-decodificador usada em modelos anteriores de previsão de transformadores, o iTransformer contém apenas codificadores, incluindo camadas de incorporação, camadas de projeção (projetor) e módulos de transformador empilháveis (TrmBlock).

Representação de recursos de variáveis de modelagem

Para uma série temporal multidimensional com um comprimento de tempo e um número de variáveis, o artigo usa todas as variáveis que representam o mesmo momento no tempo, e uma sequência de observação histórica inteira representando a mesma variável.

Considerando que o que tem semântica mais forte e unidades de medida relativamente consistentes, diferente da forma anterior de incorporar recursos, este método usa a camada de incorporação para mapear cada recurso de forma independente para obter a representação de feição de cada variável, que contém a mudança de série temporal da variável no tempo passado.

Esta representação de recursos irá primeiro interagir informações entre variáveis através do mecanismo de auto-atenção em cada camada do módulo Transformer, unificar a distribuição de recursos de diferentes variáveis usando normalização de camada, e realizar codificação de recurso totalmente conectado na rede feedforward. Finalmente, o resultado da previsão é mapeado por uma camada de projeção.

Com base no processo acima, a implementação de todo o modelo é muito simples, e o processo de cálculo pode ser expresso como:

Entre eles, os resultados de predição correspondentes a cada variável, a camada de incorporação e a camada de projeção são implementados com base no perceptron multicamadas (MLP).

Vale a pena notar que, como a ordem entre os pontos de tempo já está implícita na ordem em que os neurônios estão dispostos, o modelo não precisa introduzir a incorporação de posição no Transformer.

Análise do módulo

Depois de inverter as dimensões do processamento de dados de séries temporais pelo módulo Transformer, este trabalho revisita as responsabilidades de cada módulo no iTransformer.

**1. Normalização de camadas: ** A normalização de camadas foi originalmente proposta para melhorar a estabilidade e convergência do treinamento de rede profunda.

No Transformer anterior, o módulo normalizava várias variáveis ao mesmo tempo, tornando cada variável indistinguível. Uma vez que os dados coletados não estão alinhados no tempo, a operação também introduz ruído de interação entre processos acausais ou atrasados.

Na versão invertida (a fórmula é como acima), a normalização da camada é aplicada à representação de cada variável (token iate), de modo que os canais de feição de todas as variáveis estão sob uma distribuição relativamente uniforme.

Esta ideia de normalização tem sido amplamente comprovada eficaz em lidar com problemas não-estacionários de séries temporais, mas pode ser naturalmente implementada no iTransformer através da normalização de camadas.

Além disso, uma vez que as representações de características de todas as variáveis são normalizadas para uma distribuição normal, as diferenças causadas por diferentes intervalos de valores de variáveis podem ser reduzidas.

Em vez disso, na estrutura anterior, o Token Temporal de todos os carimbos de data/hora seria uniformemente normalizado, resultando no modelo realmente vendo uma série temporal excessivamente suave.

**2. Redes feed-forward: Transformer codifica vetores de palavras usando redes feed-forward.

O vetor "palavra" formado no modelo anterior foi várias variáveis coletadas ao mesmo tempo, e seu tempo de geração pode não ser consistente, e é difícil para "palavras" refletindo um passo de tempo fornecer semântica suficiente.

Na versão invertida, o vetor "palavra" é formado pela sequência inteira da mesma variável, com base no teorema da representação universal do perceptron multicamadas, que tem uma capacidade de modelo grande o suficiente para extrair as características temporais compartilhadas em observações históricas e previsões futuras, e usa extrapolação de feição como resultados de previsão.

Outra base para o uso de redes feedforward para modelar a dimensão do tempo vem de pesquisas recentes que descobriram que as camadas lineares são boas em aprender as características temporais que qualquer série temporal possui.

Os autores propõem uma explicação plausível: os neurônios na camada linear podem aprender a extrair propriedades intrínsecas de séries temporais arbitrárias, como amplitude, periodicidade e até espectros de frequência (a transformada de Fourier é essencialmente um mapa totalmente conectado sobre a sequência original).

Portanto, em comparação com a prática anterior do Transformer usando mecanismo de atenção para modelar dependências de séries temporais, o uso de redes feedforward tem maior probabilidade de completar a generalização em sequências não vistas.

**3. Auto-Atenção: O Módulo de Auto-Atenção é usado neste modelo para modelar a correlação de diferentes variáveis, o que é extremamente importante em cenários de previsão complexos impulsionados pelo conhecimento físico, como a previsão do tempo.

Os autores verificaram que cada posição do Mapa de Atenção satisfaz a seguinte fórmula:

Correspondendo aos vetores Query e Key de quaisquer duas variáveis, o autor acredita que todo o mapa de atenção pode revelar a correlação de variáveis até certo ponto, e em operações de ponderação subsequentes baseadas em mapas de atenção, variáveis altamente correlacionadas ganharão maior peso na interação com seus vetores de Valor, de modo que este design é mais natural e interpretável para modelagem de dados de séries temporais multidimensionais.

Em resumo, no iTransformer, a normalização de camadas, a rede feed-forward e o módulo de auto-atenção consideram as características dos próprios dados de séries temporais multidimensionais, e os três cooperam sistematicamente entre si para se adaptarem às necessidades de modelagem de diferentes dimensões, e jogam o efeito de 1+1+1 > 3.

Análise Experimental

Os autores conduziram experimentos extensivos em seis benchmarks de previsão de séries temporais multidimensionais e fizeram previsões nos dados (Mercado) do cenário de tarefa de previsão de carga de serviço on-line da plataforma de negociação Alipay.

A parte experimental compara 10 modelos preditivos diferentes, incluindo modelos de transformadores representativos do domínio: PatchTST (2023), Crossformer (2023), FEDformer (2022), Stationary (2022), Autoformer (2021), Informer (2021); Modelos de previsão linear: TiDE (2023), DLinear (2023); Modelos TCN: TimesNet (2023), SCINet (2022).

Além disso, o artigo analisa os ganhos trazidos pela inversão do módulo para muitas variantes do Transformer, incluindo melhoria do efeito geral, generalização para variáveis desconhecidas e uso mais completo de observações históricas.

Previsão de Séries Temporais

Como mostrado no gráfico de radar de abertura, o iTransformer alcançou SOTA em todos os seis benchmarks de teste e alcançou resultados ótimos em 28/30 cenários de dados de mercado (veja o apêndice do documento para detalhes).

No cenário desafiador de previsão de longo prazo e previsão de tempo multidimensional, o iTransformer superou amplamente os modelos de previsão dos últimos anos.

Semelhança da estrutura iTransformer

Enquanto alcançava os melhores resultados, o autor realizou experimentos comparativos antes e depois da inversão em modelos de variantes do Transformer, como Reformer, Informer, Flowformer e Flashformer, que provaram que a inversão é uma estrutura mais alinhada com as características dos dados de séries temporais.

1. Melhorar a previsão

Ao introduzir a estrutura proposta, esses modelos alcançaram melhorias significativas nos efeitos de previsão, provando a versatilidade das ideias centrais do iTransformer e a viabilidade de se beneficiar do progresso da pesquisa de atenção eficiente.

2. Generalizar para variáveis desconhecidas

Ao inverter, o modelo pode inserir um número diferente de variáveis do que o treinamento quando da inferência, e o artigo o compara com uma estratégia de generalização, Channel Independence, e os resultados mostram que o framework ainda pode minimizar erros de generalização ao usar apenas 20% das variáveis.

3. Use observações históricas mais longas

No passado, o efeito de previsão do modelo Transformer não melhorava necessariamente com o comprimento da observação histórica, mas os autores descobriram que, depois de usar essa estrutura, o modelo mostrou uma tendência surpreendente de redução do erro de previsão no caso de observação histórica crescente, o que verificou a racionalidade da inversão do módulo até certo ponto.

Análise de Modelo

1. Experimento de ablação de modelo

Os autores realizaram experimentos de ablação para verificar a racionalidade do arranjo do módulo iTransformer.

Os resultados mostram que o método de modelagem do uso da autoatenção na dimensão variável e da camada linear na dimensão tempo alcança o melhor efeito na maioria dos conjuntos de dados.

2. Análise de representação de recursos

Para verificar a ideia de que as redes feedforward podem extrair melhor recursos de sequência, os autores realizam análises de representação de recursos com base na semelhança CKA (Centered Kernel Alignment). Quanto menor a semelhança de CKA, maior a diferença de características entre as camadas inferior e superior do modelo.

Vale a pena notar que estudos anteriores mostraram que a previsão de séries temporais, como uma tarefa de aprendizagem de recursos refinada, tende a preferir maior semelhança de CKA.

Os autores calculam a CKA de baixo e alto nível do modelo antes e depois da inversão, e obtêm os seguintes resultados, que confirmam que o iTransformer aprende melhores características de sequência, alcançando assim melhores efeitos de previsão.

3. Análise de Correlação de Variáveis

Como mostra a figura acima, o mecanismo de atenção atuando sobre a dimensão variável mostra maior interpretabilidade no mapa de atenção aprendido. Ao visualizar uma amostra do conjunto de dados de Energia Solar, são feitas as seguintes observações:

  • No módulo de atenção superficial, o gráfico de atenção aprendida é mais semelhante à correlação variável de sequências históricas.
  • Ao prestar atenção profunda módulo, o mapa de atenção aprendido é mais semelhante à correlação variável da sequência a ser prevista.

Isso mostra que o módulo de atenção aprende correlações variáveis mais interpretáveis, codifica as características temporais das observações históricas na rede feedforward e pode gradualmente decodificá-las em sequências a serem previstas.

Resumo

Inspirado pelas características de dados de séries temporais multidimensionais, o autor reflete sobre o problema dos transformadores existentes na modelagem de dados de séries temporais, e propõe um quadro geral de previsão de séries temporais iTransformer.

O framework iTransformer introduz de forma inovadora uma perspetiva invertida para observar séries temporais, de modo a que o módulo Transformer desempenhe as suas próprias funções e complete os problemas de modelação das duas dimensões de dados de séries temporais, mostrando um excelente desempenho e versatilidade.

Diante da questão de saber se o Transformer é eficaz no campo da previsão de séries temporais, esta descoberta do autor pode inspirar pesquisas relacionadas subsequentes, fazer com que o Transformer retorne à posição dominante de previsão de séries temporais e fornecer novas ideias para a pesquisa básica de modelos no campo de dados de séries temporais.

Recursos:

Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
  • Recompensa
  • Comentário
  • Compartilhar
Comentário
0/400
Sem comentários
Faça trade de criptomoedas em qualquer lugar e a qualquer hora
qrCode
Escaneie o código para baixar o app da Gate
Comunidade
Português (Brasil)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)