-
Notifications
You must be signed in to change notification settings - Fork 265
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
Unified OCP Trainer #520
Merged
Merged
Unified OCP Trainer #520
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This was referenced Jul 27, 2023
abhshkdz
previously approved these changes
Jan 4, 2024
abhshkdz
approved these changes
Jan 5, 2024
Merged
levineds
pushed a commit
that referenced
this pull request
Jul 11, 2024
* initial single trainer commit * more general evaluator * backwards tasks * debug config * predict support, evaluator cleanup * cleanup, remove hpo * loss bugfix, cleanup hpo * backwards compatability for old configs * backwards breaking fix * eval fix * remove old imports * default for get task metrics * rebase cleanup * config refactor support * black * reorganize free_atoms * output config fix * config naming * support loss mean over all dimensions * config backwards support * equiformer can now run * add example equiformer config * handle arbitrary torch loss fns * correct primary metric def * update s2ef portion of OCP tutorial * add type annotations * cleanup * Type annotations * Abstract out _get_timestamp * don't double ids when saving prediction results * clip_grad_norm should be float * model compatibility * evaluator test fix * lint * remove old models * pass calculator test * remove DP, cleanup * remove comments * eqv2 support * odac energy trainer merge fix * is2re support * cleanup * config cleanup * oc22 support * introduce collater to handle otf_graph arg * organize methods * include parent in targets * shape flexibility * cleanup debug lines * cleanup * normalizer bugfix for new configs * calculator normalization fix, backwards support for ckpt loads * New weight_decay config -- defaults in BaseModel, extendable by others (e.g. EqV2) * Doc update * Throw a warning instead of a hard error for optim.weight_decay * EqV2 readme update * Config update * don't need transform on inference lmdbs with no ground truth * remove debug configs * ocp-2.0 example.yml * take out ocpdataparallel from fit.py * linter * update tutorials --------- Co-authored-by: Janice Lan <[email protected]> Co-authored-by: Richard Barnes <[email protected]> Co-authored-by: Abhishek Das <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, the
ocp
repo is limited to two hard-coded trainers:energy
andforces
. To provide more flexibility to the codebase, this PR consolidates the repo to handle any arbitrary targets someone may be interested on training on. For an initial release, we aim to support properties up to rank 2 tensors, with higher order properties possibly supported in the future.Tracking desired changes and improvements:
compute_loss()
compute_metrics()
validate()
Evaluator()
refactorpredict()
save()
Test Plan
Multi-gpu tests to ensure DP deprecation went smoothly. Results are compiled in https://docs.google.com/spreadsheets/d/1NbonjL7pwC0kZDojpgLSwn9u6G4p9atU8OylslApisw/edit?usp=sharing with corresponding wandb links.
OC20