四、图嵌入
4.1 简介
图嵌入(Graph Embedding)的目的是将给定图中的每个节点映射到一个低维的向量表示。这种向量表示通常称为节点嵌入(Node Embedding),它保留了原图中节点的一些关键信息。
图中的节点可从两个域进行观察:
- 原图域 节点通过边或图结构彼此连接
- 嵌入域 每个节点被表示为连续的向量
从这两个域的角度来看,图嵌入的目标是将每个节点从图域映射到嵌入域,使得图域中的信息可以保留在嵌入域中。
图嵌入的通用框架有四个组件:
- 将节点从图域映射到嵌入域的映射函数
- 提取图域中需要保留的关键信息\(L\)的信息提取器
- 利用嵌入域的嵌入重新构造所提取的图信息\(L\)的重构器,重构的信息为\(L'\)
- 通过对提取的信息\(L\)与重构的信息\(L'\)的目标进行优化,学习映射和重构器中涉及的所有参数
4.2 简单图的图嵌入
本章所研究的简单图是静态的、无向的、无符号且同质的。
4.2.1 保留节点共现
保留图中节点共现的流行方法之一是执行随机游走
- 如果一些节点倾向于子某些随机游走中共同出现,则认为这些节点是相似的
- 接着优化一个映射函数,使得学习到的节点表示能够重构从随机游走中提取的相似性
保留节点间共现关系的经典图嵌入算法是DeepWalk,其他保留节点共现的算法还有node2vec、LINE等。
【DeepWalk】