Pytorch Geometric Tutorials

Overview

PytorchGeometricTutorial

Hi! We are Antonio Longa and Giovanni Pellegrini, PhD students, and PhD Gabriele Santin, researcher, working between Fondazione Bruno Kessler and the University of Trento, Italy.

This project aims to present through a series of tutorials various techniques in the field of Geometric Deep Learning, focusing on how they work and how to implement them using the Pytorch geometric library, an extension to Pytorch to deal with graphs and structured data, developed by @rusty1s.

You can find our video tutorials on Youtube and at our official website here.

Feel free to join our weekly online tutorial! For more details, have a look at the official website.

Tutorials:

Installation of PyG:

In order to have running notebooks in Colab, we use the following installation commands:

!pip install torch-scatter -f https://data.pyg.org/whl/torch-1.9.0+cu111.html
!pip install torch-sparse -f https://data.pyg.org/whl/torch-1.9.0+cu111.html
!pip install torch-geometric

These version are tested and running in Colab. If instead you run the notebooks on your machine, have a look at the PyG's installation instructions to find suitable versions.

Comments
  • DiffPool tutorial does not work

    DiffPool tutorial does not work

    Thank you for making the videos and notebooks available! They are very nice and helpful. I saw that the DiffPool model still does not work for the version that is uploaded here. I was wondering if you already have the working model available?

    Thank you in advance!

    opened by lisiq 4
  • Some tutorials no longer work with Google Colab

    Some tutorials no longer work with Google Colab

    Tutorial 14 and 15 both no longer work with colab and give this error after the second cell


    OSError Traceback (most recent call last) in () 2 import os 3 import pandas as pd ----> 4 from torch_geometric.data import InMemoryDataset, Data, download_url, extract_zip 5 from torch_geometric.utils.convert import to_networkx 6 import networkx as nx

    6 frames /usr/lib/python3.7/ctypes/init.py in init(self, name, mode, handle, use_errno, use_last_error) 362 363 if handle is None: --> 364 self._handle = _dlopen(self._name, mode) 365 else: 366 self._handle = handle

    OSError: /usr/local/lib/python3.7/dist-packages/torch_sparse/_convert_cpu.so: undefined symbol: _ZNK2at6Tensor5zero_Ev

    opened by itamblyn 2
  • Modify the example1

    Modify the example1

    https://github.com/AntonioLonga/PytorchGeometricTutorial/blob/main/Tutorial1/Tutorial1.ipynb

    I think this example could be modified for the better. In fact, the nums_layer = 1 parameter should be defined in Net, and a layer of GNNStack should be defined according to this parameter in the forward method. This would solve the problem raised by YouTube video 43:29.

    opened by abcdabcd989 2
  • Tutorial 3 code

    Tutorial 3 code

    Hi,

    Thanks for this great tutorials and videos. Really nice work.

    I was wondering about the GATLayer class in the code of tutorial 3. Once the class is made, it is no longer used after the 'Use it' heading in the notebook. Instead, the GATConv from torch geometric is used directly. Then why was the GATLayer class made?

    Thanks, VR

    opened by vandana-rajan 1
  • Error for running

    Error for running "from torch_geometric.nn import Node2Vec"

    while running from torch_geometric.nn import Node2Vec in google colab an error occur OSError: /usr/local/lib/python3.7/dist-packages/torch_sparse/_convert_cpu.so: undefined symbol: _ZNK2at6Tensor5zero_Ev

    what should I do?

    opened by ayreen2 1
  • Adding Colab support for the tutorials

    Adding Colab support for the tutorials

    Thanks for your effort and great work!

    I think, In order to make the tutorials more convenient for a wide audience it would be helpful to add a colab version of the notebooks with the special button, that redirects to the http://colab.research.google.com/.

    All tutorials can be run in colab via adding the notebook from GitHub and adding the cell with the installation of the pytorch-geometric and all dependencies. But the version with native support would make it more convenient.

    opened by Godofnothing 1
  • Question about Tutorial16.ipynb

    Question about Tutorial16.ipynb

    Hello, Thank you for the nice tutorial, it helps a lot to get started! I have a few questions concerning Tutorial16.ipynb: 1/ what is the effect of the parameter lin=True? 2/ what's the effect of changing the number of hidden and output channels? 3/ what is the purpose of l1, e1, l2, e2? Best, Claire

    opened by claireguepin 0
  • Some questions I found in this tutorial

    Some questions I found in this tutorial

    Hi, this is a nice tutorial. However, I find that there are some minor problems with the materials.

    1. I fond that they are same links so I think you can delete one. image
    2. In the node2vec practice colab notebook, the current installation requirement will lead the colab environment to break down. I tried this combination and it works: image Could you please figure out why? Thanks a lot!
    opened by HelloWorldLTY 0
Releases(v1.0.0)
Owner
Antonio Longa
Antonio Longa
Using contrastive learning and OpenAI's CLIP to find good embeddings for images with lossy transformations

The official code for the paper "Inverse Problems Leveraging Pre-trained Contrastive Representations" (to appear in NeurIPS 2021).

