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

[WIP] Add PyG-based GAT implementation. #67

Open
wants to merge 14 commits into
base: main
Choose a base branch
from
Open

[WIP] Add PyG-based GAT implementation. #67

wants to merge 14 commits into from

Conversation

kaminow
Copy link
Collaborator

@kaminow kaminow commented Jul 17, 2024

Switch from using the DGL implementation of GAT to the PyG version. Note that this will break things as the expected input type will change. Closes #59.

@kaminow kaminow self-assigned this Jul 17, 2024
@codecov-commenter
Copy link

Codecov Report

Attention: Patch coverage is 68.08511% with 15 lines in your changes missing coverage. Please review.

Project coverage is 42.00%. Comparing base (fcddab3) to head (97eb662).
Report is 28 commits behind head on main.

Additional details and impacted files

@kaminow kaminow marked this pull request as ready for review August 15, 2024 17:47
@kaminow kaminow requested a review from hmacdope August 15, 2024 17:47
@kaminow
Copy link
Collaborator Author

kaminow commented Aug 15, 2024

@hmacdope I think this is ready for a look whenever you get a chance (and maybe after #70 is fixed)! we'll also probably want to make this a 0.7.0 release

Copy link
Contributor

@hmacdope hmacdope left a comment

Choose a reason for hiding this comment

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

Looks good but one more fundamental question. Have we validated the scientific correctness and performance of the new model? If we still need to run these kind of experiments I would suggest we keep them side-by-side as two different classes and then remove one?

In part this is motivated by the effort needed to make sure this works for upcoming ASAP ML deployments

add_self_loop=True,
node_featurizer=CanonicalAtomFeaturizer(),
)(smiles)
mol = Chem.MolFromSmiles(smiles)
Copy link
Contributor

Choose a reason for hiding this comment

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

Need a convenience function to do this easily for user, easy to mess up.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I've added one in asapdiscovery for us to use, but since there's no one right way to featurize a molecule I didn't want to add anything opinionated in here


Default values here are the default values given in DGL-LifeSci.
Class for constructing a GAT ML model. Default values here are based on the values
in DGL-LifeSci.
Copy link
Contributor

Choose a reason for hiding this comment

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

DGL-LifeSci gone now?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

the defaults are still based on the defaults in that package, even though we're not using their code anymore

)

return {"g": g, "smiles": smiles}
mol = Chem.MolFromSmiles(smiles)
Copy link
Contributor

Choose a reason for hiding this comment

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

Same here on convenience func

@kaminow
Copy link
Collaborator Author

kaminow commented Aug 20, 2024

yep that's a good point. I'll add the DGL version back in alongside the PyG version for now

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.

Migrate GAT from DGL to Pytorch Geometric
3 participants