Features
GCN2Conv
[Cora example, PPI example]TransformerConv
- New Dataset:
WebKB
- New Google Colab: Explaining GNN Model Predictions using Captum (thanks to @m30m)
- Distributed training examples for node classification and graph classification (thanks to @maqy1995)
Node2Vec
can now handle differentp
andq
values other than1
(torch-cluster
update required)GraphSAGE
unsupervised training example (thanks to @yuanx749)- Linear
GAE
example (thanks to @GuillaumeSalha)
Minor improvements
- The
SIGN
example now operates on mini-batches of nodes - Improved data loading runtime of
InMemoryDataset
s NeighborSampler
does now work withSparseTensor
as inputToUndirected
transform in order to convert directed graphs to undirected onesGNNExplainer
does now allow for customizable edge and node feature loss reductionaggr
can now passed to any GNN based on theMessagePassing
interface (thanks to @m30m)- Runtime improvements in
SEAL
(thanks to @muhanzhang) - Runtime improvements in
torch_geometric.utils.softmax
(thanks to @Book1996) GAE.recon_loss
now supports custom negative edge indices (thanks to @reshinthadithyan)- Faster
spmm
computation andrandom_walk
sampling on CPU (torch-sparse
andtorch-cluster
updates required) DataParallel
does now support thefollow_batch
argument- Parallel approximate PPR computation in the
GDC
transform (thanks to @klicperajo) - Improved documentation by providing an autosummary of all subpackages (thanks to @m30m)
- Improved documentation on how edge weights are handled in various GNNs (thanks to @m30m)
Bugfixes
- Fixed a bug in
GATConv
when computing attention coefficients in bipartite graphs - Fixed a bug in
GraphSAINTSampler
that led to wrong edge feature sampling - Fixed the
DimeNet
pretraining link - Fixed a bug in processing
ego-twitter
andego-gplus
of theSNAPDataset
collection - Fixed a number of broken dataset URLs (
ICEWS18
,QM9
,QM7b
,MoleculeNet
,Entities
,PPI
,Reddit
,MNISTSuperpixels
,ShapeNet
) - Fixed a bug in which
MessagePassing.jittable()
tried to write to a file without permission (thanks to @twoertwein) GCNConv
does not requireedge_weight
in casenormalize=False
Batch.num_graphs
will now report the correct amount of graphs in case of zero-sized graphs