几何相互作用GNN预测3D-PLA
预测PLA是药物发现中的核心问题。最近的进展显示了将ML应用于PLA预测的巨大潜力。然而,它们大多忽略了复合物的3D结构和蛋白质与配体之间的物理相互作用,而这对于理解结合机制至关重要。作者提出了一种结合3D结构和物理相互作用的几何相互作用图神经网络GIGN,用于预测蛋白质-配体的结合亲和力。具体来说,作者设计了一个异构相互作用层,将共价和非共价相互作用统一到消息传递阶段,以更有效地学习节点表示。异构相互作用层还遵循基本的生物学定律,包括复合物的平移和旋转的不变性,从而避免了昂贵的数据增强策略。GIGN在三个外部测试集上实现了最先进的性能。
来自:Geometric Interaction Graph Neural Network for Predicting Protein−Ligand Binding Affinities from 3D Structures (GIGN)
目录
- 背景概述
- 方法-不变性
- 定义
- GIGN的不变性分析
背景概述
药物发现中的一个关键问题是蛋白质-配体结合亲和力的预测,PLA描述了候选药物与蛋白质之间结合相互作用的强度。为了确定对某一特定蛋白质有效而安全的药物,药理学家必须测试数千种化合物。然而,实验测量PLA既费时又耗资源。计算机方法能够根据PLA的预测对候选药物进行排序并优先考虑更好的药物,从而加快药物筛选的过程。
随着高质量实验确定的蛋白质-配体结构及其结合亲和力的增加,ML方法已被广泛用于通过从数据中识别有用的模式来预测蛋白质-配体的结合亲和力或相互作用。根据模型是否依赖物理相互作用做出决策,现有的基于ML的PLA预测方法可分为无交互和基于交互两类,如图1所示。
无相互作用方法隐含地假设ML模型可以从不显示物理蛋白质-配体相互作用的数据中预测PLA。因此,配体通常用SMILES或二维graph表示,蛋白质用序列表示,而为了简单起见,省略了原子相互作用。例如,DeepDTA使用SMILES字符串和蛋白质序列作为输入,然后使用两个CNN从中提取特征。另一方面,GraphDTA和MGraphDTA将配体表示为二维分子graph,以保留二维结构信息。无相互作用的方法可以用于预测没有三维结构和物理相互作用信息的配合物的结合亲和力。然而,三维结构和物理相互作用已被证明是提高模型泛化能力的必要条件(Structure-aware interactive graph neural networks for the prediction of protein-ligand binding affinity)。
相比之下,基于相互作用的模型基于复合物的三维结构和蛋白质与配体的物理相互作用进行预测。在基于相互作用的模型中,3D-CNNs和相互作用图神经网络IGNNs是最常用的基于原子相互作用信息的三维结构结合亲和力预测模型。3D-CNNs针对复合物的3D grids提取特征,这是效率较低的,因为grid中的大多数体素不包含结构相关的有用信息。此外,由于每个体素的位置不是旋转不变的,旋转原子坐标会改变结合亲和力的预测值,这与生物学事实不一致。另一方面,IGNNs将蛋白质-配体复合物表示为相互作用图,其中节点对应原子,边缘对应共价键或非共价键/相互作用。向IGNNs中注入结构信息的最常见方法是使用从它们的3D坐标计算的成对原子-原子距离,这确保了IGNNs对复合物的平移和旋转的不变性。
尽管IGNNs在PLA预测方面具有巨大的潜力,但由于其泛化能力不足,导致还没有为实际应用做好准备。作者总结了现有IGNNs在结合亲和力预测方面存在的两个潜在问题。首先,现有的IGNNs通常将共价相互作用和非共价相互作用视为同一类型的相互作用。在这种情况下,配体节点可以在信息传递过程中同时接收来自其共价和非共价邻居的信息,如图2a所示。尽管这种假设简化了建模,但它有一个明显的缺点。非共价相互作用的数量远远大于共价相互作用的数量,因此非共价相互作用将主导计算,即共价相互作用的信息可能被非共价相互作用的信息所吞没。其次,几何先验(对称先验)是一种重要的inductive bias,可以利用问题的对称性将神经网络限制在相关函数上,从而提高模型泛化能力。例如,对于具有不同初始位置,例如不同位置和方向的相同蛋白质-配体复合物,预测的结合亲和力应该保持不变,如图2b所示。然而,这种不变性仍然没有得到充分的研究,例如,很少有研究试图证明IGNNs可以从考虑不变性中受益。

- 图1:PLA方法总结。

- 图2:动机和方法。
为了解决上述问题,作者提出了一种几何相互作用图神经网络GIGN,该网络结合了三维结构和物理相互作用以及不变性约束来预测蛋白质-配体的结合亲和力。GIGN的主要贡献包括:
- GIGN使用异构交互层,将共价和非共价交互统一到消息传递阶段,以更有效地学习节点表示。异构交互层将共价交互和非共价交互视为不同类型的交互,并在消息传递期间独立处理它们,从而避免了图2a中描述的缺点。
- GIGN强制神经网络满足关于输入平移和旋转的不变性。研究表明,考虑模型的不变性可以大大提高模型的泛化能力。
- 实验结果表明,GIGN在三个外部测试集上达到了最先进的性能,且计算成本较低,更易于适用于大规模数据库。
- 可视化结果表明,GIGN可以捕获与binding相关的基本特征。
方法-不变性
定义
令 T : X → X T:X\rightarrow X T:X→X为一个变换集合(比如,旋转,平移,反射,排列)。GNN f : X → Y f:X\rightarrow Y f:X→Y对于 T T T是不变的,前提是: f ( T ( X ) ) = f ( X ) f(T(X))=f(X) f(T(X))=f(X)。
GIGN中探讨了两种不变性:
- 平移不变性: f ( X + g ) = f ( X ) f(X+g)=f(X) f(X+g)=f(X)
- 旋转不变性: f ( Q X ) = f ( X ) f(QX)=f(X) f(QX)=f(X)
GIGN的不变性分析
异构交互层 F F F对于平移和旋转是不变的。形式上, F F
相关文章:
几何相互作用GNN预测3D-PLA
预测PLA是药物发现中的核心问题。最近的进展显示了将ML应用于PLA预测的巨大潜力。然而,它们大多忽略了复合物的3D结构和蛋白质与配体之间的物理相互作用,而这对于理解结合机制至关重要。作者提出了一种结合3D结构和物理相互作用的几何相互作用图神经网络GIGN,用于预测蛋白质…...
2024最新版使用PyCharm搭建Anaconda
2024最新版使用PyCharm搭建Anaconda 因为pycharm自带的包不全,或者下载的时候比较慢,所以我们直接用anaconda的包,毕竟我们以后还会学到很多的包,不多说,直接开干! 一、下载Pycharm、Anacoda pycharm中文网…...
前台于后台项目
一:技术栈 前台:vue3element plus 后台:reactant desgin 二:项目中的问题: 多人协同开发导致样式冲突 ui框架中组件的使用 ui框架中组件样式的修改 精度缺失问题 框架的使用 三:解决方案: …...
Magical Combat VFX
这个包包含30个可供游戏使用的VFX,有各种口味,为您的游戏增添趣味! 所有VFX都经过了很好的优化,可以在所有平台上使用。 这个包特别有一堆闪电魔法,有两种主要的变体,一种是深色的,另一种是浅色的。但它也提供了一系列其他视觉效果,如神圣咒语、音乐主题等等! 我们提供…...
hadoop伪分布式环境搭建详解
(操作系统是centos7) 1.更改主机名,设置与ip 的映射关系 hostname //查看主机名 vim /etc/hostname //将里面的主机名更改为master vim /etc/hosts //将127.0.0.1后面的主机名更改为master,在后面加入一行IP地址与主机名之间的…...
day12-SpringBootWeb 登录认证
一、登录功能 Slf4j RestController public class LoginController {Autowiredprivate EmpService empService;PostMapping("/login")public Result login(RequestBody Emp emp){log.info("员工登录: {}", emp);Emp e empService.login(emp);//登录失败, …...
内外网数据单向导入导出 如何提升效率确保安全性?
金融、证券、税务、海关、军工、国央企、生物医药等涉密行业,为了保护内部的核心数据,都会将网络进行物理隔离,网络物理隔离主要是采用隔离硬件设备,在人工或者软件的控制下,进行内外网的切换和数据交换。 传统的内外网…...
Spring核心方法:Refresh全解(WebMVC如何装配、关联)
Spring核心方法:Refresh全解(WebMVC如何装配、关联) 这里是一个表格,列出了Spring容器刷新过程中执行的方法以及它们的作用: 方法名称描述prepareRefresh()初始化一些属性和状态,例如启动时间戳、活动标志、环境变量等。obtainF…...
TCP:三次握手四次挥手及相关问题:
连接—三次握手: 流程图: 过程详解: 客户端(connect)连接服务器(listen) Client将标志位SYN置为1,随机产生一个值seqx, 并将该数据包发送给Server, Client进入SYN_ SENT状态,等待Server确认。Server收到数据包后由标…...
链式二叉树--前序中序后序遍历,高度,节点个数问题
目录 前言: 一:链式二叉树的结构定义 二:链式二叉树的遍历--->前序,中序,后序 1.前序 递归展开图分析 2.中序 递归展开图分析 3.后序 三:二叉树结点的求解 1.二叉树总结点 递归展开分析 2…...
HCIA——TCP协议详解
目录 1、TCP概念及协议头部格式 1.1TCP特点 1.2TCP协议协议头部格式 1.3字段进行介绍 1.3.1源端口和目的端口 1.3.2序号(seq) 1.3.3确认序号(ack) 1.3.4数据偏移 1.3.5标志位 1.3.6窗口 1.3.7校验和 1.3.8紧急指针 2、TCP的可靠性 2.1 TCP可靠性的保障 2.2排序机…...
Hadoop大数据应用:Linux 部署 HDFS 分布式集群
目录 一、实验 1.环境 2.Linux 部署 HDFS 分布式集群 3.Linux 使用 HDFS 文件系统 二、问题 1.ssh-copy-id 报错 2. 如何禁用ssh key 检测 3.HDFS有哪些配置文件 4.hadoop查看版本报错 5.启动集群报错 6.hadoop 的启动和停止命令 7.上传文件报错 8.HDFS 使用命令 一…...
纯 CSS 实现文字换行环绕效果
实现效果 实现代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>Document</title><…...
【爬虫逆向】Python逆向采集猫眼电影票房数据
进行数据抓包,因为这个网站有数据加密 !pip install jsonpathCollecting jsonpathDownloading jsonpath-0.82.2.tar.gz (10 kB)Preparing metadata (setup.py) ... done Building wheels for collected packages: jsonpathBuilding wheel for jsonpath (setup.py) .…...
解析服务器下载速度:上行、下行与带宽之谜
在日常使用中,我们经常会遇到从服务器下载内容速度忽快忽慢的情况,即便服务器的硬件配置如4核CPU、8GB内存和12Mbps的带宽看似足够。为何会出现这种现象?这背后涉及到网络中的上行、下行以及带宽等关键概念。本文旨在揭开这些术语背后的含义&…...
计算机网络的概念
目录 <计算机网络的定义> <计算机网络的形成与发展> 1.第一阶段远程联机阶段----60年代以前: 2.第二阶段多机互联网络阶段----60年代中期: 3.第三阶段标准化网络阶段----70年代末: 4.第四阶段网络互联与高速网络阶段一90年代: <计算机网络的未来--下一代…...
MATLAB中的脚本和函数有什么区别?
MATLAB中的脚本和函数是两种不同的代码组织方式,它们在结构、功能和使用方式上有显著的区别。以下是对这两种方式的详细解释,总计约2000字。 一、MATLAB脚本 MATLAB脚本是一种包含多条MATLAB命令的文件,这些命令按照在文件中的顺序依次执行…...
从电影《沙丘》说起——对人工智能的思考
正文 从《沙丘》开始说起 之前看《沙丘》电影,里面有一类角色叫门泰特,这类人大脑可以飞快地运算,在电影设定里是替换人工智能、机器运算的存在。男主保罗也是这类型的人,但他可能基因更强大,吸食了香料后࿰…...
使用Python进行自然语言处理(NLP):NLTK与Spacy的比较【第133篇—NLTK与Spacy】
👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 使用Python进行自然语言处理(NLP):NLTK与Spacy的比较 自…...
学习笔记--在线强化学习与离线强化学习的异同(3)
这篇博文很多部分仅代表个人学习观点,欢迎大家与我一起讨论 强化学习与离线强化学习的区别 强化学习和离线强化学习都是机器学习的分支,主要用于训练智能体以在不断尝试和错误的过程中学习如何最大化累积奖励。它们之间的主要区别在于数据的获取方式和训…...
内存分配函数malloc kmalloc vmalloc
内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...
K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...
【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...
srs linux
下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935,SRS管理页面端口是8080,可…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
Axios请求超时重发机制
Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...
CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!
本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...
