Hyperbolic Graph Neural Networks

在这里插入图片描述代码:https://github.com/facebookresearch/hgnn
补充知识:

  • 双曲几何:将欧几里得的第五条公设——平行公设换成了 :过直线外一点P至少可以找到两条相异的直线,与已知直线平行。与之对应的椭圆几何则没有直线与已知直线平行,因为任意两条直线都会相交,比如在球体上的直线。
    最右边的为双曲空间(Hyperbolic space)。
    在这里插入图片描述

  • 拓扑空间
    定义: 设 X X X是一个集合, T \mathscr{T} T X X X的一个子集族,如果 T \mathscr{T} T满足如下条件:
    (1) X X X ∅ ∈ T \varnothing \in \mathscr{T} T;
    (2) 若 A , B ∈ T A,B\in \mathscr T A,BT, 则 A ∩ B ∈ T A\cap B\in\mathscr{T} ABT;
    (3) 若 T 1 ⊂ T \mathscr{T}_1\subset\mathscr{T} T1T, 则 ∪ A ∈ T 1 A ∈ T \cup_{A\in \mathscr{T}_1}A\in \mathscr T AT1AT,
    则称 T \mathscr{T} T X X X的一个拓扑。
    如果 T \mathscr{T} T是集合X的一个拓扑,则称偶对 ( X , T ) (X,\mathscr{T}) (X,T)是一个拓扑空间。集合 T \mathscr{T} T的每个元素称为拓扑空间 ( X , T ) (X,\mathscr{T}) (X,T)(或X)中的一个开集。

  • 拓扑流形的数学定义可以表述为[3]:
    设M是豪斯多夫空间(拓扑里边可以用邻域分开的可分空间),若对任意一点 x ∈ M {\displaystyle x\in M} xM,都有x在M中的一个邻域U同胚于m维欧几里得空间 R m {\displaystyle R^{m}} Rm的一个开集,就称M是一个m维流形或 m维拓扑流形。(同胚简单理解就是存在一个连续的双射)


  • 群(group)就是一种集合加上一种运算的代数结构。群有几个运算性质,“凤姐咬你": 封闭性,结合律,幺元,还有逆.
    李群(流形) 李代数(切空间)https://zhuanlan.zhihu.com/p/47330137
    李群空间的任意一个旋转矩阵R都可以用李代数空间的一个向量的反对称矩阵指数来近似。李代数具有很好的性质,可以满足加法乘法封闭,而李群不能满足加法封闭。
    在这里插入图片描述所以从流形到切空间是要用对数映射完成的,而从切空间到流形用的是指数映射
    可以这么理解:从切空间(相当于是一个欧氏空间)到流形,我们采用的是指数映射,因为指数随x增大,其增长越快,可以符合我们对双曲空间庞伽莱球的理解,反过来从流形到切空间是对数,效果恰好相反。

  • 模式崩溃(mode collapse): 给定数据集合,我们用编码映射将其映入隐空间中,每个数字对应一个团簇,即MNIST数据的概率分布密度函数具有多个峰值,每个峰值被称为是一个模式(mode)。理想情况下,生成模型应该能够生成10个数字,如果只能生成其中的几个,而错失其它的模式,则我们称这种现象为模式崩溃(mode collapse)。例如,我们用MNIST数据集训练GAN模型,训练后的GAN只能生成十个数字中的某一个;或者在人脸图片的实验中,只生成某一种风格的图片。

摘要

受几何表示学习最近进展的鼓舞,我们提出一个新的GNN架构,该架构用可微的指数函数和对数映射在黎曼流形上学习表示。我们提出了一种可扩展的算法,与欧几里得几何和双曲线几何相比,该算法可以对图的结构特性进行建模。我们在实验中也证明了双曲图神经网络(GNNs)在各种基准数据集上的表现有实质性的提升。

贡献

  • 我们推广图神经网络作为未知的流体,然后展示了双曲图神经网络可以对整个图分类带来实质性的提升;
  • 比起欧几里得领域,HGNNs可以更加高效的捕捉合成数据的结构特性,所以可以更加准确的预测化学分子的特性。也可以预测大尺度的网络的额外特性,比如区块链交易图的家和波动,可以充分利用数据的层次结构信息。

