Datawhale组队学习 图机器学习 Task04

图嵌入学习

  • 传统机器学习(特征工程):抽取D个特征编码成D维向量,再使用机器学习算法进行训练和预测

  • 图表示学习:

  • 不需要特征工程,将各个模态输入转为向量,自动学习特征

  • 将节点映射为 d 维向量,向量具有低维(向量维度远小于节点数)、连续(每个元素都是实数)、稠密(每个元素都不为 0),与下游任务无关

  • 嵌入 d 维空间需要满足以下要求:

  • 向量相似度反映节点相似度

  • 嵌入向量包含网络连接信息

  • 下游任务包括:

  • 节点分类

  • 链路预测

  • 图分类

  • 节点的异常检测

  • 社群聚类

基本框架(编码器+解码器)

目标是使得嵌入的向量点乘数值(余弦相似度)反映节点的相似度

  • 编码器:输入一个节点,输出这个节点的D维向量, $\mathrm{ENC}(v)=z_v$

  • 解码器:输入这个节点的 $d$ 维向量,输出节点相似度,向量点乘数值反映节点的相似度(需要人为定义)

$$

\operatorname{similarity}(u, v) \approx z_v^T z_u

$$

  • 优化目标:迭代优化每个节点的 $d$ 维向量,使得图中相似节点向量数量积大,不相似节点向量数量积小

基于随机游走的图嵌入算法

生成短的固定长度的随机游走序列,以$u$节点作为出发点,得到该序列上的邻域节点,再使用随机梯度下降

  • 随机游走的图嵌入方法都是对图中已有的节点计算特征,无法立刻泛化到新加入的节点,其实是某种程度的过拟合

  • 只是探索相邻局部信息,只能采样出地理上相近的节点

  • 仅利用图本身的连接信息,并没有使用属性信息

可以采用匿名随机游走的算法消除只考虑局部信息的缺点

DeepWalk

  • 首个将深度学习和自然语言处理的思想用于图机器学习

  • 均匀随机游走,没有偏向的游走方向

  • 基于随机游走,管中窥豹,距离较远的两个节点无法相互影响

  • 无监督,仅编码图的连接信息,没有利用节点的属性特征

  • 没有真正用到神经网络和深度学习

  • 需要大量随机游走序列训练

Node2Vec

  • 解决图嵌入问题,将图中的每个节点映射为一个向量(嵌入)

  • 语义相似的节点,向量(嵌入)的距离也近

  • 在 DeepWalk 完全随机游走的基础上,Node2Vec 增加参数 p 和 q,实现有偏随机游走。不同的 p、q 组合,对应了不同的探索范围和节点语义

  • DFS深度优先探索,相邻的节点,向量(嵌入)距离相近

  • BFS 广度优先探索,相同功能角色的节点,向量(嵌入)距离相近

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值