前言:
此时咱们对“c语言程序设计文献”大致比较关怀,咱们都需要分析一些“c语言程序设计文献”的相关内容。那么小编也在网络上汇集了一些有关“c语言程序设计文献””的相关知识,希望小伙伴们能喜欢,看官们快快来了解一下吧!来源:ScienceAI本文约6000字,建议阅读5分钟使用提示来指导LLMs在分子和分子文本描述之间进行翻译。
论文题目:
Empowering Molecule Discovery for Molecule-Caption Translation with Large Language Models: A ChatGPT Perspective
论文链接:
项目链接:
01 介绍
图1. 分子发现中分子(molecule)和分子文本描述(molecule caption)之间相互翻译的说明。(a) 分子可以用化学式、SMILES字符串和二维分子图来表示。(b)分子文本描述生成(Molecule Captioning)的目的是生成一段文本去描述一个分子的结构、特性及功能,以便人类更好地理解。(c) 给定一段分子的文本描述,基于文本的分子生成旨在生成一个相应的分子 (Text-based Molecule Generation)。(d) 大型语言模型(如ChatGPT)可以通过相应的精心设计的提示(Prompt)实现分子文本描述生成(Mol2Cap)和基于文本的分子生成任务(Cap2Mol)。
分子是物质的基本组成,构成了周围世界的复杂系统。分子由多个原子组成,以独特的化学方式(例如化学键)结合在一起,并保留了由其特定结构决定的独特的化学特性。有了对分子的全面了解,科学家可以有效地设计出具有不同特性和功能的材料、药物和产品。
然而,传统的分子发现有着漫长、昂贵和容易失败的过程,在可扩展性、精确性和数据管理方面都存在限制。为了克服这些挑战,人工智能(AI)等计算技术已经成为加速发现新分子的有力工具。
具体来说,分子可以被表示为一种简化的分子字符串(SMILES字符串)。如图1(a)所示,苯酚的结构可以用SMILES字符串表示,它是由一个苯环和一个羟基组成。为了生成并更好地理解分子,Text2Mol[1]和MolT5[2]提出一项在分子和自然语言之间进行翻译的新任务,即分子-文本描述间相互翻译任务。
它由两个子任务组成:分子文本描述生成(Mol2Cap)和基于文本的分子生成(Cap2Mol)。如图1(b-c)所示,分子文本描述生成的目标是生成一个文本来描述分子的SMILES字符串,以便为人们提供一个更好的分子理解;而基于文本的分子生成旨在根据给定的自然语言描述(如属性和功能团)生成相应的分子(即SMILES字符串)。
设想一下这样的场景:
• 【分子翻译成文本描述/分子文本描述生成任务Molecule Captioning( Mol2Cap)】一位医生想知道药物的性质,便将药物分子和自己的问题一起交给大语言模型,模型便对分子的特性进行分析和预测,从而帮助医生更好地对症下药。如图1-b;
• 【文本描述翻译成分子/基于文本的分子生成任务Text-based Molecule Generation(Mol2Cap)】一位化学家将自己的需求直接陈述给大语言模型,模型便帮助他生成了一个或多个候选分子,通过对候选分子的进一步实验,就可以极大地简化分子或药物发现的流程。如图1-c。
尽管现有的大多数工作在分子-文本描述间相互翻译任务中取得了令人满意的进展,但它们都存在几个局限性。首先,分子-文本描述间相互翻译任务中的模型架构的设计严重依赖领域专家,这大大限制了人工智能驱动分子发现的发展。第二,大多数现有方法遵循“预训练&微调”的模型进行,这需要过多的计算成本。第三,现有的方法,如Text2Mol[1]和MolT5[2],不能对复杂的任务进行推理,也不能对未曾见过的样本进行归纳。
最近,大语言模型(LLMs)在自然语言处理(NLP)领域取得了巨大的成就。LLMs除了在自然语言理解和生成方面具有令人印象深刻的能力外,还展示了强大的泛化和推理能力。它可以通过上下文学习(In-Context Learning,ICL)泛化到其他未见过的任务,而无需进行微调,在很大程度上降低计算成本。因此,LLMs在推进分子发现方面具有前所未有的潜力,特别是在分子-文本描述间相互翻译任务方面。
尽管在分子发现中构建特定的LLMs对于推动科学研究有着巨大的潜力,但也面临着巨大的挑战。首先,由于隐私和安全问题,许多先进的大型语言模型(如ChatGPT和GPT4.0)是不公开的,也就是说, LLMs的架构和参数不公开发布,不可以在下游任务进行微调。其次,由于其复杂的架构和所需的大量数据,训练先进的LLMs需要大量的计算资源。因此,重新设计自己的LLMs,并进行预训练和微调是非常具有挑战性的。最后,设计适当的准则或提示,并配以少量高质量的示例,对于提高LLMs对分子发现的理解和推理能力是至关重要的。
为了解决这些问题,来自香港理工大学和密歇根州立大学的研究人员在分子发现领域利用LLMs的强大功能进行了探索尝试。他们提出了一个新颖的解决方案,使用提示来指导LLMs在分子和分子文本描述之间进行翻译,如图1(d)所示。具体来说,受最新的ChatGPT启发,他们开发了一个基于检索的提示范式MolReGPT[5],通过基于分子摩根指纹的相似性检索/基于BM25的分子文本描述检索和上下文学习(ICL)且不进行微调来进行两个子任务(即通分子文本描述生成和基于文本的分子生成)。实验表明,MolReGPT在Mol2Cap生成中可以达到0.560,在Cap2Mol生成中可以达到0.571,在分子-描述间相互翻译的两个子任务中都超过了微调的MolT5-base。MolReGPT在基于文本的分子生成方面甚至超过了MolT5,使Text2Mol的指标提高了3%。值得注意的是,MolReGPT在任务上的所有提升都是在没有任何微调步骤的情况下实现的。
02 方法
图2: MolReGPT的总体流程框架。
由于巨大的计算成本,在分子发现领域的特定语料库上进行训练和微调LLMs在实践中往往是不可行的。为了解决这些限制,研究人员在不改变LLMs的情况下利用LLMs的强大能力,提出了一个创新性的框架MolReGPT,使ChatGPT具有分子-文本描述间相互翻译的能力。具体来说,为了提高指导/提示的质量,他们引入了一个基于检索的提示范式,在上下文学习下指导ChatGPT进行两个与分子相关的任务:分子文本描述生成(MolCap)和基于文本的分子生成(Cap2Mol)。MolReGPT的框架如图 2所示,由四个主要阶段组成:分子-文本描述检索、Prompt提示管理、上下文小样本分子学习和生成校准。
1. 分子-文本描述检索(Molecule-Caption Retrieval)(图3):这个阶段,用于从数据库中检索出n个与输入分子或者分子文本描述最相似的分子-分子描述对(即小样本学习的例子)。这个过程主要依赖于分子摩根指纹(针对Mol2Cap)和BM25(针对Cap2Mol)两种检索方法。
图3: 分子-文本描述检索(Molecule-Caption Retrieval)。
a. 基于摩根指纹的分子检索(针对Mol2Cap)
图4: 分子摩根指纹和Dice相似性图示。绿色对应的是对分子间相似性分数有正贡献的子结构,紫色部分对应的是对分子间相似性分数有负贡献的或者有差异的子结构。
为了提取摩根指纹,使用rdkit库将分子的SMILES表示转换为rdkit对象。随后应用Dice相似度,来衡量输入分子和本地数据库中的分子之间的相似度,如图3所示。在数学上,可以表示为:
其中,A和B是两个分子的摩根指纹。|A|和|B|表示A和B的基数(例如,子结构数量)。|A ∩ B|表示A和B共有的子结构的数量。Dice相似性的范围是0到1,其中0表示分子之间没有重叠或相似性,1表示完全重叠。
b. 基本BM25的分子文本生成检索(针对Cap2Mol)
BM25是信息检索中最具代表性的排名方法之一,用于计算文档与给定查询的相关性。在Cap2Mol任务中,使用输入的文字描述作为查询句子,而本地数据库中的文字描述作为文档的语料库,其中每个文本描述代表一个文档。在数学上,BM25公式可以定义如下:
其中,D是文本描述语料库,Q使查询的文本描述。N是查询文本描述中查询词的数量,Qi是第i个查询词,IDF(Qi)是Qi的反文档频率,f(Qi,D)是Qi在D中的词频,k1和b是调整参数,|D|是D的长度,avgdl是语料库中平均文本描述的长度。在文本描述检索中,BM25被用于计算文本描述之间的相似性分数,这样可以通过筛选分子-文本描述对来学习文本描述中所对应的相关分子结构。
2. Prompt提示管理 (Prompt Management) (图5):这一阶段主要对ChatGPT的系统提示进行管理和构建,Prompt提示中主要包括角色识别(Role Identification)、任务描述(Task Description)、检索的示例(Examples)和输出指示(Output Instruction)这四个部分。其中,示例将由第一步的检索过程给出。每一部分都承担着对输出的特定指导作用。
图5: Prompt提示管理 (Prompt Management)。
a. 角色识别(Role Identification)
角色识别的目的是帮助LLMs认知为在化学和分子发现领域的专家角色。通过认知为这个角色,鼓励LLMs产生与特定领域预期的专业知识相一致的回答。
b. 任务描述(Task Description)
任务描述提供了对任务内容的全面解释,确保LLM对他们需要处理的具体任务有一个明确的认识。它还包括关键的定义,以澄清分子-文本描述间相互翻译任务中的专业术语或概念。
c. 检索的示例(Examples)
将检索的示例作为用户输入提示,使LLMs能够利用小样本学习示例中包含的信息作出更好的回应。
d. 输出指示(Output Instruction)
输出指示规定了响应的格式。这里,研究人员将输出限制为JSON格式。选择JSON格式可以快速有效地验证LLMs的回答,确保它符合预期的结果,便于进一步处理和分析。
3. 上下文小样本分子学习(In-Context Few-Shot Moleule Learning)(图6): 在这个阶段,系统提示和用户输入提示将会一起提供给ChatGPT进行上下文小样本分子学习。这个过程基于大语言模型的上下文学习能力,仅仅依靠少量相似的样本,就可以捕获到分子的结构所对应的特性,来进行分子-文本描述间相互翻译任务,而不需要对大语言模型进行微调。
系统提示和用户输入提示的结合通过上下文学习为ChatGPT提供了清晰的指引,系统提示建立了分子-文本描述间相互翻译和分子领域专业知识的任务框架,而用户提示则缩小了范围,将模型的注意力引导到具体的用户输入上。
图6: 上下文小样本分子学习(In-Context Few-Shot Moleule Learning)。
4. 生成校准(Generation Calibration)(图7): 在这个阶段,系统会对ChatGPT的输出进行校准,以确保其符合预期的格式和要求。如果输出不符合预期,系统会重新交给ChatGPT进行生成,直到达到最大允许的错误次数。
尽管指定了所需的输出格式,LLM(例如ChatGPT)偶尔也会产生意外的响应,包括不正确的输出格式和拒绝回答。为了解决这些问题,研究人员引入了一个生成校准机制来验证ChatGPT的响应。在生成校准中,他们首先通过将原始响应解析为JSON对象来检查其格式。如果解析过程失败,表明偏离了预期的格式,就会引入几个预定义的格式校正策略,如正则匹配,以校正格式并从响应中提取所需的结果。如果原始回答成功地通过了格式检查,或者可以使用格式校正策略进行校准,那么它就被认为是有效的并被接受为最终回答。然而,如果原始响应没有通过格式检查,并且不能在预定的策略中进行校正,我们就会启动重新查询。值得注意的是,重新查询有一个特殊情况。当原始响应报告 "超出最大输入长度限制 "错误时,将在重新查询阶段删除最长的例子,直到查询长度满足长度限制。重新查询过程包括对LLM进行额外的查询,直到获得一个有效的响应或达到最大的错误允许值为止。这个最大误差允许值的设置是为了确保系统不会陷入无休止的循环,而是在可接受的范围内向用户提供一个合适的响应。
通过采用生成校准阶段,可以减少与所需输出格式的意外偏差,并确保最终的响应与预期的格式和要求一致。
图7: 生成校准(Generation Calibration)。
03 结果
分子描述生成任务(Mol2Cap)
表1: 不同模型在ChEBI-20数据集上分子描述生成(Mol2Cap)任务上的性能对比[3,4]。
表3: MolReGPT使用N-shot在分子描述生成(Mol2Cap)任务上的性能对比。
Mol2Cap任务的结果显示在表1和表3,MolReGPT方法可以获得与微调后的MolT5-base[2]相当的ROUGE分数,同时在其余指标上超过了所有选定的基线模型。
另外,在消融实验中,主要比较了三种检索策略的性能,如表3所示:随机、BM25和Morgan FTS(在MolReGPT中采用)。随机策略指的是检索n个随机例子,而BM25则是对分子的SMILES字符串表示采用字符级的BM25算法。在三种检索策略中,Morgan FTS在少样本学习的样本数量相同的情况下表现最好,在Text2Mol[1]指标中甚至比BM25高出37%。
此外,与随机或者BM25检索策略相比,Morgan FTS取得的ROUGE-L得分几乎翻了一倍。Morgan FTS检索策略的使用表明,通过比较独特的结构特征,如官能团,可以更好地估计分子之间的结构相似性,而这些特征通常在分子的描述中以详细的描述体现。在这种情况下,通过Morgan FTS检索相似的分子可以有效地指导LLM学习分子结构和分子描述之间的关联,从而获得更准确和理想的输出。
图8列出了分子文字描述生成的例子,以比较不同模型的性能。从给出的例子中,可以注意到MolReGPT可以生成包含输入分子关键信息的文本描述。更重要的是,生成的标题在语法上更加完善,并且易于人类理解。
图8: 不同模型生成的分子描述的例子(其中SMILES字符串被转换成分子图,以方便更好地展示)。
基于文本的分子生成任务(Cap2Mol)
表2: 不同模型在ChEBI-20数据集上基于文本的分子生成(Cap2Mol)任务上的性能对比。
表4: MolReGPT使用N-shot在基于文本的分子生成(Mol2Cap)任务上的性能对比。
给定一个分子文本描述(包含结构和属性),Cap2Mol的目标是生成相应的分子(即SMILES字符串)用于分子发现。具体的结果列于表2和表4。比较所有的基线模型,可以发现10-shot MolReGPT明显增强了GPT-3.5-turbo的能力,达到了最佳的整体性能。在MACCS FTS、RDK FTS和Morgan FTS等分子评估指标中,MolReGPT与MolT5-base相比,在Text2Mol指标上取得了15%的大幅提升。考虑分子指纹得分,10-shot MolReGPT与MolT5-base相比也获得了平均18%的改进。此外,MolReGPT还获得了最高的精确匹配分数,有13.9%的例子与ground truth完全一致。值得注意的是,以上所有令人印象深刻的结果都是在没有额外训练或微调的情况下实现的。
图9列出了基于文本的分子生成结果的例子,以比较不同模型之间的性能。从给定的例子中可以看出, MolReGPT能够生成与ground truth更相似的结构。
图9: 不同模型生成的分子的例子(其中SMILES字符串被转换成分子图,以方便更好地展示)。
04 讨论
图10: 给定输入,MolT5和MolReGPT生成分子的对比。
该论文还针对基于定制化文本的分子生成任务做了进一步的探索。如图10所示,例1中的输入强调了结构中的五个苯环和疏水基团。然而MolT5的结果产生了不正确的苯环数量,并且生成的结构含有一些亲水基团。相比之下,MolReGPT则给出了与输入相对应的正确结构。在例2中,MolT5和MolReGPT都生成了正确的苯环数量,而MolReGPT生成了更多的亲水基团,更符合我们给定的输入。
05 结论
这篇文章提出了MolReGPT,一种通用的基于检索的上下文小样本分子学习的提示范式,赋予大语言模型(如ChatGPT)分子发现的能力。MolReGPT利用分子相似性原理从本地数据库中检索分子-分子文本描述对作为上下文学习中的示例,指导大语言模型生成分子的SMILES字符串,从而无需对大语言模型进行微调。
这篇工作的方法专注于分子-文本描述间相互翻译任务,包括分子文本描述生成(Mol2Cap)和基于文本的分子生成(Cap2Mol),并在该任务上对大语言模型的能力进行了评估。实验结果表明,MolReGPT可以使ChatGPT在分子描述生成和分子生成方面分别达到0.560和0.571的Text2Mol分数。从分子理解和基于文本的分子生成角度来看,其性能都超过了MolT5-base这样的微调模型,甚至可以与微调的MolT5-large相媲美。总而言之,MolReGPT提供了一个新颖的、多功能集成的范式,通过上下文学习在分子发现中部署大型语言模型,这大大降低了领域转移的成本,探索了大型语言模型在分子发现中的潜力。
参考文献
[1] Edwards, C., Zhai, C., and Ji, H. Text2mol: Cross-modal molecule retrieval with natural language queries. In Pro- ceedings of the 2021 Conference on Empirical Methods in Natural Language Processing, pp. 595–607, 2021.
[2] Edwards, C., Lai, T., Ros, K., Honke, G., Cho, K., and Ji, H. Translation between molecules and natural language. In Proceedings of the 2022 Conference on Empirical Methods in Natural Language Processing, pp. 375–413, Abu Dhabi, United Arab Emirates, December 2022. As- sociation for Computational Linguistics.
[3] Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, Ł., and Polosukhin, I. At- tention is all you need. Advances in neural information processing systems, 30, 2017.
[4] Raffel, C., Shazeer, N., Roberts, A., Lee, K., Narang, S., Matena, M., Zhou, Y., Li, W., and Liu, P. J. Exploring the limits of transfer learning with a unified text-to-text transformer. The Journal of Machine Learning Research, 21(1):5485–5551, 2020.
[5] Li, J., Liu, Y., Fan, W., Wei, X. Y., Liu, H., Tang, J., & Li, Q. (2023). Empowering Molecule Discovery for Molecule-Caption Translation with Large Language Models: A ChatGPT Perspective. arXiv preprint arXiv:2306.06615.
标签: #c语言程序设计文献