Hyperbolic Graph Neural Networks

预备:

  • W k ∈ R h × h W^k \in \mathbb{R}^{h\times h} WkRh×h
  • A ~ = D − 1 / 2 ( A + I ) D − 1 / 2 \tilde{A}=D^{-1/2}(A+I)D^{-1/2} A~=D1/2(A+I)D1/2 A是图邻接矩阵
  • I ( u ) \mathcal{I}(u) I(u)是节点 u u u的邻域
    在这里插入图片描述

黎曼流形上的图神经网络

我们推广了图卷积网络的概念,使得网络在黎曼流形上运行,并且与底层空间无关。
在这里插入图片描述这第 k 层的节点表示 h v k ∈ M \mathbf{h}^k_v\in \mathcal{M} hvkM使用了切空间的一个点 x ′ ∈ M \mathbb{x}' \in \mathcal{M} xM的对数映射 l o g x ′ log_{x'} logx,然后应用指数映射 e x p x ′ exp_{x'} expx将线性变换后的切向量映射回流形。
这里将非线性映射 σ \sigma σ放在exp 后面,是为了防止出现模式崩溃,因为如果将指数exp 放在 σ \sigma σ后,然后后面输入的时候又使用了对数,相当于相互抵消了,这样就将模型崩溃到vanilla Euclidean, 也就是对数与指数起不到人任何作用了。
为了保证这个非线性映射是保流形的,即 σ : M → M \sigma :\mathcal{M} \to\mathcal{M} σ:MM,我们将对特定的流形提出可能的选择。

黎曼流形

黎曼流形 ( M , g ) (\mathcal{M},g) (M,g)是一个实值光滑流形,且在点 x ∈ M x\in\mathcal M xM定义了内积 g X : T x M × T x M → R g_X:\mathcal{T_xM\times T_xM}\to\mathbb{R} gX:TxM×TxMR,这个内积也称作黎曼度量,可以让我们定义空间的角度和曲线长度等几何性质。

下面是欧式空间与两种双曲流形上的两种双曲模型的对比。这两种模型上定义了距离。以及其对应的指数映射和对数映射。

欧几里得空间

欧几里得流形是0曲率的流形,其度量张量是一单位阵,其测地线,也就是最短程线是一直线,两个点之间的距离定义为:
在这里插入图片描述指数映射定义为:
在这里插入图片描述对数映射定义为:
在这里插入图片描述为了欧式流形的公式与(2)中GCN模型等价。我们选择 x ′ = x 0 x'=x_0 x=x0作为其不动点,我们在不动点的切空间进行操作。

庞伽莱球模型

庞伽莱球模型是具有常负曲率的黎曼流形。表示为 ( B , g x B ) (\mathcal{B},g^{\mathcal B}_x) (B,gxB),其中 B = { x ∈ R n : ∣ ∣ x ∣ ∣ < 1 } \mathcal B =\{x\in \mathbb R^n:||x||<1\} B={xRn:x<1}为单位开球,其度量张量为 g x B = λ x 2 g E g^{\mathcal B}_x=\lambda_x^2g^E gxB=λx2gE,这里 λ x = 2 1 − ∣ ∣ x ∣ ∣ 2 \lambda_x=\frac{2}{1-||x||^2} λx=1x22是保角系数, g E g^E gE是欧氏度量张量,也就是一单位阵。 流形上的两点距离为:
在这里插入图片描述任取流形空间中的一点 x ∈ B x\in \mathcal B xB, 以其作为支点,我们可以求出其的切空间,并且利用这个 x 可以建立从流形到切空间的一一映射,从切空间到流形空间我们使用的是指数映射 e x p x : T x B → B exp_x :\mathcal{T_xB\to B} expx:TxBB
在这里插入图片描述 其中 v ≠ 0 v\neq0 v=0属于切空间 T x B \mathcal{T_xB} TxB.
然后从流形到切空间使用的是对数映射 l o g x : B → T x B log_x:\mathcal{B\to T_xB} logx:BTxB
在这里插入图片描述这里 y ≠ 0 ∈ B y\neq0\in\mathcal B y=0B.
这里的运算 ⊕ \oplus 是莫比乌斯和。对任意 x , y ∈ B x,y\in\mathcal B x,yB:
在这里插入图片描述类似于欧几里得空间,我们同样令 x ′ = x 0 x'=x_0 x=x0。而且我们这里要用基于像素的范数递减的非线性映射,即 ∣ σ ( x ) ∣ ≤ ∣ x ∣ |\sigma(x)|\leq|x| σ(x)x,比如ReLU或者leaky ReLU,因为 ∣ ∣ σ ( x ) ∣ ∣ ≤ ∣ ∣ x ∣ ∣ ||\sigma(x)||\leq||x|| σ(x)x保证了 σ : B → B \sigma:\mathbb B\to \mathbb B σ:BB.

洛伦兹模型

洛伦兹模型比起上面的庞伽莱距离具有更好的数值稳定性,因为我们的模型具有一系列的指数和对数操作,所以其对我们的模型更加有作用。
x , y ∈ R n + 1 x,y\in\mathbb R^{n+1} x,yRn+1,洛伦兹数量积定义为:
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

基于中心体的回归和分类

双曲图卷积经过K步生成节点表示 { h 1 K , . . . , h ∣ V ∣ K } \{h_1^{K},...,h_{|V|}^K\} {h1K,...,hVK},这里 h i K ∈ M h_i^{K}\in\mathcal{M} hiKM, M \mathcal{M} M是流形。由于欧式空间的标准参数分类和回归方法在双曲空间中不适用的,所以我们就推广了径向基函数到黎曼流形。关键是用一个可微函数 ψ : M → R d \psi:\mathcal{M} \to \mathbb{R}^d ψ:MRd,可以将节点嵌入的所有结构概括起来。
(1)用GNN反向传播学习质心: C = [ c 1 , c 2 , . . . , c ∣ C ∣ ] \mathcal{C}=[c_1,c_2,...,c_{|\mathcal{C}|}] C=[c1,c2,...,cC], c i ∈ M c_i\in\mathcal{M} ciM.
(2) c i c_i ci h i K h_i^K hiK的成对距离计算: ψ i j = d ( c i , h j K ) \psi_{ij}=d(c_i,h_j^K) ψij=d(ci,hjK)
(3)串接 ( ψ 1 , j , . . . , ψ ∣ C ∣ , j ) ∈ R ∣ C ∣ (\psi_{1,j},...,\psi_{|C|,j})\in \mathbb{R}^{|\mathcal{C}|} (ψ1,j,...,ψC,j)RC,总结 h j K h_j^{K} hjK与中心的相对位置。

  • 对于节点回归问题:
    在这里插入图片描述这里 w 0 ∈ R ∣ C ∣ w_0\in\mathbb{R}^{|C|} w0RC.
  • 对于节点分类问题:
    在这里插入图片描述 这里 W 0 ∈ R c × ∣ C ∣ W_0\in\mathbb{R}^{c\times |C|} W0Rc×C, c c c表示类别数。
  • 对于图水平的预测,先用平均池化得到 ( ψ 1 , . . . , ψ ∣ C ∣ ) (\psi_1,...,\psi_{|\mathcal{C}|}) (ψ1,...,ψC), ψ i = ∑ j = 1 ∣ V ∣ ψ i j / ∣ V ∣ \psi_i=\sum^{|V|}_{j=1}\psi_{ij}/|V| ψi=j=1Vψij/V,然后再把这列向量放进全连接网络里。

一些细节

需要将欧式空间中的特征映射到黎曼流里面。欧式空间中的特征我们用 e x p x ′ ( X E ) exp_{x'}(X^E) expx(XE)来映射到黎曼流形里边。初始化黎曼流形的嵌入时,我们先从一定范围内均匀采样,获得欧式嵌入,然后再正则化嵌入即正则化到一个单位球里边,保证 e i ∈ M e_i\in\mathcal{M} eiM

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值