一:简介
图表示学习:期待自动提取结构特征。即,把图的邻接矩阵、点信息等信息转为一个低维向量。其输入和输出见下图:
二:应用
应用:节点分类、链路预测、社区检测、图重建、可视化、网络相似性
节点分类可以根据label是否给全数据,做成半监督or有监督学习。
边预测(可视为无监督,个人不太认同,因为算法的输出是有没有边or有边的概率,是比较确定的工作):预测某两个点直接是否存在边
三:Related work
四、随机游走的graph
将u和v映射到embedding space,如果u和v相似,则在embedding space里也是相似的。
encoder:映射到embedding的规则
相似性定义:原图空间内u和v的相似性定义
decoder:映射到embedding的u`、v`的相似性分数,使其尽量和2保持一致。
本质:找一个矩阵Z,ENC(v) = Z×v
经典paper:DeepWalk、Node2vector
DeepWalk:
相似度:相连;共享邻居;有类似结构;
RandomWalk:根据边分布的情况,随机概率游走。
注:N(u)不是严格意义上的邻居,而是指u的random walk可达的点,比严格意义上的邻居更大。
写成损失函数的形式:
这里z指的是u点映射后的d*1的向量。
优化后只选择k个点作为summary。
Node2vec:
和DeepWalk区别:DeepWalk是用均等概率、随机游走的方式定义N(u);而Node2vec是用BFS+DFS的方式定义N(u)。
p与q 是可学习的参数。