文献阅读(2)KDD2018-Embedding Temporal Network via Neighborhood Formation

本文是对《Embedding Temporal Network via Neighborhood Formation》一文的浅显翻译与理解,如有侵权即刻删除。

朋友们,我们在github创建了一个图学习笔记库,总结了相关文章的论文、代码和我个人的中文笔记,能够帮助大家更加便捷地找到对应论文,欢迎star~

Chinese-Reading-Notes-of-Graph-Learning

更多相关文章,请移步:文献阅读总结:网络表示学习/图学习

前言

该算法认为一个节点历史的交互节点,也会对未来的交互产生影响,并且时间越近影响越大。

因而将网络结构规定为G=<V,E,A>,其中V是顶点集,E是边集,A是事件集,一条边可能包含多个事件,即多次交互。还规定N(x)为源节点x的邻居节点集,以{x:(yi,ti)}表示yi在ti时刻成为了x的邻居,H(x)则表示x的历史事件集。

在建模的过程中,引入霍克斯过程,两节点间交互的建立本身有一个基础概率,再增添一个霍克斯增量,用来计算的是x的历史节点,对可能与x交互的新节点y的影响。霍克斯过程认为历史事件离现在越近,其影响就越大,因此该增量拥有一个权重,来使其随时间变化。

此外,还引入了注意力机制作为另外一种权重,即单个历史事件占总影响的比例,这种影响可以简单理解为:相关度越大影响就越大,或者历史节点与该节点越不相似影响就越小。引入这个权重,是认为历史的影响不能仅仅受时间所控制,还有其他的因素。


Title

《Embedding Temporal Network via Neighborhood Formation》(201808)

——KDD 2018: The 24th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining

Authors: Yuan Zuo; Junjie Wu;

Corresponding: Guannan Liu;

Abstract

考虑到网络挖掘在现实生活中的丰富应用,以及近年来表征学习的兴起,网络嵌入已经成为学术界和工业界日益关注的热点问题。然而,在现有研究中,对以节点间的连续交互事件为特征的网络完整时序形成过程的建模还很少,还需要在所谓时序网络嵌入问题上的进一步研究。针对这种情况,本文引入了邻域形成序列的概念,来描述节点的演变,序列中的邻居间存在时序激励效应,因此我们提出了基于霍克斯过程的时序网络嵌入算法(HTNE)。HTNE很好地将霍克斯进程整合到网络嵌入中,以便于发现历史邻居对当前邻居的影响。具体来说,低维向量的交互会分别作为基本速率和时间影响,输入到霍克斯进程中。此外,注意力机制也被引入到HTNE中,来更好地确定一个节点的历史邻居对当前邻居的影响。在三种大规模现实网络上的实验,证明了从所述的HTNE模型中学习的嵌入,在包括节点分类、链路预测和嵌入可视化等多种任务中达到的性能,要比最先进的算法更好。尤其是基于节点嵌入推断到达率的时序推荐,显示出该模型良好的预测能力。
(个人注解:表征学习是一种将原始数据转换成为能够被机器学习有效开发的一种技术集合,要将数据都转换为向量,保存节点的所有特征信息。其目的在于,学习数据的底层结构,从而可以分析出原始数据的其它特性。)

CCS Concepts

Information systems → Data mining; Network data models;
信息系统——数据挖掘;网络数据模型
Computing methodologies → Dimensionality reduction and manifold learning;
计算方法——降维和流行学习

Keywords

时序网络;网络嵌入;表征学习;霍克斯过程


1 Introduction

近年来,网络嵌入已成为研究热点,目的在于通过将节点映射到低维空间来表示大规模网络。它提供了一种有效的方法来揭示网络结构执行各种网络挖掘任务,如节点分类、链路预测、社区挖掘等。网络嵌入算法的近期工作普遍关注静态网络框架,考虑各种上下文信息,如节点邻域。这些算法中隐藏着一个重要却经常被忽视的假设,一个节点的邻域是无序的,换言之链路形成的历史被忽视了。

事实上无论如何,网络都是由顺序地添加节点和边形成的,应当被认为是一种由节点和其邻居间事件交互驱动的动态过程。因此,节点的邻域并非同时形成的,所观察到的网络结构快照是在一定时间周期内的邻域累积。例如,图1显示了一位作者的自我中心网络(ego network,由唯一的中心节点和其邻居组成):节点1,及其邻居节点2到6。
在这里插入图片描述

从快照的角度看网络结构,我们只能观察到最新的共同作者,然而几时又如何连接节点仍然是未知的。事实上,在绝大多数现实网络中,节点间的边普遍是通过那些组成了所谓时序网络的有序事件建立的。例如,共同作者网络由具有清晰时间戳的共同作者文章所驱动。如图1(a)所示,我们看到每条边都由节点1和其邻居间合作撰写的几篇论文按时间顺序进行排列。该自我中心时序网络因而可以根据事件的时间,被展开进节点明确的具体邻居序列,该序列被定义为邻居生成序列如图1(b)所示。

邻居生成序列确实要比静态网络快照在节点表示上,含有许多更为丰富的信息。我们从图1(b)中可以看到,邻居可能会在序列中重复出现,这是由于作者之间重叠的共同作者关系,这要比单个的边能够提供更多语义价值。我们还能够清楚地观察到,序列中邻居的动态变化:节点1更可能同节点2与3在早些年进行共同创作,而近些年转变为与节点5、6和7。此外,序列中的目标邻居事件互相关联,换言之,历史事件可以影响当前邻居的形成。例如,我们猜测节点1是早年间是一位博士研究生,因此其绝大部分论文都与其导师共同创作,如节点2。节点3可能是节点2的学术伙伴,因此和节点2的共同创作关系可以激励其他邻居与其发生事件交互。可能节点1毕业后成为了教授,于是其能够发展一些新的共同作者关系,并且来自其导师的影响可能消失了,而与新共同作者如节点5的联系可能激励其他的共同作者如节点6,如图1©所示。

因此,节点如何与它们的邻居按顺序连接,可以显示动态的变化,应当更好地加以利用来表示网络。尽管最近的一些动态网络嵌入算法,试图通过将时间轴划分为固定大小来对动态建模。但这种方式所学习的嵌入仍然只表示了特殊时间段,而没有考虑到动态过程。因而,直接对邻居生成序列建模,意味着一次巨大的挑战。

为解决上述的挑战,本文提出了基于霍克斯过程的时序网络嵌入(HTNE)算法。具体来说,我们首先从连续时事件驱动的网络结构中归纳了邻居生成序列。由于霍克斯过程很好地反应了连续事件间的激励作用,尤其是历史对当前事件的影响,我们将其应用在邻居生成过程的建模里。因而,为了从霍克斯过程中获取节点嵌入,通过将成对的向量分别映射为基础概率和来自历史影响的方法,将低维向量输入到霍克斯过程中。此外,历史邻居对当前邻居形成的影响可能随节点的不同而变化,因此我们进一步引入了注意力机制,以增强来自邻居生成历史对当前邻居生成事件的影响。

为解决大规模网络的处理问题,HTNE模型是通过优化邻居生成序列可能性的办法,而非条件强度函数。我们在三维现实时序网络上组织了大量实验,来训练节点嵌入并将它们应用于一些有趣的任务中,包括节点分类、链路预测和可视化等。具体来说,我们利用邻居生成序列推导出的条件强度函数设计了一个时序推荐实验。实验的所有结果显示出,在一些最先进的基于线性算法上的可观改进。


2 Preliminaries

2.1 Neighborhood Formation Sequence

网络生成可看作是一个添加节点和边的动态过程,它编码了节点如何彼此连接以及在网络中如何演化的基本机制。静态网络快照确实是历史生成过程的积累,但仅表示了在特殊时间段的结构。因而,为发现网络结构并表示该网络,更要考虑历史网络生成过程的细节。然而,先前绝大多数对网络嵌入的研究,通常关注网络快照而非网络是如何形成的,且绝大多数网络嵌入算法都仅基于表示节点的静态邻居。

通常,动态网络试图基于预定义的时间窗口,来捕捉形成中的网络结构。然而这只能表示不同时间段的快照,不能显示出网络生成的完整时序过程。因此,本文通过跟踪每个节点的邻居生成来追溯网络生成过程。事实上,边普遍由成对节点间依序交互的事件构成。例如,在共同作者网络中,作者之间的关系由他们在确定时间论文上的共同作者关系构成。在一次网络快照中,任意两作者间的关系都能只通过一条单独的边来表示,曾经合作过论文的次数就是权重。在每条边上的依序交互事件驱动下,我们可以对时序网络进行正式定义。
在这里插入图片描述

(大意)时序网络是一个边被节点间依序交互事件所注释的网络,可以定义为G=<V,E,A>,V是节点集,E是边集,A是事件集。每条属于E的边(x,y)都在节点x与y间被依序时间所注释,即ax,y={a1->a2->…},其中ai为带有时间戳ti的事件。

给出一个时序网络,共同作者关系的演变可以更明确地描述,还能为预测一个节点未来的共同作者提供线索。因此,网络中一个节点临近的邻居,可以按节点与其交互事件的发生时间组成一个序列,来表示邻居生成过程。故而我们可以形式化地对邻居生成序列进行简单定义如下。
在这里插入图片描述

(个人理解)给出一个时序网络中的源节点x属于V,该节点的邻居集记为N(x),节点和每个邻居之间的边都用依时间顺序的交互事件所注释。从数学的角度,邻居生成序列可以被表示为一系列目标邻居的到达事件,每组都表示一个事件,即节点yi在ti时刻成为节点x的邻居。

值得一提的是,一个节点的邻居通常呈现为一个无重复节点的集合。而根据邻居生成序列的定义,序列中的每个邻居都能重复地出现,来表示与源节点的多次交互。按照所定义序列,节点连接随时间的变化能被清楚地显示出来,因此网络中节点的隐藏结构就能够从序列中推断出来。仍以共同作者网络为例,一个节点的邻居生成序列显示了其共作的变化,这有助于我们推断作者的研究兴趣。

此外,邻居生成序列中的事件都是非独立的,因为历史邻居生成事件可以影响当前邻居的生成。例如,一个研究者可能关注一个专门的领域如数据挖掘,因此其共同作者主要都是数据挖掘的研究者。然而当深度学习成为近年来的研究热点时,我们可能常常观察到一些AI的研究者在其共作序列中,且能够从最近的邻居序列中预测该作者的研究兴趣可能转变到了AI,未来的共同作者可能更多的是AI研究者们。因此,本文致力于考虑将动态邻居生成序列,从而学习节点的表示。

2.2 Problem Definition

给出一个大规模时序网络G=<V,E,A>,每个属于V的节点x的邻居和相关时序事件,可以通过追溯x与其邻居交互中所有带时间戳的事件,被归纳到一个邻居生成序列Hx中。而后,时序网络嵌入的目的是学习多维向量来表示每个节点,这实际上是学习一个映射函数ϕ:V→R^D,其中D≪|V|。

有别于近来只考虑静态邻居集合的网络嵌入算法,我们通过先对邻居生成序列和邻居间的激励影响建模,来追溯嵌入问题。


3 Methodology

3.1 Hawkes Process

点过程(描述随机点分布的随机过程)通过假设在时间t之前的历史事件能够对当前发生的事件造成影响,来对离散顺序事件建模。条件强度函数描绘序列事件到达率,能够被定义为给出所有历史事件H(t)中,出现在小范围时间间隔[t,t+Δt]的事件数量。
在这里插入图片描述
霍克斯过程是经典的时序点过程,条件强度函数定义如下。
在这里插入图片描述
其中u(t)是特定事件的基础强度,表示自发事件在时间t的到达率;k(·)是对过去历史对当前事件的时间衰减影响建模的核函数,通常为指数函数的形式。

霍克斯过程的条件强度函数显示,当前事件的产生不仅仅取决于上一步时间的事件,还受到效果随时间衰减的历史事件影响。这种性质对建模邻居生成序列来说是可取的,因为当前邻居生成能被更多的最近事件高强度地影响,而在较远历史中产生的事件,对目标邻居当前时刻的产生贡献就更少。

为处理到达事件的不同类型,霍克斯过程能被扩展为多变量形式,此时将每个事件类型的条件强度函数设计为一维。激励效果实际上是所有不同类型历史事件的总和,被两个维度d和d’间的激励率αd和αd’所表示。接下来,我们将介绍如何对多变量霍克斯过程的邻居生成建模。

3.2 Modeling Neighborhood Formation Sequence via Multivariate Hawkes Process

在之前的讨论中,当我们将每个节点都视为源时,就可以引入由交互事件驱动的目标邻居序列。一个节点的邻居生成序列实际上是一种计算过程,它包含当前目标节点受历史事件的影响。因此,应用霍克斯过程对源节点x的邻居生成序列建模是很具有吸引力的方法,且x序列中的目标y达到事件的条件强度函数可以如下形式表示。
在这里插入图片描述
其中ux,y表示在x到y间形成边的事件基础概率,h是节点x在时间t前的邻居生成序列中的历史目标节点。ax,y表示一个历史邻居h对当前邻居y的影响程度,核函数k(·)表示能用以指数函数形式形容的时间衰减影响。
(个人注解:λy|x(t)表示x与y在t时刻能建立边的概率强度;ux,y表示x与y之间能够建立边的基础强度,历史事件集H对x的影响也包含于此;k(t-th)指t之前的历史事件集H发生的时刻对当前时间的影响,越接近影响越大。)
在这里插入图片描述
要注意,折合率δ是依赖于源的参数,这表明了一个事实:对每个源节点,历史邻居都可以在不同强度上影响其当前邻居生成。
(个人注解:对(t-th)添加负号再取指数,就表示成了0-1之间的概率;δs是对不同节点受时间衰减不同进行的量化参数。)

根据式3中的强度函数,每个源节点的邻居生成序列都能被建模。其次,为学习网络中节点的多维表示,每个节点被假设为通过一个多维向量表示,并输入到强度函数中。具体来说,假设节点i的节点嵌入为ei,那么连接x和目标y的基础概率就可以被函数f(·):RD×RD→R所映射。

直观来看,基础概率显示了源节点x与目标节点y间的天然吸引力。简便起见,我们使用负欧氏距离的平方作为相似性度量,来描述节点x与y嵌入之间的吸引力,即μx,y=f(ex,ey)=−||ex−ey||^2。同上,在计算当前节点ah,y的历史影响时,我们使用同样的相似性度量αx,y=f(ex,ey)=−||ex−ey ||^2。
(个人注解:αh,y表示历史事件h对y的影响;μx,y是对两节点之间影响的一种计算,最大为0,越不相似负值越大)

由于引入的相似性度量提取负值,我们用指数函数来将条件强度比率转存为正实数即R->R+,因为λy|x(t)当被看作每单位时间的速率时应当取正值。因而,我们可以定义邻居的条件强度函数。
在这里插入图片描述
exp(·)将会在后文被提到,它可以作为传递函数来方便地定义和优化可能性。

3.3 Attention for Sequence Formation

考虑到条件强度函数,来自历史事件的影响被分解为历史节点与当前目标节点间的吸引力。直观地说,历史和目标节点间的吸引力应当依赖于源节点。例如,一些研究者可能在一定时间内有相对固定的共作,因此邻居生成序列保持稳定且可预测性强,历史事件对该场景下的当前目标节点也有更大的影响。然而另一些研究者可能会不时改变他们的共作,结果就是他们变化了和不同历史共同作者间的吸引力强度。因此,在建模直观的激励影响α时,有必要结合源节点的这种特性,但这在以前的条件强度函数中没有提及。

根据近期基于注意力的神经机器翻译模型,我们利用一个软件单元定义了源节点和其历史节点间的权重如下。
在这里插入图片描述
(个人注解:H中事件对y的影响各不相同,wh,x为权重,表示单个历史事件占总影响的比例,作为不同于时间影响的其他影响权重。)
为保持一致,我们选择负欧氏距离函数来评价源节点和历史节点间的吸引力。因此,来自历史邻居对当前目标的影响可以被重新公式化表达如下。
在这里插入图片描述

3.4 Model Optimization

通过使用多变量霍克斯过程对邻居生成序列建模,我们可以根据条件强度推断出当前邻居生成事件。从而给出节点x在时间t之前的邻居生成序列,用Hs(t)表示,在t时刻下,x与目标邻居y之间生成链接的概率可以通过条件强度被推断如下。
在这里插入图片描述
(个人注解:这是因为一定存在p(y|x,Hx(t))正比于λy|x(t),p(y|x,Hx(t))即在x的历史事件集H(x)的影响下,x在下一时刻于y进行交互的概率,因为会有很多个可能与x发生交互的节点y,则对于某一个节点y就有以上的交互概率公式。)

进而,网络中所有节点的邻居生成序列可能性的对数形式可被表示如下。
在这里插入图片描述
(个人注解:L即最大似然函数,x代表每个源节点x,对其进行最大似然估计,目的在于调整优化目标,使其影响强度最大化;取对数是为了使计算方便。)

根据式5中介绍的exp(·)转存函数,p(y|x,Hx(t))实际上是用于λy|x(t)的软件单元,它可以通过负采样被大致优化。负采样有助于我们避免在式8中计算整个节点集总和,这需要大量的计算。根据维度分布Pn(v)∝dv^(3/4),其中dv是节点v的维度,我们采样未出现在邻居生成序列中的负节点。从而源节点x与历史目标节点y,在t时刻边的目标函数可以用如下公式计算。
(个人注解:对交互过的定点而言,其预交互强度会高,相应未交互的预交互强度会低,从未交互的节点中随机取样一定数量的节点,令它们的交互强度变低,最终就可以代入计算。而每个节点负采样的节点数,正于该节点度数的3/4次幂成正比,这一数值为经典公式。)
在这里插入图片描述
其中k是根据Pn(v)采样的负节点数目,σ(x)=1/(1+exp(−x))是sigmod函数。

此外,邻居生成序列的长度影响着λy|x(t)的复杂度计算,其中节点有较长的历史长度、因此,在优化模型中,我们规定了历史h的最大长度,仅保留近期序列的目标节点。

我们采取随机梯度下降(SGD,Stochastic Gradient Descent)算法来优化式10中的目标函数。每次迭代,我们取样一小批有时间戳的边,并且规定源节点近期生成邻居的长度,来更新参数。

(个人标注:在HTNE的执行过程中,会通过批采样每次取一部分节点进行训练,对这些节点会先通过初始化随机生成它们的嵌入向量,从而能够用于后续对节点嵌入的计算中。当最终计算得到损失函数后,就可以通过随机梯度下降等方式进行优化,并反向传播最终更新节点嵌入。)


4 Experimental Setup

我们证实了所述算法在三种大规模现实世界网络上的效果,在下文中,我们使用“HTNE-a”来表示引入注意力机制的HTNE。为进行彻底的比较研究,包含了四种最先进的线性算法。

4.1 Data Sets

我们先介绍一下实验中用到的三种现实世界网络,数据统计如表1所示。
在这里插入图片描述
DBLP:我们的共同作者网络源自DBLP的十个研究领域(见表2)。我们探讨了表中的研究领域,并假设如果一个研究者最近十篇论文超过半数发表在相应会议上,就认为其属于这个特定的领域。
在这里插入图片描述
Yelp:该数据集是从Yelp挑战数据集中提取出来的,用户和事务被看作节点,注释行为被视为边。每件事务都分配到一个或多个类别,实验中我们仅保留前五类,类别较多的事务会被列在类别最前。

Tmall:该数据集是从天猫2014“双十一”购物节的销售数据中提取出来的,我们取用户和商品为节点,购买为边。每件商品都被分配为一个类别,实验中我们仅保留购买最频繁的五类。

4.2 Baseline Methods

