Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[NN] Add EdgeGAT operator #5282

Merged
merged 11 commits into from
Apr 9, 2023
Merged

[NN] Add EdgeGAT operator #5282

merged 11 commits into from
Apr 9, 2023

Conversation

schmidt-ju
Copy link
Contributor

Description

Hey,

I added the EdgeGAT operator of the Robotics and Automation Letters (RA-L) paper SCENE: Reasoning about Traffic Scenes using Heterogeneous Graph Neural Networks.
The already available EGAT operator does only include edge feature for the calculation of the attention coefficients.

The operator of this PR, namely EdgeGAT, is more advanced: It also includes the edge features directly for the node update and not only for the calculation of the attention coefficients.

Checklist

Please feel free to remove inapplicable items for your PR.

  • The PR title starts with [$CATEGORY] (such as [NN], [Model], [Doc], [Feature]])
  • I've leverage the tools to beautify the python and c++ code.
  • All changes have test coverage
  • Code is well-documented
  • To the best of my knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Looking forward to hearing from you!

Julian

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 10, 2023

Not authorized to trigger CI. Please ask core developer to help trigger via issuing comment:

  • @dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 10, 2023

Commit ID: 3964ac09506365ca7d43e5ad3ab2e1f86c7e259c

Build ID: 1

Status: ❌ CI test failed in Stage [Authentication].

Report path: link

Full logs path: link

@schmidt-ju
Copy link
Contributor Author

Hey,

I am not sure, why the CI is failing. I just recreated the test cases and they seem to work on my local machine.

Also, I am not able to access the produced logs.
There is probably something that I am missing right now. Can you help me?

Julian

@BarclayII
Copy link
Collaborator

@dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 11, 2023

Commit ID: 420d5b590c4b33fc05f34af9685dad0a4d16dad6

Build ID: 2

Status: ❌ CI test failed in Stage [Lint Check].

Report path: link

Full logs path: link

@BarclayII
Copy link
Collaborator

@schmidt-ju Hi Julian, currently CI requires authentication from one of the core developers so someone from us has to invoke the CI manually. And after the CI is invoked and an error other than "Authentication failed" is shown, you will have to click on the Report path link and find the logs like below:
image
Looks like there is lint issues. Could you take a look?

Please feel free to nudge us if you have any problems. Thanks!

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 11, 2023

Not authorized to trigger CI. Please ask core developer to help trigger via issuing comment:

  • @dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 11, 2023

Commit ID: 633232fda921d588c6ed4f27150d292df9c471c4

Build ID: 3

Status: ❌ CI test failed in Stage [Authentication].

Report path: link

Full logs path: link

@schmidt-ju
Copy link
Contributor Author

schmidt-ju commented Feb 11, 2023

Hey @BarclayII,

thanks for the information!
I fixed the lint issues (to the best of my knowledge^^). At least on my local machine the task_lint.sh script does not throw errors anymore.

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 11, 2023

Not authorized to trigger CI. Please ask core developer to help trigger via issuing comment:

  • @dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 11, 2023

Commit ID: acfdfe0

Build ID: 4

Status: ❌ CI test failed in Stage [Authentication].

Report path: link

Full logs path: link

@BarclayII
Copy link
Collaborator

Seems that there's still lint issues. You could try lintrunner -a to apply the lint fixes automatically.

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 14, 2023

Not authorized to trigger CI. Please ask core developer to help trigger via issuing comment:

  • @dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 14, 2023

Commit ID: 66165d4

Build ID: 5

Status: ❌ CI test failed in Stage [Authentication].

Report path: link

Full logs path: link

@BarclayII
Copy link
Collaborator

The files are python/dgl/nn/pytorch/conv/edgegatconv.py and python/dgl/nn/pytorch/conv/__init__.py.

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 14, 2023

Not authorized to trigger CI. Please ask core developer to help trigger via issuing comment:

  • @dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 14, 2023

Commit ID: 1007b66195ad5d0b74570648a805223dd5a78bbf

Build ID: 6

Status: ❌ CI test failed in Stage [Authentication].

Report path: link

Full logs path: link

@schmidt-ju
Copy link
Contributor Author

Hey @BarclayII,

I fixed the lint issues in the two mentioned files using lintrunner.
According to the "Checks" tab, there are still some issues in tests/pytorch/test_nn.py.

My modifications in this file are limited to two new test methods. The linter, however, shows errors in the whole file and not limited to my small changes.
Is this intentional?
I can reformat the whole file, but I don't think that this is something you want.

Looking forward to hearing from you.

Julian

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 14, 2023

Not authorized to trigger CI. Please ask core developer to help trigger via issuing comment:

  • @dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 14, 2023

