A Tutorial on Network Embeddings

 
NE 的中心思想就是找到一种映射函数,该函数将网络中的每个节点转换为低维度的潜在表示
典型例子 DeepWalk:
其学习 Zachary’s Karate network 网络中的拓扑结构信息并转换成一个二维的潜在表示(latent representation)
 

目标

  • 适应性
    • 随着网络发展,新的表示不需要重复学习
  • 可扩展
    • 短时间处理较大规模网络
  • 社区感知
    • 潜在节点间的距离可用于评估网络节点间的相似性度量
  • 低维
    • 标记数据稀疏时,低维模型能够更好的推广,并加速收敛和推理
  • 持续
    • 需要潜在的表示在连续的空间内模拟社区成员关系,连续的表示使社区有更平滑的边界,促进分类
此文包含
  • 无监督网络嵌入方法在无特征的同质网络的应用
  • 调研特征网络和部分标记网络中的网络嵌入
  • 讨论异构网络嵌入方法
 

网络嵌入发展

传统意义的Graph Embedding

  • 降维
    • PCA
    • 多维缩放(MDS)
      • 将特征矩阵 M 的每一行投影到k 维向量,保留k 维空间中原始矩阵中不同对象距离
    • Isomap 算法
      • (MDS 的扩展)通过将每个节点与特定距离内的节点连接构造邻域图,以保持非线性流形的整体结构
    • 局部线性嵌入( LLE )
这些方法都在小型网络上提供良好性能,但其时间复杂度至少为二次,故无法在大规模网络上运行
 

深度学习

  • DeepWalk
    • 通过将节点视为单词并生成短随机游走作为句子来弥补网络嵌入和单词嵌入的差距。然后,可以将诸如 Skip-gram 之类的神经语言模型应用于这些随机游走以获得网络嵌入。
    • 按需生成随机游走。skim-gram 针对每个样本进行了优化
    • DeepWalk 是可扩展的,生成随机游走和优化 Skip-gram 模型的过程都是高效且平凡的并行化
    • 引入了深度学习图形的范例
 

无向网络的网络嵌入

 
  • LINE
    • 为了更好的保存网络的结构信息,提出了一阶相似度和二阶相似度的概念,并在目标函数中结合了两者
    • 使用广度优先算法,只有距离给定节点最多两跳的节点才被视为相邻节点
    • 使用负抽样 skip-gram
  • Node2vec
    • 反映网络的结构
    • deepwalk 的扩展(deepwalk 完全时随机的),引入偏向的随机游走,增加 p,q 两个参数,p(控制访问走过的node,即往回走,q 控制没走过的node ,向外走)
    • DeepWalk和node2vec算法是先在网络中随机游走,得到node的序列。两个node同时出现在一个序列中的频率越高,两个node的相似度越高。然后构建一个神经网络,神经网络的输入是node,输出是其他node与输入的node同时出现的概率。同时出现的概率越高,两个node的相似度越高。为了保持相似度一致,得到目标函数
  • Walklets
    • 不要游走,跳过!在线学习多尺度网络嵌入
    • 进一步学习节点不同权重的网络嵌入,以不同的粒度捕获网络的结构信息。
  • GraRep
    • 通过将图形邻接矩阵提升到不同的幂来利用不同尺度的节点共现信息,将奇异值分解(SVD)应用于邻接矩阵的幂以获得节点的低维表示
  • GraphAttention
    • 不是预先确定超参数来控制上下文节点分布,而是自动学习对图转换矩阵的幂集数的关注
    • 通过设置隐藏层,这些层里的节点能够注意其邻近节点的特征,我们能够(隐含地)为邻近的不同节点指定不同的权重,不需要进行成本高昂的矩阵运算(例如反演),也无需事先知道图的结构
  • SDNE
    • https://blog.csdn.net/wangyang163wy/article/details/79698563
    • 通过深度自动编码器保持 2 跳邻居之间的接近度。它通过最小化它们的表示之间的欧几里德距离来进一步保持相邻节点之间的接近度
    • 具有多层非线性函数,从而能够捕获到高度非线性的网络结构。然后使用一阶和二阶邻近关系来保持网络结构。二阶邻近关系被无监督学习用来捕获全局的网络结构,一阶邻近关系使用监督学习来保留网络的局部结构
  • DNGR
    • 基于深度神经网络的学习网络嵌入的方法
 

改进

 
HARP
  • network embedding的时候保持网络高阶的结构特征,具体的做法是通过将原网络图进行合并,合并为多个层次的网络图
  • 通过递归地粗粒化方式,将原网络图的节点和边通过合并划分成一系列分层的结构更小的网络图,然后再利用现有的算法进行不断的特征提取,从而实现最终的network embedding特征提取
 

特征网络嵌入( Attributed Network Embeddings )

无监督网络嵌入方法仅利用网络结构信息来获得低维度的网络特征。但是现实世界网络中的节点和边缘通常与附加特征相关联,这些特征称为属性(attribute)。
例如在诸如 Twitter 的社交网络站点中,用户(节点)发布的文本内容是可用的。因此期望网络嵌入方法还从节点属性和边缘属性中的丰富内容中学习
 
挑战:特征的稀疏性,如何将它们合并到现有的网络嵌入框架中

方法:

  • TADW
    • Network repre- sentation learning with rich text information
    • 研究节点与文本特征相关联情况,首先证明了deepwalk 实质上是将转移概率矩阵 分解为两个低维矩阵,它将文本矩阵合并到矩阵分解过程中
 

联合建模网络结构和节点特征

  • CENE
    • 结合网络结构和节点特征
    • 将文本内容视为特殊类型的节点,并利用节点-节点链接和节点内容链接进行节点嵌入。 优化目标是共同最小化两种类型链路的损失。
 

