作者/编辑 | 王建民
导读
药物发现工作中可用于训练计算模型的数据集通常很少。标记数据的稀疏可用性是人工智能辅助药物发现的主要障碍。解决该问题的一种方法是开发可以处理相对异构和稀缺数据的算法。迁移学习是一种机器学习方法,可以利用其他相关任务中现有的,可推广的知识来学习带有少量数据的单独任务。深度迁移学习是药物发现领域最常用的迁移学习模型。本文概述了迄今为止转移学习和药物发现的相关应用。此外,它为药物发现转移学习的未来发展提供了前景。
1
简介
药物发现和开发的过程耗时长、成本高、失败率高。从一期到药物上市的临床失败率超过90%,而推进一个新的治疗处方到上市审批的相关成本估计高达28亿美元,大约需要11-16年。许多计算方法被提出来降低临床失败率。早期的定量构性关系(QSAR)模型利用回归模型来寻找分子描述符和生物特性之间的联系。机器学习方法(支持向量机算法和决策树)已被应用于药物发现任务中(如类药物分类和吸收、分布、代谢、排泄和毒性性质的预测)。近年来,深度学习这一新兴的人工智能(AI)技术的实施,加速和改善了药物发现过程,并在分子性质和活性预测、虚拟筛选、逆转录分析和分子生成等应用中取得了令人瞩目的成果。与传统的 "浅层 "机器学习方法相比,深度学习采用的是具有多个隐藏层的深度神经网络,可以表示和学习更复杂的知识。大数据通常指的是具有量大、种类多、速度快(即数据集的更新频率是实时的)、穷尽性(即有足够的数据来捕捉整个系统的特征,而不是样本)、价值大(即可以提取很多洞察力,数据可以重新利用)等特点的数据集。这些特点使得传统的软件或方法很难或无法处理大数据。机器学习方法尤其是深度学习的性能很大程度上取决于训练数据的大小。在有限的假设类中,较大的样本量会产生更准确的模型。然而,在药物发现过程的每个阶段,标记数据的规模都很小,通常从十到几万不等。因此,药物发现研究产生的数据量通常不会很 "大",因为标签数据的产生需要耗时且昂贵的实验。因此,标签数据的稀缺性是深度学习辅助药物发现使用的主要限制。相比之下,迁移学习是一种机器学习技术,它是通过利用相关数据集所包含的知识来解决数据稀缺的问题而提出的。迁移学习已被用于解决计算机视觉、自然语言处理和药物发现等许多领域的低数据任务。
2
迁移学习(Transfer Learning)
NeurIPS 95年的会后研讨会上讨论了迁移学习学习的基本动机和潜在的好处,题为 "学会学习:归纳系统中的知识巩固和迁移",探讨了如何利用以前学到的知识来促进未来的学习任务。那次研讨会上,探讨了如何设计一个能够转移知识的计算机程序的概念。从那时起,迁移学习逐渐成为学术界和工业界的一个话题。相关的创新算法,如终身学习、归纳迁移、多任务学习、元学习、持续学习等都被提出并应用。然而,迁移学习并没有一个明确的定义,直到2010年,Yang等人对转移学习及其相关概念进行了权威的定义。迁移学习(transfer learning)通俗来讲,就是运用已有的知识来学习新的知识,核心是找到已有知识和新知识之间的相似性。在迁移学习中,我们已有的知识叫做源域(source domain),要学习的新知识叫目标域(target domain),源域和目标域不同但有一定关联,我们需要减小源域和目标域的分布差异,进行知识迁移,从而实现数据标定。
迁移学习的方法总可以分为四类:基于实例、基于特征、基于参数和基于关系。不同类别的方法可以进行组合,以达到更好的性能。
3
深度迁移学习(Deep Transfer Learning)
深度迁移学习(DTL,Deep Transfer Learning )是深度学习架构和迁移学习的结合。目前大多数的迁移学习应用都采用了DTL技术。最常见的DTL技术之一是微调,它是一种基于参数的迁移学习。通过利用深度神经网络中与神经元之间的连接相关的学习参数(权重)包含学到的有用信息,通常可以通过将这些参数(权重)迁移到目标模型中,以更好的性能解决相关目标问题。例如,在分子生成模型中,通常在ChEMBL这样的大数据集上预训练模型,然后在特定的目标数据集上用小数据对模型进行微调,以生成特定的功能分子。从第一个模型中得到的参数作为第二个模型的初始化。Jason Yosinski等人进行了一项关于微调卷积神经网络(CNN)的计算实验,CNN是一种常用于图像识别的神经网络。该研究表明,迁移参数初始化比随机参数初始化更好。
由于深度神经网络具有强大的特征学习能力,因此也可以应用于基于特征的迁移学习。基于特征的方法利用深度神经网络作为特征变换器,找到一个共同的潜在特征空间,源数据和目标数据可以处于相同的概率分布。因此,源数据可以作为目标数据在潜特征空间中的训练集,有助于提高模型对目标数据的性能。例如,在传统的机器学习模型中,两个具有不同终点的分子数据集(如毒性和生物活性)属于两个独立的任务,因此通常需要两个不同的模型来学习这两个任务。如果预测毒性的任务具有稀疏的数据,活性数据集就不能直接用于训练毒性预测模型。但是,DTL可以将这两种数据转化为存在于同一个潜在特征空间中,两个数据集处于相同的分布。那么,活性数据就可以作为一个更大的训练集,在潜在特征空间中进行毒性预测。有两种常见的方法可以获得深度神经网络所需的领域不变量特征。一种是基于差异的方法,在训练过程中减少和潜在特征空间的差异。另一种是基于对抗性的方法,这是一种很有前途的方法,可以在不同的域中生成复杂的样本。这些方法在神经网络中增加了域分类器,可以对数据来自哪个域进行分类。深度神经网络被训练成学习一个能骗过领域分类器的特征表示。这是一个对抗性的目标,因为领域分类器被期望是准确的,但学习的特征表示却被期望能骗过领域分类器。因此,网络得到的变换特征不能区分两个域。基于对抗式的迁移学习方法由于不需要使用默认的距离函数,并且表现出了优异的性能,因此近年来很受欢迎。
4
药物发现中的迁移学习
迁移学习最早是在20世纪90年代提出的,但首次应用于药物发现是在2010年。直到过去几年深度迁移学习方法被提出并应用于药物发现,才引起人们的重视。迁移学习主要应用于药物发现的三个方面:分子性质和活性预测、分子生成和基于结构的虚拟筛选。
预测分子活性或性质
药物发现中最常见的任务之一是预测分子的活性或特性,包括生理特性、生物物理特性、物理化学特性和量子力学(QM)特性。这些性质的预测在药物发现中起着重要作用。例如,属于生理属性的严重毒性可能会导致临床试验失败或批准的药物退出市场。描述生物物理特性的基准数据集包括MUV,HIV,PDBbind和BACE,物理化学特性和QM特性分别对应原子级和电子级特性。它们的常用数据集分别是FreeSolv和QM9。基于深度学习的人工智能方法已经被证明是与分子性质和活性预测相关任务的强大工具。Korotcov等人在8个数据集上评估了DNN和其他5种传统的机器学习方法用于药物研究中的活性预测。他们发现当根据7个指标的平均得分进行比较时,DNN优于其他方法。
为了解决深度学习在小数据情况下的不足,迁移学习被应用于分子性质预测和活性预测。Girschick等人首次将距离学习和归纳迁移结合起来执行QSAR任务,发现结合的方法在大数据集和小数据集上都表现良好。虽然该研究不是针对低数据问题设计的,但它确实证明了迁移学习对于小数据集的潜在价值。在分子活性和性质的预测中,最常用的DTL方法是微调。对于QM性质预测,Smith等人在ANI-1数据集的大的、较低精度的密度函数论(DFT)数据(5M)上训练了一个神经网络,然后在较小的数据集(500K)上进行微调,在耦合簇的高精度水平上,考虑单、双、扰三激发(CCSD(T))/完全基集(CBS)极限。他们的研究表明,迁移学习方法在GDB-10t基准上实现了约20%的预测精度误差降低。他们还在分子扭转基准上成功测试了迁移学习网络。同样,Lu等人将微调策略应用于深度张量神经网络(DTNN)上,将知识转移到更精确的分子能量预测和构象分析上。除了提高预测精度,他们发现微调还减少了训练时间。除了监督学习,一些弱监督或无监督的方法也被开发出来用于分子性质的预测。对于可转移性质预测,Goh等人提出了ChemNet,一个在ChEMBL数据上预训练的CNN,并利用Tox21、HIV和FreeSolv数据进行微调,结果表明,微调比单独使用ChemNet有显著改进。总之,微调可以很好地适用于各种网络架构,包括NN、CNN和LSTM。
迁移学习可以通过借用较大的源数据集的知识,提高小数据集中分子性质和活性的预测,从而提高模型的准确性和训练时间。但对于归纳迁移学习问题,如毒性数据集和药物副作用数据集之间的知识迁移,则不太适合。在选择应用迁移学习之前,应仔细考虑任务相关度。
分子生成
分子生成的目的是利用生成模型来创建具有特定性质的类药分子,这一过程与新药设计密切相关。如果分子生成能够为靶点定义完美的分子,那么它就可以取代de novo药物设计。微调是分子生成中最常用的迁移学习技术。Segler等人首先在ChEMBL上用140万个分子训练了一个基于LSTM的生成式神经网络,使得该模型能够生成有效的化学结构。然后,他们在与特定靶点相关的小数据集上重新训练了该网络,并重现了14%和28%的针对金黄色葡萄球菌和恶性疟原虫的未见测试分子。他们还比较了从零开始的训练和微调,发现微调减少了错误测试,加速了模型训练。Awale等人利用类似的方法生成药物类似物。他们使用来自包括ChEMBL、DrugBank、市售片段和FDB-17在内的数据集的分子训练了一个LSTM。
分子生成中,迁移学习主要用于解决对应于预先指定的靶标或生物活性的具体问题。微调已经被验证为解决此类不同任务的实用方案。强化学习(RL,Reinforcement learning )是一种用于解决动态决策问题的技术,是另一种常见的机器学习方法,用于生成特定靶标的分子。RL通过与环境交互学习,这种训练中,作为决策者的代理可以采取行动来改变自身的状态,状态空间中的每个状态都有一个与环境相关的奖励。RL算法的目标是选择能使预期累积奖励最大化的顺序动作。分子生成中,动作集可以定义为整个用于编码化学结构的字母和符号的集合,作为SMILES字符串,状态集可以定义为所有SMILES字符串。RL试图通过搜索状态动作空间来直接寻找理想的结果,而状态动作空间通常由其他不准确的机器学习模型定义,有时计算成本很高。与RL相比,精细化限制了输入空间,用特定的数据集来约束结果,而不是用定义的奖励函数进行搜索。因此,基于微调的这些特定任务的应用很大程度上取决于活性化合物的数量。少量的活性化合物会导致模型优化的梯度不稳定,这对神经网络训练过程不利。作为常用的分子生成方法,RL和微调有各自的特点,可以结合使用。事实上,迁移学习已经被引入到强化学习领域,作为加速训练过程的一种手段,
基于结构的虚拟筛选
基于结构的虚拟筛选(SBVS)是药物发现的常规工具,它可以通过计算从大型化合物库中富集潜在的活性分子,加速药物发现并降低成本。然而,传统的SBVS强烈依赖于对接和打分方法的力量,这远远不能令人满意。近年来,基于机器学习的虚拟筛选方法(成为SBVS的一个有前途的选择。Ashtawy等人在PDBbind 2007数据集上评估了16个传统的打分函数和6个基于机器学习的打分函数。在多样化的核心测试集上,基于机器学习的打分函数优于传统的打分函数,优于或相当于顶级的传统方法。与传统的虚拟筛选方法相比,基于机器学习的方法大大提高了虚拟筛选在DUD-E数据集上的预测性能,DUD-E数据集是一个广泛使用的分子对接和虚拟筛选测试基准。为了对特定靶点获得更好的结果,Imrie等人对特定靶点的通用模型进行微调,构建蛋白质家族的特定模型,使用迁移学习在AUC-PRC值上给出了平均18.3-24.0%的改进,显示了迁移学习作为改进特定模型的策略的威力。
5
多任务学习(Multitask Learning)
多任务学习指在一个模型中利用共享知识(权重)学习多个任务,与之相反的是迁移学习,即通过从源任务中转移知识来学习目标任务。虽然多任务学习和迁移学习密切相关,但它们在几个关键方面有所不同。迁移学习只寻求利用源任务中的知识来提高目标任务的性能。这种情况下,源任务被视为已解决。另一方面,多任务学习的目的是同时解决多个任务,并学习一个共享的表征/模型,该表征/模型对所有研究的任务都表现良好。多任务学习和迁移学习中,学习一个共享的表示或知识,以帮助提高模型的性能。多任务学习在很多情况下都是实用的,因为它可以只用一个模型来预测不同的任务。
6
药物发现中的多任务学习
多任务模型是一种对多种活动具有预测能力的组合模型,它可以用不同活动集的数据同时进行训练,最终可以产生具有增强预测能力的多活动预测。Varnek等人首次将多任务学习应用于QSAR/QSPR中,在只有一个隐藏层的浅层神经网络上预测tissue-air分配系数,并发现多任务学习相对于单任务模型提高了模型的性能。自深度学习兴起以来,深度多任务神经网络已被证明是利用多样化医药数据集合的强大工具。对多属性预测的研究表明,多任务学习比单任务学习有优势。Mayr等人在Tox21挑战赛中获胜,并使用多任务DNN获得了毒性预测的最高精度。Li等人使用基于自动编码器的DNN对人类细胞色素P450抑制剂进行预测,发现多任务DNN明显优于单任务DNN和其他机器学习方法。多任务学习还被应用于分子特性和活性预测以外的任务。例如,Ye等人构建了一个结合微调和多任务学习的模型来预测四个人体药代动力学参数。除了在测试集上有更好的表现外,多任务学习还具有更好的通用性。Feinberg等人比较了基于31个检测数据的多任务GCNN、单任务GCNN和最先进的随机森林进行ADME/T预测。为了评估模型对其他检测数据的泛化能力,他们进行了两项交叉验证研究和一项保持性验证研究,并对未来的数据进行了预后分析预测。多任务GCNN在所有验证评估中取得了最好的结果,在实验测试中产生了最精确的预测。但我们需要注意的是,本研究中的泛化性是指在同一任务中对外部数据或实验数据的泛化能力,而不是迁移学习中不同任务之间的泛化能力。Xu等人对多任务学习的优势作了如下解释:多任务学习可以从训练集中借用具有相似结构的分子的信息特征,并将这些知识应用于其他任务,特别是在活动是相关的情况下。根据该解释,可以知道多任务神经网络可以通过模型的共享层的训练,获得所有数据集更好的、共享的特征表示来预测任务。因此,它有助于学习知识在任务之间的迁移。
多任务学习在药物发现领域有很大的进一步发展潜力。尽管多任务学习具有积极的属性,但它也存在一些缺点。其中一个重要的问题是多任务学习应该被设计成双赢模型、权衡模型还是零和模型的不确定性。作者的调研中,共享表示被证明是非常敏感和数据依赖的。例如,任务相关度的因素和训练数据的不同分布会产生一个好的或坏的多任务模型。共享底层表示法可能会改善一两个任务,但会伤害其他任务。Ma等人将门控网络引入多任务神经网络,根据不同任务之间的关系来调整不同任务的重要性权重,试图解决多任务学习的一些挑战。类似的策略也可以用于药物发现问题,以充分利用已知数据。与迁移学习相比,多任务学习更适用于具有相关任务共享分子的数据集。但对于一些关联性较小的任务,迁移学习仍然比多任务学习更适合,因为它不需要在任务之间取得平衡,优先级在目标任务上。
7
讨论
迁移学习是一种针对小数据问题的有用策略,可以提高特定任务的模型能力。因此,它对药物发现有好处,如通过加速训练的收敛来降低计算成本,提高数据稀缺任务或特定任务的预测性能。
迁移学习在药物发现中的应用还处于初级阶段,在相关理论研究方面还有很多需要研究的地方。例如,目前还没有统一的指标来评价迁移学习方法的性能。实践中,人们通常根据模型在特定任务中的表现来评价迁移学习,如提高精度或减少错误。因此,在应用之间进行比较是很有挑战性的。在一些基于特征的迁移的情况下,观察到的性能改进可能部分是由于网络复杂性的增加。此外,目前还没有合适的基准数据集来评估迁移学习在药物发现中的应用,而且由于迁移学习场景中的数据规模较低,过拟合问题应该备受关注。此外,包括深入讨论迁移学习方法与药物发现相关的出版物也很少。
迁移学习在药物发现中的实际实施面临着几个挑战。第一个挑战是如何量化不同任务之间的关联性。迁移性能的好坏可能取决于源任务和目标任务,原因目前还不清楚。但是,很明显在迁移学习中,任务的相关度比数据大小重要得多。因此,利用化学知识量化任务之间的关联性对于药物发现中的迁移学习非常重要。多任务学习中也存在这个问题。第二个挑战是如何正确实现迁移学习方法。尽管微调策略对许多类型的模型都是有用的,但仔细设计网络结构是一个非平凡的决定。负迁移,也就是迁移学习伤害了模型的性能,可能是由于方法选择不当造成的。例如,预训练GNN表现良好,但只在图层面预训练时产生负迁移。最后,目前没有通用的迁移学习方法选择标准,因为没有理论支持,很难评估迁移学习方法。但是,微调是有经验规则的。例如,当目标数据太小时,固定一些层是避免过拟合的好方法。当目标数据没有那么小的时候,微调所有层仍然是最好的选择。基于特征的方法已经显示出作为解决药物发现问题的策略的潜力,建议对这一类方法投入大量关注。
8
前景
数据集中的偏差会使机器学习方法看起来比在实际使用案例中的表现更好。鉴于训练数据有偏差,如果测试数据不在训练数据的分布范围内,模型的性能可能会受到影响。这种数据集分布之间的不一致被称为数据偏差。例如,如果训练数据集的大小很小,模型的预测可能与实验结果不一致,因为用于模型的数据集与真实世界实验的数据之间存在数据偏差。迁移学习可能有助于缓解这一问题。基于特征的方法被设计成在不同领域中寻找相同的特征代表,它已经显示出其在不同属性之间的泛化能力,可以用来减少数据偏差的影响。目前已经有一些针对数据偏差而设计的迁移学习方法,这些方法可以应用在实际的药物发现中。此外,多任务学习在ADME/T的时空分割验证环境和预测中获得了显著的性能,显示了其对真实世界检测数据的普适性。
任何情况下都需要认真评估可迁移性问题,以确定是否可以使用迁移学习。重要的是建立一个标准的可迁移性定义,可以用来定量测量从源域到目标域的可迁移性。药物发现中,定义可迁移性的一种可能方法是使用分子距离度量。之前有一些描述的方法来测量分子的相似性,如Tanimoto系数,化学距离测量,以及使用注意力模型的注意力权重。有必要找到一种合适的方法来使用平滑或连续的化学表示来测量分子距离,可以通过自动编码器等方法来实现。这样的化学表示法将有助于建立一个可靠的分子距离测量方法,并防止负迁移效应。定量迁移性在测试目标终点的某些实验值具有挑战性或昂贵的情况下是有用的。如果存在对可迁移性的测量,可以进行更容易和更便宜的实验,对目标终点的高可迁移性作为迁移学习的来源。对于任务相关度难以定义的情况,基于特征的方法是一个不错的选择,而不是微调。基于特征的方法具有很好的通用性,因为它可以找到潜在空间中不同域的相似性。一个源域有时可能不足以改善目标任务,而从多个源域进行迁移学习,具有良好的可迁移性将是有益的。从多个源域进行迁移的策略已经被证明具有一些优势。
有许多潜在的药物发现问题可以通过迁移学习或多任务学习来解决。例如,迁移学习可以用来提高模型的通用性,用于预测分子性质和活性。迁移学习模型似乎是理想的综合模型的折中方案。对于分子的生成,目前生成的模型是在一个由正反馈驱动的过程中对活性化合物进行微调。同样,可以想象一种负反馈微调策略,通过逆向调整模型来避免已知的非活性化合物。使用这种策略,将有望提高分子生成的成功率。随着周期性的生成和验证与新的验证负化合物迭代添加,这种策略可能会更强大。某种程度上,这与主动学习类似,主动学习是一种迭代查询最重要的未标记样本的算法,然后为下一个训练周期标记样本,以指导性地改进模型。主动学习作为一种新兴的人工智能技术,也已经成功应用于药物发现问题。对于靶标-药物相互作用研究,预测核酸-配体相互作用或核酸-蛋白质相互作用的模型可以借用蛋白质-配体和蛋白质-蛋白质相互作用的知识,这些模型有更多可用的标签数据可供学习。多任务框架中同时训练的具有打分能力、对接能力和筛选能力的评分函数需要进一步深入研究。
参考资料
Transfer Learning for Drug Discovery. Chenjing Cai, Shiwei Wang, Youjun Xu, Weilin Zhang, Ke Tang, Qi Ouyang, Luhua Lai, and Jianfeng Pei. Journal of Medicinal Chemistry 2020 63 (16), 8683-8694.
DOI: 10.1021/acs.jmedchem.9b02147