Scripts and networks for "Electronic Structure Machine Learning Surrogates without Training"
收藏Mendeley Data2023-04-14 更新2024-06-27 收录
下载链接:
https://b2share.eudat.eu/records/436e1e79daa54436a7703340431b4e19
下载链接
链接失效反馈官方服务:
资源简介:
# Scripts for "Electronic Structure Machine Learning Surrogates without Training" This repository contains scripts to reproduce the results of the publication "Electronic Structure Machine Learning Surrogates without Training". Training data has to be downloaded separately. ## DISCLAIMER These scripts were developed and used in a phase of active software development of MALA. Despite being tested, the authors cannot guarantee that using the most recent version of MALA as of writing this README (see requirements) will work without problems. Should problems arise, please do not hesitate to contact the MALA developers. ## Requirements numpy >= 1.20.1 mala >= 1.0.0 ## Contents All folders relating to network training (subfolders of `hyperparameter_optimization_Al256` and the folder `SNAP_analysis_Be128`) will contain three folders relating to the network training: - `weights`: Network weights - `params`: Parameters used for training - `results`: Predictions and actual values of total energies/band energies ### "hyperparameter_optimization_Al256": Hyperparameter optimization comparison for an aluminium supercell This subfolder contains the scripts used for the hyperparameter optimization comparisons. Please note that the training/test of networks was done multiple times, and only the sample scripts are shown here, i.e., the parallelization over the network initializations is not given (and was done using a simple bash script). Each individual hyperparameter optimization technique subfolder contains (at least): - hyperopt.py for the hyperparameter optimization - training.py for the training of a single network - test.py for testing of a single network Further, please note that some hyperparameter optimization techniques required more debugging then others, and so you will find the checkpoint IDs sometimes as "hyperopt01", but also as "hyperopt08". For the comparison of snapshot selection vs. network initialization the "direct_search" scripts have been used, with the network initialization being fixed via "parameters.manual_seed = ...". Parameters/network weights are denoted by runXX (with XX=1...5) and, where it applies, snapYY (YY=0,2,4,6,8). ### SNAP_analysis_Be128: SNAP descriptor surrogate metric With the scripts in this subfolder input data generation for the ACSD analysis as well as the analysis itself can be performed. ### LDOS_analysis_Be128: LDOS quality analysis The script(s) in this subfolder show how the LDOS of a system can be analyzed.
# 《无需训练的电子结构机器学习替代模型》配套脚本
本仓库包含用于复现论文《无需训练的电子结构机器学习替代模型》实验结果的脚本。训练数据需另行下载。
## 免责声明
本脚本基于MALA处于活跃软件开发阶段时开发并使用。尽管已经过测试,但作者无法保证本文档编写时(详见依赖要求)使用MALA的最新版本可无故障运行。若遇问题,请随时联系MALA开发团队。
## 依赖要求
numpy >= 1.20.1
mala >= 1.0.0
## 项目内容
所有与网络训练相关的文件夹(`hyperparameter_optimization_Al256`的子文件夹以及`SNAP_analysis_Be128`文件夹)均包含三个与网络训练相关的子目录:
- `weights`:网络权重文件
- `params`:训练所用参数文件
- `results`:总能量/能带能量的预测值与真实值
### `hyperparameter_optimization_Al256`:铝超胞的超参数优化对比
该子目录包含用于超参数优化对比的脚本。请注意,网络的训练与测试过程曾多次重复执行,此处仅展示示例脚本,即未提供网络初始化的并行化方案(该并行化通过简易bash脚本实现)。
每个对应特定超参数优化技术的子文件夹至少包含以下文件:
- `hyperopt.py`:用于执行超参数优化
- `training.py`:用于训练单个网络
- `test.py`:用于测试单个网络
此外,部分超参数优化技术需要更多调试工作,因此部分检查点ID会被命名为`hyperopt01`,也有部分为`hyperopt08`。针对快照选择与网络初始化的对比实验,本项目使用了`direct_search`相关脚本,并通过`parameters.manual_seed = ...`固定网络初始化参数。参数与网络权重以`runXX`命名(XX=1…5),若适用还会附带`snapYY`(YY=0,2,4,6,8)作为后缀。
### `SNAP_analysis_Be128`:SNAP描述符替代模型指标
该子目录下的脚本可用于生成ACSD分析所需的输入数据,并执行ACSD分析本身。
### `LDOS_analysis_Be128`:局域态密度(Local Density of States, LDOS)质量分析
该子目录下的脚本展示了如何对体系的局域态密度进行分析。
创建时间:
2023-02-17