节点标签,引文网络中的出版地和日期等

典型方法是:优化用于生成节点嵌入和用于预测节点标签的损失
  • GENE
    • 将组的信息考虑到Network Embedding学习中,同一组的节点即使直接没有边,一般也会存在一些内在关系
    • 每个相同的组也会学到一个向量表示,组向量有两个用处:1)在利用周围节点预测中心节点时,组向量也会加入预测; 2)组向量也会预测组中的其他节点。最后目标函数是将上述两项相加而成
  • Max margin DeepWalk(MMDW)
    • 第一部分是基于矩阵分解的节点嵌入模型
    • 第二部分是将学习的表示作为特征来训练标记节点上的最大边缘 SVM 分类器。通过引入偏置梯度,可以联合更新两个部分中的参数。
 

异构网络嵌入

  • Chang [13] 提出了异构网络的深度嵌入框架
    • 为每种模态(如图像,文本)构建一个特征表示,然后将不同模态的嵌入映射到同一个嵌入空间
    • 优化目标:最大化链接节点嵌入间的相似性、最小化未链接节点的嵌入

A Tutorial on Network Embeddings的更多相关文章

  1. 论文阅读 Continuous-Time Dynamic Network Embeddings

    1 Continuous-Time Dynamic Network Embeddings Abstract ​ 描述一种将时间信息纳入网络嵌入的通用框架,该框架提出了从CTDG中学习时间相关嵌入 Co ...

  2. Understanding Network Class Loaders

    By Qusay H. Mahmoud, October 2004     When Java was first released to the public in 1995 it came wit ...

  3. Network Motif 文献调研

    Network Motif 文献调研 概述:Network motifs,可以认为是网络中频繁出现的子图模式,是复杂网络的"构建块".有两篇发表在science上的论文给出moti ...

  4. 论文阅读 Exploring Temporal Information for Dynamic Network Embedding

    10 Exploring Temporal Information for Dynamic Network Embedding 5 link:https://scholar.google.com.sg ...

  5. How much training data do you need?

    How much training data do you need?   //@樵夫上校: 0. 经验上,10X规则(训练数据是模型参数量的10倍)适用与大多数模型,包括shallow networ ...

  6. python thrift使用实例

    前言 Apache Thrift 是 Facebook 实现的一种高效的.支持多种编程语言的远程服务调用的框架.本文将从 Python开发人员角度简单介绍 Apache Thrift 的架构.开发和使 ...

  7. 基于神经网络的embeddding来构建推荐系统

    在之前的博客中,我主要介绍了embedding用于处理类别特征的应用,其实,在学术界和工业界上,embedding的应用还有很多,比如在推荐系统中的应用.本篇博客就介绍了如何利用embedding来构 ...

  8. 基于SincNet的原始波形说话人识别

    speaker recognition from raw waveform with SincNet Mirco Ravanelli, Yoshua Bengio 作为一种可行的替代i-vector的 ...

  9. 因果推理综述——《A Survey on Causal Inference》一文的总结和梳理

    因果推理 本文档是对<A Survey on Causal Inference>一文的总结和梳理. 论文地址 简介 关联与因果 先有的鸡,还是先有的蛋?这里研究的是因果关系,因果关系与普通 ...

随机推荐

  1. CF#67 75d Big Maximum Sum

    ~~~题面~~~ 题解: 观察到拼接后的数据范围过大,无法O(n)解决,但是大区间是由很多小区间组成,而小区间是固定的,不会变化,所以可以考虑预处理出每个小区间的信息,然后根据给定序列按顺序一步一步合 ...

  2. Android 内核--Binder架构分析

    一.Binder架构 在Android中,Binder用于完成进程间通信(IPC),即把多个进程关联在一起.比如,普通应用程序可以调用音乐播放服务提供的播放.暂停.停止等功能.Binder工作在Lin ...

  3. BZOJ4567:[SCOI2016]背单词——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=4567 Lweb 面对如山的英语单词,陷入了深深的沉思,“我怎么样才能快点学完,然后去玩三国杀呢?” ...

  4. BZOJ1303 [CQOI2009]中位数图 【乱搞】

    1303: [CQOI2009]中位数图 Time Limit: 1 Sec  Memory Limit: 162 MB Submit: 3086  Solved: 1898 [Submit][Sta ...

  5. 《Java程序设计》第五周学习总结 20165218 2017-2018-2

    <Java程序设计>第五周学习总结 20165218 2017-2018-2 教材学习内容总结 第7章 内部类与异常类 内部类 在类中定义另一个类,外嵌类和内部类 内部类可以用外嵌类中的成 ...

  6. HDU.3342 Legal or Not (拓扑排序 TopSort)

    HDU.3342 Legal or Not (拓扑排序 TopSort) 题意分析 裸的拓扑排序 根据是否成环来判断是否合法 详解请移步 算法学习 拓扑排序(TopSort) 代码总览 #includ ...

  7. HDOJ.1257 最少拦截系统 (贪心)

    最少拦截系统 点我挑战题目 题意分析 一开始理解错了这道题.这么多个导弹排好序不只需要1个拦截系统吗.后来发现自己真傻.那出这个题还有啥意思,反正都需要一个.(:′⌒`) 给出n个导弹,这n个导弹的顺 ...

  8. BigDATA面试题

    Big Data 面试题总结 JAVA相关 1-1)List 与set 的区别? 老掉牙的问题了,还在这里老生常谈:List特点:元素有放入顺序,元素可重复 ,Set特点:元素无放入顺序,元素不可重复 ...

  9. HDU 5538 (水不水?)

    House Building Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others) ...

  10. D-query SPOJ - DQUERY(莫队)统计不同数的数量

    Given a sequence of n numbers a1, a2, ..., an and a number of d-queries. A d-query is a pair (i, j) ...