Equivariant¶
Equivariant 等变性是物理中的一个关键性质,在物理中,等变性是指物理定律在某种变换下保持不变。例如,牛顿第二定律在平移变换下保持不变,这就是等变性。在物理中,等变性是物理定律的数学表达,是物理定律的数学基础。
Mathematical Definition
令\(G\)是一个抽象群,\(g \in G\),我们说一个变换函数(或神经网络层)\(\phi: X \to Y\)是\(g\)等变的,如果:
对于一个在\(X\)上定义的变换函数\(T_g: X \to X\)对应存在一个在输出空间\(Y\)上的等价变换函数\(S_g: Y \to Y\),使得:
这里讨论三种等变性:
-
Translation 平移等变性:将输入平移会导致输出产生相对应的平移。
\[ \mathbf{y} + \mathcal{g} = \phi(\mathbf{x} + \mathcal{g}) \] -
Rotation 旋转等变性:将输入旋转会导致输出产生相对应的旋转。
对于任何正交矩阵\(Q\),令 \(Qx=(Qx_1, \dots, Qx_n)\),那么:
\[ Qy = \phi(Qx) \] -
Permutation 置换等变性:
\[ P(y) = \phi(P(x)) \]其中\(P\)是行索引上的置换
GNN是置换等变的。
EGNN¶

Abstract
GNN在处理图数据时具有很强的表达能力,但是GNN的问题在于只关心拓扑关系(节点之间的连接),而忽略了节点的几何信息(节点的位置)。如果我们要设计一个既能注意拓扑也能注意几何信息的网络,那么他必须具备等变性。
Summary
EGNN通过引入GNN节点中所不具有的节点位置\(x_i\),并将其纳入图卷积层的更新方式来使得GNN具有等变性。
我们来看一下具体的实现方法:
Note
这里放一下同一notation下两种更新算法


主要区别就是在对于消息传递的更新上,以及补充了一下我们加入的位置坐标的更新方式
-
(3)
在边操作\(\phi_e\)中,我们加入了节点之间位置距离的平方项\(||x_i-x_j||^2\),而距离的平方是一个标量,对于旋转和位移是不变的(invariant)。其余的信息与GNN一致都是标量,所以输出的消息也是不变的。
-
(4)
对于位置的更新十分重要。在这个公式中,每个粒子的位置是通过所有相对差值的加权和来更新的,这个权重由位置操作函数\(\phi_x: \mathbb{R}^d \to \mathbb{R}^1\)来计算,输入得到的消息信息,输出一个标量值。C被选为\(\frac{1}{M-1}\)。而其中的向量差的合,因为是等变向量,所以整个式子是等变✖️不变,依然是等变的。
EDM¶

Summary
留言