Documentação | Recursos externos | Conjuntos de dados
O Pytorch Geométrico Temporal é uma biblioteca de extensão temporal (dinâmica) para a geométrica de Pytorch.
A biblioteca consiste em vários métodos de aprendizado geométrico dinâmico e temporal profundo, incorporação e regressão espaço-temporal de uma variedade de trabalhos de pesquisa publicados. Além disso, ele vem com um carregador de conjunto de dados fácil de usar, divisor de teste de trem e iterador de Snaphot temporal para gráficos dinâmicos e temporais. A estrutura naturalmente fornece suporte à GPU. Ele também vem com vários conjuntos de dados de referência da previsão epidemológica, da economia compartilhada, da produção de energia e dos domínios de gerenciamento de tráfego na Web. Por fim, você também pode criar seus próprios conjuntos de dados.
O pacote interfina bem o Pytorch Lightning, que permite o treinamento em CPUs, GPUs únicas e múltiplas prontas para uso. Dê uma olhada neste exemplo introdutório de usar o Pytorch Geométrico Temporal com Pytorch Lightning.
Também fornecemos exemplos detalhados para cada um dos modelos e notebooks recorrentes para os baseados em atenção.
Tutoriais do estudo de caso
Fornecemos tutoriais detalhados de estudo de caso na documentação, cada um abrange um aspecto da funcionalidade do temporal geométrico de Pytorch.
Treinamento incremental : Estudo de caso de previsão epidemiológico
Treinamento cumulativo : Estudo de caso de gerenciamento de tráfego na Web
Citando
Se você achar o Pytorch Geométrico Temporal e os novos conjuntos de dados úteis em sua pesquisa, considere adicionar a seguinte citação:
@inproceedings { rozemberczki2021pytorch ,
author = { Benedek Rozemberczki and Paul Scherer and Yixuan He and George Panagopoulos and Alexander Riedel and Maria Astefanoaei and Oliver Kiss and Ferenc Beres and Guzman Lopez and Nicolas Collignon and Rik Sarkar } ,
title = { {PyTorch Geometric Temporal: Spatiotemporal Signal Processing with Neural Machine Learning Models} } ,
year = { 2021 } ,
booktitle = { Proceedings of the 30th ACM International Conference on Information and Knowledge Management } ,
pages = { 4564–4573 } ,
}Um exemplo simples
O Pytorch Geométrico Temporal facilita bastante a implementação de redes neurais de gráficos dinâmicos e temporais - consulte o tutorial que o acompanha. Por exemplo, isso é o suficiente para implementar uma rede convolucional de gráfico recorrente com duas células GRU convolucionais consecutivas e uma camada linear:
import torch
import torch . nn . functional as F
from torch_geometric_temporal . nn . recurrent import GConvGRU
class RecurrentGCN ( torch . nn . Module ):
def __init__ ( self , node_features , num_classes ):
super ( RecurrentGCN , self ). __init__ ()
self . recurrent_1 = GConvGRU ( node_features , 32 , 5 )
self . recurrent_2 = GConvGRU ( 32 , 16 , 5 )
self . linear = torch . nn . Linear ( 16 , num_classes )
def forward ( self , x , edge_index , edge_weight ):
x = self . recurrent_1 ( x , edge_index , edge_weight )
x = F . relu ( x )
x = F . dropout ( x , training = self . training )
x = self . recurrent_2 ( x , edge_index , edge_weight )
x = F . relu ( x )
x = F . dropout ( x , training = self . training )
x = self . linear ( x )
return F . log_softmax ( x , dim = 1 )Métodos incluídos
Em detalhes, foram implementadas as seguintes redes neurais do gráfico temporal.
Convivência de gráficos recorrentes
Dcrnn de Li et al. : Rede neural recorrente convolucional de difusão: previsão de tráfego orientada a dados (ICLR 2018)
GConvGru de Seo et al. : Modelagem de sequência estruturada com redes recorrentes convolucionais por gráficos (Iconip 2018)
GCONVLSTM de Seo et al. : Modelagem de sequência estruturada com redes recorrentes convolucionais por gráficos (Iconip 2018)
GC-LSTM de Chen et al. :
LRGCN de Li et al. : Prevendo a falha do caminho nos gráficos de evolução do tempo (KDD 2019)
Dygrencoder de Taheri et al. : Aprendendo a representar a evolução de gráficos dinâmicos com modelos recorrentes
Evolvegcnh de Pareja et al. : Evolvegcn: redes convolucionais de gráficos em evolução para gráficos dinâmicos
Evoluir -se de Pareja et al. : Evolvegcn: redes convolucionais de gráficos em evolução para gráficos dinâmicos
T-GCN de Zhao et al. : T-GCN: uma rede convolucional de gráfico temporal para previsão de tráfego
A3T-GCN de Zhu et al. :
Agcrn de Bai et al. : Rede recorrente convolucional de gráfico adaptativo para previsão de tráfego (Neurips 2020)
MPNN LSTM de Panagopoulos et al. : Transferir redes neurais gráficas para previsão de pandemia (AAAI 2021)
Atenção agregada convoluções de gráficos temporais
Stgcn de Yu et al. : Redes convolucionais de gráficos espaço-temporais: uma estrutura de aprendizado profundo para previsão de tráfego (IJCAI 2018)
Astgcn de Guo et al. : Redes convolucionais de gráficos espaciais baseados em atenção para previsão de fluxo de tráfego (AAAI 2019)
MSTGCN de Guo et al. : Redes convolucionais de gráficos espaciais baseados em atenção para previsão de fluxo de tráfego (AAAI 2019)
Gman de Zheng et al. : GMAN: Uma rede de múltiplas atores gráficos para previsão de tráfego (AAAI 2020)
Mtgnn de Wu et al. : Conectando os pontos: Previsão de séries temporais multivariadas com redes neurais gráficas (KDD 2020)
2S-Agcn de Shi et al. : Redes convolucionais de gráfico adaptativo de dois drustes para reconhecimento de ação baseado em esqueletos (CVPR 2019)
DNNTSP de Yu et al. : Prevendo conjuntos temporais com redes neurais profundas (KDD 2020)
Convêmios de gráficos auxiliares
TemperalConv de Yu et al. : Redes convolucionais de gráficos espaço-temporais: uma estrutura de aprendizado profundo para previsão de tráfego (IJCAI 2018)
DConv de Li et al. : Rede neural recorrente convolucional de difusão: previsão de tráfego orientada a dados (ICLR 2018)
ChebConvattion de Guo et al. : Redes convolucionais de gráficos espaciais baseados em atenção para previsão de fluxo de tráfego (AAAI 2019)
Avwgcn de Bai et al. : Rede recorrente convolucional de gráfico adaptativo para previsão de tráfego (Neurips 2020)
Vá à nossa documentação para saber mais sobre a instalação, criação de conjuntos de dados e uma lista completa de métodos implementados e conjuntos de dados disponíveis. Para um início rápido, consulte os exemplos nos examples/ diretórios.
Se você notar algo inesperado, abra um problema. Se você está perdendo um método específico, sinta -se à vontade para abrir uma solicitação de recurso.
Instalação
Primeiro instale Pytorch e Pytorch-Geométrico e depois execute
pip install torch-geometric-temporalTestes de execução
$ python -m pytest test
Licença