DP-GEN专题

DP-GEN模型偏差与候选筛选

读懂model_devi.out,运行原生比较工具,并区分委员会分歧、DFT误差与NPT稳定性。

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

下载完整输入、教学模型、实算数据和操作脚本(ZIP)。本篇沿用完整循环中的四模型委员会,也可直接使用下载包中的参考模型和轨迹。

1 查看偏差文件#

head reference/md/task.000.000000/model_devi.out
head analysis/model-deviation.csv

原生文件的表头说明列含义,包括步数和virial、力的最大/最小/平均分歧。max_devi_f 是同一原子上各模型力分量的总体标准差合成三维模长,再对所有原子取最大值;不是模型预测力本身,也不是相对于DFT的误差。

对四模型预测力 F,先对模型轴计算总体标准差(分母为模型数,不是模型数−1),再对x/y/z合成。附件 compare_models.py 保留了具体计算,便于核对原生工具和LAMMPS输出的含义。

2 用多少阈值选候选#

{
  "model_devi_f_trust_lo": 0.001,
  "model_devi_f_trust_hi": 0.5,
  "fp_task_max": 4,
  "fp_task_min": 1
}
本例分组 偏差范围(eV/Å) 实际帧数
低分歧 小于0.001 0
候选 0.001至小于0.5 43
高分歧 大于等于0.5 1

这是为展示筛选而选的教学阈值,不是Si或其他材料的通用推荐值。四个新标签来自候选集合;超过上限的一帧没有因为“分歧最高”就自动成为可靠训练样本。

44帧实际偏差、阈值与最终选中结构

head analysis/selected-labels.csv
cat configs/param.json

每条候选的原始任务和MD步数都在数据表中。标注任务编号会经筛选排序,不能把第一个候选文本行直接当成第一个DFT任务。

3 实际运行原生model-devi工具#

bash compare.sh
bash status.sh

compare.sh 会通过Slurm计算十二个固定构型:四个MD任务各取第0、25、50步。它同时执行原生 dp --tf model-devi 和四个DeepPot推断,再用独立公式核对偏差。

cat work/model-devi-check/native-cli-devi.out
cat work/model-devi-check/RESULTS.json
cat compare_models.py

本集群P100与V10016G分别实跑;相同十二帧下,独立计算与原生LAMMPS的最大偏差差约4.87×10⁻⁸ eV/Å。下载包的短入口会申请其中一种匹配资源,不要求用户手动切换多个环境。

原始轨迹默认坐标只有六位有效数字,对截断后的坐标重新推断会与MD内部全精度坐标产生差别。附件另存独立的16位坐标输出对照,保持模型、初态和MD参数相同;两套44帧原生偏差完全一致。原轨迹和高精度对照分别保存,不把低精度文件改写成高精度“原始数据”。

4 偏差小,也可能一起预测错#

四个相似模型可能共同偏离DFT。判断可用性至少要分别看:独立测试能量/力/应力误差;探索结构是否进入训练分布之外;目标系综的稳定性。委员会分歧不能代替上述任意一项。

提高virial训练权重后的完整误差与NPT曲线

为了说明应力训练的影响,另做一项原生训练和50步NPT对照:只把virial损失的起止权重改为10,其余模型、初始训练数据和1000步训练设置保持相同。

独立测试指标 原模型0 virial权重10
能量RMSE(meV/atom) 125.27 42.47
力RMSE(eV/Å) 0.2440 0.3280
应力RMSE(GPa) 15.7538 0.7323

应力和能量变好,力变差;体积漂移从116.6%减到18.9%,依然不能用于平衡体积计算。应按目标物性平衡数据与损失权重,不能只挑改善的一列报告。参考表保留全部指标和曲线。

cat analysis/virial-weight-metrics.csv
head analysis/virial-weight-NPT.csv
ls models

附件中的九个 .pb 都来自实际训练:第一轮四个、再训练四个、一个权重对照。它们用于复现流程和理解误差,不作为生产级Si势发布。

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

查看配图

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

100%查看原图 ↗