AIDD - 探索语言模型在药物分子生成方面的应用

AIDD - 探索语言模型在药物分子生成方面的应用

图片

今天给大家讲一篇2024年10月在nature communications上发表的一篇关于分子生成的文章。现有的分子生成方法中往往只关注药物的特定属性,导致其适用性受限。因此作者提出了TamGen方法,用于针对特定靶点的分子生成和优化。TamGen方法的优势在于能够提高生成化合物的质量和可合成性,并在实际药物发现流程中得到了验证,成功筛选出对结核分枝杆菌ClpP蛋白酶具有抑制活性的化合物。在未来,该方法可以辅助药化专家用于更高效地设计和筛选潜在的候选药物分子,从而加速药物发现过程。

01

引言

传统的药物开发通常依赖于对现有化合物库的筛选和优化,而生成式人工智能方法则能够从头生成全新的具有特定药理属性的分子结构,不再受限于现有的化合物模板,从而可能带来更高效、更精准的药物设计。通过生成式AI,药化专家能够针对特定的靶标设计出全新的化合物,或者对现有的药物分子进行结构改造和优化,以提高其疗效和安全性。此外,进一步结合了高通量虚拟筛选方法有助于在短时间内从数以亿计的潜在分子中快速识别出最有潜力的候选药物。由于在现有的化合物库中往往缺乏针对某些特定靶蛋白的有效化合物,因此药化专家们利用生成模型在探索广泛化学空间能力上的优势设计这些与难以攻克的靶点相结合的潜在候选药物,从而加速药物发现的进程。然而目前在设计易于合成、生物活性较优且安全的化合物方面存在挑战,但随着算法的不断进步和高质量数据资源的积累,生成式AI在药物设计领域的正逐步扮演越来越重要的角色。

02

TamGen的设计流程

作者提出一种新的一种类似GPT的化学语言模型TamGen用于生成类药化合物,它包含三个模块,图1a展示了其中的化合物解码器,它通过自回归的方式进行训练,旨在预测每个化合物SMILES序列的下一个标记,从而能够在有无靶标信息的情况下顺序生成化合物。图1b描述了一个基于VAE的上下文编码器来编码化合物信息,该方法可以利用已有的化合物来进一步指导生成更多满足期望属性的化合物。而图1c描述了蛋白编码器,它通过自注意力机制捕获目标蛋白的结合口袋信息,并将其输出通过交叉注意力模块传递给化合物解码器,以实现基于特定靶标的分子生成及优化工作。

图片

图1 TamGen模型架构

03

实验结果

3.1 分子生成质量评估

为了评估TamGen模型的生成分子的质量,作者将其与五种基于靶标的分子生成的基准方法进行了比较。其中评估数据集为CrossDocked2020,包含大约10万个药物-靶标对的训练集和100个蛋白结合口袋的测试集。在测试过程中,还利用上述五个模型分别为CrossDocked2020测试集中的每个靶标生成了100个化合物。然后,通过多个指标来全方面地衡量TamGen生成分子的质量,如图2可知,TamGen在大多数指标上表现优异,并展示了整体最佳的性能。特别是在可合成性、对接分数方面,TamGen表现最佳。此外, TamGen还倾向于生成具有较少融合环的化合物,这与FDA批准的药物的特点相似,而其他直接在3D空间中生成的方法往往会产生具有多个融合环的化合物,这会增加细胞毒性的可能性。在效率方面,TamGen也优于其他方法,平均只需9秒就能生成100个化合物,而其他方法则需要数十分钟或数小时。由此可见,TamGen可以快速且有效地设计满足不同下游任务的化合物

图片

图2 生成分子的质量评估

3.2 结核病ClpP蛋白酶的新型抑制剂设计

ClpP酶在维持细菌内环境的稳定中发挥关键作用,是一个有潜力的抗生素靶点。目前除了已知的针对人类蛋白酶体的Bortezomib药物外,还未发现其他针对细菌ClpP的抗生素。因此作者利用TamGen设计ClpP酶的小分子抑制剂,以寻找新的抗生素候选药物。首先,基于ClpP酶的蛋白质结构,TamGen生成了2612种结构不同的化合物。然后通过分子对接和Ligandformer 模型筛选,排除了对接分数低于Bortezomib和无活性的化合物,最终确定了4个种子化合物(图3a)。在微调阶段,TamGen基于目标蛋白和7个种子化合物生成了8,635种新的化合物。通过相同的筛选过程,选择了296种化合物进行生物测试。为了加快验证过程并提高测试阶段的效率,作者先从一个446k的商业化合物库中确定了159个与TamGen生成的化合物最大公共子结构(MCS)相似度超过0.55的类似物。其中5种类似化合物在ClpP1P2肽酶活性测定中表现出明显的抑制作用,且它们的半抑制浓度值均低于20μM(图3c)。这种方法减少了筛选过程的成本,并提高了生成活性分子且易于合成的比例。

