Skip to content

BurgerAndreas/hip

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

145 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HIP: Hessian Interatomic Potentials

Paper: https://arxiv.org/abs/2509.21624

Official repo: https://github.com/BurgerAndreas/hip

MACE implementation (work in progress): https://github.com/BurgerAndreas/hip-mace

HIPs are machine learning interatomic potentials (MLIPs) that directly predict the Hessian, in addition to the usual energy and forces. This repo primarily trains HIP-EquiformerV2 on the HORM Hessian dataset, which consists of off-equilibrium geometries of small, neutral organic molecules, contained H, C, N, O, based on Transition1x, at the $\omega$B97X/6-31G(d) level of theory.

Compared to autograd Hessians, HIP is:

  • 10-70x faster for a single molecule of 5-30 atoms
  • 70x faster for a typical T1x batch in batched prediction
  • 3x memory reduction
  • Better accuracy (Hessian, Hessian eigenvalues and eigenvectors)
  • Better downstream accuracy (relaxation, transition state search, frequency analysis)

Speed and memory comparison

Installation

This should only take 5-10 minutes depending on your internet connection.

Setting up the environment

First install the uv package manager (if not already installed)

curl -LsSf https://astral.sh/uv/install.sh | sh
export PATH="$HOME/.local/bin:$PATH"
git clone git@github.com:BurgerAndreas/hip.git
cd hip

# --extra cuda126
uv sync --python 3.12 --extra cuda121

Use our model

Download the latest checkpoints from HuggingFace:

mkdir -p ckpt
wget https://huggingface.co/andreasburger/hip/resolve/main/ckpt/hip_v3.ckpt -O ckpt/hip_v3.ckpt
wget https://huggingface.co/andreasburger/hip/resolve/main/ckpt/hip_v3.yaml -O ckpt/hip_v3.yaml
wget https://huggingface.co/andreasburger/hip/resolve/main/ckpt/hip_v3_cf.ckpt -O ckpt/hip_v3_cf.ckpt
wget https://huggingface.co/andreasburger/hip/resolve/main/ckpt/hip_v3_cf.yaml -O ckpt/hip_v3_cf.yaml

Available checkpoints:

  • hip_v3.ckpt: latest HIP checkpoint with direct force prediction.
  • hip_v3_cf.ckpt: latest HIP checkpoint trained with conservative forces (model.direct_forces=False).
  • hip_v3.yaml and hip_v3_cf.yaml: saved model, optimizer, and training configs for the matching checkpoints.

Run a few forward passes (should take 30s)

uv run example.py

Setting up the HORM dataset for training

Our models are trained on the Hessian dataset for Optimizing Reactive MLIP (HORM).

The HORM dataset is hosted on Kaggle. Kaggle automatically downloads to the ~/.cache folder. If you want to use another location for the files, I recommend to set up a symbolic link to a another folder:

PROJECT = <folder where you want to store the dataset>
mkdir -p ${PROJECT}/.cache
ln -s ${PROJECT}/.cache ${HOME}/.cache

Now download the HORM dataset (25GB):

uv run scripts/download_horm_data_kaggle.py

Train HIP (around two to three days on a H100 GPU)

uv run scripts/train.py

# conservative forces
uv run scripts/train.py model.direct_forces=False

# reduce the batch size if you are running on a L40s or A100 with 40GB GPU RAM
# uv run scripts/train.py +extra=bz64

Transition state search

For the transition state search we followed the HORM paper and used ReactBench

Unfortunetly, the ReactBench code is a bit of a mess.

If I were to do this project again, I would use geodesic interpolation + Sella TS search + Sella IRC instead of ReactBench + pysisyphus + pyGSM as done in this paper:
https://www.nature.com/articles/s41467-024-52481-5
For that you would need to install:
https://github.com/virtualzx-nad/geodesic-interpolate
https://github.com/zadorlab/sella
and follow their workflow from here:
https://github.com/Quantum-Accelerators/quacc/blob/main/src/quacc/recipes/newtonnet/ts.py

Citation

If I can help you run the code or setup your own project, please email me at: <firstname>.<lastname>(at)mail.utoronto.ca

If you found this code useful, please consider citing:

@misc{burger2025hiphessian,
      title={Shoot from the HIP: Hessian Interatomic Potentials without derivatives}, 
      author={Andreas Burger and Luca Thiede and Nikolaj Rønne and Varinia Bernales and Nandita Vijaykumar and Tejs Vegge and Arghya Bhowmik and Alan Aspuru-Guzik},
      year={2025},
      eprint={2509.21624},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2509.21624}, 
}

The dataset and parts of the training code are based on the HORM paper, dataset, and code We thank the authors of from DeepPrinciple for making their code and data openly available.

About

HIP: Hessians with Interatomic Potentials

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages