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
A light-weight image labelling tool for Python designed for creating segmentation data sets.

An image labelling tool for creating segmentation data sets, for Django and Flask.

117 Nov 21, 2022
PyTorch code for the ICCV'21 paper: "Always Be Dreaming: A New Approach for Class-Incremental Learning"

Always Be Dreaming: A New Approach for Data-Free Class-Incremental Learning PyTorch code for the ICCV 2021 paper: Always Be Dreaming: A New Approach f

49 Dec 21, 2022
A Python library created to assist programmers with complex mathematical functions

libmaths libmaths was created not only as a learning experience for me, but as a way to make mathematical models in seconds for Python users using mat

Simple 73 Oct 02, 2022
Perfect implement. Model shared. x0.5 (Top1:60.646) and 1.0x (Top1:69.402).

Shufflenet-v2-Pytorch Introduction This is a Pytorch implementation of faceplusplus's ShuffleNet-v2. For details, please read the following papers:

423 Dec 07, 2022
Link prediction using Multiple Order Local Information (MOLI)

Understanding the network formation pattern for better link prediction Authors: [e

Wu Lab 0 Oct 18, 2021
Blind visual quality assessment on 360° Video based on progressive learning

Blind visual quality assessment on omnidirectional or 360 video (ProVQA) Blind VQA for 360° Video via Progressively Learning from Pixels, Frames and V

5 Jan 06, 2023
A state of the art of new lightweight YOLO model implemented by TensorFlow 2.

CSL-YOLO: A New Lightweight Object Detection System for Edge Computing This project provides a SOTA level lightweight YOLO called "Cross-Stage Lightwe

Miles Zhang 54 Dec 21, 2022
Microsoft Cognitive Toolkit (CNTK), an open source deep-learning toolkit

CNTK Chat Windows build status Linux build status The Microsoft Cognitive Toolkit (https://cntk.ai) is a unified deep learning toolkit that describes

Microsoft 17.3k Dec 29, 2022
Tiny-NewsRec: Efficient and Effective PLM-based News Recommendation

Tiny-NewsRec The source codes for our paper "Tiny-NewsRec: Efficient and Effective PLM-based News Recommendation". Requirements PyTorch == 1.6.0 Tensor

Yang Yu 3 Dec 07, 2022
[WWW 2021] Source code for "Graph Contrastive Learning with Adaptive Augmentation"

GCA Source code for Graph Contrastive Learning with Adaptive Augmentation (WWW 2021) For example, to run GCA-Degree under WikiCS, execute: python trai

Big Data and Multi-modal Computing Group, CRIPAC 97 Jan 07, 2023
Rational Activation Functions - Replacing Padé Activation Units

Rational Activations - Learnable Rational Activation Functions First introduce as PAU in Padé Activation Units: End-to-end Learning of Activation Func

<a href=[email protected]"> 38 Nov 22, 2022
Hardware accelerated, batchable and differentiable optimizers in JAX.

JAXopt Installation | Examples | References Hardware accelerated (GPU/TPU), batchable and differentiable optimizers in JAX. Installation JAXopt can be

Google 621 Jan 08, 2023
scAR (single-cell Ambient Remover) is a package for data denoising in single-cell omics.

scAR scAR (single cell Ambient Remover) is a package for denoising multiple single cell omics data. It can be used for multiple tasks, such as, sgRNA

19 Nov 28, 2022
SCAN: Learning to Classify Images without Labels, incl. SimCLR. [ECCV 2020]

Learning to Classify Images without Labels This repo contains the Pytorch implementation of our paper: SCAN: Learning to Classify Images without Label

Wouter Van Gansbeke 1.1k Dec 30, 2022
Scripts of Machine Learning Algorithms from Scratch. Implementations of machine learning models and algorithms using nothing but NumPy with a focus on accessibility. Aims to cover everything from basic to advance.

Algo-ScriptML Python implementations of some of the fundamental Machine Learning models and algorithms from scratch. The goal of this project is not t

Algo Phantoms 81 Nov 26, 2022
SnapMix: Semantically Proportional Mixing for Augmenting Fine-grained Data (AAAI 2021)

SnapMix: Semantically Proportional Mixing for Augmenting Fine-grained Data (AAAI 2021) PyTorch implementation of SnapMix | paper Method Overview Cite

DavidHuang 126 Dec 30, 2022
Artificial intelligence technology inferring issues and logically supporting facts from raw text

개요 비정형 텍스트를 학습하여 쟁점별 사실과 논리적 근거 추론이 가능한 인공지능 원천기술 Artificial intelligence techno

6 Dec 29, 2021
Conjugated Discrete Distributions for Distributional Reinforcement Learning (C2D)

Conjugated Discrete Distributions for Distributional Reinforcement Learning (C2D) Code & Data Appendix for Conjugated Discrete Distributions for Distr

1 Jan 11, 2022
Serving PyTorch 1.0 Models as a Web Server in C++

Serving PyTorch Models in C++ This repository contains various examples to perform inference using PyTorch C++ API. Run git clone https://github.com/W

Onur Kaplan 223 Jan 04, 2023
Some pre-commit hooks for OpenMMLab projects

pre-commit-hooks Some pre-commit hooks for OpenMMLab projects. Using pre-commit-hooks with pre-commit Add this to your .pre-commit-config.yaml - rep

OpenMMLab 16 Nov 29, 2022