前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Nat Commun|通过单一基础模型双向生成分子的结构和特性

Nat Commun|通过单一基础模型双向生成分子的结构和特性

作者头像
智药邦
发布2024-04-01 10:53:16
990
发布2024-04-01 10:53:16
举报
文章被收录于专栏:智药邦智药邦

2024年3月14日,韩国科学技术院Jinho Chang等人在Nature Communications上发表文章Bidirectional generation of structure and properties through a single molecular foundation model。

作者提出了一个多模态分子预训练模型,该模型结合了分子结构和生化特性的模态(structure-property multi-modal,SPMM),在一个共同的嵌入空间中对齐结构-性质特征,这使得模型能够考虑分子结构和性质之间的双向信息。这些信息产生了协同知识,从而能够通过单一分子基础模型处理多样化的分子预测下游任务。实验表明模型性能超越了现有方法。

背景

最近,人工智能基础模型的成功推动了大规模化学预训练模型的出现。尽管人们对为下游任务提供信息表示的大分子预训练模型越来越感兴趣,但对分子域的多模态预训练方法的尝试有限,特别是对于将多模态预训练模型应用于双向生成结构-性质的研究较为缺乏。

方法

图1a说明了SPMM的整体模型架构和训练目标。SPMM使用单模态编码器对每个模态的输入进行编码,然后使用另一个编码器模块通过使用一个模态特征作为查询而使用另一个模态特征作为键/值来执行交叉注意力。当给定一个训练分子时,SPMM将分子的SMILES字符串及其属性向量(PV)作为多模态数据输入,如图1a所示。SMILES和PV通过它们相应的单模态编码器传递,这些编码器执行自注意力,其中嵌入的输入成为键、查询和值。在获得两个单模态特征后,对比学习通过吸收包含相同上下文的特征,将SMILES和PV特征对齐到同一个嵌入空间中。众所周知,这可以通过使跨模态编码更容易并引导单模态编码特征反映输入的更多语义来提高模型性能。

图1 SPMM结构图

然后,将编码后的SMILES和PV特征通过融合编码器,实现SMILES和PV特征的交叉注意力。由于对比学习将SMILES编码器和PV编码器的输出对齐到相同的特征空间,因此该单一融合编码器可以通过其查询和键/值输入的交替来执行交叉注意力。融合编码器使用下一词预测(NWP)、下一属性预测(NPP)和SMILES-PV匹配损失(SPM)进行预训练。从给定的Transformer输入预测下一个组件是一个常用的自监督学习目标,NWP和NPP任务使模型借助其他模态的语义特征学习SMILES令牌(token)和属性之间的上下文关系。此外,SPM还可以预测给定的一对SMILES和PV是否代表相同的分子。如图1b所示,经过训练的SPMM可以同时用于多模态的下游任务,包括SMILES到PV的生成,以及PV到SMILES的生成。如图1c所示,这些生成可以进一步应用于单模态的下游任务,例如性质预测和正向/逆向反应预测(即合成产物预测或底物预测)。

如图1b所示,模型通过自回归采样生成PV或SMILES。以SMILES为例,具体来说,从想要生成的模态的[CLS]令牌开始,模型预测第一个组件,并重复使用之前的输出来预测下一个组件,直到完成或遇到停止标志。在使用SMILES编码器对输入分子进行编码后,将[CLS]S令牌的特征通过分类/回归头传递以获得输出。分类/回归头由带有一个隐藏层的前馈神经网络组成。用给定的训练集对模型进行微调,得到验证集上损失最小的检查点,并记录该检查点在测试集上的性能。

具体而言,首先,原始SMILES字符串由标记器进行标记,并由SMILES编码器使用[CLS]S标记和[SEP]标记嵌入。这里,[CLS]令牌是附加在每个输入序列开头的特殊令牌。尽管[CLS]令牌本身不包含任何含义,但该模型的双向注意力机制允许[CLS]令牌包含整个输入的上下文信息。一旦模型被预训练,给定序列的[CLS]令牌输出可以被视为输入表示向量,并用于分类/回归下游任务。

在SMILES标记化中,标记器将给定的SMILES标记为片段,这些片段包含在包含300个子词的准备好的标记字典中。该字典是通过字节配对编码(BPE)算法从预训练数据SMILES语料库中获得的,该算法从一组简单的字符开始,迭代地将最频繁的标记对追加为合并子词。BPE算法被广泛应用于各种语言模型,它提供了一个包含常见官能团和子结构(如苯环、羰基、双字母原子和氨基)的子词字典。与将每个字符视为单独标记的朴素字符标记化相比,合并的子词有助于模型对化学组的化学推断,并减少标记的总数。

在这项工作中,作者为每个包含53种分子性质的分子构建了一个PV,并将其视为一个长度为53的句子。RDKit中的这些属性涵盖了从简单的属性(如环数和摩尔质量)到复杂的属性(如溶解度、TPSA和可成药性)的广泛范围。Transformer架构将PV的每个元素视为执行注意机制的令牌。虽然与自然语言相比,SPMM词汇表的大小更有限,它们的顺序也更固定,但它提供了关于53个属性的更精确和紧凑的信息。将PV视为一种语言的一个好处是,不必收集构建有效PV的所有元素。

结果

作者将SPMM与一些具有代表性的方法进行了比较。如表1所示,正向反应预测中,将底物SMILES作为输入,预测产物SMILES,而逆向反应预测则相反。SPMM通过SMILES-PV-SMILES的流程,实现SMILES-PV的双向学习,并用于SMILES预测。将预测的前K个分子的准确率作为评价指标,与一些基于SMILES的模型(string-based)或基于分子图的模型(graph-based)进行对比。在正向预测中,SPMM在最精确的(K=1)预测上超越了现有方法。在逆向预测中,SPMM在K=5和K=10预测中超越了现有方法。

表1 与其他方法对比

作者设计了消融实验。在单个分子性质预测(通过SMILES预测PV)任务上(#task=1),将数据集大小(#data)不同的数据集上的结果进行对比,同时将采用预训练的SPMM和未采用预训练的SPMM(w/o pre-train)加入对比,将RMSE作为评价指标(越低越好)。结果表明预训练对SPMM的重要性。

表2 消融实验

作者还进行了案例分析。通过可视化预训练SPMM的注意力得分,进一步分析了学习到的SMILES和PV之间的跨模态理解。在图2中,当给出SMILES及其PV输入时,作者绘制了预训练SPMM的最后一个融合层的交叉注意力得分。可见,得分遵循了化学性质与分子片段之间的直观关系。与氢键相关的属性,即氢键配体数(#H bonding donor)和氢键受体数(#H bonding acceptor),对带有氧原子和氮原子的标记显示出很高的注意力分数。属性“RingCount”(环数)侧重于与环相关的令牌,而对侧基团的注意力较弱,属性“NumAromaticRings”(芳环数)仅对芳香环的组成部分给予较高的注意力分数。当不同的SMILES符号在分子中扮演相似的角色时,如分子7中不同位置的“c1ccccc1”,注意力模式也相似。这一结果表明,SPMM可以捕捉分子结构和化学性质之间的关系,而不需要明确给出它们之间的监督信息。

图2 案例分析

总结

本文提出了一种结合结构和性质信息的多模态化学基础模型SPMM。提出的模型允许双向生成/预测分子结构和性质,以及下游任务,如反应预测。在此过程中,作者引入了一种将属性集合视为一种语言的方法,以便模型可以独立学习SMILES令牌与每个属性之间的关系。实验证明了预训练的SPMM在SMILES和PV域之间的相互作用问题上表现出显著的性能。SPMM不仅适用于多模态挑战,甚至它的单模态特征也适用于SMILES,它还提供了一种有用的表示,可以对许多分子下游任务进行微调。

尽管SPMM具有显著的性能,但它还有可改进的地方。虽然SMILES可以包含分子二维结构的全部细节,但关于原子和键如何连接的信息只是隐式存在的。此外,分子结构的轻微改变可能会导致SMILES发生巨大变化。图格式是另一种广泛使用的分子表示方式,它包含邻接矩阵的显式信息,可以作为SMILES的替代方法。同时,图格式可以对分子的立体结构信息建模,而考虑立体化学信息在各种生化任务中起着至关重要的作用。

总之,SPMM可以提供一个能够同时包含每个输入域及其多模态域的预训练模型,这具有巨大的潜力。未来,通过使用更广泛和更丰富的分子模式,以及推广到可能的不同生化领域,如聚合物和蛋白质,SPMM有望应用于更多样化和实际的化学情况。

参考文献

[1] Chang et al. Bidirectional generation of structure and properties through a single molecular foundation model. Nat Commun. 2024

--------- End ---------

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-03-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 智药邦 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档