tkipf / keras-gcn

Keras implementation of Graph Convolutional Networks
MIT License
791 stars 266 forks source link

Doing graph-level classification? #33

Open gailmargolis76 opened 6 years ago

gailmargolis76 commented 6 years ago

My input is such that each subject has their own graph. This is different from the example given in train.py where there is only 1 graph (a citation network). In the tensorflow implementation of gcn, you suggest doing graph-level classification by combining the adjacency matrices of all the graphs in the input sample into one large adjacency matrix (as a sparse block-diagonal matrix). The part I am not sure how to implement in keras is the pooling of the output to produce 1 classification per graph. Any tips would be greatly appreciated!

tkipf commented 6 years ago

Have a look here: https://github.com/tkipf/gcn/issues/4. This only applies for the TensorFlow implementation though. Hope this helps! On Wed 27. Jun 2018 at 23:42 gailmargolis76 notifications@github.com wrote:

My input is such that each subject has their own graph. This is different from the example given in train.py where there is only 1 graph (a citation network). In the tensorflow implementation of gcn, you suggest doing graph-level classification by combining the adjacency matrices of all the graphs in the input sample into one large adjacency matrix (as a sparse block-diagonal matrix). The part I am not sure how to implement in keras is the pooling of the output to produce 1 classification per graph. Any tips would be greatly appreciated!

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/tkipf/keras-gcn/issues/33, or mute the thread https://github.com/notifications/unsubscribe-auth/AHAcYJWmmhWbZ80CLdpev3L8aMxNscgTks5uBApogaJpZM4U6flP .

tkipf commented 6 years ago

Ah, i just realized you’re explicitly asking about how to do this in keras. This is a bit tricky due to the restrictions of the API and I would recommend going with pure TF in this case. On Wed 27. Jun 2018 at 23:46 Thomas Kipf thomas.kipf@gmail.com wrote:

Have a look here: https://github.com/tkipf/gcn/issues/4. This only applies for the TensorFlow implementation though. Hope this helps! On Wed 27. Jun 2018 at 23:42 gailmargolis76 notifications@github.com wrote:

My input is such that each subject has their own graph. This is different from the example given in train.py where there is only 1 graph (a citation network). In the tensorflow implementation of gcn, you suggest doing graph-level classification by combining the adjacency matrices of all the graphs in the input sample into one large adjacency matrix (as a sparse block-diagonal matrix). The part I am not sure how to implement in keras is the pooling of the output to produce 1 classification per graph. Any tips would be greatly appreciated!

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/tkipf/keras-gcn/issues/33, or mute the thread https://github.com/notifications/unsubscribe-auth/AHAcYJWmmhWbZ80CLdpev3L8aMxNscgTks5uBApogaJpZM4U6flP .