本发明涉及一种基于强化学习的单一体系的分子生成方法及装置,属于分子生成预测。
背景技术:
1、目前,在化学分子研发领域,新分子的设计与生成一直是一项费时且艰难的任务,利用化学反应路径等传统方法从庞大的化学空间找寻新分子,往往会浪费研发人员大量的精力。
2、近年来,随着深度学习等ai技术的蓬勃发展,ai助力化学分子研发受到越来越多的关注,其为研发人员提供了新颖的创新思路和解决方案。ai技术的引入加速分子研发的过程,缩短开发周期,降低研发成本,为研发人员提供了更多的选择, 为化学分子研发带来突破性的进展。
3、但是,ai分子生成的瓶颈在于受到公开数据集的限制,导致产生分子的多样性难以脱离公开数据集的制约,然而产生脱离既有专利保护的新分子是分子发现最核心的任务,因此如何摆脱既有数据不足的瓶颈,以产生具有多样性且满足目标条件的新分子,是分子发现领域亟待解决的技术问题。
技术实现思路
1、为此,本发明提供一种基于强化学习的单一体系的分子生成方法及装置,解决传统技术无法摆脱既有数据不足的瓶颈,不能产生具有多样性且满足目标条件的新分子,导致新分子研发周期长的问题。
2、为了实现上述目的,本发明提供如下技术方案:基于强化学习的单一体系的分子生成方法,包括:
3、从公开数据库中收集分子表达式,对收集的所述分子表达式进行去重处理得到分子数据集;
4、对所述分子数据集通过原子替换的方式进行扩充,得到扩充数据集,对所述扩充数据集进行去重处理;
5、通过去重处理后的所述扩充数据集,对transformer模型进行预训练,得到预训练模型v1;对所述预训练模型v1进行强化学习处理,得到预训练模型v2;
6、对所述预训练模型v2进行微调处理,微调处理过程中定量挑选满足条件的分子参与到所述预训练模型v2的训练,得到微调处理后的预训练模型v3,通过所述预训练模型v3进行单一体系的新分子生成。
7、作为基于强化学习的单一体系的分子生成方法优选方案,对所述分子数据集通过原子替换的方式进行扩充过程中,使用br原子替代所述分子数据集中的smiles分子表达式中与c原子相连的h原子。
8、作为基于强化学习的单一体系的分子生成方法优选方案,通过去重处理后的所述扩充数据集,对transformer模型进行预训练,得到预训练模型v1的步骤包括:
9、将所述分子数据集中的smiles分子表达式编码为矩阵;
10、将编码矩阵输入transformer模型并得到分子编码输出;
11、利用交叉熵损失计算分子编码输出与正确smiles分子表达式间的损失值;并采用反向传播更新transformer模型参数;
12、当transformer模型经过若干轮次训练损失值趋于稳定时,保存当前transformer模型作为预训练模型v1。
13、作为基于强化学习的单一体系的分子生成方法优选方案,对所述预训练模型v1进行强化学习处理,得到预训练模型v2的步骤包括:
14、利用所述预训练模型v1生成当前批次的分子的smiles表达式;
15、按照设定的评分标准对生成的当前批次的smiles表达式进行评估打分;
16、将评估分数作为所述预训练模型v1的奖励对所述预训练模型v1的权重进行训练;
17、进行若干轮次迭代训练后,保存最后一轮的所述预训练模型v1作为预训练模型v2。
18、作为基于强化学习的单一体系的分子生成方法优选方案,设定的评分标准 score为:
19、;
20、式中,similarity代表生成分子的smiles表达式与单一体系中分子的相似性;当smiles有效时,score赋值为similarity相似度,无效时,score赋值为0;
21、利用交叉熵损失计算分子编码输出与正确smiles分子表达式间的损失值的公式为:。
22、作为基于强化学习的单一体系的分子生成方法优选方案,对所述预训练模型v2进行微调处理的步骤包括:
23、将所述预训练模型v2的参数分别赋给agent模型和prior模型,使所述agent模型参与训练,更新所述预训练模型v2的参数,使所述prior模型梯度冻结不参与参数更新;
24、利用agent模型生成分子的smiles表达式,筛选满足设定条件的smiles表达式,当数量满足设定阈值时,停止生成;并通过prior模型生成同等数量的smiles表达式;
25、将所有生成的smiles表达式汇总,然后输入agent模型和prior模型,分别得到agent模型的输出和prior模型的,并利用agent模型的输出和prior模型的输出构建损失函数;
26、对损失值取均值,并采用反向传播更新所述预训练模型v2的参数,当所述预训练模型v2经过训练损失值趋于稳定时,保存当前模型作为预训练模型v3。
27、作为基于强化学习的单一体系的分子生成方法优选方案,利用agent模型的输出和prior模型的输出构建的损失函数的公式为:
28、;
29、式中,为agent模型计算出的smiles表达式的损失值;为prior模型计算出的smiles表达式的损失值。
30、本发明还提供一种基于强化学习的单一体系的分子生成装置,包括:
31、原始数据获取模块,用于从公开数据库中收集分子表达式,对收集的所述分子表达式进行去重处理得到分子数据集;
32、数据扩充模块,用于对所述分子数据集通过原子替换的方式进行扩充,得到扩充数据集,对所述扩充数据集进行去重处理;
33、第一模型训练模块,用于通过去重处理后的所述扩充数据集,对transformer模型进行预训练,得到预训练模型v1;
34、第二模型训练模块,用于对所述预训练模型v1进行强化学习处理,得到预训练模型v2;
35、第三模型训练模块,用于对所述预训练模型v2进行微调处理,微调处理过程中定量挑选满足条件的分子参与到所述预训练模型v2的训练,得到微调处理后的预训练模型v3;
36、分子生成模块,用于通过所述预训练模型v3进行单一体系的新分子生成。
37、作为基于强化学习的单一体系的分子生成装置优选方案,所述原始数据获取模块中,使用br原子替代所述分子数据集中的smiles分子表达式中与c原子相连的h原子;
38、所述第一模型训练模块包括:
39、编码处理子模块,用于将所述分子数据集中的smiles分子表达式编码为矩阵;
40、编码输出子模块,用于将编码矩阵输入transformer模型并得到分子编码输出;
41、损失值计算子模块,用于利用交叉熵损失计算分子编码输出与正确smiles分子表达式间的损失值;并采用反向传播更新transformer模型参数;
42、第一模型保存子模块,用于当transformer模型经过若干轮次训练损失值趋于稳定时,保存当前transformer模型作为预训练模型v1。
43、作为基于强化学习的单一体系的分子生成装置优选方案,所述第二模型训练模块包括:
44、表达式生成子模块,用于利用所述预训练模型v1生成当前批次的分子的smiles表达式;
45、表达式评分子模块,用于按照设定的评分标准对生成的当前批次的smiles表达式进行评估打分;
46、奖励训练子模块,用于将评估分数作为所述预训练模型v1的奖励对所述预训练模型v1的权重进行训练;
47、第二模型保存子模块,用于进行若干轮次迭代训练后,保存最后一轮的所述预训练模型v1作为预训练模型v2;
48、所述表达式评分子模块中,设定的评分标准 score为:
49、;
50、式中,similarity代表生成分子的smiles表达式与单一体系中分子的相似性;当smiles有效时,score赋值为similarity相似度,无效时,score赋值为0;
51、利用交叉熵损失计算分子编码输出与正确smiles分子表达式间的损失值的公式为:。
52、作为基于强化学习的单一体系的分子生成装置优选方案,所述第三模型训练模块包括:
53、模型赋参子模块,用于将所述预训练模型v2的参数分别赋给agent模型和prior模型,使所述agent模型参与训练,更新所述预训练模型v2的参数,使所述prior模型梯度冻结不参与参数更新;
54、中间生成子模块,用于利用agent模型生成分子的smiles表达式,筛选满足设定条件的smiles表达式,当数量满足设定阈值时,停止生成;并通过prior模型生成同等数量的smiles表达式;
55、损失构建子模块,用于将所有生成的smiles表达式汇总,然后输入agent模型和prior模型,分别得到agent模型的输出和prior模型的,并利用agent模型的输出和prior模型的输出构建损失函数;
56、参数更新子模块,用于对损失值取均值,并采用反向传播更新所述预训练模型v2的参数;
57、第三模型保存子模块,用于当所述预训练模型v2经过训练损失值趋于稳定时,保存当前模型作为预训练模型v3;
58、所述损失构建子模块中,利用agent模型的输出和prior模型的输出构建的损失函数的公式为:
59、;
60、式中,为agent模型计算出的smiles表达式的损失值;为prior模型计算出的smiles表达式的损失值。
61、本发明具有如下优点:从公开数据库中收集分子表达式,对收集的所述分子表达式进行去重处理得到分子数据集;对所述分子数据集通过原子替换的方式进行扩充,得到扩充数据集,对所述扩充数据集进行去重处理;通过去重处理后的所述扩充数据集,对transformer模型进行预训练,得到预训练模型v1;对所述预训练模型v1进行强化学习处理,得到预训练模型v2;对所述预训练模型v2进行微调处理,微调处理过程中定量挑选满足条件的分子参与到所述预训练模型v2的训练,得到微调处理后的预训练模型v3,通过所述预训练模型v3进行单一体系的新分子生成。本发明显著提高了满足生产要求的新分子的发现效率,大大缩短化学领域内实验室新分子研发的周期。