deepwalk
模型:随机截断游走+skipgram+层级softmax
整个过程:
- 输入:图的边集和点集
- 使用随机游走来获得结点序列
- 使用skip-gram算法来获得结点表示
- 使用层级softmax来优化目标函数
- 获得输出:结点的潜在表示
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/8085ae47071631dc00b5934769d33260.png)
具体算法:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/e976c8d14dc1c3325f13a76e62c93bd5.png)
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/4688e841baafed4305c5d2a06a8a0167.png)
总结:没有一个专门为网络嵌入设计的目标函数、使用二阶相似性(游走序列)来考虑两个结点的相似性。
疑问:两个结点的相似度是怎么样比较出来的?(文中只提到了根据节点计算上下文序列的概率然后生成向量表示,最后映射到如输出图所示的结果)
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/4cb446895aac60737408f16ea488c652.png)
node2vec
在deepwalk的基础上改进了采样策略