论文解读《structure-aware prediction of protein–proteininteractions in rigorous conditions with graphco》

SGPPI:利用图卷积网络在严格条件下对蛋白质-蛋白质相互作用的结构感知预测

摘要:

        虽然基于深度学习(DL)的模型已经成为预测蛋白质-蛋白质相互作用(PPIs)的强大方法,但依赖于已知相互作用蛋白质的显式相似性度量(如序列相似性和网络邻域),使得这些方法在处理新蛋白质时无效。AlphaFold2的出现为在控制单体结构的同时直接预测PPIs提供了一个重要的机遇和挑战。在这项工作中,我们建立了基于结构和图的蛋白质相互作用预测(SGPPI),一个基于结构的DL框架,用于预测PPIs,使用图卷积网络。特别是,SGPPI专注于蛋白质-蛋白质结合界面上的蛋白质补丁,并从残基接触图中提取结构、几何和进化特征来预测PPIs。我们证明了我们的模型优于传统的机器学习方法和最先进的基于dl的方法。此外,我们在人类数据集上训练的模型可以可靠地转移到预测酵母PPIs中,这表明SGPPI可以捕获不同物种间蛋白质相互作用的收敛结构特征。SGPPI的实现。

介绍:

        蛋白-蛋白相互作用(PPI)网络数据的积累为生物系统中复杂的细胞事件提供了机制上的理解,在药物发现和治疗开发中发挥着至关重要的作用。在过去的几十年里,在模式生物中大规模鉴定PPIs的实验方法一直在进行。虽然通常被认为是金标准,但PPIs的实验测定取决于特定的实验条件,因此其覆盖范围往往有限。由于实验方法往往是耗时和劳动密集型的,在硅方法中,如基于机器学习(ML)的方法,已经变得越来越流行,以提供可测试的假设和作为补充。

        ML模型通过学习已知PPIs的隐藏特征来预测新的相互作用,并且通常基于相似性标准,即假设共享一个共同的相互作用伙伴的蛋白质应该包含共同的特征。这些特性通常捕获氨基酸序列的物理化学性质、结构相似性、进化同一性、PPI网络伙伴或拓扑性质,其中蛋白质序列特征最受欢迎。氨基酸序列作为蛋白质的一级结构,主要编码蛋白质的功能。考虑到蛋白质序列的丰富,许多研究努力利用蛋白质序列特征来预测PPIs。2005年,Martin等人开发了一种签名分子描述子来编码蛋白质序列,利用支持向量机(SVM)分类器来预测PPIs。同样,Shen等人提出了联合三联体(CT)描述符来表示在一个紧凑的框架[12]中的氨基酸序列的组成。由于CT描述符不适合捕获残基的长程相互作用,而这对描述PPIs 很重要,Guo等人开发了一种自动协方差编码策略来参考残基的邻近效应。其他基于成分频率的编码策略,如组成转换-分布和k间隔氨基酸对的组成(CKSAAP),也被广泛应用于PPI预测2012年,Pitre等人开发了PIPE2,该方法估计查询蛋白与已知PPIs之间的多肽序列相似性,以确定两个蛋白是否相互作用。

        虽然基于序列的方法已被证明是有效的,但单独编码相互作用的蛋白质序列并不能完全捕获所有的ppi相关信息。例如,序列和结构的进化轮廓提供了除了序列组成之外的额外特征,这允许更强大的PPI预测。具体来说,Zahiri等人用位置特异性评分矩阵(pssm)[17]表示相互作用的蛋白,而Hamp和Rost [18]使用的进化谱显示出更高的预测性能和鲁棒性。

        深度学习(DL)技术最近已被应用于预测PPIs[19–21]。特别是,多层感知器和卷积神经网络可以通过嵌入蛋白质序列特征[22–24]来预测PPIs。利用自然语言处理方法,有效地将氨基酸序列转化为高维向量,用于PPI预测[25,26]。DL模型也可以联合用于更好地利用它们的优势。例如,Chen等人结合了卷积神经网络和递归神经网络的优势来预测PPIs,从初级蛋白序列[27]中捕获了局部显著特征和序列特征。

        尽管如此,这种主要基于序列的预测模型低估了蛋白质的结构特征,但蛋白质实际上通过折叠成三维(三维)结构,结合三维结构空间中发挥其他分子的功能。为此,Zhang等人开发了一种成功的结构信息PPI预测方法,首先通过序列和结构比对搜索查询蛋白的复杂模板,然后通过贝叶斯分类器[10,28]预测交互概率。而最突出的障碍包括蛋白质结构特征PPI预测的缺乏准确的大规模蛋白质结构,最近的发展AlphaFold2 [29]允许预测蛋白质单体结构从蛋白质序列的精度与实验方法,提供一个途径来解释蛋白质结构PPIs的预测。

        与线性序列相比,蛋白质的三维结构由于其复杂的拓扑结构,在特征提取方面更具挑战性。为了解决这个问题,一个常用的策略是将蛋白质结构转换为残基网络或图,其中可以将残基视为节点,而残基接触被视为边。图卷积网络(GCN)是捕获这类图结构数据之间的结构关系的最流行的DL模型之一。在蛋白质生物信息学领域,GCN已被广泛应用于蛋白质结合界面预测、蛋白质功能注释和药物发现[30]。例如,Torng等人训练了一个GCN模型,从蛋白质口袋和配体图表示中提取特征,并在普通的虚拟筛选基准数据集[31]上取得了具有竞争力的性能。GCN等人通过整合GCN和一个自然语言模型[32],从计算推断的结构中实现了对蛋白质功能的快速预测。最近,Yuan等人开发了一个基于GCN的模型来预测可能参与与其他蛋白质[33]相互作用的残基。虽然这些残基的相互作用伙伴蛋白在这个模型中没有被明确预测,但其良好的性能至少表明GCN可以作为一种很有前途的描述相互作用残基的结构。另一方面,探索残基网络的GCN表示如何更好地描述特定蛋白质对之间的相互作用并预测特定的PPIs是很有趣的。

        为此,在本工作中,我们建立了一个基于GCN的PPI预测模型、基于结构和图的蛋白质相互作用预测(SGPPI)。为了了解PPIs的结构模式,SGPPI考虑了蛋白质的全局结构特征和潜在蛋白质相互作用界面上的补丁的局部结构特征。此外,SGPPI还将进化轮廓纳入到PPIs的结构表征中,以提高其性能。在下面的章节中,我们将首先介绍基准数据集的构建和SGPPI的实现。然后将描述所提模型的性能评估和相应的分析。

