机器学习力场模型的训练方法和相关设备与流程
发布日期:2024-08-22 浏览次数: 专利申请、商标注册、软件著作权、资质办理快速响应热线:4006-054-001 微信:15998557370
申请号: | 申请日: | ||
公开(公告)号: | 公开(公告)日: | ||
发明(设计)人: | 申请(专利权)人: | ||
主分类号: | 分类号: | ||
代理公司: | 代理人: | ||
地址: | 国省代码: | ||
权利要求书: | 说明书: | ||
微信咨询: | 添加微信:543646或【点此在线咨询】 | 文件下载: | 【点此下载】请正确填写本页网址和接收邮箱 |
摘要: | 本公开涉及计算机,更具体地说,涉及机器学习力场模型的训练方法和相关设备。、分子动力学(molecular dynamics,md)模拟是一种广泛应用于材料和生物系统的技术,它是一种模拟相互作用粒子系统运动的理论方法。机器学习力场(machine learningforce fields,m... | ||
相关服务: | 软件产品登记测试全国受理 软件著作权666元代写全部资料全国受理 实用新型专利1875代写全部资料全国受理 | ||
本公开涉及计算机,更具体地说,涉及机器学习力场模型的训练方法和相关设备。背景技术:1、分子动力学(molecular dynamics,md)模拟是一种广泛应用于材料和生物系统的技术,它是一种模拟相互作用粒子系统运动的理论方法。机器学习力场(machine learningforce fields,mlff)旨在用粒子位置描述md力场,可以通过提取粒子位置信息、粒子特征和空间特征来训练mlff模型,以预测每个粒子的能量(energy)和所受到的力(force)。然后,分子动力学仿真工具,例如大规模原子分子并行模拟器(large-scale atomic/molecularmassively parallel simulator,lammps),会使用预测出的粒子所受到的力来计算一个时间步后的粒子位置。2、仿真稳定是md仿真方法的一个重要目标,尤其是在长时间仿真中,当学习到的力场无法对采样不足的数据分布进行预测时,mlff模型可能会产生不稳定的预测结果。此时,仿真可能会进入非物理状态(non physical status),而这种状态在现实仿真中基本不可能发生,最终md仿真会以系统崩溃而告终。技术实现思路1、本公开提供机器学习力场模型的训练方法和相关设备,以至少解决上述相关技术中,机器学习力场模型的仿真不稳定的问题。2、根据本公开实施例的第一方面,提供一种机器学习力场模型的训练方法,包括:基于所述机器学习力场模型,获得与训练样本对应的边特征,其中,所述训练样本包含与多个原子有关的数据,所述边特征为与所述多个原子之间的边有关的特征;计算所述边特征对应的相关性损失;基于所述相关性损失,调整所述机器学习力场模型的参数。3、可选地,所述基于所述相关性损失,调整所述机器学习力场模型的参数,包括:基于所述相关性损失、与所述多个原子的受力对应的损失以及与所述多个原子的能量对应的损失,计算所述机器学习力场模型的总训练损失;根据所述总训练损失,调整所述机器学习力场模型的参数。4、可选地,还包括:根据所述机器学习力场模型已经训练的轮次,确定计算所述机器学习力场模型的总训练损失时所述相关性损失对应的权重;其中,所述基于所述相关性损失、与所述多个原子的受力对应的损失以及与所述多个原子的能量对应的损失,计算所述机器学习力场模型的总训练损失,包括:根据确定的所述相关性损失对应的权重以及所述相关性损失,计算加权相关性损失;基于所述加权相关性损失、与所述多个原子的受力对应的损失以及与所述多个原子的能量对应的损失,计算所述总训练损失。5、可选地,所述根据所述机器学习力场模型已经训练的轮次,确定计算所述机器学习力场模型的总训练损失时所述相关性损失对应的权重,包括:基于所述已经训练的轮次、针对相关性损失的预设初始权重、针对相关性损失的预设更新间隔,确定所述权重。6、可选地,所述与多个原子有关的数据包含所述多个原子的真实受力以及真实能量,所述训练方法还包括:基于所述机器学习力场模型,获得所述训练样本所包含的所述多个原子的预测受力和预测能量;基于所述多个原子中每个原子的预测受力和真实受力,计算与所述多个原子的受力对应的损失;基于所述多个原子中每个原子的预测能量和真实能量,计算与所述多个原子的能量对应的损失。7、可选地,所述基于所述机器学习力场模型,获得与训练样本对应的边特征,包括:将所述训练样本输入所述机器学习力场模型,获得与所述训练样本对应的、所述机器学习力场模型所包含的多个层中每个层的边特征矩阵,作为所述边特征;所述计算所述边特征对应的相关性损失,包括:计算所述每个层的边特征矩阵所包含的任意两个列向量之间的相关值,并基于所述相关值计算所述每个层的边特征矩阵对应的相关性损失;所述基于所述相关性损失,调整所述机器学习力场模型的参数,包括:基于与所述训练样本对应的所述多个层中每个层的边特征矩阵对应的相关性损失,调整所述机器学习力场模型的参数。8、可选地,所述基于所述相关值计算所述每个层的边特征矩阵对应的相关性损失,包括:基于所述相关值获取所述每个层的边特征矩阵对应的相关矩阵;基于所述每个层的边特征矩阵对应的相关矩阵以及预设对角矩阵,计算所述每个层的边特征矩阵对应的相关性损失。9、可选地,在调整所述机器学习力场模型的参数之后,还包括:获取针对所述机器学习力场模型进行仿真的仿真工具的仿真输出;基于所述仿真输出,计算所述机器学习力场模型的仿真稳定性指标的取值;和/或基于所述仿真稳定性指标的取值,输出所述机器学习力场模型的所述仿真稳定性指标的取值和/或所述机器学习力场模型的仿真稳定性的评估信息。10、可选地,所述仿真输出包含原子的仿真位置、原子的仿真数量以及仿真容器内的温度,所述仿真容器为容纳所述原子的容器;所述基于所述仿真输出,计算所述机器学习力场模型的仿真稳定性指标的取值,包括:基于所述仿真输出所包含的原子的仿真位置和原子的仿真数量,计算所述仿真中多个原子对中每个原子对的径向分布函数值,其中,所述原子对为任意两个所述原子组成的原子对;基于所述仿真对应的径向分布函数值、所述仿真输出所包含的原子的仿真数量、仿真容器内的温度、最开始仿真之前原子的初始数量,计算所述仿真稳定性指标的取值。11、可选地,所述获取针对所述机器学习力场模型进行仿真的仿真工具的仿真输出,包括:获取所述仿真工具连续进行的多步仿真中每步仿真的仿真输出;所述基于所述仿真输出,计算所述机器学习力场模型的仿真稳定性指标的取值,包括:基于所述多步仿真中每步仿真的仿真输出,计算所述仿真稳定性指标的取值;其中,所述每步仿真的仿真输出通过以下方式获得:将前步仿真的仿真输出输入训练完成的所述机器学习力场模型,获得原子受力情况,其中,所述前步仿真为所述每步仿真的前一步仿真;将所述原子受力情况输入所述仿真工具,获得所述每步仿真的仿真输出。12、根据本公开实施例的第二方面,提供一种机器学习力场模型的训练装置,包括:边特征获取模块,被配置为基于所述机器学习力场模型,获得与训练样本对应的边特征,其中,所述训练样本包含与多个原子有关的数据,所述边特征为与所述多个原子之间的边有关的特征;相关性损失计算模块,被配置为计算所述边特征对应的相关性损失;参数调整模块,被配置为基于所述相关性损失,调整所述机器学习力场模型的参数。13、可选地,所述参数调整模块被配置为:基于所述相关性损失、与所述多个原子的受力对应的损失以及与所述多个原子的能量对应的损失,计算所述机器学习力场模型的总训练损失;根据所述总训练损失,调整所述机器学习力场模型的参数。14、可选地,所述训练装置还包括:权重确定模块,被配置为根据所述机器学习力场模型已经训练的轮次,确定计算所述机器学习力场模型的总训练损失时所述相关性损失对应的权重;所述参数调整模块被配置为:根据确定的所述相关性损失对应的权重以及所述相关性损失,计算加权相关性损失;基于所述加权相关性损失、与所述多个原子的受力对应的损失以及与所述多个原子的能量对应的损失,计算所述总训练损失。15、可选地,所述权重确定模块被配置为:基于所述已经训练的轮次、针对相关性损失的预设初始权重、针对相关性损失的预设更新间隔,确定所述权重。16、可选地,所述与多个原子有关的数据包含所述多个原子的真实受力以及真实能量,所述训练装置还包括:预测模块,被配置为基于所述机器学习力场模型,获得所述训练样本所包含的所述多个原子的预测受力和预测能量;受力损失计算模块,被配置为基于所述多个原子中每个原子的预测受力和真实受力,计算与所述多个原子的受力对应的损失;能量损失计算模块,被配置为基于所述多个原子中每个原子的预测能量和真实能量,计算与所述多个原子的能量对应的损失。17、可选地,所述边特征获取模块被配置为:将所述训练样本输入所述机器学习力场模型,获得与所述训练样本对应的、所述机器学习力场模型所包含的多个层中每个层的边特征矩阵,作为所述边特征;所述相关性损失计算模块被配置为:计算所述每个层的边特征矩阵所包含的任意两个列向量之间的相关值,并基于所述相关值计算所述每个层的边特征矩阵对应的相关性损失;所述参数调整模块被配置为:基于与所述训练样本对应的所述多个层中每个层的边特征矩阵对应的相关性损失,调整所述机器学习力场模型的参数。18、可选地,所述相关性损失计算模块被配置为:基于所述相关值获取所述每个层的边特征矩阵对应的相关矩阵;基于所述每个层的边特征矩阵对应的相关矩阵以及预设对角矩阵,计算所述每个层的边特征矩阵对应的相关性损失。19、可选地,所述训练装置还包括:仿真输出获取模块,被配置为获取针对所述机器学习力场模型进行仿真的仿真工具的仿真输出;仿真稳定性指标计算模块,被配置为基于所述仿真输出,计算所述机器学习力场模型的仿真稳定性指标的取值;和/或输出模块,被配置为基于所述仿真稳定性指标的取值,输出所述机器学习力场模型的所述仿真稳定性指标的取值和/或所述机器学习力场模型的仿真稳定性的评估信息。20、可选地,所述仿真输出包含原子的仿真位置、原子的仿真数量以及仿真容器内的温度,所述仿真容器为容纳所述原子的容器;所述仿真稳定性指标计算模块被配置为:基于所述仿真输出所包含的原子的仿真位置和原子的仿真数量,计算所述仿真中多个原子对中每个原子对的径向分布函数值,其中,所述原子对为任意两个所述原子组成的原子对;基于所述仿真对应的径向分布函数值、所述仿真输出所包含的原子的仿真数量、仿真容器内的温度、最开始仿真之前原子的初始数量,计算所述仿真稳定性指标的取值。21、可选地,所述仿真输出获取模块被配置为:获取所述仿真工具连续进行的多步仿真中每步仿真的仿真输出;所述仿真稳定性指标计算模块被配置为:基于所述多步仿真中每步仿真的仿真输出,计算所述仿真稳定性指标的取值;其中,所述每步仿真的仿真输出通过以下方式获得:将前步仿真的仿真输出输入训练完成的所述机器学习力场模型,获得原子受力情况,其中,所述前步仿真为所述每步仿真的前一步仿真;将所述原子受力情况输入所述仿真工具,获得所述每步仿真的仿真输出。22、根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现根据本公开的机器学习力场模型的训练方法。23、根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行根据本公开的机器学习力场模型的训练方法。24、根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据本公开的机器学习力场模型的训练方法。25、本公开的实施例提供的技术方案至少带来以下有益效果:26、边特征相关性与mlff模型的仿真稳定性之间存在关系,因此,在本公开中,可以获取边特征对应的相关性损失,并可以基于该边特征对应的相关性损失对机器学习力场模型进行训练。这样,就可以实现尽可能的降低mlff模型训练中的边特征相关性,进而可以实现提高mlff模型的仿真稳定性。27、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。