Antonio Longa
Antonio Longa
  • 50
  • 292 635
Graph Neural Networks for Temporal Graphs: State of the Art, Open Challenges, and Opportunities
In this video, I'm introducing our paper titled:
'Graph Neural Networks for Temporal Graphs: State of the Art, Open Challenges, and Opportunities,' which has been accepted at TMLR 2023.
This work was conducted in collaboration with Veronica Lachi, Gabriele Santin, Monica Bianchini, Bruno Lepri, Pietro Liò, Franco Scareselli, and Andrea Passerini.
Paper: arxiv.org/pdf/2302.01018.pdf
มุมมอง: 584

วีดีโอ

Talk at Cambridge University - Neighbourhood matching creates realistic surrogate temporal networks
มุมมอง 4642 ปีที่แล้ว
I'm glad to have had the possibility to present my work at Cambridge University. title: Neighbourhood matching creates realistic surrogate temporal networks link: talks.cam.ac.uk/talk/index/175934 slides: antoniolonga.github.io/abstracts/slides/CamTalk.pdf
Complex Networks 2021 - Madrid - POSTER session - ETMM: Egocentric temporal motifs miner
มุมมอง 3712 ปีที่แล้ว
In this poster session, we present a novel strategy to extract statistically significant sub-graphs in temporal networks by concentrating on the egocentricity of a node. We argue that by aggregating the temporal graphs, temporal-dependent information such as the length over time of the interactions, their frequency, periodicity and others are lost. Accordingly, for each node in a three contiguo...
Memory-Efficient aggregations [Advanced PyTorch Geometric Tutorial 6]
มุมมอง 1.3K2 ปีที่แล้ว
In this tutorial, we discuss how the new version of PyTorch Geometric leverages sparse matrices to improve the computational efficiency and memory footprint of message passing. We review some background on the representation of sparse matrices, have a look at the SparseTensor class from PyTorch Sparse, and analyze the new message_and_aggregate method in PyG.
Advanced mini-batching [Advanced PyTorch Geometric Tutorial 5]
มุมมอง 4.9K2 ปีที่แล้ว
We have discussed advanced mini-batching. We first show how batching is used, then we see how to modify the DataLoader object to handle different types of graphs (i.e. Bipartite graphs) LINK: antoniolonga.github.io/Advanced_PyG_tutorials/index.html
Heterogeneous graph learning [Advanced PyTorch Geometric Tutorial 4]
มุมมอง 13K2 ปีที่แล้ว
We have discussed Heterogeneous Graphs Learning. In particular, we show how Heterogeneous Graphs in Pytorch Geometric are loaded and their properties. Finally, we show an example on a dataset. LINK: antoniolonga.github.io/Advanced_PyG_tutorials/index.html
Egocentric Temporal Motifs Miner (ETMM) [Paper explanation and code usage]
มุมมอง 5263 ปีที่แล้ว
In this video I'm presenting the work done in the paper: "An efficient procedure for mining egocentric temporal motifs" paper: link.springer.com/article/10.1007/s10618-021-00803-2 code: github.com/AntonioLonga/Egocentric-Temporal-Motifs-Miner-ETMM
Price Graphs [Advanced PyTorch Geometric Tutorial 3]
มุมมอง 1.5K3 ปีที่แล้ว
We have discussed the Pricegraph framework. The time series forecasting problem is addressed using the Visibility graph plus a graph embedding module to extract relevant features and feed the learner Tutorial material: github.com/AntonioLonga/AdvancePyTorchGeometricTutorials Advance PyTrorch tutorial website: antoniolonga.github.io/Advanced_PyG_tutorials/index.html
GraphGym and PyG [Advanced PyTorch Geometric Tutorial 2]
มุมมอง 5K3 ปีที่แล้ว
In this tutorial, we explore the structure of GraphGym, a new tool that simplifies experimentation with GNN, and its integration in PyG. We use the examples from the official package and analyze their details to understand the basic features and usage of the package. Tutorial material: github.com/AntonioLonga/AdvancePyTorchGeometricTutorials Advance PyTrorch tutorial website: antoniolonga.githu...
Open Graph Benchmark and PyG [Advanced PyTorch Geometric Tutorial 1]
มุมมอง 6K3 ปีที่แล้ว
In this tutorial, we see this new amazing project OGB! It is really easy to use and is the perfect tool for GNN performance comparison. OGB: ogb.stanford.edu/ Tutorial material: github.com/AntonioLonga/AdvancePyTorchGeometricTutorials Advance PyTrorch tutorial website: antoniolonga.github.io/Advanced_PyG_tutorials/index.html
Pytorch Geometric tutorial: Graph pooling DIFFPOOL
มุมมอง 7K3 ปีที่แล้ว
In the last tutorial of this series, we cover the graph prediction task by presenting DIFFPOOL, a hierarchical pooling technique that learns to cluster together with the nodes of the graph.
Pytorch Geometric tutorial: Special Guest: Sergei Ivanov
มุมมอง 8863 ปีที่แล้ว
Pytorch Geometric tutorial: Special Guest: Sergei Ivanov
Pytorch Geometric tutorial: Special Guest: Matthias Fey
มุมมอง 2.1K3 ปีที่แล้ว
The developer of Pytorch Geometric explains the motivations and Future directions of this amazing project.
Pytorch Geometric tutorial: Data handling in PyTorch Geometric (Part 2)
มุมมอง 8K3 ปีที่แล้ว
In this second talk in data handling with pyg we show how to load your own dataset from scratch, and illustrate what are the most relevant benchmark frameworks compatible with the library. Download the material from our official website: antoniolonga.github.io/Pytorch_geometric_tutorials/index.html
Pytorch Geometric tutorial: Data handling in PyTorch Geometric (Part 1)
มุมมอง 18K3 ปีที่แล้ว
How is a graph represented in Pytorch Geometric? How one can handle collections of data? This is the first of two tutorials on data handling in PyG that illustrates the most important classes, methods and functions that allow for representing and processing a graph and also batches of graphs. Download the material from our official website: antoniolonga.github.io/Pytorch_geometric_tutorials
Pytorch Geometric tutorial: Metapath2Vec
มุมมอง 4.3K3 ปีที่แล้ว
Pytorch Geometric tutorial: Metapath2Vec
Pytorch Geometric tutorial: Edge analysis
มุมมอง 10K3 ปีที่แล้ว
Pytorch Geometric tutorial: Edge analysis
Pytorch Geometric tutorial: DeepWalk and Node2Vec (Practice)
มุมมอง 7K3 ปีที่แล้ว
Pytorch Geometric tutorial: DeepWalk and Node2Vec (Practice)
Pytorch Geometric tutorial: DeepWalk and Node2Vec (Theory)
มุมมอง 6K3 ปีที่แล้ว
Pytorch Geometric tutorial: DeepWalk and Node2Vec (Theory)
Pytorch Geometric tutorial: Recurrent Graph Neural Networks
มุมมอง 8K3 ปีที่แล้ว
Pytorch Geometric tutorial: Recurrent Graph Neural Networks
PyTorch Geometric tutorial: Graph Generation
มุมมอง 8K3 ปีที่แล้ว
PyTorch Geometric tutorial: Graph Generation
PyTorch Geometric tutorial: Adversarial Regularizer (Variational) Graph Autoencoders
มุมมอง 4.2K3 ปีที่แล้ว
PyTorch Geometric tutorial: Adversarial Regularizer (Variational) Graph Autoencoders
PyTorch Geometric tutorial: Graph Autoencoders & Variational Graph Autoencoders
มุมมอง 26K3 ปีที่แล้ว
PyTorch Geometric tutorial: Graph Autoencoders & Variational Graph Autoencoders
Pytorch Geometric tutorial: Aggregation Functions in GNNs
มุมมอง 8K3 ปีที่แล้ว
Pytorch Geometric tutorial: Aggregation Functions in GNNs
Pytorch Geometric tutorial: Convolutional Layers - Spectral methods
มุมมอง 9K3 ปีที่แล้ว
Pytorch Geometric tutorial: Convolutional Layers - Spectral methods
Pytorch Geometric tutorial: Graph attention networks (GAT) implementation
มุมมอง 45K3 ปีที่แล้ว
Pytorch Geometric tutorial: Graph attention networks (GAT) implementation
Pytorch Geometric tutorial: PyTorch basics
มุมมอง 17K3 ปีที่แล้ว
Pytorch Geometric tutorial: PyTorch basics
Pytorch Geometric tutorial: Introduction to Pytorch geometric
มุมมอง 64K3 ปีที่แล้ว
Pytorch Geometric tutorial: Introduction to Pytorch geometric
Laboratorio di Informatica Parte 15 - CIBIO - Unitn 2020/2021
มุมมอง 1274 ปีที่แล้ว
Laboratorio di Informatica Parte 15 - CIBIO - Unitn 2020/2021
Laboratorio di Informatica Parte 14 - CIBIO - Unitn 2020/2021
มุมมอง 1174 ปีที่แล้ว
Laboratorio di Informatica Parte 14 - CIBIO - Unitn 2020/2021