图片

图3 模型对不同靶标的泛化性评估

3.3 消融实验分析

为了探究预训练策略对于TamGen模型生成合理化学化合物的重要性,作者进行了消融实验,首先使用CrossDocked2020数据集进行训练和测试,发现没有经过预训练的TamGen模型在对接分数上表现较差,且生成的化合物结构过于简单,不适合作为候选药物(图4a和图4b)。然后,作者评估了TamGen在微调过程中捕获口袋-配体对信息的能力。通过随机打乱训练数据集中的口袋-配体对来重新训练TamGen,结果显示,使用正确配对数据的TamGen在对接分数上明显优于随机配对的TamGen-r方法,这表明准确的口袋-配体相互作用信息对于模型性能至关重要

图片

图4 基于预训练策略的消融实验

04

结论

作者设计了一种基于靶标的分子生成方法TamGen,该模型架构的解码器类似于GPT中的解码器,用以自回归的方式生成化合物。此外,还引入基于变分自编码器(VAE)的模块用以指导模型针对特定蛋白设计具有较高亲和力的化合物。通过设计-优化-测试的迭代流程,TamGen能够生成具有更多样化、类药的化合物。该方法在多项基准测试中表现出色,并成功发现了针对结核分枝杆菌ClpP蛋白酶的高抑制活性化合物。在未来,TamGen将通过结合蒙特卡洛树搜索或强化学习技术来进一步提升化合物生成的质量,从而减少实验成本,加速药物开发的流程

参考文献

[1] Wu K, Xia Y, Deng P, et al. TamGen: drug design with target-aware molecule generation through a chemical language model[J]. Nature Communications, 2024, 15(1): 9360.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/494854.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【每日学点鸿蒙知识】AVCodec、SmartPerf工具、web组件加载、监听键盘的显示隐藏、Asset Store Kit

1、AVCodec 硬解咨询? 在做视频播放硬解适配,这是 demo:https://gitee.com/openharmony-sig/ohos_videocompressor/blob/master/videoCompressor/src/main/cpp/video/decoder/VideoDec.cpp 请问: int32_t VideoDec::SetOutputS…

怎么设置电脑密码?Windows和Mac设置密码的方法

为电脑设置密码是保护个人信息安全的重要措施。无论是Windows系统还是MacOS系统,设置密码的步骤都相对简单,但需要根据不同的操作系统选择不同的方法。 一、Windows系统电脑密码设置 方法一:通过控制面板设置账户密码 点击桌面左下角的“开…

谷歌浏览器的网络安全检测工具介绍

作为全球最受欢迎的浏览器之一,谷歌浏览器不仅提供了快速、便捷的浏览体验,还内置了一系列强大的网络安全检测工具,帮助用户识别潜在的网络威胁,保护个人隐私和数据安全。本文将详细介绍谷歌浏览器中的几项关键网络安全检测功能&a…

一个比RTK或redux更轻量级更易使用的 React 第三方状态管理工具库的配置与使用

本文由作者 Samdy_Chan 原创,未经作者同意,请勿随意转载! 使用轻量级第三方的 React 状态管理库 zustand 管理共享状态数据 在 react 框架应用中,开发者应该大多数都是采用 redux 状态管理工具库来管理应用的共享状态数据,但用过 redux 的人都知道,其配置和使用相当复杂…

菜鸟带新鸟——基于EPlan2022的部件库制作

首先,我们需要了解一些概念: Eplan的部件制作内容 以上内容是制作一个完整的部件所需要的。如果公司要求没有那么严格,我们就可以制作1-4级的内容就可以满足日常的使用啦! 部件的创建方式 部件创建方式有4类: 1、单…

Charles安装证书过程(手机)

背景:使用模拟器抓包时,发现https请求无法抓取,需要安装相应证书。我自己是因为模拟器升级了安卓7,发现之前安装的证书无效了,需要重新安装。 参考博客:夜神模拟器12Charles进行Https抓包_模拟器抓包ssl-C…

Windows、CentOS环境下搭建自己的版本管理资料库:GitBlit

可以搭建属于公司内部或者个人的Git服务器,方便程序代码及文档版本管理。 官网:http://www.gitblit.com/ Windows环境下安装 提前已经安装好了JDK。 官网下载Windows版的GitBlit。 将zip包解压到自己想要放置的文件夹下。 建立版本库路径&#xff0c…

数据库操作【JDBC HIbernate Mybatis】

