该文章发表在nature上,香港科技大学团队合作的一篇文章,模型整体的框架主要分为三个部分,顶部视图,底部视图和全连接层预测。底部试图主要是由蛋白质网络构成,其中氨基酸残基为节点,边为两个残基之间的3d坐标距离,通过一个两层的图卷积层,经过归一化处理,以及自注意力池化聚合得到蛋白质的节点信息。然后将得到的蛋白质节点信息X_t作为顶部视图的一个特征输入,输入到一个图同构网络中去进行训练,这里解释一下为什么使用一个图同构,是因为想要进行对图的一个分类,主要是体现在对属于同构图的进行一个分类过程。在图同构模型中它的边属性主要是针对蛋白质的相互作用信息的提取过程。最终根据全连接层进行一个预测。
SAG (Self-Attention Graph) pooling是一种基于自注意力机制的图池化(graph pooling)方法,用于处理图形数据。它可以将一个图形数据集中的节点(节点可以代表对象、事件、概念等)聚合成一个固定长度的向量表示,以便于后续的图形分类、图形聚类、图形生成等任务。
SAG pooling的基本思想是对于每个节点,计算它与所有其他节点之间的相似度,并使用这些相似度来加权计算该节点的邻居节点的特征的加权和。这个加权和被认为是该节点的池化表示,其中邻居节点的特征被认为是该节点的上下文信息。与传统的图池化方法不同,SAG pooling不需要预定义固定的池化操作,并且具有更强的表示能力和灵活性。
具体地说,SAG pooling的计算过程可以分为以下几步:
对于每个节点i,计算它与所有其他节点j之间的相似度s(i,j),可以使用点积或其他相似度度量方法。
对于每个节点i,使用相似度作为权重来加权计算该节点的邻居节点j的特征向量v(j)的加权和,即:
g(i) = sum(s(i,j) * v(j)) / sum(s(i,j))
其中,sum(s(i,j))表示节点i与所有邻居节点j之间的相似度之和。
将所有节点的池化表示g(i)组合成一个固定长度的向量表示,以便于后续的图形分类、图形聚类、图形生成等任务。
SAG pooling在处理图形数据时具有很好的效果,因为它可以根据每个节点的上下文信息动态地调整节点的池化表示,从而更好地捕捉节点之间的关系和图形的全局结构。SAG pooling也可以与其他神经网络模型(如图卷积网络)结合使用,以提高对图形数据的表示能力和泛化能力。
SAG pooling和自注意力机制是两种不同的技术,尽管它们都涉及到注意力机制,并且都用于处理序列或图形数据。
自注意力机制是一种计算相对位置编码的技术,它可以在序列或图形数据中建模不同位置之间的依赖关系。在自注意力机制中,输入序列或图形数据被表示为一组向量,这些向量被称为“查询”(query)、“键”(key)和“值”(value)向量。对于每个查询向量,自注意力机制会计算它与所有键向量之间的相似度,并使用这些相似度作为权重来加权计算所有值向量的加权和,从而得到一个加权和作为该查询向量的特征表示。这个过程可以看作是在对输入序列或图形数据的不同位置进行自注意力池化,并生成一个全局的表示。
SAG pooling是一种用于图形数据的池化技术,它可以将一个图形数据集中的节点聚合成一个固定长度的向量表示,以便于后续的图形分类、图形聚类、图形生成等任务。在SAG pooling中,对于每个节点,计算它与所有其他节点之间的相似度,并使用这些相似度来加权计算该节点的邻居节点的特征的加权和,从而得到一个加权和作为该节点的池化表示。这个过程可以看作是在对图形数据的不同节点进行自注意力池化,并生成一个全局的表示。
因此,两者的区别在于自注意力机制注重于建模序列或图形数据中不同位置之间的依赖关系,而SAG pooling注重于将图形数据中的不同节点池化成一个全局的向量表示。同时,自注意力机制可以用于处理序列数据和图形数据,而SAG pooling主要用于处理图形数据。
SAG pooling 和图注意力机制(Graph Attention Mechanism)都是用于处理图形数据的注意力机制技术,它们都可以将一个图形数据集中的节点聚合成一个固定长度的向量表示,以便于后续的图形分类、图形聚类、图形生成等任务。但是,它们之间也存在一些不同之处:
基本思想不同:SAG pooling在计算节点的池化表示时,使用自注意力机制来计算节点与邻居节点之间的相似度,然后将邻居节点的特征向量加权求和作为节点的池化表示。而图注意力机制则是基于节点之间的关系来计算节点之间的相似度,并将邻居节点的特征向量加权求和作为节点的表示。
注意力权重计算方式不同:SAG pooling使用自注意力机制来计算权重,而图注意力机制则使用可学习的注意力权重来计算邻居节点的权重。
网络结构不同:SAG pooling是一种池化技术,可以与其他神经网络模型结合使用,如图卷积网络(GCN)等,以提高对图形数据的表示能力和泛化能力。而图注意力机制通常是与图神经网络(GNN)模型结合使用的,以进行节点分类、节点聚类等图形任务。
适用范围不同:SAG pooling通常用于处理大规模图形数据,如社交网络、蛋白质结构预测等。而图注意力机制可以用于各种类型的图形数据,如知识图谱、图像等。
综上所述,SAG pooling和图注意力机制都是重要的图形数据处理技术,它们在计算方式、注意力权重计算方式、网络结构和适用范围等方面有所不同,可以根据具体应用场景选择适合的技术。
文章链接:/articles/s41467-023-36736-1
如果觉得《用于蛋白质-蛋白质相互作用预测的层次图学习》对你有帮助,请点赞、收藏,并留下你的观点哦!