超图的线展开(Hypergraph Learning with Line Expansion)
超图的线展开(Hypergraph Learning with Line Expansion)
0. 摘要(Abstract)
已有的超图转化为简单图的方法包括连通分量扩展法、星形扩展法,这些超图展开方法仅在超点或超边的级别上进行,因此缺少了共现数据的对称性,导致了高维数据的信息丢失。为了解决这一问题,本文平等地对待超点和超边,并提出了一种新的超图展开方式,成为线展开(Line Expansion,LE)。我们可以用LE将超图转化为简单图,从而使得诸如GCN,GAT等现有的图学习算法与高维数据相兼容。对于简单图,我们证明了LE上定义的学习算法与它们在原始图上的性能紧密相关,这意味着LE不会导致信息丢失。
1. 介绍(Introduction)
本文提出的超图线展开(LE)是一种拓扑映射,将超图转化为同质图,同时保留超图本身的高维数据关系。在经过LE变换后,我们可以对超图使用任何已有的图学习算法。
LE算法相对于已有的超图展开算法具有以下几条优势:
- 已有的超图展开算法,往往是将超边展开成简单边集或超图割,或者整个超图学习完全依赖于边的连接性,而这么做必然会损失超图的部分信息。LE算法则一致对待超点和超边,因而能够保留超图的原本属性。
- LE算法无需对超图结构作出严格的约束,也不需要另外额外制定复杂的学习算法。
2. 预备知识(Preliminaries)
2.1 超图(Hypergraphs)
![截屏2021-02-28 上午10.45.53](https://tva1.sinaimg.cn/large/e6c9d24ely1go3f24i2k0j21160u0n6w.jpg)
2.2 超图节点分类(Problem Setup:Node Classification)
在本篇论文中,我们关注于超图上的直推学习问题(transductive problems),如超图节点分类。该问题的目标是对所有的unlablled data 进行节点分类(\(f: V \to \{1,2,...,C\}\))。
Transductive learning:unlabelled data is the testing data
inductive learning:unlabelled data is not the testing data
在训练过程中,已知testing data(unlabelled data)是transductive learing
在训练过程中,并不知道testing data ,训练好模型后去解决未知的testing data 是inductive learing
下面这一公式表示了超图节点分类的损失函数:
![截屏2021-02-28 上午11.10.00](https://tva1.sinaimg.cn/large/e6c9d24ely1go3f1zvhhpj20qu04uq3g.jpg)
3. 超图的线展开(Hypergraph Line Expansion)
许多知名的图学习算法都基于简单图这一数据结构而非超图。因此,在实际应用中,应该首先将超图转化为简单图,然后再应用图学习算法来解决下游任务。
3.1 传统超图展开算法(Traditional Hypergraph Expansions)
传统超图展开算法中,两个最经典的超图展开算法分别是超边展开(clique expansion)、星展开(star expansion)。这两个超图展开算法都有对应的弊端。
我们以co-authorship为例:假设超点表示作者,每一条超边表示一篇论文。使用clique expansion展开超图后,我们无法知道哪几个作者合作发表了一篇论文。而使用星展开后,原本的超图则转化为了异质结构,而大多数图学习算法是基于同质图设计的。因此,我们可以说这两种传统超图展开算法在许多应用场合并不足够优越。
3.2 我们提出的超图的线展开算法(Hypergraph Line Expansion)
LE算法的思想:"vertices are connected to multiple edges and edges are conversely connected to multiple vertices",因此LE算法将超点和超边同等对待。
LE算法将超图\(G_H\)按照如下方式转化成简单图\(G_l\):
- 每一个<超点,超边>组合,产生一个新的节点,称为“线点”(如图2所示,每一个节点都对应一个不同的<超点,超边>组合)。
- 在这些节点中,如果节点\(S_i=<v_a,e_b>,S_j=<v_c,e_d>\),如果\(v_a = v_c\) 或 \(e_b = e_d\),则在\(S_i\)和\(S_j\)中连接一条边。
这一规则用数学语言描述如下:
![截屏2021-02-28 下午4.14.32](https://tva1.sinaimg.cn/large/e6c9d24ely1go3f1thk0lj213a0dy0wf.jpg)
对于生成的简单图,LE算法将节点之间的邻域定义如下:
two line nodes are neighbors when they contain the same vertex (vertex similarity) or the same hyperedge (edge similarity).
3.3 实体投影(Entity Projection)
在这一节中,我们定义超图实体(例如,超点和超边)的投影矩阵,用于将超图\(G_H=(V,E)\)投影至简单图\(G_l=(V_l,E_l)\)。在简单图\(G_l\)中,每一个线点\((v,e)\)都可以被看作一个具备超边上下文的超点,或具有超点上下文的超边。概括而言,LE算法能够较好地联系高维数据。
-
超点投影矩阵(vertex projection matrix)
\[P_v \in \{0,1\}^{|V_l|\times |V|}\\ P_v(v_l,v)= \left\{ \begin{align} &1 \ \ \ v_l = (v,e), \exists e \in E \\ &0 \ \ \ otherwise \end{align} \right. \]这里有一个性质:\(P_v\)矩阵每一行有且仅有一个1,其余全为0。
这是因为,对于一个线点\(v_l = (v,e)\),其对应的超点有且仅有一个。
-
超边投影矩阵(hyperedges projection matrix)
\[P_e \in \{0,1\}^{|V_l|\times |E|}\\ P_v(v_l,e)= \left\{ \begin{align} &1 \ \ \ v_l = (v,e), \exists v \in V \\ &0 \ \ \ otherwise \end{align} \right. \]
3.3.1 定理1 超图\(G_H\)经过LE算法到简单图\(G_l\)的投影为双射
这一定理的证明篇幅很大,从略。但是,我们可以根据这一定理定义出\(G_l\)到\(G_H\)的逆变换,用于还原超点的高维数据信息。
我们在这里定义超点反投影矩阵(vertex back-projection matrix)\(P_v' \in \R^{|V|\times|V_l|}\)
类似的,我们可以定义超边反投影矩阵(hyperedges back-projection matrix)\(P_e'\in \R^{|E| \times|V_l|}\)来还原超边的高维数据信息。
3.3.2 超图经过线展开所得到的简单图\(G_l\)与其星展开的线图\(L(G_s)\)相同
线图(line graph)定义见:https://en.wikipedia.org/wiki/Line_graph
4. 超图表示学习(Hypergraph Representation Learning)
我们上述提到的LE算法,仅仅介绍了如何在结构上将超图转化为简单图。在定义了从\(G_H\)到\(G_l\)的双射之后,我们可以轻松地将超图学习问题转化为图学习问题。然而,目前为止我们只能处理无边权的超图。
4.1 用LE算法进行超图学习(Hypergraphs Learning with Line Expansion)
LE算法进行超图学习的工作流程可以概括为如下三步:
-
将每一个超点投影成若干个图节点(利用超点投影矩阵)
LE算法已经给出了超点投影矩阵的定义,即每一个不同的\(<v,e>\)对会产生一个新的线点,并在每一个超点相同或超边相同的线点之间连接一条简单边。此外,我们还要考虑生成的简单图\(G_l\)的点权和边权的问题。
论文中介绍了如下规则来分配图节点的features:
假设有线点\(v_l = <v_H,e>\),那么线点\(v_l\)的features即为超点\(v_H\)的features
论文中介绍了如下规则来分配超边的边权:
首先,需要引入两个参数:超点相似度\(w_v\)、超边相似度\(w_e\)。一般可以设置为\(w_v = w_e = 1\)。
然后定义了简单图\(G_l\)上的带权邻接矩阵\(A_l\)(见下方),\(A_l\)的每一个非0项都对应某一个边的边权(0项表示这条边不存在)。
-
在投影得到的简单图上应用图学习算法(如GCNs)
-
将简单图逆投影为超图(利用超点逆投影矩阵)
![截屏2021-03-01 上午9.49.06](https://tva1.sinaimg.cn/large/e6c9d24ely1go45yncx23j20uy0su0yl.jpg)