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

New kernel implementations, nominal model implementation, and training CLI #12

Merged
merged 117 commits into from
Oct 9, 2024

Conversation

laserkelvin
Copy link
Contributor

Proposed changes

This PR is an omnibus of changes associated with the recently accepted paper at AI4Mat - NeurIPS 2024.

Types of changes

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update (if none of the other choices apply)

Checklist

Put an x in the boxes that apply. You can also fill these out after creating
the PR. If you are unsure about any of them, do not hesitate to ask. We are
here to help! This is simply a reminder of what we are going to look for before
merging your code.

  • I have read the CONTRIBUTING agreement
  • Current formatting and unit tests / base functionality passes locally with my changes
  • I have added tests that prove my fix is effective or that my feature works (if appropriate)
  • I have added necessary documentation (if appropriate)
  • Any dependent changes have been merged and published in downstream modules

Further comments

The main things to highlight in this PR are:

  • New Jupyter notebooks that reproduce the new spherical harmonic derivations, which have been refactored so that they are direct functions of $xyz$.
  • New Triton lang implementations of these kernels, contained in the submodule equitriton.sph_harm.direct, including the relevant torch.autograd.Function bindings and a optional functional interface.
  • A nominal model implementation that uses the new kernels, along with a PyTorch Lightning workflow for training and testing against QM9. The model implementation is contained in the equitriton.models submodules, and the training scripts plus the PHATE projection analysis are in scripts.
  • Updated the README with a nominal paper citation, and guidance on the new kernels.

laserkelvin and others added 30 commits August 15, 2024 10:44
Signed-off-by: Kin Long Kelvin Lee <[email protected]>
laserkelvin and others added 25 commits September 1, 2024 21:40
Signed-off-by: Kin Long Kelvin Lee <[email protected]>
@laserkelvin laserkelvin added the enhancement New feature or request label Oct 8, 2024
@smiret-intel smiret-intel merged commit 728b107 into IntelLabs:main Oct 9, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants