Correction like mentioned in #4969
I noticed that there is a normalisation step on line 97 while the normalised values are not used downstream. Even if this was meant to show the normalisation step, it would not be calculating the normalisation step described in the CGN paper. The paper considers both in and out degrees while the normalisation in the code only describes normalisation using the in degrees.
In the end, the normalised values are assigned to g.ndata["norm"] but these values are not used afterwards.
Having a normalisation step here is also unnecessary since the GraphConv layer that is used already takes care of the normalisation. https://docs.dgl.ai/en/0.9.x/_modules/dgl/nn/pytorch/conv/graphconv.html#GraphConv
It confused me for a second thinking that I had to do the normalisation myself but this is already handled by the GraphConf.
* upd
* fig edgebatch edges
* add test
* trigger
* Update README.md for pytorch PinSage example.
Add noting that the PinSage model example under
example/pytorch/recommendation only work with Python 3.6+
as its dataset loader depends on stanfordnlp package
which work only with Python 3.6+.
* Provid a frame agnostic API to test nn modules on both CPU and CUDA side.
1. make dgl.nn.xxx frame agnostic
2. make test.backend include dgl.nn modules
3. modify test_edge_softmax of test/mxnet/test_nn.py and
test/pytorch/test_nn.py work on both CPU and GPU
* Fix style
* Delete unused code
* Make agnostic test only related to tests/backend
1. clear all agnostic related code in dgl.nn
2. make test_graph_conv agnostic to cpu/gpu
* Fix code style
* fix
* doc
* Make all test code under tests.mxnet/pytorch.test_nn.py
work on both CPU and GPU.
* Fix syntex
* Remove rand
* Add TAGCN nn.module and example
* Now tagcn can run on CPU.
* Add unitest for TGConv
* Fix style
* For pubmed dataset, using --lr=0.005 can achieve better acc
* Fix style
* Fix some descriptions
* trigger
* Fix doc
* Add nn.TGConv and example
* Fix bug
* Update data in mxnet.tagcn test acc.
* Fix some comments and code
* delete useless code
* Fix namming
* Fix bug
* Fix bug
* Add test for mxnet TAGCov
* Add test code for mxnet TAGCov
* Update some docs
* Fix some code
* Update docs dgl.nn.mxnet
* Update weight init
* Fix
* reproduce the bug
* Fix concurrency bug reported at #755.
Also make test_shared_mem_store.py more deterministic.
* Update test_shared_mem_store.py
* Update dmlc/core
* networkx >= 2.4 will break our examples
* Update tutorials/requirements
* fix selfloop edges
* upd version
* fix gat residual bug
* fix the residual addition; output heads; add some shape notations;
* minor
* fix the output head average
* add requests package in requirement
* add cache to adj and incmat
* Fix bug in cached adj/inc
* mx gcn spmv runnable; acc debugging...
* fix bug in mx gcn that loss is not correctly calculated
* fix mx utest
* fix as requested
* use raw parameter tensors rather than dense layer
* fix dropout
* Add numbers in readme
* Add SH tutorials
* setup sphinx-gallery; work on graph tutorial
* draft dglgraph tutorial
* update readme to include document url
* rm obsolete file
* Draft the message passing tutorial
* Capsule code (#102)
* add capsule example
* clean code
* better naming
* better naming
* [GCN]tutorial scaffold
* fix capsule example code
* remove previous capsule example code
* graph struc edit
* modified: 2_graph.py
* update doc of capsule
* update capsule docs
* update capsule docs
* add msg passing prime
* GCN-GAT tutorial Section 1 and 2
* comment for API improvement
* section 3
* Tutorial API change (#115)
* change the API as discusses; toy example
* enable the new set/get syntax
* fixed pytorch utest
* fixed gcn example
* fixed gat example
* fixed mx utests
* fix mx utest
* delete apply edges; add utest for update_edges
* small change on toy example
* fix utest
* fix out in degrees bug
* update pagerank example and add it to CI
* add delitem for dataview
* make edges() return form that is compatible with send/update_edges etc
* fix index bug when the given data is one-int-tensor
* fix doc
1. Update `examples/pytorch/gcn` and `python/dgl/nn/pytorch` based on the latest APIs
2. Add full support for dropout in `examples/pytorch/gcn` and `python/dgl/nn/pytorch`
3. Rename `GCN` class in `python/dgl/nn/pytorch` to be `GraphConvolutionLayer` class
4. Make node field an argument that can be configured by users in GraphConvolutionLayer
Note that adjacency normalization has not been supported yet in the examples.
* WIP: API renaming
* API rewrite and node function refactor
* builtin functions
* builtin functions tested
* fix test
* send and recv spmv test
* WIP: fix examples
* Fix examples using new APIs
* subgraph copy from
* WIP
* cached members
* Change all usage of id tensor to the new Index object; remove set device in DGLGraph;
* subgraph merge API tested
* add dict type reduced msg test
* fix edge list order problem in cached graph.
* minor fix
* fix bug in edge iter
* SPMV works
* gcn spmv on CPU
* change gcn style
* fix cached graph performance; fixed gcn dataset bug
* reorg dir
* non-batch spmv; partial update problem with shape change
* fix reorder problem; finish gcn-batch impl
* pop API
* GPU context