#NE_Accelerate Attribute Network Embedding属性加速网络嵌入原理

Accelerate Attribute Network Embedding

下载地址 :https://kopernio.com/viewer?doi=10.1137/1.9781611974973.71&route=6

摘要:网络嵌入是学习网络节点的低维向量表示。虽然在纯网络上的嵌入算法已被深入研究,但在许多实际应用中,节点通常伴随着一组丰富的属性或特征,即属性网络。网络拓扑结构和节点属性之间存在着很强的相关性。因此,建模并将节点属性的接近性纳入到网络嵌入中可能对学习更好的向量表示有潜在的帮助(尽管不是微不足道)。同时,现实网络往往包含大量的节点和特征,这对嵌入算法的可扩展性提出了要求。为了弥补这一不足,本文提出了一种加速的带属性网络嵌入算法AANE,该算法将复杂的建模和优化问题分解为多个子问题,使联合学习过程能够以分布式的方式进行。在多个真实数据集上的实验结果验证了该算法的有效性和有效性。




一、引言

1.介绍

  •   网络分析已经成为许多现实应用的有效工具,识别有效的特征对这些任务至关重要。作为一种替代方法,网络嵌入将每个节点的拓扑结构映射为低维向量表示,这样可以很好地保留原始网络的邻近性。传统的方法专注于网络结构邻近性的嵌入问题,忽略了复杂网络的节点属性信息。属性信息在网络节点关系的中具有一定的作用。表明联合利用这两种信息源可以提高学习性能。由于观察的动机,我们建议研究节点特征是否可能有助于学习更好的嵌入表示。
    -  现有的网络嵌入算法专注于纯网络,而现实网络中的节点往往与丰富的特征或属性集相关联,称为属性网络。同质性[23,24]和社会影响[38]等社会科学理论表明,节点属性与网络结构高度相关,即一个节点的形成依赖并影响另一个节点的形成。例如,微博中用户帖子和跟随者之间的紧密联系,学术网络[41]中论文主题和引用的高度相关性。在多种应用中,如情绪分析[13]和信任预测[33],表明联合利用这两种信息源可以提高学习性能。由于观察的动机,我们建议研究节点特征是否可能有助于学习更好的嵌入表示。
      例如,截至20161年,美国每月活跃Twitter用户超过6500万,每个用户可以发布数千条tweet。这就对嵌入算法的可扩展性提出了更高的要求。属性化网络嵌入在以下三个方面具有挑战性。(1)计算时间要求高可能是限制算法在实际应用中的瓶颈。一些研究致力于利用网络结构和属性信息来寻找低秩潜在表示[19,30]。它们要么需要特征分解,每次迭代(n表示节点总数)的时间复杂度为O(n3)[18],要么采用梯度下降,通常收敛速度较慢[30,43]。(2)由于异构信息的混杂,在网络与属性的关节空间中评估节点的邻近性具有一定的挑战性。此外,随着网络规模的扩大,节点属性的接近性往往太大,无法存储在一台机器上,更不用说在一台机器上进行操作了。因此,如果嵌入算法也是可扩展的,这将是很有吸引力的。(3)两个源都可能是不完整的和有噪声的,这进一步加剧了嵌入表示学习问题。因此,考虑到数据的鲜明特点,现有的方法不能直接应用于可扩展的属性化网络嵌入。
      为了解决上述问题,本文研究了在属性网络上学习嵌入表示的问题。我们的目标是回答以下问题。(1)如何在由网络结构和节点属性组成的关节空间中有效地建模节点邻近度?(2)如何使向量表示学习过程具有可扩展性和有效性?通过调查这些问题,我们提出了一个新的框架,称为加速归属网络嵌入(AANE)。我们总结本文的贡献如下:
    • 1.计算时间要求高可能是限制算法在实际应用中的瓶颈。一些研究致力于利用网络结构和属性信息来寻找低秩潜在表示[19,30]。它们要么需要特征分解,每次迭代的时间复杂度为O(n3) (n表示节点总数)
    • 2.由于异构信息的混杂,在网络与属性的连接空间中评估节点的接近性具有一定的挑战性。此外,随着网络规模的扩大,节点属性的接近性往往太大,无法存储在一台机器上,更不用说在一台机器上进行操作了。因此,如果嵌入算法也是可扩展的,这将是很有吸引力的。
    • 3.两个源都可能是不完整的和有噪声的,这进一步加剧了嵌入表示学习问题。因此,考虑到数据的鲜明特点,现有的方法不能直接应用于可扩展的属性化网络嵌入

2.问题定义


二、方法

1.模型结构

