GNN从入门到精通 -- Graph Embedding (2)

1.什么是图嵌入
  • 将图中的每个节点映射为一个低维的向量表示,映射后的向量应尽可能多的保留原图中节点的关键信息,以便更好地进行下游任务。
2.哪些信息需要被保留?
  • 不同的图嵌入算法信息保留的侧重点也不一样,根据不同的下游任务,原图中需要保留的信息重要性程度也不一样(例如节点的邻域信息,结构角色,社区信息等)。
3.如何保留关键信息?
  • 大多数技术共同思想就是(个人理解:先给节点一个随机表示,定义一个损失函数,不断迭代优化损失函数来学习节点表示),利用嵌入域中的节点表示,重构出要保留的图域信息(因为良好的节点表示应该能够重构出希望保留的原图关键信息),所以整个节点嵌入的学习过程就是,最小化重构误差来学习这个映射。
4.图嵌入通用框架
  • 映射函数:将节点从图域映射到嵌入域
  • 信息提取器:提取图域中需要保留的关键信息Q
  • 重构器:利用嵌入域的嵌入信息,重构图的关键信息Q,重构后的信息为Q’
  • 优化:以提取的关键信息Q和重构的信息Q’为目标优化(定义损失函数),学习映射函数及重构器涉及的参数
    在这里插入图片描述
5.DeepWalk嵌入算法–保留节点共现关系
  • 映射函数
    得到每个节点的映射(每个节点的one-hot编码e与训练出的权重矩阵W相乘,结果即此节点映射,权重矩阵每一行表示一个节点的映射),one-hot维度1×N,权重矩阵W维度N×d,映射后向量维度1×d。权重矩阵系统会给一个初值,通过优化损失函数来学习权重矩阵,权重矩阵得到之后,意味着每个节点的嵌入表示也得到。
    在这里插入图片描述

  • 信息提取器:根据随机游走提取节点的共现信息
    随机游走(Randow walk):给定一个图节点,从它的邻居节点中随机选取一个并前进到这个节点,接着从选中的节点中重复此过程,直至访问T个节点。这些被访问的节点组成的序列,即图上长度为T的随机游走。为每个节点生成γ个长度为T的随机游走序列。

    Random Walk & Skip-gram:随机游走看成自然语言中的句子,节点集是句子中的词汇表,中心节点和其上下文节点(Vcon,Vcen)视为一个共现元组。遍历每个随机游走序列中的节点,将提取到的共现元组添加到信息提取器中。第二步信息提取器的工作完成(提取有共现关系的元组)
    在这里插入图片描述

  • 重构器:根据嵌入信息重构原图共现信息
    对于原图中的共现元组,一个良好的嵌入,应该能够推断出原图的信息。这里原图的重要信息就是共现元组,所以重构器对元组出现的概率进行建模,认为共现元组出现的概率要尽可能大,这样学习到的嵌入意味着尽可能的保存了原图中的共现信息。
    图注:每个节点有两种映射(中心节点映射+上下文节点映射)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值