图计算论文笔记--Subgraph-augmented Path Embedding for Semantic User Search on Heterogeneous Social Network

先上图
在这里插入图片描述
在这里插入图片描述

ABSTRACT 摘要

在图中找相似用户,以往的工作是建立一个图中用户到用户的路径,此论文的方法是建立用户到用户之间的子图,建立方法:
Subgraph-augmented Path Embedding (SPE) framework

INTRODUCTION 介绍

  • 用户间的关系子图
    在这里插入图片描述
    alice和bob中间有三种关系:
    user-user;user-college-user;user-college&location-user

  • 表示子图的方法

  • 子图嵌入的方法 rnn

RELATED WORK 相关工作

PROBLEM FORMULATION 问题公式描述

  • 异构信息网络:
    在这里插入图片描述

  • 子图模式
    在这里插入图片描述

  • 子图实例:就是在异构信息网络中,子图模式的一个实例
    在这里插入图片描述

  • 目标路径
    在这里插入图片描述

  • 子图增强节点
    键值对在这里插入图片描述

  • 子图增强路径
    是将子图增强节点连起来的路径
    在这里插入图片描述

  • 问题的输入和输出

输入:
异构信息网络G;子图模式M;子图实例 I
由以上的到了training tuples D=(q,v,u) 用来进行模型训练
q是query user,v和u都是user,但v离q更近

输出:
subgraph-augmented path embedding vector Z(q,v)也就是子图增强路径嵌入向量,这个向量是user q和v之间的子图增强路径s-path使用embedding方法的到的向量。
由于p和v之间有很多s-path,因此将这些s-path的向量Z(q,v)集合的到新的向量f(q,v)

使用多层神经网络来求z(q,v)和f(q,v)

模型参数

  1. 为了计算z(q,v)和f(q,v)的神经网络中的参数
  2. proximity estimation参数 θ \theta θ

在参数学习中,利用 π \pi π(q,v)> π \pi π(q,u)来学习
其中 π \pi π(q,v)= θ T \theta^T θTf(q,v)
π \pi π是Proximity score,得分
θ \theta θ是 proximity estimation参数,需要学习的到
f是向量,也要学习的到

S-PATH CONSTRUCTION 建立s-path

通过已有的两种先验知识来建立s-path

  1. object path -> s-path
  2. frequent subgraph patterns M -> s-path

建立s-path的算法,过程在算法右侧总结了:
在这里插入图片描述

S-PATH EMBEDDING s-path嵌入成向量

得到了图上的s-path,在这里,要将它们嵌入成向量。
s-path的嵌入分成几个部分和几个步骤,每一个step都可以在下图看到:
在这里插入图片描述

  • Subgraph Embedding 子图嵌入
    采用了「Maximum Common Subgraph (MCS) approach」(最大公共子图就是两个图相同的部分)方法来丈量两个图的相似度,也就是,两个图相同当且仅当他们的结构相同。
    衡量两个图的相似度的公式s是:
    在这里插入图片描述

利用相似度s,使用auto-decoder来学习的到图mi的向量xi
si–>encoder–>xi–>decoder–>si
我们需要的就是中间层的xi,具体的网络中的数学表达式见下图,配合我的红字备注,理解起来很清楚。
在这里插入图片描述

  • S-Node Embedding
    使用Subgraph Embedding的到的向量来表达S-Node:在这里插入图片描述
  • S-Path Embedding
    在s-node的表之上使用LSTM网络来进行s-path的嵌入
    此时在一条s-path上有多个s-node,使用多对多的LSTM网络来的到s-path的向量表达。
    LSTM多对多模型我在之前的时间序列博客中写过,可以参考,很简单。
    在这里,我给出我之前博客中写的LSTM的基本介绍:
    在这里插入图片描述


    重要的参数在输入门,输出门和遗忘门中。注意此时的输入门和输出门并不是整个网络的输入和输出,而是在每一个子网中的公式表达,请仔细理解图。
    在论文中的LSTM的表达如下,下面的表达其实就是各种gate的表达,参数也在gate中。
    在这里插入图片描述
  • Proximity Embedding
    在得到s-path embedding的基础之上建立Proximity Embedding。
    这里我们得到了节点q,v之间所有的s-path embedding。结合所有的这些s-path embedding,我们建立Proximity Embedding,也就是一个综合的Embedding。
    其实s-path embedding就是我们之前说的qv之间的z(q,v),而Proximity Embedding是f(q,v)。
    这里的方法和之前由Subgraph Embedding得到s-node embedding的方法一样,也就是一个多了几个参数的softmax。在这里插入图片描述

这样,我们的到了一个完整的网络:
Subgraph Embedding->
s-node embedding->
s-path embedding->
Proximity Embedding
再把图贴一遍:
在这里插入图片描述
第一步Subgraph Embedding的参数是我们在auto-encoder中就已经学出来的,因此不会给大网络贡献未知参数,这里的参数主要在s-node embedding的加权表达中,s-path embedding的LSTM网络中和Proximity Embedding的加权表达中。

END-TO-END TRAINING 模型训练

这里是上面整个图的最后一步,也就是我们需要建立一个目标函数,才能使得整个网络进行学习。
在这里插入图片描述
在这篇论文中,目标函数的设置为:
在这里插入图片描述
也就是我们之前说过利用 π \pi π(q,v)> π \pi π(q,u)来学习。其实就是最大化 π \pi π(q,v)和 π \pi π(q,u)的区别。

这样来说,我们就学习到了一个网络中s-path的向量表达和proximity score的表达式 π \pi π
π \pi π(q,v)= θ T \theta^T θTf(q,v)

对于测试集来说,我们可以使用此网络的到问询节点和目标节点的s-path的向量表达,并且通过proximity score的表达式 π \pi π,我们可以判断问询节点和每个目标节点的proximity score,越大表示越相关。这样,我们就可以找到和问询节点相关的其他节点。

EXPERIMENTS

CONCLUSION

总结

之前的network embedding 都是把关注点放在了path 例如meta-path上,而这篇论文是使用子图建立了s-path,来进行embedding。
可以这样说,之前的研究知识emdedding了这个网络的语义信息,而此论文可以embedding网络的语义信息和结构信息。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值