异质网络表示--基于hyperedge

hyper graph是一种广义上的图,它的边可以连接任意数量的定点。[维基百科](https://zh.wikipedia.org/wiki/%E8%B6%85%E5%9B%BE)。超图是一个集合组 H=<X,E>, X是一个有限集合,该集合的元素称为节点或顶点;E是X的非空子集的集合,成为超边(hyper edge)或连接。因此,E是P(X){ϕ}的一个子集,其中P(X)是X的一个幂集。图的边有一对节点,而超边是节点的任意集合,因而可以有任意数量的节点。每个超边连接节点数目相同的超图,是k-均匀超图。如下图所示([维基百科](https://zh.wikipedia.org/wiki/%E8%B6%85%E5%9B%BE)):
异质网络表示--基于hyperedge

HEBE(Large-Scale Embedding Learning in Heterogeneous Event Data)

对于只包含单种interaction的网络,一般都是在局部采集上下文(比如在文本中的,滑动窗口内的词视为上下文),然后通过预测上下文来构建目标函数。
对于一个包含多种节点和边类型的网络,现有的方法PTE等,将所有object之间同时存在的interaction分解为几个分散的pairwise的interaction(比如论文网络,分解为论文-作者,论文-期刊/会议等),然后用传统的single-typed网络embedding方法求解。这种分解会丢失很多重要的信息,举个例子: A在期刊V上发表了论文P1, B在期刊V上发表了论文P2,但是A-B之间并没有合作关系(AP1VP2B)。
HEBE 主要做的就是把跟一个事件相关的节点都关联到一个hyper edge中,以此来保留网络更多的信息。
如下图所示:
例1 DBLP数据只有一种event :

异质网络表示--基于hyperedge

例2 Yelp数据有两种event :

异质网络表示--基于hyperedge

几个基本定义

1. Information Network: 给定一个有T类objects的集合X={Xt}Tt=1 ( 其中Xt是所有tth类的object的集合),信息网络就是G=(X,E)E是连接两个object的边。如果 T2, 那么是异质(heterogeneous)网络;如果T=1,那么是同质(homogeneous)网络。
2. 事件(event)Qi可以表示为<Vi,wi>,其中wi 是事件Qi的权重;Vi={Vti}Tt=1,并且VtiXt表示的是属于t类型的object的集合。
3. 超边Hi刻画事件Q_i$,它把与事件的所有相关objects看作一个整体。
4. Subevent:子事件就是从每个object类型中均匀地采样出一个object组成地事件。现实的场景中,一个事件中的不同object类型对应的object数目 |Vti|1(比如:一篇论文对应多个作者,多个term,却只对应一个venue)。对于一个事件Qi={Vi,wi},Vi={a1,a2,a3}{t1,t2,t3}{v1}。那么我们以1/(2*3)的概率可以得到子样本Qi,s=a2,t2,v1,相应的子样本的权重为wi/(2×3)。这也就造成了,不同的event有相同的Subevent。

模型构建

事件(event)的相似性:在event相关的所有object中,选出一个作为target,然后用剩余的objects作为上下文C预测这个object。并且,作者将target的候选集,定义在与target同类型的几点上,比如target是u, uX1并且uC,条件概率定义为:

P(u|C)=exp(S(u,C))vX1exp(S(v,C))

S是一个scoring function, 表示u/v与上下文C的相似度。假设上下文是C={c1,c2,,cT},并且对象u的向量表示为w⃗ uRd,那么S函数可以表示为:
S(u,C)=<w⃗ u,1T1t=2Tw⃗ ct>

为了保留object之间的相似性,最小化P(u|C)和经验分布Pˆ(u|C)=之间的KL距离(假设:目标object类型为t,对应的上下文为CtPtCt的采样空间Pt={Ci,t}Ni=1):

L=Tt=1γtCtPtλCtKL(Pˆ(|C),P(|C))

其中\gamma_t 为t类型的重要性参数,本文设置为γ1=γ2==γTλCt表示上下文Ct的重要性:

λCt=Ni=1wiI{Ct=Viui,t}

其中,Pi,tPtVi上的子集。I{}是一个二元指示函数。因而,λCt可以直观的解释为:以Ct作为自己的超边加权数量。

基于λCt上式可以化简为:

L=Tt=1CtPtλCtKL(Pˆ(|C),P(|C))=Tt=1CtPtNi=1wiI{Ct=Viui,t}Nj=1Pˆ(uj,t|Ct)logPˆ(uj,t|Ct)P(uj,t|Ct)=Cˆ+Tt=1Ni=1wilogP(ui,t|Viui,t)

其中Cˆ是一个常数,经验分布的计算为:

Pˆ(ui,t|Ct)=wiNj=1wjI{Ct=Vjuj,t}

对于多事件(event)类型的网络,目标函数可以写为:

L=Kk=1Lk

优化(Noise Pairwise Ranking)

直接优化目标函数L计算量比较大,每次计算条件概率P(u|Ct)都要遍历多有的属于t类型的object。noise contrastive estimation (NCE)和 negative sampling(NEG)都是把这个问题作为分类问题来解决的。但是负采样的方法,受超参数k(负样本的数量)的影响,为了规避这个问题,本文提出了Noise Pairewise Ranking(NPR)的方法。相对比而言,NCE和NEG是判别模型,NPR是生成模型。
通过化简,条件概率可以表示为:

P(u|C)=11+vuexp(S(v,C)S(u,C))

然而,作者并没有直接优化上式,而是用一小部分的噪音样本X1u,单个的节点可以表示为:vn。优化的概率是:
P(u>vn|C)=σ(S(vn,C)+S(u,C))

直观解释,给定上下文C,最大化观测到目标节点u而不是负样本vn的概率。特别是,很容易验证P(u|C)>vnuP(u>vn|C)

得到的节点对排序结果P(u>vn|C)与Bayies Pairwise Ranking(BPR)是很相似的。但是,BPR的负样本来自于从隐士反馈,NPR是基于条件概率的soft max定义近似推到出来的,而且负样本来自于噪音分布。因而,条件概率近似为:

P(u|C)EvnP(n)logP(u>vn|C)

在实验中作者采用的是异步梯度下降的方法。为了避免实验结果陷于局部最优(在计算scoring函数时,每个类型的object做了平均,这就导致object数量少的类型对应的object权重大,反之则权重小),作者根据节点类型调整步长: βt=αtηαt=|Xt|maxTt=1{|Xt|}是梯度系数。实验结果证明HEBE是适用于大规模网络的,实验数据中 DBLP有1,938,912篇论文。

参考:
HEBE:Large-scale embedding learning in heterogeneous event data
Embedding learning with events in heterogeneous information networks