Skip to content

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

Open
kaminow wants to merge 14 commits into
mainfrom
dgl-to-pyg
Open

[WIP] Add PyG-based GAT implementation.#67
kaminow wants to merge 14 commits into
mainfrom
dgl-to-pyg

Conversation

@kaminow

@kaminow kaminow commented Jul 17, 2024

Copy link
Copy Markdown
Collaborator

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
Copy Markdown

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

kaminow commented Aug 15, 2024

Copy link
Copy Markdown
Collaborator Author

@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

@hmacdope hmacdope left a comment

Copy link
Copy Markdown
Contributor

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

Comment thread docs/docs/basic_usage.rst
add_self_loop=True,
node_featurizer=CanonicalAtomFeaturizer(),
)(smiles)
mol = Chem.MolFromSmiles(smiles)

Copy link
Copy Markdown
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
Copy Markdown
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

Comment thread mtenn/config.py

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
Copy Markdown
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
Copy Markdown
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

Comment thread mtenn/tests/test_gat.py
)

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

Copy link
Copy Markdown
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

kaminow commented Aug 20, 2024

Copy link
Copy Markdown
Collaborator Author

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