Commit ID: b8ea3a3

Build ID: 7

Status: ❌ CI test failed in Stage [Authentication].

Report path: link

Full logs path: link

@frozenbugs
Copy link
Collaborator

@dgl-bot

@frozenbugs
Copy link
Collaborator

@schmidt-ju Can you fix the conflict, I think the lint issue should be addressed.

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 24, 2023

Not authorized to trigger CI. Please ask core developer to help trigger via issuing comment:

  • @dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 24, 2023

Commit ID: d5bcd8a

Build ID: 10

Status: ❌ CI test failed in Stage [Authentication].

Report path: link

Full logs path: link

@schmidt-ju
Copy link
Contributor Author

Hey @frozenbugs,
I resolved the conflicts. Lint issues are now gone, too (because of the changes in the test_nn.py file).

@frozenbugs
Copy link
Collaborator

@dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Feb 27, 2023

Commit ID: 13cf6e0487aa756b95bc61b0eda2237110ff9b77

Build ID: 11

Status: ✅ CI test succeeded.

Report path: link

Full logs path: link

python/dgl/nn/pytorch/conv/edgegatconv.py Outdated Show resolved Hide resolved
python/dgl/nn/pytorch/conv/edgegatconv.py Outdated Show resolved Hide resolved
python/dgl/nn/pytorch/conv/edgegatconv.py Outdated Show resolved Hide resolved
python/dgl/nn/pytorch/conv/edgegatconv.py Outdated Show resolved Hide resolved
python/dgl/nn/pytorch/conv/edgegatconv.py Outdated Show resolved Hide resolved
python/dgl/nn/pytorch/conv/edgegatconv.py Outdated Show resolved Hide resolved
python/dgl/nn/pytorch/conv/edgegatconv.py Outdated Show resolved Hide resolved
from ...functional import edge_softmax

# pylint: enable=W0235
class EdgeGATConv(nn.Module):
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe mention SCENE in the name of EdgeGATConv? Since we already have another similar egatconv https://github.com/dmlc/dgl/blob/master/python/dgl/nn/pytorch/conv/egatconv.py

Copy link
Collaborator

@BarclayII BarclayII left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, we can merge it after the code style comments are addressed.

@frozenbugs
Copy link
Collaborator

Overall LGTM, thanks for using and contributing to DGL. @BarclayII will take another look then approve.

@dgl-bot
Copy link
Collaborator

dgl-bot commented Mar 3, 2023

Not authorized to trigger CI. Please ask core developer to help trigger via issuing comment:

  • @dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Mar 3, 2023

Commit ID: c079d1b

Build ID: 12

Status: ❌ CI test failed in Stage [Authentication].

Report path: link

Full logs path: link

@dgl-bot
Copy link
Collaborator

dgl-bot commented Mar 3, 2023

Not authorized to trigger CI. Please ask core developer to help trigger via issuing comment:

  • @dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Mar 3, 2023

Commit ID: 35d9ca1

Build ID: 13

Status: ❌ CI test failed in Stage [Authentication].

Report path: link

Full logs path: link

@schmidt-ju
Copy link
Contributor Author

Hey @BarclayII,

thanks for your overall positive feedback.

I addressed all of your comments.
The only thing left is @frozenbugs comment:

Maybe mention SCENE in the name of EdgeGATConv? Since we already have another similar egatconv https://github.com/dmlc/dgl/blob/master/python/dgl/nn/pytorch/conv/egatconv.py

I have talked to my co-author about this and we would like to leave the name as it is.
This makes the name in the paper and in DGL consistent with each other.

Looking forward to hearing from you!

Best

Julian

@BarclayII
Copy link
Collaborator

@dgl-bot

@dgl-bot
Copy link
Collaborator

dgl-bot commented Mar 6, 2023

Commit ID: ceee29ce898b6190f69567e41a633be29850b44f

Build ID: 14

Status: ✅ CI test succeeded.

Report path: link

Full logs path: link

@schmidt-ju
Copy link
Contributor Author

Hey @BarclayII,

do you already have a rough estimate of when the merge into the main branch will be carried out?

Julian

@frozenbugs frozenbugs merged commit 97286f9 into dmlc:master Apr 9, 2023
@frozenbugs
Copy link
Collaborator

Hey @BarclayII,

do you already have a rough estimate of when the merge into the main branch will be carried out?

Julian

Hi Julian, sorry for the trouble, just merged the PR.
(I am new to github, and I thought you can merge also long as we approve)

DominikaJedynak pushed a commit to DominikaJedynak/dgl that referenced this pull request Mar 12, 2024
Co-authored-by: Quan (Andy) Gan <coin2028@hotmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants