使用端到端深度学习模型完成PPI任务两篇论文笔记

2024-03-16 20:58

本文主要是介绍使用端到端深度学习模型完成PPI任务两篇论文笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.“Multifaceted protein–protein interaction prediction based on Siamese residual RCNN”

1.1PPI任务的难点:

(1)蛋白质的表征需要一个模型来有效地过滤和聚合它们的局部特征,同时保留重要的上下文和序列的氨基酸信息
(2)扩展深度神经结构经常导致低效的学习过程,并遭受臭名昭著的消失梯度问题
(iii)还需要一个有效的机制来理解蛋白质对在PPI预测中的相互影响。此外,框架必须具有大数据的可伸缩性(我们的任务要求用在多长的数据上?)可推广到不同的预测任务。

1.2 作者对于自己工作的概括

(1)训练端到端网络PIPR,从而减少了用户数据预处理的工作量。
PIPR requires only the primary protein sequences as the input, and is trained to automatically preserve the critical features from the sequences.
补充:
在这里插入图片描述

(2)强调了在PPI任务中考虑上下文化和顺序信息的需求。(也就是说序列信息和局部信息都很重要,可是现在我们思考的模型中还没有加入局部信息)
(3)Third, the architecture of PIPR can be flexibly used to address different PPI tasks
(4)这个工作中也预测了亲和度!且表现很良好,可以对细微变化做出反应。

1.3PPI任务相较于NLP任务的不同之处

(1)序列
In contrast to sentences, proteins are profiled in sequences with more intractable patterns, as well as in a drastically larger range of lengths.
(2)Precisely capturing the PPI requires much more comprehensive learning architectures to distill the latent information from the entire sequences, and to preserve the long-term ordering information.

1.4 处理PPI任务上,基于深度学习的方法的发展:

(1)第一项工作是基于深层CNN
One recent work (Hashemifar et al., 2018), DPPI, uses a deep CNN-based architecture which focuses on capturing local features from protein profiles. DPPI represents the first work to deploy deep learning to PPI prediction, and has achieved the state-of-the-art performance on the binary prediction task. However, it requires excessive efforts for data pre-processing such as constructing protein profiles by PSI-BLAST (Altschul et al., 1997), and does not incorp-
orate a neural learning architecture that captures the important contextualized and sequential features.

(2)DNN-PPI (Li et al., 2018) represents another relevant work of this line, which deploys a different learning structure with two separated CNN encoders. However, DNN-PPI does not incorporate physicochemical properties into amino acid representations, and does not employ a Siamese learning architecture to fully characterize pairwise relations of sequences.

1.5 方法介绍

(1)通过预训练氨基酸的嵌入表示

(这个是不是可以用在我们的任务中?)
我觉得是可以的,引入如果不用预训练的embedding ,需要使用PSI-BLAST构造protein profiles,非常麻烦和耗时。
而且
在这里插入图片描述

Each embedding vector is a concatenation of two sub-embeddings, i.e.
(1)The first part ac measures the co-occurrence similarity of the amino acids, which is obtained by pre-training the Skip-Gram model
(2)The second part aph represents the similarity of electrostaticity and hydrophobicity among amino acids. The 20 amino(哦一共有20种氨基酸!!) acids can be clustered into 7 classes based on their dipoles and volumes of the side chains to reflect this property. Thus, aphis a one-hot encoding based on the classification defined by Shen et al. (2007).

(2)RCNN
在这里插入图片描述
①CNN层:
最大池化discretize the convolution results, and preserve the most significant features within each n-stride. By definition, this mechanism divides the size of processed features by n. The outputs from the max-pooling are fed into the bidirectional gated recurrent units in our RCNN encoder.
②残差GRU层
一个疑问:残差机制是否也该应用在我们的工作中?
“In our development, we have found that the residual mechanism is able to drastically simplify the training process, and largely decreases the epochs of parameter updates for the model to converge.”

将上面的unit堆叠多次,将最后一层GRU的输出再经过一个CNN层和池化层得到最终的 high-level sequence embedding of the entire protein sequence
在这里插入图片描述
(3)孪生网络结构
在这里插入图片描述
(4)损失函数
①分类问题使用了Cross-entropy loss。
在这里插入图片描述
疑问:哪里用到了MLP??不是直接用的两个蛋白质序列的embedding做乘法吗?
②回归问题使用Mean squared loss
在这里插入图片描述

1.6 数据集

(1)在这里插入图片描述

疑问:如果我们想与其他方法做比较是不是也需要用the Yeast dataset?
(2)
在这里插入图片描述
在这里插入图片描述

1.7 实验细节

在这里插入图片描述
在这里插入图片描述
疑问:它使用了交叉验证(而且以前很多工作也是这样做的),如果数据集不够大,我们是否也需要用?
补充交叉验证;
在这里插入图片描述

2.Sequence-based prediction of protein-protein interactions: a structure-aware interpretable deep learning mode

2.1与我们的任务比较相似的地方:

Our key conceptual advance is that a well-matched combination of input featurization and model architecture allow for the model to be trained solely from sequence data, supervised only with a binary interaction label, and yet produce an intermediate representation that substantially captures the structural mechanism of interaction between the protein pair.

Using Bepler and Berger’s [12] pre-trained language model, we construct informative protein embeddings(需要重点看) that are endowed with structural information about each of the proteins. The internal representation of our model uses these features to explicitly encode the intuition that a physical interaction between two proteins requires that a subset of the residues in each protein be in contact with the other protein

We note that the use of Bepler and Berger’s pre-trained model allows us to indirectly benefit from the rich data on 3-D structures of individual proteins. In contrast, a PPI prediction method that was directly supervised with 3-D structures of protein complexes, in order to
learn the physical mechanism of interaction, would need to contend with the relatively small size of that corpus [14–16].
疑问:我们能否使用说到的这个预训练模型?

D-SCRIPT, like other recent successful deep learning methods PIPR and DPPI [17, 20], belongs to the class of methods that perform PPI prediction from protein amino acid sequence alone, in contrast to a different class of highly successful PPI prediction methods based on network information

2.2 这个模型的效果:

(1)它的优势主要体现于跨物种,或者说训练集中比较少出现的PPI
We find, as expected, that state-of-the-art PIPR substantially outperforms D-SCRIPT
when predicting interactions between proteins that have many PPI examples in the training set, but the situation is reversed for proteins with a paucity of PPI interactions in the training set. A simple hybrid method that jointly incorporates the confidence of each method performs best of all.

Among sequence-based methods, D-SCRIPT’s strength is in its greater cross-species generalizability and more accurate predictions
in cases where the existing training data is sparse.
(2)On evaluating the physical plausibility of the intermediate contact map representation, we remarkably find that the map partially discovers the structural mechanism of an interaction despite the model having been trained only on sequence data.

2.3 任务定义(模型输入输出)

在这里插入图片描述

2.4 方法介绍

在这里插入图片描述
这篇文章的创新之处还在于 其得到第一阶段的embeddings后,在第二阶段首先预测两个蛋白质序列各氨基酸之间的交互情况
在这里插入图片描述
(1) 得到蛋白质的embeddings
使用了” Bepler, T. & Berger, B. Learning protein sequence embeddings using information from structure. In 7th International Conference on Learning Representations, ICLR 2019 (2019)”中的方法。这是一个基于Bi-LSTM的预训练模型。
作者把这种embeddings与PIPR中的embeddings进行了比较,而且还提供了两种其他embeddinging方法:
在这里插入图片描述
(2)将两个蛋白质序列转化为相同维度
在这里插入图片描述
(3)Residue Contact Module
假设蛋白质A的长度是m,蛋白质B的长度为n。那么这一部分最后得到的是一个m*n的矩阵,其中每一个值在0,1之间,代表两个蛋白质的每个氨基酸之间分别可能contact的概率。

(4)Interaction Prediction Module
从4.3中得到的contact矩阵中计算最后的两个蛋白质序列可能组成复合物的概率p

2.5 与PIPR的详细比较

在这里插入图片描述

这篇关于使用端到端深度学习模型完成PPI任务两篇论文笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/816696

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

Python函数作用域与闭包举例深度解析

《Python函数作用域与闭包举例深度解析》Python函数的作用域规则和闭包是编程中的关键概念,它们决定了变量的访问和生命周期,:本文主要介绍Python函数作用域与闭包的相关资料,文中通过代码... 目录1. 基础作用域访问示例1:访问全局变量示例2:访问外层函数变量2. 闭包基础示例3:简单闭包示例4