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之间并没有合作关系( A−P1−V−P2−B )。
HEBE 主要做的就是把跟一个事件相关的节点都关联到一个hyper edge中,以此来保留网络更多的信息。
如下图所示:
例1 DBLP数据只有一种event :
例2 Yelp数据有两种event :
1. Information Network: 给定一个有T类objects的集合 X={Xt}Tt=1 ( 其中 Xt 是所有 tth 类的object的集合),信息网络就是 G=(X,E) , E 是连接两个object的边。如果 T≥2 , 那么是异质(heterogeneous)网络;如果T=1,那么是同质(homogeneous)网络。
2. 事件(event): Qi 可以表示为 <Vi,wi> ,其中 wi 是事件 Qi 的权重; Vi={Vti}Tt=1 ,并且 Vti⊆Xt 表示的是属于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, u∈X1 并且 u∉C ,条件概率定义为:
为了保留object之间的相似性,最小化 P(u|C) 和经验分布 Pˆ(u|C)= 之间的KL距离(假设:目标object类型为t,对应的上下文为 Ct , Pt 是 Ct 的采样空间 Pt={Ci,t}Ni=1 ):
其中\gamma_t 为t类型的重要性参数,本文设置为 γ1=γ2=⋯=γT ; λCt 表示上下文 Ct 的重要性:
基于 λCt 上式可以化简为:
其中 Cˆ 是一个常数,经验分布的计算为:
对于多事件(event)类型的网络,目标函数可以写为:
直接优化目标函数 L 计算量比较大,每次计算条件概率 P(u|Ct) 都要遍历多有的属于t类型的object。noise contrastive estimation (NCE)和 negative sampling(NEG)都是把这个问题作为分类问题来解决的。但是负采样的方法,受超参数 k (负样本的数量)的影响,为了规避这个问题,本文提出了Noise Pairewise Ranking(NPR)的方法。相对比而言,NCE和NEG是判别模型,NPR是生成模型。
通过化简,条件概率可以表示为:
得到的节点对排序结果 P(u>vn|C) 与Bayies Pairwise Ranking(BPR)是很相似的。但是,BPR的负样本来自于从隐士反馈,NPR是基于条件概率的soft max定义近似推到出来的,而且负样本来自于噪音分布。因而,条件概率近似为:
参考:
HEBE:Large-scale embedding learning in heterogeneous event data
Embedding learning with events in heterogeneous information networks