Generative AI Models for Drug Discovery:有关药物分子生成的深度学习模型(综述类文章)| RNN, VAE, GAN, 强化学习RL

1 Introduction

(1)背景
新药的研发既需要较长的时间,也需要较高的成本。于研究人员来说,在合理的时间内 从大量可合成化合物中 找到最有希望的 候选化合物 仍然是一个挑战。因此可以借助AI分子生成模型。
(2)目的
作者回顾了一些AI分子生成模型,并讨论每种模型的优缺点。同时,作者描述了如何将强化学习(RL)算法应用于生成式人工智能,以便在 更好地利用分布式硬件 的同时 获得更真实的效果。

2 分子生成的简单模型:RNN

(1)工作流

在这里插入图片描述

图为RNN分子生成模型的工作流:
①将分子转化为SMILES串;
②使用one-hot coding和embedding来处理字符串,把它们拼接起来;
③然后将它们输入到RNN模型中,得到SMILES串;(可理解为:RNN来预测要生成的下一个原子或者化学键是啥)
④最后将SMILES串变回分子。
在以上过程中学习模型参数,对某一部分进行改变即可得到新分子。
在此模型中,分子被视为序列串,生成分子的任务被转换为生成特殊序列。由于输入和输出都是序列,此类相关序列模型被称为“seq2seq”。

(2)缺点:

① SMILES串非唯一表示,相同的分子结构可以转换成许多SMILES串,如工作流图左下部分;

② seq2seq模型通常关注序列的顺序,因此对一些RNN分子生成模型,它们可能只学习SMILES语法规则,而不是分子结构的知识。

③SMILES串的目的是将分子结构压缩成一维字符串,而不是捕捉分子的相似性,因此具有相似化学结构的分子可以被编码成非常不同的SMILES字符串,如下图。

在这里插入图片描述

在这个图中,两个分子的化学结构是比较类似的,但它们被编码成的SMILES串完全不同,因此无法表示它们的化学多样性

3 高级人工智能生成模型

(1)VAE

在这里插入图片描述

基于变分自动编码器的模型,图为VAE的总体结构。
总体来看,
①编码器接收分子并在隐空间中 产生概率分布
②而解码器则在隐空间中获取点并返回生成的分子。
对于一个分子来说,
①在Encoder部分进行降维,得到分子的主要成分;编码器会在隐空间中产生概率分布,这个分布是与隐空间 维数相同 的 高斯分布,编码器产生这些高斯分布的参数(均值μ,方差σ)
②用重参数技巧 来训练VAE:从(0,I)标准正态分布 中采样,然后和 训练样本 训练得到的μ和σ,做μ + σ* N(0,I),运算的结果z输入到解码器网络(点乘符号表示每个元素位置上的相乘)
③最后Decoder产生一个分子
而CVAE就是通过控制某个变量实现生成 某一类图像。在训练的时候,标签信息也提供给编码器和解码器了,也就是将 标签信息与从标准正态分布中采样的隐空间中的 随机点 一起送入解码器即可。

(2)GAN

①结构
在这里插入图片描述

基于生成式对抗网络的模型,图为GAN的总体结构:
① 对于一个任意分布q(x),取样输入到生成网络中,生成器生成一个分子
② 生成的分子被输入到鉴别器中,鉴别器判断它与真实分子之间的差异
③ 鉴别网络分别考虑他们真假的可能性
在整个过程中,GAN主要由生成网络与鉴别网络两个部分:
①生成网络负G责生成新的数据实例来欺骗鉴别网络D
②鉴别网络D负责把真的和生成的实例鉴别出来; 因此,G和D构成了一个相互博弈的过程。
最理想的结果是:G可以生成以假乱真的实例;D难以判断实例是真的还是假的,即D(G(z)) = 0.5。这样就得到了一个分子生成模型G。

②缺点:
A. GAN通常难以训练,需要仔细调整超参数;
B. 可能会产生模式崩溃的问题;
C. 训练过程比较缓慢,而且不可预测。

模型的参数通常是模型自己训练得到的,如神经网络的权重和逻辑回归中的系数;
超参数一般是训练过程中手动设置的,如learning rate。

(3)AAE

在这里插入图片描述

