NepTrain专题

NepTrain结构扰动、描述符与最远点选样

真实运行扰动、NEP和SOAP描述符、PCA及UMAP,说明选样阈值的含义。

更新于 2026-11-07约 2 分钟阅读按任务与环境选择适用配置
阅读本篇目录

下载输入、模型、真实数据和短命令脚本(ZIP)。选样的目标是从候选结构中挑出描述符空间覆盖更广的少量构型,减少重复DFT。

1 初始化与扰动#

完成一次prepare后,可以单独学习工具:

bash initialize.sh
bash perturb.sh
ls templates-slurm

initialize.sh 实际生成shell、Slurm、PBS和Bohrium四种模板;本专题实际计算使用Slurm,生成其余模板不代表已经运行相应平台。模板目录已存在时无需再次生成。

扰动示例从Si8生成四个结构,晶胞相对扰动幅度0.01,笛卡尔位移幅度0.02 Å。扰动只产生几何结构,后面仍要DFT标注,不能把新坐标当作带有新能量和力的数据。

module load gpumdkit/1.5.8
NepTrain perturb --help
NepTrain select --help

本安装版 perturb --distance 实际控制每个笛卡尔方向的随机位移幅度,不是最小键长。select 的 min_distance 控制描述符空间距离,同样不是Å单位的原子距离;键长合理性由另一个周期结构过滤环节处理。

2 跟着比较描述符与降维#

bash select.sh
bash select-soap.sh
bash select-umap.sh

三个短入口分别演示NEP描述符+PCA、SOAP描述符+PCA、NEP描述符+UMAP。需要有相应模型时,脚本使用附件真实NEP权重。PCA和UMAP用于二维可视化;图上的远近不自动等于能量或力误差大小。

独立小工具例还把四个结构追加一次得到八帧,但只有四个不同几何结构,不能把文件中的八帧都说成新构型。

3 闭环里实际怎么选#

完整工作流将32个训练结构作为已有覆盖,从两条MD的40帧候选中,使用NEP描述符最远点采样选择四帧。最大数量4、描述符最小距离0.0,并启用周期原子距离过滤。

bash run.sh
cat analysis/neptrain-selected.csv
head analysis/neptrain-coverage.csv

真实描述符覆盖、最远点选样和四个入选构型

入选构型 所属轨迹 时间 / ps
600k-11 600 K 0.55
600k-5 600 K 0.25
600k-18 600 K 0.90
600k-9 600 K 0.45

四帧全部来自600 K,是对两个温度合并候选做全局FPS的实际结果。算法没有规定每个温度选几帧;若希望各温度都有配额,应分别选样,不能依赖全局数量自动均分。

覆盖图的PCA由32个训练结构及40个候选拟合,独立测试不参与。入选点再次高亮绘制,不是额外生成四个候选。

4 选样结果接下来做什么#

bash workflow.sh
bash status.sh
cat reference/four-new-DFT-labels.xyz

工作流把四个候选交给VASP,得到能量、力和virial,再并入训练。选样只描述几何特征覆盖,是否真正改善预测要看独立测试与补标结果。

需要根据你的体系选择资源?联系讨论计算需求。实际可用软件与权限,以当前账户和运行环境为准。

查看配图

放大后可滚动查看细节,按 Esc 关闭。

100%查看原图 ↗