FluxML / GeometricFlux.jl

Geometric Deep Learning for Flux
https://fluxml.ai/GeometricFlux.jl/stable/
MIT License
348 stars 30 forks source link

Replace ScatterNNlib with NNlib #187

Closed yuehhua closed 3 years ago

yuehhua commented 3 years ago

The functionality of scatter and gather has been migrated to NNlib and NNlibCUDA.

CarloLucibello commented 3 years ago

It seems many tests have been removed, why? Also, since the new scatter has different argument ordering, next release should be marked as breaking

yuehhua commented 3 years ago

There are two categories of tests are removed:

  1. GATConv layer: tests are removed due to the introduction of number of node/edge check for FeaturedGraph in GraphSignals v0.2 series. Current tests will break the check due to the implementation of GATConv. GATConv has multiple head design, but the GATConv output mix the number of edges and heads together. Thus, GATConv need a new implementation to separate heads and number of edges.
  2. Another test is message-passing network for CUDA: message-passing network has an operation of scalar indexing over a cuarray. Currently, new version of CUDA forbidden the use of scalar indexing, which breaks the tests. Message-passing need a new implementation for indexing vertices or edges, maybe a cuda kernel.