Code for ICML 2024 Predicting and Interpreting Energy Barriers of Metallic Glasses with Graph Neural Networks
Metallic Glasses (MGs) are widely used materials that combine the traits of metals, plastics, and glasses. One important quantity that are believed to govern most of the important properties of MGs is energy barrier. To bolster the material science community's study of this important quantity, we propose noval GNN architectures that can accurately predicts it and also generates valuable explanations regarding why certain atomic sturctures are more important when deciding this quantity.
We integrate a noval symmetrization module to handle E(3)-invariance on top of a GNN message passing module.
The raw dataset can be found under the folder datasets/raw_data
, the script construct_graph.py
can be used to construct the dgl graphs consistent with the setting in the paper.
All models and baselines implementatition can be found in models.py
under models folder. We borrow the MGCN
, MPNN
, and SchNet
implementation from the DIG library.
The GNNExplainer is adopted from the DGL library. The training routine can be found in train.py
, and the model config can all be located in train.conf.yaml
.
- Train GNNs on the Energy Barrier Regression Task
python3 train.py --model_name='symgnn' --output_dir='./outputs/symgnn' --device=0 --console_log --log_level=10 --learning_rate=0.0001 --patience=100 --max_epoch=20000 --eval_interval=10
Comparing with other baselines and ablations, SymGNN shows supriority both in terms of prediction score and training speed.
We connect results from GNNExplainer with topological data analysis (TDA), building an important bridge in the study of energy barriers. We found that the high importance edges calculated by the GNNExplainer typically involved in more cycles when considering from a persistent homology perspective.