代码如下(示例):

  •   在问文章中,标量用小写字母,向量用黑色小写字母;矩阵用黑体大写字母表示,行向量用hj,矩阵的某个元素用hij表示;点乘积用a·b表示;
    n=|V|网络节点总数;
    m为属性的数量;
    d为嵌入的维度;
    W是邻接矩阵的权重;
    S为节点属性关联度矩阵;
    H为最终的嵌入矩阵
    给定一个图G(V,E,W),包含了权值矩阵W∈nn和属性矩阵A∈nm,我们的目标是将节点 i 表示成 d 维度的向量 hi,H为嵌入矩阵可以保存节点的邻接结构特征和属性特征;作为结果,H可以作为其他机器学习任务的输入让学习效果更好。
      一种理想的真实属性网络嵌入方法满足以下三个要求。首先,它需要能够处理任意类型的边(如无向的或有向的、无加权的或加权的)和节点属性(如离散的或连续的值)。其次,需要在网络和属性空间上很好地保持节点的接近性。第三,伸缩性很重要,因为节点的数量n和属性的维数m可能很大。我们开发了一个有效和高效的框架AANE,满足所有的需求。在本节中,我们将描述AANE如何有效地联合建模网络结构和属性邻近性。图1说明了基本思想。对于n = 6个节点的网络,首先将属性亲和力分解为H和H转置的乘积。同时,它强加一个edge-based点球进这个分解,这样连接节点相互接近H,亲密是控制边w .我们的目标是让更多的类似的节点在网络空间近在H .加速优化、分布式算法将原问题转化为2 n = 12复杂性较低的子问题。前n = 6个子问题被设计成彼此独立的,与后6个相同。所以所有的子问题可以分配给t = 3个工人。在最终的输出中,节点1和节点3用相似的向量表示[0:54];0:27]和[0:55;0:28],表明它们在原始网络和特征关节空间中是相似的。

2.损失函数

  为了使关节嵌入表示H能很好地呈现,AANE应该在网络结构和节点属性空间中很好地保持节点的接近性。为了在G中保持节点的接近性,提出的框架基于两个假设[11,39]。首先,假设基于图形的映射是平滑的,特别是对于高密度[7]区域。这与聚类假设[25]一致。其次,拓扑结构越相似或权值越高的节点,其向量表示越可能相似。为了实现这些目标,我们提出以下损失函数来最小化连接节点间的嵌入差异,
损失函数

  其中,行hi和hj是节点i和节点j的向量表示,wij是两者之间的边权值。关键思想是,为了使惩罚wij*||hi-hj||2最小化,较大的权重wij更有可能使hi和hj的差异更小。我们采用2-norm作为差异度量,以减轻异常值和缺失数据带来的负面影响。所提出的网络结构模型具有以下几个优点。首先,它符合融合的lasso[37]和网络lasso[9],可以诱导相似节点的向量表示差异的稀疏性,进行类似于lasso[36]中连续变量选择的连续边缘选择。符合图中聚类假设。其次,它对不同类型的网络是通用的。它既可以处理无向网络,也可以处理带加权或不带加权边缘的有向网络。因此,它可以很容易地应用于许多实际应用。
  同质性、社会影响等社会科学理论[23,38]表明,节点的属性信息与网络拓扑结构是紧密相连的。网络空间中的节点邻近度应与节点属性空间中的节点邻近度一致。因此,我们研究了如何使嵌入表示同时保持节点属性的接近性。在对称矩阵[17]分解的基础上,提出了用H与H转置的乘积来近似属性关联矩阵S。其基本思想是使矢量表示hi和hj的点积与对应的属性相似度sij相同。在数学上,损耗函数定义为
在这里插入图片描述
  其中亲和矩阵S可以通过具有代表性的相似度度量来计算。具体地说,我们在本文中使用余弦相似度。
##联合嵌入表示学习
我们实现了两个损失函数JG和JA来模拟网络拓扑结构和节点属性中的节点接近度。为了使它们相互补充,形成统一的鲁棒信息空间,我们在下面的优化问题中将这两类信息联合建模
在这里插入图片描述

  标量实体作为一个整体参数,定义了网络贡献和属性信息之间的权衡。它也是一个平衡簇数的正则化参数[9,22]。一种直观的解释是,当仿真仿真结果接近0时,网络拓扑结构不能影响最终结果H,因此每个节点是一个独立的集群。当仿真数据量足够大时,所有节点的最优解将以相同的表示形式结束,从而形成单一的簇。这允许我们不断调整集群的数量。这个数字在网络嵌入中没有指定,并且在这种情况下,可调的拟真度是有益的

3.优化方法

3加速分布式算法
  所提出的目标函数不仅联合建模了网络邻近性和节点属性亲和性,而且具有特殊设计的结构,使其能够高效、分布式地进行优化,即J对于hi是可分离的,可以重新表述为一个双凸优化问题。接下来,我们提出了一个有效的算法来解决这个问题
如果我们加上一个副本Z = H,那么第一项
可以改写为
在这里插入图片描述
我们可以进一步将上式子重新表示为线性约束问题
在这里插入图片描述
  这表明J对于hi和zi都是可分离的。由于2-范数是凸的,因此很容易验证Eq.(3.5)也是双凸的,即zi固定时为凸w.r.t. hi, hi固定时为凸w.r.t. zi。这样,我们就可以将原来的复杂嵌入问题分解为2n个小凸优化子问题。
  这2n个子问题的闭型解是不可行的。在分布式凸优化技术—乘子交替方向法(ADMM)[2,9]的激励下,将其转化为2n步更新和1步矩阵更新,加快了优化速度。提出的解决方案具有几个良好的性质。首先,它允许hi(或zi)的n个更新步骤相互独立。因此,在每次迭代中,全局协调可以分配任务给工人,并从他们那里收集解决方案,而不需要一个固定的顺序。其次,所有的更新步骤复杂度低。第三,它收敛到一个温和的解决方案快速[2]。现在我们来介绍一下细节


三、实验效果对比

1.可视化效果

2.链路预测

3.节点分类

四、总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。


五、实现

1、数据预处理

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

2、模型结构

代码如下(示例):

data = pd.read_csv(
    'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

该处使用的url网络请求的数据。

3、损失函数

4、训练

5、可视化

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值