Conversation
…zation problems
99e008c to
182ae3c
Compare
182ae3c to
384210a
Compare
|
cscs-ci run |
pfebrer
left a comment
There was a problem hiding this comment.
Sorry for more change requests :)
| class RadialBasisHypers(TypedDict): | ||
| """In some systems and datasets, enabling long-range Coulomb interactions | ||
| might be beneficial for the accuracy of the model and/or | ||
| its physical correctness.""" |
There was a problem hiding this comment.
These are not the long range hypers :)
| """Metric used to select the best model checkpoint.""" | ||
|
|
||
| loss: str | dict[str, LossSpecification] = "mse" | ||
| """Loss function used for training.""" |
There was a problem hiding this comment.
Can we copy the trainer hypers that are common to PET from the PET trainer, so that they have more extensive documentation?
This would also rename fixed_composition_weights to atomic_baseline, so the trainer and the checkpoint will require changes.
Ok, I just think that if there's no reason for the PhACE dataloader to be different from the MACE one (which is Not that they need to be the same for the PR to be merged, but something that I think would be nice to keep in mind for the future. |
384210a to
ad6945b
Compare
jwa7
left a comment
There was a problem hiding this comment.
A couple of comments for now. Looking great though!
| might be beneficial for the accuracy of the model and/or | ||
| its physical correctness.""" | ||
|
|
||
| max_eigenvalue: float = 25.0 |
There was a problem hiding this comment.
As this needs tuning with respect to the max L of the target, some useful heuristics on how to set this would be useful. For instance, with all other parameters as default, I found I had to set it to max_eigenvalue: 200.0 to reach L=8.
There was a problem hiding this comment.
IIRC the laplacian eigenvalues paper uses nmax as the only parameter, and then finds lmax as a consequence. That is far more user-friendly then asking a mysterious eigenvalue. IDK if this applies also with the physical weighting, but it should
There was a problem hiding this comment.
I don't think it's a good idea because there are many exact truncations that you can't get (or are ambiguous) if you move to n_max or l_max. I would rather add more documentation to the eigenvalue
There was a problem hiding this comment.
Yes I second this - I think we need to have fast and more minimal CG code out of featomic. Paolo and I have temporarily included featomic as a dependency for PET-H as we need it for Blocks2Matrix but it seems to be a bit of a pain for torch versioning etc. Maybe we should discuss moving the CG subpackage to metatomic.
| warmup_fraction: float = 0.01 | ||
| """Fraction of training steps for learning rate warmup.""" | ||
|
|
||
| gradient_clipping: Optional[float] = None |
There was a problem hiding this comment.
As discussed - shall we set a default here?
| gradient_clipping: Optional[float] = None | |
| gradient_clipping: Optional[float] = 1.0 |
There was a problem hiding this comment.
Yes, I think so. I'm running some more experiments to understand what a good default could be
|
Just to be clear, we can't use any existing implementation of CG products here, because we use a different form of the CG iterations |
| model( | ||
| [system], | ||
| model.outputs, | ||
| ) |
There was a problem hiding this comment.
For the torchscript tests, I kept them as they were, but because small differences between models (like in your case deleting these attributes, or in MACE compiling with e3nn's function), I wonder if it is better to just test the exporting functionality instead of doing torch.jit.script explicitly, since every model will have its own needed things in model.export()
b358cef to
740f819
Compare
740f819 to
0ded1cc
Compare
|
cscs-ci run |
Adds the PhACE architecture (#434 was closed)
Contributor (creator of pull-request) checklist
experimentalorstablefolder. See the[docs/src/dev-docs/architecture-life-cycle.rst](Architecture life cycle)
document for requirements.
src/metatrain/experimental/<architecture_name>.github/workflow/architecture-tests.ymloptional-dependenciessection in thepyproject.tomltest_checkpoint.pyin other architectures)Reviewer checklist
New experimental architectures
tests.
TorchScript <https://pytorch.org/docs/stable/jit.html>_.__maintainers__and theCODEOWNERSfilePyPI, a public git repository or another public URL with a repository is acceptable.
📚 Documentation preview 📚: https://metatrain--921.org.readthedocs.build/en/921/