材料和方法:

基准测试数据集的构建

        我们将PPI预测任务视为一对输入问题,表明每对实例(蛋白质)都是模型的输入项。这种对输入问题通常对数据集和模型架构都有特定的要求。对于训练和测试数据集,如Park和Marcotte提到的[34],由于训练和测试集[34]之间共享实例(蛋白质),对输入方法的预测性能可能被高估。换句话说,一个经典的PPI预测模型,训练在一个数据集经常出现类似的蛋白质,容易检测交互蛋白质的过度代表的结果更有可能参与PPI(如枢纽PPI网络)而不是预测特定的PPI。为了避免这种表示偏差,我们使用了三个严格的基准数据集[核心数据集、人类参考交互组(HuRI)数据集和(过滤的)Pan数据集]来对不同PPI预测方法的性能进行基准测试,如下所示

 

        由Hamp和Rost [18]汇编的数据数据集捕获了人类和酵母的PPI数据,这些数据分别从嬉皮V1.2(10/2011)[35]和相互作用蛋白数据库[36]的可靠的人类和酵母相互作用中收集。为了限制蛋白质序列相似性的影响,我们将序列识别阈值设置为40%,从而消除了相互作用蛋白的序列冗余性。在应用如此严格的序列相似性限制后,保留了842个人PPIs和746个酵母PPIs。

        我们收集了HuRI人类数据集和Pan的数据集作为两个替代数据集,以进一步对SGPPI的性能进行基准测试。HuRI人类数据集基于HuRI定位项目,该项目通过高通量酵母双杂交筛选[37]检测到64 000个涉及9000个人类蛋白。这种全面的PPI图使得为PPI预测模型建立一个更大的基准数据集成为可能。我们遵循教授的策略[18],构建了一个包含1706个PPIs的非代表性偏差数据集。原始的Pan的数据集[38](http://www.csbio.sjtu.edu.cn/bioinf/LR_PPI/Data.htm)是基于人类蛋白质参考数据库(HPRD,2007版本),并经常被用作PPI预测[26,27,39]的基准数据集。我们还遵循了教授核的策略来过滤Pan的数据集,并将其转换为一个覆盖1160个PPIs的非代表性偏倚数据集。

        我们应用10倍交叉验证来评估我们的PPI预测模型的性能差异。在所有三个基准数据集中,相互作用的蛋白质对被分为10个亚组进行交叉验证。对于每个亚组,我们随机抽取10倍于正交互的负交互,确保所有这些样本与给定亚组中的正训练PPIs序列不同。在这项工作中,我们绘制了精度召回(PR)曲线参考选择精度和召回之间的整体关系当不同下载https://academic.oup.com/bib/advance-article/doi/10.1093/bib/bbad020/6995378合肥理工大学用户2023年2月03日SGPPI | 3预测阈值应用,主要使用公关曲线下面积(AUPRC)来量化预测性能。.我们还绘制了受试者工作特征(ROC)曲线,以参考敏感性和特异性之间的关系,并使用ROC曲线下面积(AUROC)进行性能测量。此外,我们还介绍了三种常见的性能指标(即精度、召回率和f1分数),用于方法评价和比较。这三个指标被定义为

TP,TN,FP和FN分别代表真阳性、真阴性、假阳性和假阴性样本的数量。

SGPPI的计算框架

        SGPPI使用暹罗网络架构来表示和预测相互作用的蛋白质(图1),其中每个蛋白质都分别被表征。在特征表示模块中,每个蛋白质都由一个基于AlphaFold2提供的三维结构的蛋白质残基接触图来表示。这种无向的残基网络通过蛋白质表面上彼此靠近且可能包含蛋白质结合热点的斑片残基之间的接触而进一步细化。为了获取更多有利于蛋白质结合的局部和进化信息,每个残基进一步标注PSSM谱中的相应值和蛋白质二级结构中的位置。在对这些蛋白质信息进行一系列的图卷积后,将相互作用蛋白质的特征向量合并,以预测一对蛋白质之间通过完全连接层的相互作用的存在(缺失)。

蛋白质结构的图表示

        由于使用残基接触图来表示蛋白质的三维结构,我们从AlphaFold蛋白质结构数据库(https://alphafold.ebi.ac.uk/)中收集了基准数据集中所有蛋白质的三维原子坐标。考虑到并非所有残基对PPIs的贡献相等,我们丢弃相对溶剂可及性<为0.2[40]的残基,从而丢弃埋在蛋白质结构内的残基。

        大量研究表明,蛋白质表面的某些斑块往往包含蛋白质结合热点,这些斑块中的残基往往比其他残基[41–43]更疏水、更保守。特别是,表面和贴片残基决定了蛋白质的结构性质,这表明这些残基可以进一步改善我们的接触图。在这里,我们使用JET2 [44]来识别蛋白质表面的补丁,其中我们定义了一个图G =(V,E),其中V表示所有考虑的表面残基,E表示残基-残基接触。如果任何两个残基的Cα原子的几何距离小于某个阈值(默认为10 A),就确定了一个接触,允许我们用表面/补丁残基的无向图来表示蛋白质结构。随后,对氨基酸序列、蛋白质二级结构、几何特征和进化信息特征进行编码,并映射到无向图中的每个节点(即每个残基)上,并最终集成到我们的GCN框架中。

特征编码

PSSM编码进化信息

        我们使用PSSM谱表示每个氨基酸残基的保守和突变谱,对应一个20维载体,参考一组同源序列中相应位置的20个氨基酸的保守。PSSM配置文件是通过PSI-Basic本地对齐搜索工具[45]搜索在NCBI上的NR90数据库(2019年11月版本)生成的,经过三次迭代,e值截止值为0.0001。

JET2的特征是编码局部和全局几何信息

        JET2是一种专用的蛋白质表面斑块识别算法,它将每个蛋白质界面分为三个结构区域,即种子、延伸和外层。通过计算蛋白质序列中每个残基的保守水平,确定了我们的数据集中的蛋白质种子。然后,JET2通过结合每个残基的进化痕迹、界面倾向和从蛋白质结构中计算出的圆形方差(CVs),基于这些种子扩展了界面补丁。我们将上述特征作为一个五维向量来描述残差接触图中的每个节点(表面残差)。首先,我们使用一个二进制字节来表示残基是否属于由JET2计算出的蛋白质界面,并分别使用两个值来参考原子水平和残基水平上的可及性。其次,CV测量了三维空间中一个不动点周围的一组相邻点的向量分布。因此,每个残基的五维向量中的最后两个值是由JET2计算出的全局CV和局部CV,它们分别描述了整个蛋白质表面和局部残基的几何形状。总的来说,5个JET2描述符很好地描述了不同层次上蛋白质的几何特征,从结构相互作用的角度来看,丰富了残基接触图的节点特征。

蛋白质二级结构信息的一个热编码

        用DSSP [46,47]来鉴定给定蛋白的二级结构。二级结构在DSSP中被八种状态捕获,表明了一个八维单热向量来表征每个残基的二级结构状态。

图卷积神经网络

        在这项工作中,我们利用GCN从蛋白质结构中传播和提取隐藏的特征。给定一个蛋白质由(表面)残留接触映射n节点,GCN的输入包括两部分:邻接矩阵∈Rn∗n和节点特征矩阵X∈Rn∗m,m的特征向量的长度(m = 33在这项工作)。我们使用两层GCN来更新残留物的隐藏特征,更新规则如下:

其中,H为卷积过程中的隐藏状态,l∈{0,1},W (l)为与之相关的权重矩阵GCN的第四层。我们应用ReLU作为非线性激活∼函数。最后,Ai计算如下式:

 

        图1.SGPPI工作效率较低的概述。SGPPI使用暹罗网络架构来表示和预测相互作用的蛋白质。通过识别界面斑块和附近的表面残基,每个蛋白质由AlphaFold2通过一定阈值的残基接触网络图预测其单体结构。我们用节点特征细化了这样的地图,包括(i)通过pssm的残基的进化信息;(ii)在底层蛋白质二级结构中的位置和(iii)全局和局部几何描述符。通过一系列的图网络卷积,合并相互作用蛋白质的特征向量,预测了给定蛋白质对通过全连接层的相互作用概率。

         其中,A表示邻接矩阵。式(1)中的∼D是∼a的对角度矩阵,经过卷积后,所有残基的平均隐藏特征包含了给定蛋白质的相关信息。对于对输入蛋白,一个类似暹罗的体系结构通过参数共享GCN获得提取良好的特征s1和s2。计算了给定的一对蛋白质之间相互作用的概率

 其中,为阿达玛乘积,f为全连通的前馈神经网络。

预测PPIs的基线方法

基线编码策略

        我们采用两种典型的基于成分的编码方案作为蛋白质序列的基线描述符: (i)氨基酸组成(AAC)ref表示给定蛋白质序列中20个标准氨基酸的百分比,公式如下:

其中fi是某种氨基酸与特定蛋白质中所有氨基酸的比例。(ii)CKSAPP是由所有可能的400种氨基酸对组合归一化的k间隔氨基酸对的速率。CKSAAP可以表述为

 

 其中,f是一个特定的k-间隔的氨基酸对与给定蛋白质中所有可能的氨基酸对的比率。在这项工作中,我们设置了k = 0,1,2,3,指出将一个蛋白质序列表示为一个1600维的向量。

 基线ML方法

        随机森林(RF)和SVM是目前常用于各种生物信息学预测问题的两种经典ML方法。我们将这两种经典方法与SGPPI作为基线方法进行了比较。RF和SVM是通过Python中的皮肤学习库实现的。采用网格搜索方法对RF和SVM中的参数进行优化。其中,在采用CKSAAP编码的RF模型中,优化后的n_estimators和max_depth分别为300和12。在采用AAC编码的RF模型中,优化后的n_estimators和max_depth分别为100和9。在SVM模型中,我们选择了常用的“rbf”作为核函数,优化后的C和gamma分别为0.1和16。

结论

整体绩效基准测试策略

        为了衡量SGPPI的预测性能,我们主要使用PR和ROC曲线,通过对以下三个PPI数据集进行10倍交叉验证来衡量预测因子的性能。教授内核人类数据集已被广泛用于测试PPI预测方法的性能,[18,48]。

表1。不同的最先进的PPI预测方法在教授内核数据集上的性能

         其中包含842个阳性样本和相应的8420个阴性PPI样本。为了更全面地测试预测器的性能,我们还从HuRI映射项目[37]和HPRD中收集了实验验证的PPI,作为两个无偏的大数据集替代方案(即HuRI数据集和Pan数据集)。通过针对蛋白质实例冗余采用相同严格的数据集准备策略,每个数据集不允许具有相似序列的蛋白质出现在训练和测试样本中。虽然测试样本中的所有蛋白质与正训练样本相比都有所不同,但测试样本和负训练样本中的蛋白质可以是相似的。因此,任何预测模型都不能简单地通过与训练PPIs中已知蛋白质的相似性来预测PPIs,这表明所有这三个数据集都是非表示偏差的基准数据集。

对人类数据集的性能评估

        为了评估SGPPI的预测能力,我们将其性能与已经在人类SGPPI数据集[48]上测试的方法进行了比较,包括基于序列的方法,如SGPPI、PIPE2和SigProd。简而言之,蛋白质[18]使用进化谱,而SigProd [11]代表一个3个序列,通过SVM分类蛋白质之间的相互作用。如果相互作用蛋白的子序列在正训练集[16]中更频繁,则PIPE2预测PPI。我们还将SGPPI的性能与最近最先进的方法PIPR进行了比较,该方法使用深度残差循环卷积神经网络(CNN)来捕获蛋白质序列的局部特征和上下文化信息。值得注意的是,据报道,在预测二进制PPIs [27]时,PIPR与其他最先进的方法相比,取得了最好的性能。由于正/负数据不平衡,PR曲线首选ROC曲线作为综合性能衡量指标。.特别是,我们观察到,通过GCN整合蛋白质序列、进化、结构和几何信息的SGPPI在使用AUPRC度量的大核心人类数据集上显著优于所有四种最先进的方法(表1)。

在替代数据集上的性能基准测试

我们引入了两个可选的数据集(即HuRI数据集和Pan的数据集)来进一步评估SGPPI的性能。特别是,我们比较了SGPPI与更传统的ML方法的性能,如RF和SVM,其中我们通过AAC和CKSAPP的载体来表示相互作用的蛋白质序列。而传统的ML方法在两个HuRI数据集上都没有很好地表现出来(图2A)

 图2。通过对两个备选数据集的10倍交叉验证所获得的预测性能。(A,B)在HuRI人类数据集上的性能。(C,D)在Pan的数据集上的性能。利用(A,C)AUPRC和(B,D)AUROC作为预测性能指标,我们观察到SGPPI明显优于传统的PPI预测方法,包括随机森林(RF)和SVM,其中相互作用的序列由AAC和k间隔氨基酸对(CKSAPP)的向量表示。采用配对t检验来确定两种模型的性能的统计学意义。B)和Pan的数据集(图2C和D),PR曲线和ROC曲线表明,SGPPI在这两个更全面的数据集中普遍优于最先进的DL模型PIPR。通过引入更多的性能测量,表2和表3进一步量化了SGPPI与两种传统ML模型和PIPR方法相比的性能,突出了SGPPI显著更好的精度和F1-socre。

分析了SGPPI的信息特性

        构建与AlphaFold2那样的残基接触图是表示底层蛋白质结构的关键步骤。如果任意两个残基的Cα原子距离小于某一阈值,则认为有两个残基是接触的。具体来说,我们通过对教授内核人类数据集的交叉验证测试,确定了10 A为几个阈值中的最佳距离截止点(图3A)。

        我们还关注了结构信息对SGPPI性能的贡献。该结构信息是通过由单体结构衍生的残基接触图以及残基接触图中每个节点的残基特异性结构特征来编码的。通过烧蚀实验评估每个残基结构特征的重要性,我们首先观察到,即使完全保留了原始的残基接触图,结构特征的去除也大大降低了模型的性能(图3B)。此外,正如直觉上所预期的那样,残基接触图也大大有利于相互作用蛋白的结构表征。特别地,我们保持接触图中的边缘固定,以保持全局度分布不变,但关闭导致所有节点的位置(即保持度关闭)。.为了保证足够的随机化,关闭后每个节点的新位置应该与原来的位置不同。我们在置换的残基接触图上重新训练了我们的模型,结果表明,残基接触图的排列可能导致SGPPI的性能急剧下降,平均AUPRC从0.4225下降到0.3118(图3B)。

        最后,在残基接触图中节点的选择方面,我们提供了一个人类非经典主要组织相容性复合体的例子来说明包含蛋白质表面斑块的重要性。HLAI类组织相容性抗原,蛋白质表面斑块上的局部结构信息在蛋白质结构表征中的重要性(图3C)。总之,通过各种信息结构特征的扰动,可以观察到适度到高的性能降低。

表2.通过对HuRI数据集进行10倍交叉验证来评估的预测性能指标

a表中显示的所有指标都是10倍交叉验证的平均值。b我们使用最大f1分数对应的阈值来确定TP、FP、TN和FN的值。

表3.通过对Pan数据集的10倍交叉验证评估的预测性能指标

 a表中显示的所有指标都是10倍交叉验证的平均值。b我们使用最大f1分数对应的阈值来确定TP、FP、TN和FN的值。

 

 图3。并对SGPPI中的信息性结构特征进行了分析。(A)SGPPI模型在粒子数据集上使用三个不同的阈值构造剩余接触图。(B)烧蚀实验表明了各种结构特征对SGPPI模型性能的贡献。采用配对t检验来确定两种模型的性能的统计学意义。(C)为了表明贴片残基的重要性,我们使用实际的(左图)和在蛋白质表面随机取样的贴片(右图)确定了B2M和HLA-E与SGPPI之间的相互作用得分。值得注意的是,由于中断了这些残留的补丁信息,预测分数显著下降。补丁残留在蛋白质表面表示上突出显示。

图4.不同预测方法在跨物种测试中的性能。我们在人类相互作用数据上训练了几种基于序列的方法和SGPPI,并测试了这种模型预测酵母中PPIs的能力。特别是,我们使用了RF和支持向量机,其中我们通过CKSAPP表示相互作用的蛋白质。PR和ROC分析清楚地表明,SGPPI模型的幼稚转移对底层编码的结构信息的敏感性低于序列信息。面板(A)和(B)中的虚线显示了随机预测的性能,对应的AUPRC和AUROC分别为0.091和0.500

蛋白质表面斑块上的局部结构信息在蛋白质结构表征中的重要性(图3C)。总之,通过各种信息结构特征的扰动,可以观察到适度到高的性能降低。

跨物种预测试验

       不同物种的蛋白质序列组成可能有很大的差异,而蛋白质结构相对较为保守。由于SGPPI的预测模型更大程度上依赖于结构信息而不是序列信息,我们推测天真地转移训练模型来预测不同物种的PPIs可能比基于序列的方法更可靠。为了验证这一假设,我们特别是,我们测试了SGPPI和其他基于序列的方法的跨物种预测能力,通过在人类HuRI数据集上训练大量的非代表偏倚PPIs和预测酵母中的PPIs,使用ᾯ酵母数据集作为测试标准。由于使用来自不同物种的蛋白质进行训练和测试,传统的基于序列编码的ML方法,如RF和SVM,使用蛋白质序列的CKSAAP编码,很难应对这样一个困难的任务(图4和补充表S1可在http://bib.oxfordjournals.org/在线获得)。反过来,SGPPI的表现与人类的PPI预测相同(图2和图4),这表明编码的结构信息更稳健,有利于发现跨物种的PPI。

讨论和结论

        PPIs的鉴定对于理解蛋白质的功能机制至关重要。利用计算方法预测PPIs一直是生物信息学领域的一个重要课题。然而,传统的ML模型很容易受到数据集中的偏差的影响。具体来说,当训练集和测试集之间存在某些共享的蛋白质成分时,这些模型经常被高估。因此,经典的预测场景不适合评价预测新的PPI或跨物种PPI预测的性能。在这项工作中,我们构建了严格的数据集,其中阴性和阳性测试蛋白对都允许序列-与负训练蛋白对相似,但必须序列与任何训练PPIs不同。在如此严格的场景下,预测对于处理新的蛋白质预测和跨物种预测更有意义。

        通过使用严格的基准数据集,我们引入了一个基于GCN的框架,SGPPI,来处理PPI预测问题。随着AlphaFold2的出现,我们可以很容易地获得蛋白质结构,这为预测PPIs提供了更直观和更稳健的信息。SGPPI首先根据这些蛋白质结构计算了残基接触图。我们将残差接触映射视为一个无向图,其中残差为节点,残差接触为边。我们不只是简单地利用常用的序列特征表示,而是将蛋白质视为蛋白质界面补丁的集合,并整合了这些补丁中每个残基的全局和局部结构特征。此外,还考虑了一套全面的蛋白质序列和结构特征,包括残基保守信息、蛋白质二级结构类型和全局和局部几何描述符。通过在残基图中分配具有丰富生物特征的节点,进一步整合和丰富了图中存储的蛋白质信息。此外,GCN还可以通过图中的连接有效地传播和更新节点特征的信息。超过基本的GCN结构,处理对输入预测问题,SGPPI的DL模型实现耦合特征提取两个输入蛋白质通过暹GCN架构,然后通过特征合并和全连接层预测给定的蛋白质对的交互概率。

        与以往基于序列的PPI方法在具有挑战性的数据集下相比,SGPPI表现出了较强的鲁棒性和较高的精度。这一结果表明,在筛选序列和进化信息的情况下,结构信息的引入确实可以提高PPI预测的性能。特别是,蛋白质斑块对PPIs预测的贡献已经在消融实验中得到了证实(图3B和C)。跨物种预测的结果也证实了预测PPIs的结构信息可以有效地处理新蛋白。值得注意的是,SGPPI的绝对性能指标(AUPRC或其他指标)很大程度上依赖于使用严格的内核策略的数据集的严格性质。如果我们使用原始的Pan的数据集准备,其中没有应用教授内核的策略,就可以获得非常显著的性能(补充表S2可在http://bib.oxfordjournals.org/在线获得)。但如上所述,对于评估新的PPI预测,严格的场景被认为是必要的[18,34],SGPPI在严格的数据集上实现的性能改进可以被认为是实质性的。我们相信SGPPI可以为有效地引入结构信息提供新的途径,并希望SGPPI的发展将进一步促进PPI预测的发展。

        关键点SGPPI是一个基于结构的DL框架,用于使用图卷积神经网络来预测PPIs。•SGPPI集成了结构的全局和局部特征,并在残基接触图上应用卷积来捕获蛋白质的特征。与最先进的基于DLs的方法相比,•SGPPI在严格的基准数据集上取得了具有竞争力的性能

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
"Structure-Aware Transformer for Graph Representation Learning"是一篇使用Transformer模型进行图表示学习的论文。这篇论文提出了一种名为SAT(Structure-Aware Transformer)的模型,它利用了图中节点之间的结构信息,以及节点自身的特征信息。SAT模型在多个图数据集上都取得了非常好的结果。 以下是SAT模型的dgl实现代码,代码中使用了Cora数据集进行示例: ``` import dgl import numpy as np import torch import torch.nn as nn import torch.nn.functional as F class GraphAttentionLayer(nn.Module): def __init__(self, in_dim, out_dim, num_heads): super(GraphAttentionLayer, self).__init__() self.num_heads = num_heads self.out_dim = out_dim self.W = nn.Linear(in_dim, out_dim*num_heads, bias=False) nn.init.xavier_uniform_(self.W.weight) self.a = nn.Parameter(torch.zeros(size=(2*out_dim, 1))) nn.init.xavier_uniform_(self.a.data) def forward(self, g, h): h = self.W(h).view(-1, self.num_heads, self.out_dim) # Compute attention scores with g.local_scope(): g.ndata['h'] = h g.apply_edges(fn.u_dot_v('h', 'h', 'e')) e = F.leaky_relu(g.edata.pop('e'), negative_slope=0.2) g.edata['a'] = torch.cat([e, e], dim=1) g.edata['a'] = torch.matmul(g.edata['a'], self.a).squeeze() g.edata['a'] = F.leaky_relu(g.edata['a'], negative_slope=0.2) g.apply_edges(fn.e_softmax('a', 'w')) # Compute output features g.ndata['h'] = h g.update_all(fn.u_mul_e('h', 'w', 'm'), fn.sum('m', 'h')) h = g.ndata['h'] return h.view(-1, self.num_heads*self.out_dim) class SATLayer(nn.Module): def __init__(self, in_dim, out_dim, num_heads): super(SATLayer, self).__init__() self.attention = GraphAttentionLayer(in_dim, out_dim, num_heads) self.dropout = nn.Dropout(0.5) self.norm = nn.LayerNorm(out_dim*num_heads) def forward(self, g, h): h = self.attention(g, h) h = self.norm(h) h = F.relu(h) h = self.dropout(h) return h class SAT(nn.Module): def __init__(self, in_dim, hidden_dim, out_dim, num_heads): super(SAT, self).__init__() self.layer1 = SATLayer(in_dim, hidden_dim, num_heads) self.layer2 = SATLayer(hidden_dim*num_heads, out_dim, 1) def forward(self, g, h): h = self.layer1(g, h) h = self.layer2(g, h) return h.mean(0) # Load Cora dataset from dgl.data import citation_graph as citegrh data = citegrh.load_cora() g = data.graph features = torch.FloatTensor(data.features) labels = torch.LongTensor(data.labels) train_mask = torch.BoolTensor(data.train_mask) val_mask = torch.BoolTensor(data.val_mask) test_mask = torch.BoolTensor(data.test_mask) # Add self loop g = dgl.remove_self_loop(g) g = dgl.add_self_loop(g) # Define model and optimizer model = SAT(features.shape[1], 64, data.num_classes, 8) optimizer = torch.optim.Adam(model.parameters(), lr=0.005, weight_decay=5e-4) # Train model for epoch in range(200): model.train() logits = model(g, features) loss = F.cross_entropy(logits[train_mask], labels[train_mask]) optimizer.zero_grad() loss.backward() optimizer.step() acc = (logits[val_mask].argmax(1) == labels[val_mask]).float().mean() if epoch % 10 == 0: print('Epoch {:03d} | Loss {:.4f} | Accuracy {:.4f}'.format(epoch, loss.item(), acc.item())) # Test model model.eval() logits = model(g, features) acc = (logits[test_mask].argmax(1) == labels[test_mask]).float().mean() print('Test accuracy {:.4f}'.format(acc.item())) ``` 在这个示例中,我们首先加载了Cora数据集,并将其转换为一个DGL图。然后,我们定义了一个包含两个SAT层的模型,以及Adam优化器。在训练过程中,我们使用交叉熵损失函数和验证集上的准确率来监控模型的性能。在测试阶段,我们计算测试集上的准确率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值