基于矩阵分解
快速简洁,但属性信息与结构信息的融合比较困难。
1. Skip-Gram with Negative Sampling (SGNS)
损失函数
将中心词与上下文的共现概率用sigmoid表示为
随机抽取k个负样本,则损失函数可写为
使用表示语料中包含上下文的组合数量,表示语料中所有组合对的集合,为采样到的上下文向量,服从分布。
负样本损失表示为有利于后续推导。
等价于SPMI的分解
对中的进行合并同类项,得到
对求导等零,得
正好是逐点互信息(Pointwise Mutual Information)矩阵漂移Shifted了,即SPMI。
PMI中元素为。
PMI矩阵中的无关向量为,可以规定只要positive,得到PPMI,即。
两者结合,得SPPMI(Shifted Positive PMI)矩阵,即。
这里证明为了方便,只在两个节点之间进行了化简和推导,其中softmax退化为了sigmiod。
同样可以证明,基于Hierarchical Softmax的Skip-Gram分解的矩阵是
中心词向量矩阵,上下文向量矩阵,记SPMI为,则分解任务为
加上正则项后,优化目标为
2. DeepWalk
DeepWalk
从每个节点出发n_walks次,每次均匀采样连接节点,延申长度达walk_length后停止一次游走,生成一个序列。对采样的序列,使用word2vec的skip-gram直接训练。
Node2Vec
改进游走方式,以便相似节点和同一社区节点更接近。
- 广度优先策略,使同一社区节点更接近;
- 深度优先策略,使不通社区内的相似节点更接近。
假设已由走到,下一个节点用表示,则游走方向由下式控制
其中表示从到的最短路径长度。同时可以考虑边权重。
3. Text-Associated DeepWalk (TADW)
DeepWalk的本质是在近似重建步共现概率矩阵。结合Hierarchical Softmax的Skip-Gram分解的矩阵
我们只需要找到的合理表达,即可直接通过矩阵分解解决问题。
对DeepWalk,假设只走1步,不妨设为到,则两点共现的条件概率应为,为节点的出度。我们将对应的标准化的邻接矩阵记为。与PageRank所使用的矩阵一致。
于是步共现概率矩阵和要分解的矩阵是
相应的损失函数为
融合属性矩阵则为
4. Accelerated Attributed Network Embedding (AANE)
使用各节点属性构建余弦相似度矩阵,分解为,而具有相邻关系的节点对应隐变量也应该接近