如下是四种实验中用到的网络嵌入算法。
LINE:该算法通过预先为网络提供一级或二级邻近度来优化节点表示。在对比研究中,我们使用二级邻近度来学习表示。
DeepWalk:该算法首次使用随机游走来从网络中产生节点序列,用其作为连续跳跃模型的输出来学习表示。
node2vec:该算法通过开发出基于随机游走的程序,来探索节点邻居,是对DeepWalk的推广,可以在网络的本地和全局属性间取得平衡。
ComE:该算法对社区嵌入建模,能够用其通过引入社区感知的高阶邻近性来优化节点嵌入。

4.3 Parameter Settings

在我们的算法中,设置了最小批长度、SGD的学习率和负采样数量,分别为1000、0.01和5。我们定义DBLP、Yelp和Tmall的历史长度分别为5、2和2。对LINE,我们定义总的边采样数量为1千万,其他参数都为默认。对于别的线性算法,除嵌入大小为固定的128外,其余参数使用默认值。

4.4 Tasks and Evaluation Measures

我们首先讨论作为节点分类和链路预测任务特征的每个模型,来证实它们学习节点嵌入的质量。而后,通过执行特定的时序推荐任务,我们根据算法中的节点嵌入,对条件强度函数λy|x(t)进行评估(见式5)。我们还通过将网络布局呈现于二维空间中,来可视化节点嵌入。最终,我们进行了参数灵敏度的研究,评估任务和对应标准描述如下。

节点分类:给出推断的节点嵌入作为节点特征,我们训练出一个分类器,并预测了节点类别,我们同时以Macro(宏观)-F1和Micro(微观)-F1为标准。
链路预测:我们目标是确定是否有边存在于给出的两个节点间,基于它们嵌入向量间位置的绝对差距,我们以Macro-F1为标准。
时序推荐:给出测试时间点t,我们首先对在时间间隔[t‘,t)内的数据进行节点嵌入的训练,而后推荐在t时刻一个源节点x可能的新连接,我们以Precision@k和Recall@k为标准。


5 Experimental Results

5.1 Evaluation of Node Embeddings

如上文所述,我们通过输入表征到包括节点分类和链路预测在内的任务中,来评估学习表示的质量。

Node classification results.我们首先在每个网络上使用所有算法来学习其节点嵌入,而后训练出一个关于节点嵌入特征的逻辑回归分类器。我们将训练集大小从10%改变到90%,剩余的节点作为测试。我们对每个分类实验重复十次,且报告Macro-F1和Micro-F1成绩的平均表现。关于DBLP、Yelp和Tmall的结果分别如表4、5和6所示。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如分类结果所示,我们的算法在三个数据集中表现最好。具体来说,HTNE-a在DBLP和Yelp上表现最好,无论是Macro-F1还是Micro-F1的测量,在所有不同大小的训练数据上都是一致的。从Micro-F1来看,HTNE在Tmall上对所有大小不一的训练数据都表现得最好,且在Macro-F1上,当训练大小大于20%时表现最好。本算法的稳定性能针对不同的训练占比,都显示出我们所学习嵌入充当节点分类特征时的鲁棒性。

HTNE-a在DBLP和Yelp上表现得要比HTNE更好,无论是Macro-F1还是Micro-F1的评估,这表明了对基于源节点的历史节点的关注,能够帮助节点嵌入更好地进行。值得注意的是,HTNE-a在Tmall上比HTNE的表现略差,我们认为这是由于这样的事实:一个用户的购买行为是短暂的,比起长期行为缺少有效的时序模式。更多结果在图4c中为上文的论述做了证明,当历史长度大于2时,HTNE-a能够在Tmall上表现得比HTNE更好。
在这里插入图片描述

Link prediction results.给出一条边及其两个端点x和y,我们定义这条边的表示为|ex-ey|,其中ex和ey分别为x和y的嵌入。上述定义作用于任意一对节点,无论节点间是否存在一条边,都能够被用来作为链路预测的特征。对每个数据集,我们随机取10k条边为正,同样取10k条边为负(即两节点间不存在链接)。我们在构造的数据集上训练一个逻辑回归分类器,并将Macro-F1的结果列在表3中。
在这里插入图片描述
根据结果,我们可以发现本算法表现在DBLP和Yelp上最好,而在Tmall上为第二。上述有希望的结果表明,通过本算法学习的节点嵌入同样能够作为链路预测的有利特征。我们还注意到,LINE在Tmall上表现得最好,可能归功于数据集的特点。此外,线性算法中,LINE在Yelp和Tmall上表现最好,但在DBLP上表现最差。作为对照,我们的算法在所有数据集上都达到了令人满意的结果,显示出更强的鲁棒性。

5.2 Evaluation of the Conditional Intensity Function

通过给出目标邻居y的源节点x、时间t和历史Hx(t),条件强度函数λy|x(t)(见式五)能够显示其到达率。大概意思是,在时序网络环境下,λy|x(t)可视为y在t时刻链接到x的可能性,可以用来推荐节点未来的邻居。因此,我们在DBLP共同作者网络上,设计了一个时序推荐任务。

我们首先在时间间隔[t’,t)内,从DBLP数据中提取一个共作网络,并调整每个模型适应该网络。而后,给出一位作者,我们可以使用调整好的模型来预测其在t时刻最有可能的k位共同作者。由于线性方法仅学习网络嵌入,我们取两位研究者嵌入的点积作为排列名次。而在我们的算法中,我们直接将λy|x(t)作为研究者x和y的排列名次。具体来说,我们令t为2017年,而t‘在2012-2016年间变换,即训练集的的时间跨度从1到5地变化。我们以Precision@k和Recall@k作为评估手段。此外,为使结果在不同时间跨度下都有较高的可比性,我们仅为研究者推荐出现在2012-2017中每一年间的共同作者,推荐结果如图2所示,其中k为5和10。
在这里插入图片描述
根据结果我们可以看出,HTNE-a的表现始终优于其它线性算法。如图2所示,DeepWalk的性能随时间跨度的提高快速下降,当时间跨度大于3时就成为了最差的。尽管node2vec的性能下降缓慢,但其性能一直处于低等级。在绝大多数情况下,LINE的表现都能位列第二。然而,LINE的Precision@k和Recall@k都要比HTNE-a下降快得多,这表明对邻居生成的建模有助于HTNE-a更少受超时时序模式的影响。ComE的趋势与HTNE-a非常相似,它表明了高阶网络结构即社区结构,能够防止ComE免受超时共同作者模式的严重影响。然而,ComE的性能要比HTNE-a的竞争力弱。如图2所示,我们发现当时间跨度增长时,所有算法的性能都在下降,这乍一看与事实不符。因为在绝大多数案例中,更大的时间跨度和更多的训练数据通常应当提供更好的性能。然而实验结果与之正相反,但该结果恰好证明了第一章说的小例子,即一个研究者的共同作者关系可能随时间演变,近期的数据对推荐而言更有意义。

5.3 Network Visualization

网络可视化是评估从不同算法中所学的数据嵌入质量的有效方法。在此,我们使用t-SNE算法来将DBLP上的研究者嵌入规划到二维空间中去。这些研究者取样于三个不同的研究领域,即数据挖掘、计算机视觉和计算机网络。对每个领域,我们都随机选择500位研究者。

我们在图3中对1500名研究者用散点图进行了说明,对节点使用不同颜色和形状来表明它们的研究领域。具体来讲,用粉色三角来表示数据挖掘,蓝色点状表示计算机网络,绿色星状表示计算机视觉。不难发现,LINE、DeepWalk和node2vec都难以清楚地分离三个领域的部分。例如图3所示,LINE将数据挖掘和计算机网络混在一起。此外,在图3a的中间,三个领域都混成一团。通过对社区嵌入建模,ComE是线性算法能达到令人满意的可视化效果的,三个领域被粗略地彼此区分开来。然而,这些领域之间并没有清晰的界限。我们的两种方法都能明确地把三个领域部分分开,其中一个还拥有较大的界限。上述结果表明,通过对节点邻居生成序列进行建模,我们的算法拥有应用于社交层面应用(如具有良好性能的社区挖掘)的潜能。
在这里插入图片描述

5.4 Paramaeter Sensitivity

在这一小节,我们研究一个重要的参数,名为历史长度h,它被设计用来将节点在一段具体时间的整个历史,截取成为一段长度固定的近期序列,从而减少计算损耗。具体来讲,如图4所示,我们给出了HTNE和HTNE-a在DBLP、Yelp和Tmall上的Macro-F1数值,其中h从1到5。

根据HTNE的结果,我们可以发现h在三个数据集中对Macro-F1的影响不同。例如,在DBLP和Tmall上,HTNE的Macro-F1数值先随h增长,而当h>2时又开始下降。相比之下,Telp上HTNE的Macro-F1数值从一开始就在下降。此外,我们还发现引进注意力机制到HTNE中,有助于我们的算法面对不同h值时,具有更强的鲁棒性,就像HTNE的Macro-F1数值在Yelp和Tmall上保持稳定,在DBLP上甚至随h增长。


6 Related Work

网络嵌入,又称图嵌入或图表示学习,目的在于找到低维向量空间,能够最大化地保存原始网络结构信息和网络属性。传统网络嵌入工作依靠一般的降维技术发展,如通过构造和嵌入吸引力图像到低维空间,或者使用矩阵分解来找到低维嵌入。然而,采用该途径的工作通常面临高额的计算耗费或者统计性能缺陷,致使它们对大规模网络即不实用也不有效。

随着深度学习算法的出现,人们致力于设计基于神经网络的表示学习模型。具体来说,Mikeolov等人提出一种有效的神经网络框架来学习自然语言中单词的分散表示。受该工作的激发,Perozzi等人利用随机游走来产生大规模网络中的节点序列,之后再决定游走路径,节点序列就像一句话里的单词。Grover和Leskovec将随机游走程序推广成偏置的版本,能够在网络的本地和全局属性间保持平衡。Tang等人给出了通过逼近嵌入空间中一级和二级邻近度的网络结构。此外,节点的高阶邻近度同社区结构一样,还能用于网络嵌入模型的决策。

近来,网络嵌入被连续不断地研究,并得到了不同领域的热切关注。例如,丰富的辅助信息能够用来帮助嵌入。Pan等人提出了一种三方的深度神经网络模型,对结构、内容和标签共同建模。为解决的先前直推式算法不能自然生成不可视节点的问题,Hamilton等人开发出一种归纳的框架,可以结合生成节点嵌入的节点特征信息。此外,生成对抗网络(GNN)也被用作网络嵌入。然而,绝大多数现行网络嵌入技术,主要关注于静态网络。为解决这一问题,Zhu等人开发出基于矩阵分解的动态网络嵌入算法。Yang等人提出一种探索三元组演变模式的模型,能够保存结构信息,并得到顶点在不同时间戳下的潜在表示向量。这些动态的嵌入算法只关注将时间线分割成固定的时间窗口,从而学习到的仅仅是一种网络快照的表示。作为对比,我们模型将整个历史邻居生成过程进行计数,给出了考虑到历史的更为全面的表示。

此外,本网络嵌入算法是基于霍克斯过程的,该过程在序列建模中是一种传统且强大的时序点过程,也同样被广泛研究于适应不同的场景。尤其是近来对霍克斯过程的研究,主要聚焦于解决使用无记忆属性带来的可扩展性挑战,或是将低秩框架强加到传染矩阵上等等。


7 Conclusions

本文提出了基于霍克斯过程的时序网络嵌入(HTNE)算法,通过用霍克斯过程的公式,表示一个时序网络中的邻居生成序列。HTNE实现了节点嵌入学习,并同时捕捉到历史邻居对当前邻居生成序列的影响。通过将注意力机制引入霍克斯过程的影响比率中,HTNE得到了决定历史邻居哪个部分更有影响的能力。在三个大规模现实世界网络上的广泛实验显示,本算法在引导网络嵌入算法中的优越性。未来的工作包括将时序边的特性整合进我们的模型中,并对于解决霍克斯过程在大规模时间类型中的最优化问题,寻找一种公式化的可能性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值