ความคิดเห็น

  • @CreativityCourse
    @CreativityCourse หลายเดือนก่อน

    Thanks a lot .. where can I find the code

  • @debjyotighosh1148
    @debjyotighosh1148 2 หลายเดือนก่อน

    The audio is unfortunately not the easiest to follow. Would be great if we got corresponding English subtitles. I can only see Italian auto generated subtitles

  • @TeamDman
    @TeamDman 2 หลายเดือนก่อน

    Great explanation, thank you!

  • @VasudevaK
    @VasudevaK 2 หลายเดือนก่อน

    Thanks for the efforts but who the heck is typing unmute?

  • @filippobargagna
    @filippobargagna 3 หลายเดือนก่อน

    GAT Damn these tutorials are good!

  • @陈永祥-p7v
    @陈永祥-p7v 3 หลายเดือนก่อน

    sorry,I can't English, Can u Chinese?

  • @expectopatronum2784
    @expectopatronum2784 4 หลายเดือนก่อน

    That was so nicely explained, thank you ❣

  • @cevherozden7854
    @cevherozden7854 6 หลายเดือนก่อน

    Great tutorial, but he speaks too fast and scrolls through codes too much. It is hard for me to concentrate.

  • @N024PEMSEC
    @N024PEMSEC 6 หลายเดือนก่อน

    There is lot of background noise, which is really distracting.

  • @pedroviniciuspereirajunho7244
    @pedroviniciuspereirajunho7244 8 หลายเดือนก่อน

    Can a nodetype .y be configured on more than one node type, so it would be possible to predict targets for multiple node types?

  • @christianondo9637
    @christianondo9637 8 หลายเดือนก่อน

    Great tutorial - I'm working with chemical datasets trying to predict reaction outcomes with GCNNs and this tutorial is a lifesaver. It's pretty incredible how many resources there are out there for machine learning and the fact that something like pytorch geometric is available to everyone for free is just awesome. Thank you for the good work sir.

  • @baburamchaudhary159
    @baburamchaudhary159 8 หลายเดือนก่อน

    15:02 what about say, batch=[198], ptr=[12] second last object printed with for loop? What do these batch=[198], ptr=[12] actually means?

  • @RollingcoleW
    @RollingcoleW 9 หลายเดือนก่อน

    @94longa2112 Are you able to upload notebook 4? The others exist but not this one. The community would appreciate it.

  • @Rick_Mo
    @Rick_Mo 9 หลายเดือนก่อน

    good video

  • @rainergog
    @rainergog 9 หลายเดือนก่อน

    I am not sure, but I think there is a mistake on the GraphSage slide (24:43 into the video): AGG({h-subscript u-superscript k-1...}). Shouldn't it be: AGG({h-subscript u-superscript k...}) ? At least, this is what I read from the original paper. If not: Could you explain?

  • @dianakomis1514
    @dianakomis1514 9 หลายเดือนก่อน

    Thank you

  • @dianakomis1514
    @dianakomis1514 9 หลายเดือนก่อน

    Thank you

  • @filippobargagna
    @filippobargagna 9 หลายเดือนก่อน

    You guys saved my as* <3 Such precious knowledge, thank you!

  • @peaku8129
    @peaku8129 10 หลายเดือนก่อน

    great tutorial!!!!

  • @munazzapedia
    @munazzapedia 10 หลายเดือนก่อน

    In computation graph of B the branches of node E are not correct at 15:50

  • @alizahid000
    @alizahid000 11 หลายเดือนก่อน

    Much appreciation for this tutorial series!

  • @Rick_Mo
    @Rick_Mo ปีที่แล้ว

    good video,know many details about how to training GAT thk u

  • @chavo004
    @chavo004 ปีที่แล้ว

    Great tutorials Antonio. If your dataset is an edge-list with edge-level features and no node level features (e.g., no x feature matrix), can this still work with this autoencoder?

  • @sumitkumar-el3kc
    @sumitkumar-el3kc ปีที่แล้ว

    Hi, i would like to know if it's possible to assign a different number of clusters to each input graphs according to its size? I have graphs ranging from 10 nodes to 150 nodes.

  • @jesusmtz29
    @jesusmtz29 ปีที่แล้ว

    Great stuff very valuable

  • @padisarala4114
    @padisarala4114 ปีที่แล้ว

    how to create a graph for custom dataset that will work for autoencoders

  • @lucassciuti2982
    @lucassciuti2982 ปีที่แล้ว

    On minute 10, what the parameter 'ptr' represents?

  • @cadburie6764
    @cadburie6764 ปีที่แล้ว

    Hello, great video. Is it possible to make a graph classification RecGNN?

  • @karanbania2785
    @karanbania2785 ปีที่แล้ว

    Hey Antonio, Amazing videos and thanks for this! However, in this tutorial, as pointed out by @Arjay2186, the model is just learning to predict a lot of non-existant edges and the accuracy seems high; F1 score would be a better metric in this case. For anyone following these tutorials I suggest you compute pos_logits and neg_logits separately and then concatenate them, also add a margin (~1.5) to neg_logits, the model should learn better features. You can also try to make the model more complex (more convolutions, bigger feature dimension, etc.). This will bring down the number from 3M+ to a comparable magnitude. I tried this and it worked.

  • @valentinavadori5906
    @valentinavadori5906 ปีที่แล้ว

    Dita-set :D

  • @kbradhakrishnan
    @kbradhakrishnan ปีที่แล้ว

    Graph sage also does sampling of neighbours, that's the inductive part of the model. Can you comment on that, it is missing in your current lecture

  • @hardikgupta4038
    @hardikgupta4038 ปีที่แล้ว

    Although we have label only available for author node, can we also make label prediction for paper nodes?

  • @yunuscobanoglu6136
    @yunuscobanoglu6136 ปีที่แล้ว

    -9e15 is a very large negative number

  • @tecasters
    @tecasters ปีที่แล้ว

    How computationally expensive are these kinds of networks compared to something like a more traditional deep learning architecture such as CNNs?

  • @baburamchaudhary159
    @baburamchaudhary159 ปีที่แล้ว

    13:15 what is the purpose node_attrs.index += 1 similarly others edge_index.index, graph_idx.index, etc.

    • @ImbaFerkelchen
      @ImbaFerkelchen 6 หลายเดือนก่อน

      As far as I understood, the Data Id's are from range 0-(n-1), due to pandas series indexing and the way that css is encoded, but they should be indexed from 1-n the index+=1 is just a cheap trick using pandas implementation

  • @baburamchaudhary159
    @baburamchaudhary159 ปีที่แล้ว

    at 16:39 if g_w = diag(Uw) is filter v*w = U^H g_w Uw ...... (1) why Uw in RHS of (1) why not Uv? Anyone please clarify me. Also what is H in (U^H)

  • @carolinemoraes3704
    @carolinemoraes3704 ปีที่แล้ว

    Amazing tutorial ! Thanks =]

  • @carolinemoraes3704
    @carolinemoraes3704 ปีที่แล้ว

    Amazing!! Super didactic, thank you =]

  • @Ripper346.
    @Ripper346. ปีที่แล้ว

    Thanks for the tutorial, I don't get one thing on the test of VGAE, why do we encode on the training and not on the test set?

  • @orangethemeow
    @orangethemeow ปีที่แล้ว

    Thanks so much for the series of tutorial. I started to feel lost in this episode 😢

  • @Cpt.Zenobia
    @Cpt.Zenobia ปีที่แล้ว

    This tutorial is such a life saver, because its pretty dry out there for gnn stuff.

  • @akashdutta3656
    @akashdutta3656 ปีที่แล้ว

    In pytorch geometric, when should I use a tuple as the in_channel? what exactly is the source and destination dimension in in_channels that the pytorch documents refer to?

  • @vishishtrao5069
    @vishishtrao5069 ปีที่แล้ว

    How do you create an undirected bipartite graph?

  • @EverythingDatawithHafeezJimoh
    @EverythingDatawithHafeezJimoh ปีที่แล้ว

    Beautiful lecture and tutorial, In Slide 59, is it q(z\x) we do not know or p(z|x). Can you confirm

    • @zijiali8349
      @zijiali8349 3 หลายเดือนก่อน

      I believe t's p(z|x). q(.) is fully parameterized thus we know.

  • @bluewhale37
    @bluewhale37 ปีที่แล้ว

    Hey Antonio insightful lecture,can we somehow model arc42 chollet challenge as gnn problem?

  • @lifeconfused52
    @lifeconfused52 ปีที่แล้ว

    Hello, could you show me how you make recommendation on new users?

  • @vlogsofanundergrad2034
    @vlogsofanundergrad2034 ปีที่แล้ว

    This tutorial doesn't do latent space visualization, very important aspect of gauging if VAEs are being trained correctly. Could you share a video which does this too?

  • @tsongwong2370
    @tsongwong2370 ปีที่แล้ว

    Great Tutorial!

  • @منةالرحمن
    @منةالرحمن 2 ปีที่แล้ว

    My graphs was created from images and saved as pt file how can i apply graph mining later please with this format

  • @BARaaz04
    @BARaaz04 2 ปีที่แล้ว

    Hi nice video. I am very new in GNN. I am having a problem running the code. It is giving me the following error: running_mean should contain 150 elements not 64. Can you please help me with that.

    • @karanbania2785
      @karanbania2785 ปีที่แล้ว

      It's because of the way torch.nn.BatchNorm1d expects it's input. Solution - x = F.relu(self.convs[step](x, adj, mask)) x = torch.permute(x, (0, 2, 1)) x = self.bns[step](x) x = torch.permute(x, (0, 2, 1)) This works.

    • @google-live4628
      @google-live4628 6 หลายเดือนก่อน

      @@karanbania2785 Thanks a lot, it's worked, Epoch: 001, Train Loss: 0.6182, Val Acc: 0.5505, Test Acc: 0.5780 Epoch: 002, Train Loss: 0.5379, Val Acc: 0.7523, Test Acc: 0.7339 Epoch: 003, Train Loss: 0.5143, Val Acc: 0.7982, Test Acc: 0.7523 Epoch: 004, Train Loss: 0.5049, Val Acc: 0.7615, Test Acc: 0.7523