对抗式自动编码器AAE,主要有两部分组成,上半部分是自编码部分(AE),下半部分是个GAN。AAE可以看作是AE与GAN的结合体。
①上半部分自编码器,将训练集X 通过 自编码器A E对其编码,生成一个潜在向量Z用于下一步的插值(这里假设 该变量 满足 概率分布q(z)),然后解码器会尝试对这个潜在向量Z进行解码,生成我们想要的分子。
②下半部分GAN,AE的Encoder部分相当于GAN的生成器,生成负样本;而p(z)是我们的目标分布,是正样本。
判别器D通过不断学习,预测输入的z来自于负样本(服从q(z)概率分布)还是正样本(服从预定义的p(z)概率分布);
如果传入具有所需分布(真实值)的随机输入,则鉴别器应该输出1;如果传入编码器输出时,鉴别器应该输出0。
GAN的作用就是让 编码器得到的向量 服从人为设定的分布p。

4 基于强化学习的模型

①基本思想:通过Agent与环境的不断交互,通过一些奖赏机制来使Agent逐渐学习出一条最优的决策。
②模型的基本架构:
在这里插入图片描述

智能体agent通过 一套策略 将一个动作action作用到环境environment,环境将状态值state和奖励值reward反馈给agent,同时环境会移到下一个状态。
如此不断循环,最终找到一个最优策略,使agent可以获得更多的来自环境的奖励。

(1)REINVENT

方法:
①训练一个简单的基于RNN的生成模型;
②将预训练的RNN模型作为environment(prior),并复制一份作为agent(target);
③将logP、QED等指标作为reward function
缺点:
①environment(prior)与agent(target)相同,需要prior network是高质量的,否则模型可能失效。
②由于prior network是基于RNN的模型,因此具有之前提到的RNN模型的所有缺点。
③训练过程复杂,难以生成100%有效的SMILES串

如果prior network无法生成感兴趣的分子,那么agent也可能失败

(2)ReLeaSE

创新点:
①用马尔科夫决策过程MDP生成SMILES串
②由全连接网络(FCN)组成的预测模型作为reward function

缺点:
与REINVENT一样,训练过程复杂,难以生成100%有效的SMILES串

Markov Property马尔科夫性质:当前状态决定未来 即 P(St+1 | St,St-1,St-2…) = P(St+1 | St)
MP(Markov process马尔科夫过程):具有马尔科夫性质的随机过程
MDP(Markov decision process马尔科夫决策过程):具有一步动态性,即在考虑下一个时间 t+1 的 state 和 reward 时,只考虑当前时间 t 的 state 和 action 的影响
预测模型是经过预训练的,ReLeaSE的性能主要取决于预测网络和生成网络

(3)Molecule Deep Q-Networks(MolDQN)

创新点:
①通过直接定义原子 或 添加、删除化学键 对分子进行操作,从而保证生成的分子具有100%的化学有效性;
②不需要在训练集上进行训练即可运行,避免了选择数据集时 出现偏差的可能。

缺点:
①效率低,因为对分子的操作只有添加原子、添加化学键、删除化学键这三种;
②尽管所有生成的分子都具有化学意义,但它们可能太难合成,而且药物性质较差。

不需要训练集,只需要先验知识(如原子价态)

(4)advanced deep Q-learning network with fragment-based drug design (ADQN-FBDD)

基于片段的药物设计(ADQN-FBDD)的深度Q学习网络
模型解读:
①在这个模型中,agent将t时刻的state和action传给environment;environment产生t+1时刻的state和reward传给agent,同时environment会转移到下一个状态。如此不断循环,直到找到一个最优的策略。
②模型中间,是DQN 算法的一部分, Experience Replay Store经验回放存储,将 系统探索环境 得到的 数据 储存起来,然后随机采样 样本,更新深度神经网络的参数。

创新点:
①通过添加碎片来创建分子
②生成的分子更像药物,因为分子是使用 化学反应的规则 和 结合位点的 3D信息 创建的。因此,ADQN-FBDD模型 可以有效地探索特定目标的化学空间。
在这里插入图片描述

在reward function的指导下,agent择有利片段添加到当前状态的正确位置

5 结论

文章讲述了人工智能分子生成模型的发展现状:
(1)简单的RNN是适度有效的分子生成模型;
(2)VAE、GAN、AAE遵循变分推理的方法;
(3)基于强化学习的模型可以执行分布式计算,减少了训练时间,但模型容易受到分子表示质量的影响。

  • 5
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值