Dear python-ace developers,
I trained an ACE potential (output_potential.yaml) using the tensorpot backend and wanted to use the resulting potential with the ASE pyace calculator.
When plotting F_pred vs F_ref on my test dataset, I noticed that the resulting force MAE and RMSE differ significantly from those reported in log.txt during training.
To ensure this was not an issue in my own Python code, I performed a no-fit run using:
pacemaker input.yaml --no-fit --potential output_potential.yaml
The input.yaml file is identical to the one used during training, except:
- The backend is set to
pyace instead of tensorpot
- The filenames are set to
fitting_data_info.pckl.gzip and test_data_info.pckl.gzip (both generated during training)
This run gave me the same forces as my own ASE calculator, confirming consistency between them. However, a subset of forces predicted by pyace differs noticeably from those predicted by tensorpot.
I attached a minimal dataset for reproducing this issue:
output_potential.yaml – the trained potential
difference_data.pckl.gzip – ASE Atoms, reference energies, forces, and positions
difference_data_pred_tensorpot.pckl.gzip – predictions by tensorpot
difference_data_pred_pyace.pckl.gzip – predictions by pyace
input.yaml – configuration file used
- Two scatter plots of F_tensorpot vs F_pyace
I am using:
- python version: 3.10.13
- pacemaker/pyace version: 0.2.7+172.gd1c213a
- ace_evaluator version: 2023.11.25
The file:
example.tar.gz
Please let me know if additional information is needed to reproduce this issue.
Questions:
- Is this difference between
tensorpot and pyace expected, or does it indicate an issue?
- Would it be better to train the potential directly with
backend=pyace to avoid such inconsistencies?
- If I run MD simulations with LAMMPS, is there any known issue regarding different force predictions?
Thank you very much for your help!
Best,
Sijia
Dear python-ace developers,
I trained an ACE potential (
output_potential.yaml) using thetensorpotbackend and wanted to use the resulting potential with the ASEpyacecalculator.When plotting F_pred vs F_ref on my test dataset, I noticed that the resulting force MAE and RMSE differ significantly from those reported in
log.txtduring training.To ensure this was not an issue in my own Python code, I performed a no-fit run using:
The
input.yamlfile is identical to the one used during training, except:pyaceinstead oftensorpotfitting_data_info.pckl.gzipandtest_data_info.pckl.gzip(both generated during training)This run gave me the same forces as my own ASE calculator, confirming consistency between them. However, a subset of forces predicted by
pyacediffers noticeably from those predicted bytensorpot.I attached a minimal dataset for reproducing this issue:
output_potential.yaml– the trained potentialdifference_data.pckl.gzip– ASE Atoms, reference energies, forces, and positionsdifference_data_pred_tensorpot.pckl.gzip– predictions bytensorpotdifference_data_pred_pyace.pckl.gzip– predictions bypyaceinput.yaml– configuration file usedI am using:
The file:
example.tar.gz
Please let me know if additional information is needed to reproduce this issue.
Questions:
tensorpotandpyaceexpected, or does it indicate an issue?backend=pyaceto avoid such inconsistencies?Thank you very much for your help!
Best,
Sijia