目录

AMS软件:ParAMS训练ReaxFF力场

​一、多尺度全功能的材料与化学模拟平台 AMS

AMS 是一款历史悠久而又迅速发展的多尺度全功能的材料与化学模拟平台,目前包括以下功能与应用:

进一步了解,请参考 AMS 的详细介绍(链接)。

二、ReaxFF 力场、机器学习势、DFTB 参数的训练工具 ParAMS

AMS 软件最近几年在参数训练方面发展迅速,AMS2024 版的 ParAMS 功能正式完善。

支持导入 ADF、BAND、Quantum Espresso 生成的 DFT 训练集,并方便地从作业中生成键长、能量、电荷、力、Hessian、应力张量、频率、势能面扫描数据,丰富训练集、验证集,甚至可以导入实验数据作为训练集。不仅仅支持训练 ReaxFF 力场,训练 DFTB 的GFN1-xTB、机器学习势 M3GNet 与 NequIP、Lennard Jones 势也大同小异。 训练方法包括:CMAES、Adaptive Rate Monte Carlo、Nevergrad、Scipy、Random Sampling、Grid Sampling。

在训练时,训练集的权重,对训练质量有非常强的影响,ParAMS 能够通过参数敏感度的计算,便于用户衡量需要优化的力场参数、以及训练集的权重。

目前我们提供了完善的训练教程,通过不同的训练方式,展示参数训练时的各方面的功能。

三、训练的工作思路

使用 DFT 方法,计算相关的体系的各种键长、键角等不同结构下的情况,包括能量、原子电荷、力等,导入 ParAMS 中,作为参考数据,俗称训练集。用户设定好一个初始力场,然后就可以使用 ParAMS 的训练算法,对力场进行训练,得到不同的力场。最终得到一个所谓损失函数最小的力场,就是最佳结果。损失函数,是描述力场计算这些体系,与 DFT 计算这些体系的差异的一个数值,它考虑了各个样本的权重。

在训练前,用户也可以根据自己的理解,选择力场中需要训练的参数,并通过 ParAMS 计算一个叫做敏感性的数值。这个数值描述力场参数跟训练集的相关性程度,用户训练时,可以只训练敏感性比较大的参数,敏感度非常小的参数,可以忽略掉,不去训练。并且真正训练时,也可以先训练敏感度最大的少数参数,收敛后固定这些参数,再去训练敏感度稍小一些的参数,这样能够更高效地得到一个优质的力场。

训练过程中,ParAMS 能够实时显示损失函数随训练而逐渐减小的过程,也能显示力场与DFT之间的误差分布点线图。最终会输出一个力场文件,用户可以直接拿来用于 ReaxFF 的计算。

四、ParAMS 训练教程

以下教程,用不同的例子,从不同的角度,讲解训练力场。包括训练DFTB参数的例子用到的知识,也一样可以借鉴到训练反应力场,因此这里将该案例也列入了,请按顺序阅读。注意,这些例子绝不是为了说明仅仅用一两个训练集就能训练出来一个力场,而只是采用简化的例子,以便于更清晰的展示训练力场的背后逻辑、软件使用方法。真正去训练力场,需要大量的训练集,几百个甚至几千个。

而为了更好的改进训练得到的力场,建议生成的训练集,要统计归类详尽的描述清楚,便于后续清晰的知道用了哪些训练集,从而更好的调整训练集

根据这些教程,去完成训练过程,从技术上并不困难。真正的技术、含金量,是中途得到一个力场,用于ReaxFF模拟时,用户发现在某些方面表现的不错,另外一些方面表现的不好,此时应该如何调整训练集或者增加训练集?这是一个反复训练、测试的过程。

五、视频讲解

请按顺序阅读:

六、如何引用

使用ParAMS必引:

2023及早期版本,还需要引用:

进行敏感度计算,还需要引用:

七、ParAMS 发表的文章

由于该功能刚发布,因此目前文章数目不多。后续发表的文章,被我们搜索到,或用户提供给我们,将在该链接更新:ParAMS相关文章列表

八、AMS2024 其他非常有趣的功能