Sriram Ravula 26 Dec 10, 2022
Process JSON files for neural recording sessions using Medtronic's BrainSense Percept PC neurostimulator

percept_processing This code processes JSON files for streamed neural data using Medtronic's Percept PC neurostimulator with BrainSense Technology for

Maria Olaru 3 Jun 06, 2022
SymPy-powered, Wolfram|Alpha-like answer engine totally in your browser, without backend computation

SymPy Beta SymPy Beta is a fork of SymPy Gamma. The purpose of this project is to run a SymPy-powered, Wolfram|Alpha-like answer engine totally in you

Liumeo 25 Dec 21, 2022
Code for paper "ASAP-Net: Attention and Structure Aware Point Cloud Sequence Segmentation"

ASAP-Net This project implements ASAP-Net of paper ASAP-Net: Attention and Structure Aware Point Cloud Sequence Segmentation (BMVC2020). Overview We i

Hanwen Cao 26 Aug 25, 2022
NCNN implementation of Real-ESRGAN. Real-ESRGAN aims at developing Practical Algorithms for General Image Restoration.

NCNN implementation of Real-ESRGAN. Real-ESRGAN aims at developing Practical Algorithms for General Image Restoration.

Xintao 593 Jan 03, 2023
Open Source Light Field Toolbox for Super-Resolution

BasicLFSR BasicLFSR is an open-source and easy-to-use Light Field (LF) image Super-Ressolution (SR) toolbox based on PyTorch, including a collection o

Squidward 50 Nov 18, 2022
[CVPR2021 Oral] UP-DETR: Unsupervised Pre-training for Object Detection with Transformers

UP-DETR: Unsupervised Pre-training for Object Detection with Transformers This is the official PyTorch implementation and models for UP-DETR paper: @a

dddzg 430 Dec 23, 2022
Code for the paper Language as a Cognitive Tool to Imagine Goals in Curiosity Driven Exploration

IMAGINE: Language as a Cognitive Tool to Imagine Goals in Curiosity Driven Exploration This repo contains the code base of the paper Language as a Cog

Flowers Team 26 Dec 22, 2022
PyTorch Implementation of Vector Quantized Variational AutoEncoders.

Pytorch implementation of VQVAE. This paper combines 2 tricks: Vector Quantization (check out this amazing blog for better understanding.) Straight-Th

Vrushank Changawala 2 Oct 06, 2021
code release for USENIX'22 paper `On the Security Risks of AutoML`

This project is a minimized runnable project cut from trojanzoo, which contains more datasets, models, attacks and defenses. This repo will not be mai

Ren Pang 5 Apr 19, 2022
Source code for CVPR 2021 paper "Riggable 3D Face Reconstruction via In-Network Optimization"

Riggable 3D Face Reconstruction via In-Network Optimization Source code for CVPR 2021 paper "Riggable 3D Face Reconstruction via In-Network Optimizati

130 Jan 02, 2023
End-To-End Memory Network using Tensorflow

MemN2N Implementation of End-To-End Memory Networks with sklearn-like interface using Tensorflow. Tasks are from the bAbl dataset. Get Started git clo

Dominique Luna 339 Oct 27, 2022
Simple tool to combine(merge) onnx models. Simple Network Combine Tool for ONNX.

snc4onnx Simple tool to combine(merge) onnx models. Simple Network Combine Tool for ONNX. https://github.com/PINTO0309/simple-onnx-processing-tools 1.

Katsuya Hyodo 8 Oct 13, 2022
Implementation of the state of the art beat-detection, downbeat-detection and tempo-estimation model

The ISMIR 2020 Beat Detection, Downbeat Detection and Tempo Estimation Model Implementation. This is an implementation in TensorFlow to implement the

Koen van den Brink 1 Nov 12, 2021
This repository includes different versions of the prescribed-time controller as Simulink blocks and MATLAB script codes for engineering applications.

Prescribed-time Control Prescribed-time control (PTC) blocks in Simulink environment, MATLAB R2020b. For more theoretical details, refer to the papers

Amir Shakouri 1 Mar 11, 2022
This is a project based on ConvNets used to identify whether a road is clean or dirty. We have used MobileNet as our base architecture and the weights are based on imagenet.

PROJECT TITLE: CLEAN/DIRTY ROAD DETECTION USING TRANSFER LEARNING Description: This is a project based on ConvNets used to identify whether a road is

Faizal Karim 3 Nov 06, 2022
Builds a LoRa radio frequency fingerprint identification (RFFI) system based on deep learning techiniques

This project builds a LoRa radio frequency fingerprint identification (RFFI) system based on deep learning techiniques.

20 Dec 30, 2022
Distributed Asynchronous Hyperparameter Optimization better than HyperOpt.

UltraOpt : Distributed Asynchronous Hyperparameter Optimization better than HyperOpt. UltraOpt is a simple and efficient library to minimize expensive

98 Aug 16, 2022
A novel Engagement Detection with Multi-Task Training (ED-MTT) system

A novel Engagement Detection with Multi-Task Training (ED-MTT) system which minimizes MSE and triplet loss together to determine the engagement level of students in an e-learning environment.

Onur Çopur 12 Nov 11, 2022