JDBC JDBC编程 在java开发中,以前都是通过JDBC(Java Data Base Connectivity)与数据库打交道的,至少在ORM(Object Relational Mapping)框架没出现之前是这样,目前常用的ORM框架有JPA、hibernat…

Linux 常见用例汇总

注:本文为 Linux 常见用例文章合辑。 部分内容已过时,未更新整理。 检查 Linux 上的 glibc 版本 译者:joeren | 2014-11-27 21:33 问:检查 Linux 系统上的 GNU C 库(glibc)的版本? GNU C 库&…

web-密码安全口令

目录 一、密码安全概述 二、密码安全现状 三、破解方式 四、暴力破解 五、字典破解 六、密码字典 学习心得: 一、密码安全概述 现在很多地方都是以用户名(账号)和口令(密码)作为鉴权的方式,口令&am…

工控触摸屏用winForms来构建框架,效果还是很不错的

工控触摸屏采用 winForms 构建框架具有诸多优势。winForms 提供了丰富的控件和强大的开发工具,使得界面设计更加高效。它具有良好的稳定性和兼容性,能够适应工控环境的复杂要求。通过 winForms 可以实现直观的操作界面,方便操作人员进行监控和…

开发一个DApp项目:DeFi、DApp开发与公链DApp开发

随着区块链技术的快速发展,去中心化应用(DApp)逐渐成为创新技术的核心之一。DApp能够利用区块链去中心化的特点,提供更高的安全性、透明性和效率,吸引了越来越多的开发者和投资者关注。本文将围绕如何开发一个DApp项目…

网络下载ts流媒体

网络下载ts流媒体 查看下载排序合并 很多视频网站,尤其是微信小程序中的长视频无法获取到准确视频地址,只能抓取到.ts片段地址,下载后发现基本都是5~8秒时长。 例如: 我们需要将以上地址片段全部下载后排序后再合成新的长视频。 …

性能优化!突破性能瓶颈的尖兵CPU Cache

缓存这个专业术语,在计算机世界中是经常使用到的。它并不是CPU所独有的,比如cdn缓存网站信息,浏览器缓存网页的图像视频等,但本文讲述的是狭义Cache,主要指的是CPU Cache,本文将其简称为"缓存"或…

Redis+注解实现限流机制(IP、自定义等)

简介 在项目的使用过程中,限流的场景是很多的,尤其是要提供接口给外部使用的时候,但是自己去封装的话,相对比较耗时。 本方式可以使用默认(方法),ip、自定义参数进行限流,根据时间…

010 Qt_输入类控件(LineEdit、TextEdit、ComboBox、SpinBox、DateTimeEdit、Dial、Slider)

文章目录 前言一、QLineEdit1.简介2.常见属性及说明3.重要信号及说明4.示例一:用户登录界面5.示例二:验证两次输入的密码是否一致显示密码 二、TextEdit1.简介2.常见属性及说明3.重要信号及说明4.示例一:获取多行输入框的内容5.示例二&#x…

RabbitMQ 的7种工作模式

RabbitMQ 共提供了7种⼯作模式,进⾏消息传递,. 官⽅⽂档:RabbitMQ Tutorials | RabbitMQ 1.Simple(简单模式) P:⽣产者,也就是要发送消息的程序 C:消费者,消息的接收者 Queue:消息队列,图中⻩⾊背景部分.类似⼀个邮箱,可以缓存消息;⽣产者向其中投递消息,消费者从其中取出消息…

WebAPI编程(第一天,第二天)

WebAPI编程(第一天,第二天) day01 - Web APIs 1.1. Web API介绍 1.1.1 API的概念1.1.2 Web API的概念1.1.3 API 和 Web API 总结 1.2. DOM 介绍 1.2.1 什么是DOM1.2.2. DOM树 1.3. 获取元素 1.3.1. 根据ID获取1.3.2. 根据标签名获取元素1.3.…

java如何使用poi-tl在word模板里渲染多张图片

1、poi-tl官网地址 http://deepoove.com/poi-tl/ 2、引入poi-tl的依赖 <dependency><groupId>com.deepoove</groupId><artifactId>poi-tl</artifactId><version>1.12.1</version></dependency>3、定义word模板 释义&#xf…

web三、 window对象,延时器,定时器,时间戳,location对象(地址),本地存储-localStorage,数组去重new Set

一、window对象 window对象 是一个全局对象&#xff0c;也可以说是JavaScript中的 顶级对象 像document、alert()、console.log()这些都是window的属性&#xff0c;基本BOM的属性和方法都是window的 所有通过 var定义 在全局作用域中的 变量 、 函数 都会变成window对象的属…