DeePMD专题

DeePMD 旧类型嵌入se_a_tpe训练与测试

列出实际模型输入,读取学习曲线与独立测试构型的能量受力误差。

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

本篇接着输入与环境准备,读取旧类型嵌入se_a_tpe的新训练结果。下载完整实例包。

1 打开完整训练输入#

cat inputs/se_a_tpe.json

实际model部分如下;完整文件还给出学习率、损失及训练/验证数据路径:

{
  "type": "standard",
  "type_map": [
    "N",
    "H"
  ],
  "descriptor": {
    "type": "se_a_tpe",
    "rcut": 3.0,
    "rcut_smth": 2.5,
    "sel": [
      4,
      8
    ],
    "neuron": [
      8,
      16
    ],
    "axis_neuron": 4,
    "resnet_dt": false,
    "precision": "float64",
    "seed": 600001,
    "type_nchanl": 4,
    "type_nlayer": 2
  },
  "fitting_net": {
    "type": "ener",
    "neuron": [
      32,
      32
    ],
    "resnet_dt": false,
    "precision": "float64",
    "seed": 600002
  }
}

type_nchanl=4是旧类型表示的通道数,type_nlayer=2是其嵌入层数;不是三体se_e3_tebd的参数别名。neuron=[8,16]和后面的fitting_net=[32,32]分别对应描述符嵌入与能量拟合。rcut=3、rcut_smth=2.5单位Å。

本例batch 4,训练12000步,起始学习率0.002、终值0.00001。总能量与力损失权重均为1,virial权重为0。力来自总能量对坐标的导数。固定NH₃化学计量下的总能量监督不能确定唯一的物理原子能量分解。

2 查看自己的误差表#

head -n 3 tables-new/model-results.csv

这里有自己新训练模型的一行结果;能量按4个真实原子归一,力为12个测试姿态中全部原子三方向的分量RMSE。本站P100与V10016G独立训练的实际结果如下:

实算设备 能量RMSE(eV/原子) 力RMSE(eV/Å)
P100 0.0003820 0.015810
V100 0.0003820 0.015810

heldout-energy-and-forces

不同设备从头训练的优化轨迹可能不同;后面的CPU/GPU检查会对比同一个权重,两种比较不要混淆。小样例只覆盖固定氨分子构型范围,不据此宣称通用反应势、解离精度或生产MD稳定性。

3 读取学习曲线#

head -n 6 new-work/p100-se_a_tpe/lcurve.out

V100运行时将目录前缀改为v100-。日志区分训练和验证误差,测试构型不参与优化;不要只看最后一个训练batch来判断模型能否外推。

native-learning-curves

4 查看本次作业摘要#

python3 code/summary.py

应看到1个新模型、12000次优化更新和新结果检查摘要,新量子化学调用为0。新的训练日志、测试预测与推断数组在new-work,附带参考在reference;两者分开保存。

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

查看配图

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

100%查看原图 ↗