Comments (8)
How different are the atomic positions? While we adopted mostly the same training protocols, the pre-trained M3GNet in this repo is not an exact replica of the previous M3GNet-TF. I would expect the differences in atomic positions to not be large. Energy errors within the MAE of the potentials (30-40 meV/atom) are not surprising.
from matgl.
I should add that there is no easy way to port model weights directly over from TF to DGL/Pytorch. So that's why we had to retrain. In any case, this is a baseline model (just to make sure we are reproducing the broad error characteristics of the TF version) and we will provide improved models as we go along.
from matgl.
How different are the atomic positions?
Not significantly different in the structures I've tested, but enough that I could tell it wasn't just noise. The energy is the more noteworthy difference imo
from matgl.
Yeah for the atomic positions, we usually get to within 1% of the DFT. So I would expect the deviation in atomic positions to be less significant (but not below noise level). There are definite uncertainties in the energies. Better for some systems (e.g., oxides) but worse for others.
from matgl.
I have redone the cubic crystal test (see examples) with the new matgl implementation. The error characteristics are largely similar to the old m3gnet. We did discover some minor data issues and the new M3gnet is fitted with further filtered data (e.g., some problematic structures with very large forces were removed). So again, not an exact replica of the TF M3GNet but basically similar performance-wise. I will close this issue but feel free to reopen if you discover any serious issues with the new implementation.
from matgl.
@kenko911 Can provide further details on the additional filtering done. Pls write it in the README.
from matgl.
Do I understand correctly that the new architecture of the model is also slightly different (the number of parameters seems to be different). Can any details be given about this? It might be relevant.
from matgl.
The differences are relatively minor. The embedding sizes etc. are all the same. The only slight difference is in the length of the bond expansion I believe. Otherwise, the activation, optimizers, etc. are all the same.
It is not possible to exactly replicate the old model given we are moving to an entirely different code base. But this is pretty close. Our focus is on improving the models going forward and this model is just a baseline.
from matgl.
Related Issues (20)
- Does the example training script work for multi-gpu training? HOT 1
- [Bug]: RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu! HOT 5
- TensorNet HOT 1
- [Bug]: `RuntimeError: expected scalar type Float but found Double` HOT 1
- [Bug]: Cannot load from checkpoint HOT 2
- [Bug]: pymatgen CI broken due to transitive `pydantic` dependency via `matgl->dgl->pydantic`.
- [Bug]: Incompataibility with `dgl==2.1.0` and `torch==2.2.2` HOT 11
- [Bug]: Getting ValueError due to run "Training a M3GNet Formation Energy Model with PyTorch Lightning.ipynb" without any change in code. HOT 2
- [Bug]: AttributeError: 'M3GNet' object has no attribute 'calc_stresses' HOT 1
- [Feature Request]: change the home page info in your page
- [Bug]: ValueError: Bad serialized model or bad model name. It is possible that you have an older model cached. Please clear your cache by running `python -c "import matgl; matgl.clear_cache()"` HOT 2
- [Question] M3GNet finetuning and MD HOT 2
- [Bug]: GPU utilization low and multi-core CPU utilization only around 100% during training HOT 1
- [Bug]: pypi/release version not consistent with git repo for models HOT 2
- [Bug]: RMSE and MAE are the same in the outputted test metric HOT 3
- UserWarrning in `_basis.py` HOT 1
- [Bug]: Finetuned model is worse than pretrained model HOT 18
- [Feature Request]: Update `pytorch_lightning` to `lightning` HOT 1
- FYI: There are no 1.1.2 PyPI wheels HOT 1
- [Bug]: replace deprecated `ExpCellFilter` HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from matgl.