谱GNN中的低通、高通滤波器
结论:
- \(F_L = \epsilon I + D^{-1/2}A D^{-1/2}= (\epsilon + 1) I - L\)是低通(low-pass)滤波器(当\(\epsilon=0\), \(F_L=I-L=I-I+A=A\), 所以\(A\)是低通滤波器)
- \(F_H= \epsilon I - D^{-1/2} A D^{-1/2} = (\epsilon-1)I + L\)是高通(high-pass)滤波器(当\(\epsilon=1\)的时候,\(F_H=L\),所以\(L\)是高通滤波器
解释
首先回顾一下GNN的滤波过程:
其中,\(g_\theta\)相当于对不同频率(特征值)的信号进行re-weight。我们知道,特征值其实就是对应特征向量的平滑程度,即频率(因为\(x^TLx = \sum_{v_i \in V} \sum_{v_j \in N(v_i) (x[i] - x[j])^2}\))。因此,如果对使得较小特征值获得更大的权重,那么会保留更多低频的信息;如果使得较大特征值获得更大的权重,那么会保留更多高频的信息。
从谱域来看,
- \(F_L \cdot x = ((\epsilon+1)I - L)x = U[(\epsilon+1)I - \Lambda]U^Tx\)
- \(F_H \cdot x = ((\epsilon-1)I + L)x = U[(\epsilon-1)I + \Lambda]U^Tx\)
画出\(g_\theta\)的函数:
- 由(a), (b)可以发现\(F_L\)对应的\(g_\theta\)加强了较小的特征值,而减弱了较大的特征值,因此是一个低通滤波器。
- 由(c), (d)可以发现\(F_H\)对应的\(g_\theta\)减弱了较小的特征值,而加强了较大的特征值,因此是一个高通滤波器。
\(I\)对应的滤波器可以称为all-pass的,因为\(U I U^T x = x\)
思考
-
关于 当\(\epsilon=1\)的时候,\(F_H=L\),所以\(L\)是高通滤波器 的理解
在这种情况下,\(F_H x = L x = U \Lambda U^T x\),所以此时的\(g_\theta = x\),对低通分量的加权要小于高通分量,因此称为高通滤波器。