KDD2017 《metapath2vec:Scalable Representation Learning for Heterogeneous Networks》 Reading Notes
论文地址: metapath2vec Introduction 真实网络中通常包含多种类型的节点和关系,这些节点和关系共同组成了异质信息网络(Heterogeneous Information Network),传统的NE方法如DeepWalk, Line , node2vec更多关注与同质网络从而忽略了网络的异质性。针对这个问题,这篇文章提出了metapath2vec基于meta-path的随机游走来构建节点的异质邻域,采用异质Skip-gram模型来学习节点的representation。 另外,在负采样时也考虑异质性,从而进一步提出了metapath2vec++。如下: Definition Definition 1: 异质网络: $G = (V,E,T)$,其中每个节点和边分别对应一个映射 $\phi(v) : V \rightarrow T_{V}$ 和$\varphi(e) : E \rightarrow T_{E}$。 其中$T_V$和$T_E$分别表示节点的类型集合以及关系的类型集合。且$\left|T_{V}\right|+\left|T_{E}\right|>2$。 Definition 2: 异质网络表示学习 为网络中的节点学习一个$d$维的表示 $\mathrm{X} \in \mathbb{R}^{|V| \times d}$,$d \ll|V|$。节点的向量表示可以捕获节点间结构和语义关系。 Model metapath2vec Skip-Gram模型是给定一个节点,预测向下文节点的概率。metapath2vec的目的是考虑多种类型节点和多种类型关系的情况下,最大化网络概率。为了将异质信息融入skip-gram模型中,首先提出异质skip-gram。 Heterogeneous Skip-Gram 对于节点类型$|T_V| > 1$的网络$G$, 给定一个节点$v$,需要最大化属于类型$t \in T_V$的异质上下文节点的概率: $$ \arg \max_{\theta} \sum_{v \in V} \sum_{t \in T_{V}} \sum_{c_{t} \in N_{t}(v)} \log p\left(c_{t} | v ; \theta\right) $$ 其中,$N_t(v)$表示$v$属于第$t$个类型的邻居节点。 $p\left(c_{t} | v ; \theta\right)$ 表示给定节点$v$,它的$t$类型邻域概率: $p\left(c_{t} | v ; \theta\right)=\frac{e^{X_{c_{t}} \cdot X_{v}}}{\sum_{u \in V} e^{X_{u} \cdot X_{v}}}$,是一个softmax函数,$X_v$是节点$v$的表示。由于softmax函数的分母每一次都要遍历所有节点,所以采用负采样改进$\log p(\cdot)$ 如下: $$ \log \sigma\left(X_{c_{t}} \cdot X_{v}\right)+\sum_{m=1}^{M} \mathbb{E}_{u^{m} \sim P(u)}\left[\log \sigma\left(-X_{u^{m}} \cdot X_{v}\right)\right] $$ 其中 $\sigma(x)=\frac{1}{1+e^{-x}}$。 ...