不管是 Spectral-GNN 还是 Spatial-GNN 最后都是收集领域节点的特征信息来更新自己的节点信息。只是出发点不同。
Spatial-GNN:是直接推广 CNN 的加权求和思想,使用不同的领域节点采样方法和不同加权求和方法来更新节点特征。
Spectral-GNN:是从 CNN 的卷积定理,f 和 g 的卷积是 f 和 g 傅里叶变换之后乘积的傅里叶逆变换。然后通过拉普拉斯矩阵来实现傅里叶变换和逆傅里叶变换。
虽然看上去差别较大,但是都是殊途同归的,最后发现 Spectral-GNN 最后也可以看成一个采样领域节点和加权求和的方式,可以把 GCN 看成很多 Spatial-GNN 的特例,例如 Monet 和 GraphSAGE 等。
Spectral-GNN 基于图信号处理中的谱理论,将图上的节点表示为傅里叶基函数的线性组合,并利用拉普拉斯矩阵的特征向量进行变换和特征提取。Spectral-GNN 的优点是能够考虑全局信息,适用于具有较为规则的拓扑结构的图,但对于非规则的图结构表现不佳。
Spatial-GNN 则基于空间结构,通过卷积运算在局部邻域内进行信息传递,直接处理节点之间的几何关系,适用于具有非规则的图结构。Spatial-GNN 的优点是可以处理不同类型的图结构,具有很好的可扩展性。
需要根据具体的任务需求来选择合适的 GNN 架构。如果任务需要考虑全局信息,且图具有较为规则的拓扑结构,则可以选择 Spectral-GNN;如果任务需要处理非规则的图结构,则可以选择 Spatial-GNN。实际应用中,也可以结合两种架构的优点,设计混合型的 GNN 模型,以提高性能。