PI-GNN论文翻译.md

news2024/12/27 4:12:32

PI-GNN论文翻译

Continual Learning on Dynamic Graphs via Parameter Isolation

基于参数隔离的动态图的持续学习

ABSTRACT

许多现实世界的图学习任务需要处理出现新节点和边的动态图。动态图学习方法通常会遇到灾难性遗忘问题,即先前图学到的知识会被新图的更新覆盖。为了缓解这个问题,提出了连续图学习方法。然而,现有的连续图学习方法旨在学习新模式并使用同一组固定大小的参数维护旧模式,因此面临两个目标之间的基本权衡。在本文中,我们提出了参数隔离 GNN(PI-GNN),用于动态图的持续学习,通过参数隔离和扩展来规避权衡。我们的动机在于不同的参数有助于学习不同的图形模式。基于这个想法,我们扩展模型参数以不断学习新兴的图形模式。同时,为了有效保留未受影响模式的知识,我们通过优化找到与它们相对应的参数并冻结它们以防止它们被重写。与最先进的基线相比,对八个真实世界数据集的实验证实了 PI-GNN 的有效性。

1 INTRODUCTION

图表在我们的生活中无处不在,描述了广泛的关系数据。人们已经做出了大量努力来学习所需的图形表示,以促进图形数据分析。 图神经网络(GNN)利用深度学习来融合节点特征和拓扑结构,实现最先进的性能 在无数的应用中。

传统的 GNN 是专门为静态图设计的,而现实生活中的图本质上是动态的。例如,当用户决定关注或取消关注其他人时,社交网络中的边缘就会被添加或删除。人们提出了各种图学习方法,通过将新模式编码到参数集中(例如,合并时间维度)来应对可变拓扑的挑战。然而,这些方法主要侧重于捕获新出现的拓扑模式,这可能会淹没以前学到的知识,导致一种称为灾难性遗忘的现象。为了解决动态图中的灾难性遗忘问题,人们提出了连续图学习方法来学习新出现的图模式,同时保留先前快照中的旧模式。

现有的连续图学习方法通常应用数据重播和正则化等技术来减轻动态图中的灾难性遗忘。然而,由于两个原因,这些方法仍然受到在捕捉新模式和维持旧模式之间寻求理想平衡的困扰。

  • 一方面,现有方法使用相同的参数集来保留动态图中的新旧模式。因此,学习新模式不可避免地会覆盖编码旧模式的参数,从而导致可能忘记以前的知识。
    • 另一方面,现有方法在整个动态图中使用具有固定大小的参数。由于固定大小的参数可能只能捕获有限数量的图形模式,因此必须在学习新图形模式和维护旧图形模式之间做出妥协。
      此外,这种共享和固定的参数集可能不适合动态图设置。一方面,图的演化可以非常灵活。如图1所示,任何地方的节点都可以添加或删除,从而导致每个快照发生巨大的变化。另一方面,与非图数据(例如图像)不同,数据之间不存在耦合关系,图中的节点可以深度耦合。如图1所示,新添加/删除的节点会影响其邻居节点的状态,导致节点状态的级联变化。因此,如何在如此剧烈、级联变化的情况下进行持续学习是持续图学习的独特挑战。由于动态图中出现的模式可以提供丰富的信息,因此共享和固定的参数集将受到显着影响,从而破坏旧的模式,这激励我们利用额外的参数来捕获这些信息丰富的模式。

文章配图

图 1: k = 1 k = 1 k=1 时稳定、不稳定和变化的子图的图示。在快照 t t t 处,新节点 d d d 连接到 a a a,并且节点 c c c 被删除。 因此, a a a b b b 的邻域是快照 t − 1 t − 1 t1(红色阴影)处的不稳定子图。 在快照 t t t(蓝色阴影)处添加和删除节点和边后,不稳定的子图将变成已更改的子图。 绿色阴影表示稳定的子图。

参数隔离是一种连续学习方法,其直觉是不同类型的时间模式由不同的参数集捕获,自然适合连续图学习的独特挑战。因此,为了打破动态图中学习新模式和维护旧模式之间的权衡,我们建议利用参数隔离来应用单独的和扩展的参数来捕获新兴模式,而不牺牲稳定图的旧模式。

特别是,在连续图学习中应用参数隔离具有挑战性。首先,现有的参数隔离方法适用于欧几里德空间中的数据,例如图像,无法很好地捕获动态图中级联变化的影响。其次,在图的演化过程中,参数隔离方法不断扩大模型规模并导致参数急剧增加。最后但并非最不重要的一点是,由于现有方法无法提供理论保证来确保参数隔离过程的能力,因此动态数据特性可能会导致训练不稳定和不一致。

为了解决这些问题,我们提出了一种新颖的参数隔离 GNN(PI-GNN)模型,用于动态图的持续学习。为了适应连续图学习的独特挑战,在数据层面,整个图模式被分为稳定和不稳定部分,以模拟节点之间的级联影响。在模型层面,PI-GNN 被设计为由两个连续的阶段组成:知识修正阶段和参数隔离阶段。作为参数隔离的基础,知识修正阶段过滤掉受节点和边变化影响的模式的影响。我们对模型进行微调以排除此类影响并获得稳定的参数,以保持现有稳定图形模式的性能。在参数隔离阶段,我们保持稳定的参数冻结,同时用新的参数扩展模型,以便在不影响稳定的情况下适应新的图形模式。为了防止模型过度膨胀,我们使用模型蒸馏来压缩模型,同时保持其性能。最后,我们从图数据的角度专门提供理论分析,以证明我们的方法的能力。我们从理论上证明,参数隔离阶段优化了整个图上再训练损失的严格上限。在八个真实数据集上进行了大量实验,其中 PI-GNN 在动态图持续学习方面优于最先进的基线。 我们在 https://github.com/Jerry2398/PI-GNN 发布了我们的代码。

我们的贡献总结如下:

  • 我们提出了 PI-GNN,一种基于参数隔离的动态图持续学习方法。通过隔离稳定参数并通过参数扩展学习新模式,PIGNN 不仅可以捕获新出现的模式,而且还可以减少灾难性遗忘的影响。
    • 我们从理论上证明 PI-GNN 优化了整个图上的再训练损失的严格上限。
    • 我们对八个真实数据集进行了广泛的评估,其中 PI-GNN 在动态图上实现了最先进的技术。

2 PRELIMINARIES

在本节中,我们首先介绍动态图的预备知识,然后制定问题定义。

定义1 Dynamic Graph(动态图)。快照 t t t 处的图表示为 G t = ( V t , A t , X t ) G^{t}=(V^{t},\mathbf{A}^{t},\mathbf{X}^{t}) Gt=(Vt,At,Xt),其中 V t V^{t} Vt是节点集, A t \mathbf{A}^{t} At是邻接矩阵, X t \mathbf{X}^{t} Xt是节点特征。动态图表示为 G = ( G 1 , . . . , G T − 1 , G T ) \mathcal{G}=(G^{1},...,G^{T-1},G^{T}) G=(G1,...,GT1,GT),其中 T T T 为快照数量。

定义2 (图神经网络 (GNN))。我们将由 θ t \theta^t θt参数化的 k k k 层GNN表示为 f θ t f_{\theta^{t}} fθt,将 l l l 层中节点 v v v 的表示表示为 h v ( l ) \mathbf{h}_{v}^{(l)} hv(l) h v ( 0 ) = X v \mathbf{h}_{v}^{(0)}=\mathbf{X}_{v} hv(0)=Xv。节点 v v v 的表示通过消息传递更新如下:

h v ( l + 1 ) = C O M B ( A G G ( h u ( l ) , ∀ u ∈ N ( v ) ) , h v ( l ) ) , ( 1 ) \mathbf h_v^{(l+1)}=\mathrm C\mathrm O\mathrm M\mathrm B\left(\mathrm A\mathrm G\mathrm G\left(\mathbf h_u^{(l)},\forall u\in N(v)\right),\mathbf h_v^{(l)}\right),\quad(1) hv(l+1)=COMB(AGG(hu(l),uN(v)),hv(l)),(1)

其中 N ( v ) N(v) N(v)是节点 v v v 的邻域,AGG和COMB分别表示GNN的消息传递和聚合机制。

y v y_v yv 作为 v v v 的标签,节点分类的损失为:

L ( f θ t ( G t ) ) = ∑ v ∈ V t CrossEnt ( softmax ( h v ( k ) ) , y v ) . ( 2 ) L\left(f_{\theta^t}\left(G^t\right)\right)=\sum_{v\in V^t}\text{CrossEnt}\left(\text{softmax}\left(\mathbf{h}_v^{(k)}\right),y_v\right).\quad(2) L(fθt(Gt))=vVtCrossEnt(softmax(hv(k)),yv).(2)

在动态图中,快照 t t t 处的一些子图将受到 t + 1 t+1 t+1 处新增或删除的图数据的影响。基于这个动机,我们将图分解为稳定子图和不稳定子图:

  • 不稳定子图 G u n s t a b l e t − 1 G_{unstable}^{t-1} Gunstablet1 被定义为快照 t − 1 t − 1 t1 处的 k k k 跳自我子图,其以直接连接到快照 t t t 处的新兴/删除节点或边的节点为中心。
    • 稳定子图 G s t a b l e t − 1 G_{stable}^{t-1} Gstablet1 被定义为 k k k 跳自我子图,其中心节点位于连接到快照 t t t 处的新兴/删除节点或边的节点 k k k 跳范围之外,即 G s t a b l e t − 1 = G t − 1 − G u n s t a b l e t − 1 G_{stable}^{t-1}=G^{t-1}-G_{unstable}^{t-1} Gstablet1=Gt1Gunstablet1
    • 在快照 t t t 添加或删除新节点和边后,更改的子图 Δ G t \Delta G^{t} ΔGt G u n s t a b l e t − 1 G_{unstable}^{t-1} Gunstablet1 演变而来。
      请注意, G s t a b l e G_{stable} Gstable G u n s t a b l e G_{unstable} Gunstable G s t a b l e G_{stable} Gstable G u n s t a b l e G_{unstable} Gunstable上进行操作时指的是自我网络仅涉及它们的中心节点。由于节点要么稳定,要么不稳定, G s t a b l e = G − G u n s t a b l e G_{stable}=G-G_{unstable} Gstable=GGunstable将成立。尽管自我网络可能重叠,但这不会影响上面的等式。

基于这些定义,我们有

L ( f θ t − 1 ( G t − 1 ) ) = L ( f θ t − 1 ( G s t a b l e t − 1 ) ) + L ( f θ t − 1 ( G u n s t a b l e t − 1 ) ) , ( 3 ) \begin{gathered}L\left(f_{\theta^{t-1}}\left(G^{t-1}\right)\right) \\\\=L\left(f_{\theta^{t-1}}\left(G_{stable}^{t-1}\right)\right)+L\left(f_{\theta^{t-1}}\left(G_{unstable}^{t-1}\right)\right), \end{gathered}\quad(3) L(fθt1(Gt1))=L(fθt1(Gstablet1))+L(fθt1(Gunstablet1)),(3)

请注意,节点分类的损失是以节点为单位计算的。因此,方程3的 r.h.s 中的损失函数可以直接相加,因此等式3会保持。

由于 G s t a b l e t − 1 G_{stable}^{t-1} Gstablet1 在快照 t t t 时保持不变,而 G u n s t a b l e t − 1 G_{unstable}^{t-1} Gunstablet1 将演变成 Δ G t \Delta G^{t} ΔGt ,我们有

L ( f θ t ( G t ) ) = L ( f θ t ( G s t a b l e t − 1 ) ) + L ( f θ t ( Δ G t ) ) ( 4 ) L\left(f_{\theta^{t}}\left(G^{t}\right)\right)=L\left(f_{\theta^{t}}\left(G_{stable}^{t-1}\right)\right)+L\left(f_{\theta^{t}}\left(\Delta G^{t}\right)\right)\quad(4) L(fθt(Gt))=L(fθt(Gstablet1))+L(fθt(ΔGt))(4)

我们最终定义了 GNN 的持续学习问题。

定义 3(GNN 的持续学习) GNN 持续学习的目标是在给定动态图 G = ( G 1 , G 2 , . . . , G T ) \mathcal G=(G^{1},G^{2},...,G^{T}) G=(G1,G2,...,GT)的情况下学习一系列参数 θ = ( θ 1 , θ 2 , . . . , θ T ) \theta = (\theta^1,\theta^2,...,\theta^T) θ=(θ1,θ2,...,θT),其中 f θ t f_{\theta^{t}} fθt 在以下方面表现良好 G i ≤ t G^{i\leq t} Git,即来自所有先前快照的图表。

3 METHODOLOGY

在本节中,我们介绍 PI-GNN 的详细信息,如图 2 所示。PI-GNN 包含两个阶段。在知识修正阶段,GNN 模型经过训练来学习稳定参数,以捕获稳定子图中的拓扑结构。在参数隔离阶段,GNN 模型进一步扩展以捕获不稳定子图中的新模式,同时固定稳定参数以免被重写。理论分析证明了两个阶段在每个快照中全面捕获新的稳定模式的能力。

文章配图

图 2:PI-GNN 概述。PI-GNN 有两个连续的阶段:知识修正阶段和参数隔离阶段。知识修正阶段用于获得稳定的模型参数,而参数隔离阶段用于在不损害现有稳定模式的情况下学习新模式。

3.1 Knowledge Rectification

知识修正阶段用于更新模型以获得捕获稳定子图的拓扑模式的参数。知识修正背后的设计理念是 θ t − 1 \theta^{t-1} θt1可能不是快照 t t t 的最佳初始化,因为它们可能编码不相关的数据模式。具体来说,由于节点相互连接,快照 t t t 处的新节点和边将对 t − 1 t-1 t1 处的现有节点产生影响,从而构成在快照𝑡处发生变化的不稳定子图 G u n s t a b l e t − 1 G_{unstable}^{t-1} Gunstablet1。因此,只有稳定子图 G s t a b l e t − 1 G_{stable}^{t-1} Gstablet1 应该在 G t − 1 G^{t-1} Gt1 G t G^{t} Gt 之间共享,因此,我们需要初始化最适合 G s t a b l e t − 1 G_{stable}^{t-1} Gstablet1 θ t \theta^t θt 而不是 G t − 1 G^{t-1} Gt1。 我们通过以下优化来实现这一目标。 从方程3,我们有:

min ⁡ θ t − 1 L ( f θ t − 1 ( G s t a b l e t − 1 ) ) ⇔ min ⁡ θ t − 1 L ( f θ t − 1 ( G t − 1 ) ) − L ( f θ t − 1 ( G u n s t a b l e t − 1 ) ) . ( 5 ) \min_{\theta^{t-1}} L\left(f_{\theta^{t-1}}\left(G_{stable}^{t-1}\right)\right)\\\Leftrightarrow\min_{\theta^{t-1}} L\left(f_{\theta^{t-1}}\left(G^{t-1}\right)\right)-L\left(f_{\theta^{t-1}}\left(G_{unstable}^{t-1}\right)\right).\quad(5) θt1minL(fθt1(Gstablet1))θt1minL(fθt1(Gt1))L(fθt1(Gunstablet1)).(5)

通过方程5优化模型。我们得到编码 G s t a b l e t − 1 G_{stable}^{t-1} Gstablet1的参数,它将在快照 t t t 中保持不变。我们将它们表示为稳定参数。在方程5中。 G u n s t a b l e t − 1 G_{unstable}^{t-1} Gunstablet1通过其定义可以很容易地从 Δ G t \Delta G^{t} ΔGt 得到。 然而,重新计算 L ( f θ t − 1 ( G t − 1 ) ) ˉ \bar{L(f_{\theta^{t-1}}(G^{t-1}))} L(fθt1(Gt1))ˉ非常耗时。因此,我们从 G t − 1 G^{t-1} Gt1 中采样并存储一些节点,并使用它们的 k k k 跳邻域(称为 G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1)来估计 L ( f θ t − 1 ( G t − 1 ) ) ˉ \bar{L(f_{\theta^{t-1}}(G^{t-1}))} L(fθt1(Gt1))ˉ。我们采用统一抽样以确保公正。因此,在实践中,知识矫正阶段需要解决以下优化问题:

θ s t a b l e t − 1 = arg ⁡ min ⁡ θ t − 1 L ( f θ t − 1 ( G m e m o r y t − 1 ) ) − β L ( f θ t − 1 ( G u n s t a b l e t − 1 ) ) , (6) \begin{aligned}\theta_{stable}^{t-1}&=\arg\min_{\theta^{t-1}}L(f_{\theta^{t-1}}(G_{memory}^{t-1}))\\&-\beta L(f_{\theta^{t-1}}(G_{unstable}^{t-1})),\end{aligned}\quad\quad\text{(6)} θstablet1=argθt1minL(fθt1(Gmemoryt1))βL(fθt1(Gunstablet1)),(6)

其中 θ s t a b l e t − 1 \theta_{stable}^{t-1} θstablet1是稳定参数, β \beta β是处理因采样 G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1引起的大小不平衡问题的因子。

3.2 Parameter Isolation

获得稳定参数后,我们提出了一种 GNN 的参数隔离算法,可以在不损害稳定模式的情况下增量学习新模式。

3.2.1 算法。 参数隔离的关键思想是不同的参数可以学习不同的模式,并且我们不是修改现有参数,而是隔离并添加新参数来学习新模式。具体来说,我们在图3中的快照 t t t 处展示了参数隔离算法,它可以划分如下:

  1. 展开:我们将隐藏层 θ s t a b l e t − 1 \theta_{stable}^{t-1} θstablet1 的参数展开为 θ t = θ s t a b l e t − 1 ⊕ θ n e w t \theta^{t}=\theta_{stable}^{t-1}\oplus\theta_{new}^{t} θt=θstablet1θnewt,从而增加模型学习新模式的能力。
    1. 冻结:我们冻结 θ s t a b l e t − 1 \theta_{stable}^{t-1} θstablet1 以防止它们被重写。考虑到旧的模式可能有利于学习新的图模式, θ s t a b l e t − 1 \theta_{stable}^{t-1} θstablet1用于计算前向传递过程中的损失,但不会更新。
    1. 更新:我们更新图表 G t G^{t} Gt 上的 θ n e w t \theta_{new}^{t} θnewt 。为了高效训练, θ n e w t \theta_{new}^{t} θnewt 仅在 Δ G t \Delta G^{t} ΔGt G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1上更新。形式上,我们优化以下目标
      min ⁡ θ n e w t L ( f θ s t a b l e t − 1 ( Δ G t ) + f θ n e w t ( Δ G t ) ) + λ L ( f θ n e w t ( G m e m o r y t − 1 ) ) , ( 7 ) \begin{aligned}\min_{\theta_{new}^{t}}&L\left(f_{\theta_{stable}^{t-1}}\left(\Delta G^{t}\right)+f_{\theta_{new}^{t}}\left(\Delta G^{t}\right)\right)\\&+\lambda L(f_{\theta_{new}^{t}}(G_{memory}^{t-1})),\end{aligned}\quad\quad(7) θnewtminL(fθstablet1(ΔGt)+fθnewt(ΔGt))+λL(fθnewt(Gmemoryt1)),(7)

其中 G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1 G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1 的稳定子集, λ \lambda λ 类似于等式6中的 β \beta β。处理由采样 G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1 引起的大小不平衡问题。

文章配图

我们进行了理论分析,以保证所提出的动态图参数隔离算法的正确性。我们首先提出主要定理如下:

定理3.1。

L ( f θ t ( G t ) ) ≤ L ( f θ s t a b l e t − 1 ( Δ G t ) + f θ n e w t ( Δ G t ) ) + 1 2 L ( f θ s t a b l e t − 1 ( G s t a b l e t − 1 ) ) + 1 2 L ( f θ n e w t ( G s t a b l e t − 1 ) ) a n d   e q u a l i t y   h o l d s   w h e n f θ n e w t ( G s t a b l e t − 1 ) = f θ s t a b l e t − 1 ( G s t a b l e t − 1 ) . ( 8 ) \begin{aligned}L\left(f_{\theta^{t}}\left(G^{t}\right)\right)&\leq L\left(f_{\theta_{stable}^{t-1}}\left(\Delta G^{t}\right)+f_{\theta_{new}^{t}}\left(\Delta G^{t}\right)\right)\\&+\frac{1}{2}L\left(f_{\theta_{stable}^{t-1}}\left(G_{stable}^{t-1}\right)\right)+\frac{1}{2}L\left(f_{\theta_{new}^{t}}\left(G_{stable}^{t-1}\right)\right)\\and\ equality\ holds\ &when f_{\theta_{new}^{t}}(G_{stable}^{t-1})=f_{\theta_{stable}^{t-1}}(G_{stable}^{t-1}).\end{aligned}\quad\quad(8) L(fθt(Gt))and equality holds L(fθstablet1(ΔGt)+fθnewt(ΔGt))+21L(fθstablet1(Gstablet1))+21L(fθnewt(Gstablet1))whenfθnewt(Gstablet1)=fθstablet1(Gstablet1).(8)

定理 3.1 的含义是,通过拆分 θ t = θ n e w t ⊕ θ s t a b l e t − 1 \theta^{t}=\theta_{new}^{t}\oplus \theta_{stable}^{t-1} θt=θnewtθstablet1 G t = G s t a b l e t − 1 ∪ Δ G t G^{t}=G_{stable}^{t-1}\cup\Delta G^{t} Gt=Gstablet1ΔGt ,我们实际上优化了快照 t t t 处的再训练损失 L ( f θ t ( G t ) ) L(f_{\theta^{t}}(G^{t})) L(fθt(Gt))的严格上限(方程 8 的 R.H.S.)。为了证明该定理,我们首先给出一个引理,其证明可以在附录 A.1 中找到。

引理 3.2。 2 L ( f θ 1 ( G ) + f θ 2 ( G ) ) ≤ L ( f θ 1 ( G ) ) + L ( f θ 2 ( G ) ) 2L(f_{\theta_1}(G)+f_{\theta_2}(G))\leq L(f_{\theta_1}(G))+L(f_{\theta_2}(G)) 2L(fθ1(G)+fθ2(G))L(fθ1(G))+L(fθ2(G)) 如果 f θ 1 ( G ) = f θ 2 ( G ) f_{\theta_{1}}(G)=f_{\theta_{2}}(G) fθ1(G)=fθ2(G)则等式成立)。

引理 3.2 本质上是由交叉熵损失的凸性得出的。 然后我们提供定理 3.1 的证明。

文章配图

3.3.1 实际实施。 我们讨论如何在实践中优化上限(方程 8 的 R.H.S.)。 第二项 L ( f θ s t a b l e t − 1 ( G s t a b l e t − 1 ) ) L(f_{\theta_{stable}^{t-1}}(G_{stable}^{t-1})) L(fθstablet1(Gstablet1)) 已在方程式6中进行了优化, θ s t a b l e t − 1 \theta_{stable}^{t-1} θstablet1 是固定的。因此,我们只需要优化第一项和第三项即可。

对于上限的第一项,由于 θ s t a b l e t − 1 \theta_{stable}^{t-1} θstablet1 被冻结以保留稳定参数,我们仅对 θ n e w t \theta_{new}^{t} θnewt 进行优化。因此,我们将第一项优化为

min ⁡ θ n e w t L ( f θ s t a b l e t − 1 ( Δ G t ) + f θ n e w t ( Δ G t ) ) . ( 10 ) \min\limits_{\theta_{new}^t} L\left(f_{\theta_{stable}^{t-1}}\left(\Delta G^t\right)+f_{\theta_{new}^t}\left(\Delta G^t\right)\right).\quad(10) θnewtminL(fθstablet1(ΔGt)+fθnewt(ΔGt)).(10)

对于第三项,我们使用 G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1 来估计 G s t a b l e t − 1 G_{stable}^{t-1} Gstablet1。因此,第三项可以近似优化为

min ⁡ θ n e w t λ L ( f θ n e w t ( G m e m o r y t − 1 ) ) , ( 11 ) \min_{\theta_{new}^{t}}\lambda L(f_{\theta_{new}^{t}}(G_{memory}^{t-1})),\quad(11) θnewtminλL(fθnewt(Gmemoryt1)),(11)

其中 λ \lambda λ 是平衡因子,用于补偿 G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1 G s t a b l e t − 1 G_{stable}^{t-1} Gstablet1 之间的大小差异。 结合式(10) 和式(11),我们得到式(7)中的最终优化问题。

3.3.2 边界分析。 根据引理3.2,如果 f θ n e w t ( G s t a b l e t − 1 ) = f θ s t a b l e t − 1 ( G s t a b l e t − 1 ) . A s θ s t a b l e t − 1 f_{\theta_{new}^{t}}(G_{stable}^{t-1})=f_{\theta_{stable}^{t-1}}(G_{stable}^{t-1}).\mathrm{As} \theta_{stable}^{t-1} fθnewt(Gstablet1)=fθstablet1(Gstablet1).Asθstablet1 则等式成立。由于 θ s t a b l e t − 1 \theta_{stable}^{t-1} θstablet1 在知识矫正阶段得到了优化, θ s t a b l e t − 1 \theta_{stable}^{t-1} θstablet1 最小化 L ( f θ t − 1 ( G s t a b l e t − 1 ) ) L(f_{\theta^{t-1}}(G_{stable}^{t-1})) L(fθt1(Gstablet1))。此外,当我们最小化 L ( f θ n e w t ( G m e m o r y t − 1 ) ) L(f_{\theta_{new}^{t}}(G_{memory}^{t-1})) L(fθnewt(Gmemoryt1)) G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1 时,从 G s t a b l e t − 1 G_{stable}^{t-1} Gstablet1 中采样,我们还将 θ n e w t \theta_{new}^{t} θnewt 推向最小化器 θ s t a b l e t − 1 \theta_{stable}^{t-1} θstablet1。因此,式(7)中边界的紧密度可以保证。

3.4 Discussions

模型压缩。 参数隔离会受到大 T T T 参数急剧增加的影响。我们采用模型蒸馏来解决这个问题,其中我们使用原始模型作为教师模型,使用另一个隐藏单元较少的模型作为学生模型(即压缩模型)。我们最小化教师和学生模型输出之间的交叉熵。 具体来说,我们使用 G m e m o r y G_{memory} Gmemory作为稳定数据, Δ G \Delta G ΔG作为新数据,共同作为我们蒸馏的训练数据。这符合我们的设定,因为这些数据可以在知识矫正阶段获得,并且不需要引入额外的知识。

另一个问题是,如果图模式由于节点/边删除而显着消失,则过度扩展的模型可能会面临过拟合问题。这也可以通过模型蒸馏来解决。当动态图中与之前的快照相比删除了太多的节点或边时,我们可以在该快照中蒸馏模型以获得更小的模型,以避免过拟合问题。

在我们的实验中,我们在最后一个快照之后压缩图 G T G^T GT 上的模型。由于实际应用中的快照是没有尽头的,因此可以随时定期压缩模型,这几乎不会影响性能。

扩展到其他任务。 在整篇论文中,我们主要关注[53, 65]中的节点分类任务。然而,只要损失函数是凸的,定理 3.1 中所述的理论就适用于其他任务。其他任务的参数隔离(例如链接预测)可能需要较小的设计修改(例如图分解、样本选择),因此我们将它们留作未来的工作。

4 EXPERIMENTS

在本节中,我们将介绍 PI-GNN 在八个真实世界数据集上的实证评估,从引文网络到比特币交易网络 和电子商务网络。

4.1 Experimental Setup

4.1.1 数据集。 我们对具有不同应用场景的八个真实世界图数据集进行了实验:Cora、Citeseer、Amazon Photo、Amazon Computer、Elliptic、DBLP-S、Arxiv -S 和 Paper100M-S。其中,Elliptic、DBLPS、Arxiv-S、Paper100M-S是流图。我们从他们的完整数据中进行采样,并根据时间戳将它们分成任务。对于Arxiv-S,我们从Arxiv完整数据中选择一个具有5类的子图,其节点数从2010年到2018年变化最大。我们根据时间戳将其拆分为任务。 对于DBLP-S,我们从DBLP全数据中随机选择20000个9类节点和75706条边,根据时间戳将其拆分为任务。对于Paper100M-S,我们从Paper100M完整数据中随机选择2009年至2019年的12个类,并根据时间戳将其拆分为任务。或者,由于Cora、Citeseer、Amazon Photo 和 Amazon Computer 都是静态图,我们根据任务增量设置手动将它们转换为流图,即每两个任务添加一个类。

对于每个数据集,我们将 G T G^T GT 中的 60% 的节点拆分为训练,20% 用于验证,20% 用于测试。 训练/验证/测试分割在所有快照中都是一致的。 数据集统计数据如表1所示。

文章配图

4.1.2 基线。我们将 PI-GNN 与以下基线进行比较。

  • 重新训练:我们在每个快照的 G t G^t Gt 上重新训练 GNN。 由于每个快照都会学习所有模式,因此它可以被视为所有持续学习方法的上限。
    • 预训练 我们对所有快照使用在 G 1 G^1 G1 上训练的 GNN。
    • OnlineGNN:我们在 G 1 G^1 G1 上训练 GNN,并在每个快照 t t t 处的更改子图 Δ G t \Delta G^t ΔGt 上对其进行微调。
    • 动态基线:我们将 PI-GNN 与以下通用动态图学习方法进行比较:EvolveGCN、DyGNN和 DNE。
    • 连续基线:我们将 PI-GNN 与以下连续图学习方法进行比较:ContinualGNN、DiCGRL和 TWP。
      4.1.3 超参数设置。 k = 2 k=2 k=2 层的 GraphSAGE 用作Retrain、OnlineGNN、Pretrain 和 PI-GNN 的骨干。 我们为每个隐藏层初始化 12 个单元,并在每个快照处扩展 12 个单元。我们设置 λ = 0.1 , β = 0.01 \lambda=0.1,\beta=0.01 λ=0.1,β=0.01。我们对 Arxiv-S 采样了 128 个节点作为 G m e m o r y G_{memory} Gmemory,对其他数据集采样了 256 个节点。训练后,我们将 PI-GNN 提炼为具有 32 个隐藏单元的较小模型。我们应用网格搜索来找到每个模型的最佳超参数。为了公平起见,所有基线都使用蒸馏前具有 PI-GNN 最终(即最大)容量的骨干模型,以消除模型不同参数大小的影响。

4.1.4 指标。 我们使用表现均值(PM)和遗忘度量(FM)作为指标。

PM用于评估模型的学习能力:

P M = 1 T ∑ i = 1 T a i i , ( 12 ) PM=\frac{1}{T}\sum_{i=1}^{T}a_{ii},\quad(12) PM=T1i=1Taii,(12)

其中 T T T是任务总数, a i j a_{ij} aij是指任务 i i i 训练后模型在任务 j j j 上的表现。

FM用于评估灾难性遗忘的程度:

F M = 1 T − 1 ∑ i = 1 T − 1 a T i − a i i ( 13 ) FM=\frac{1}{T-1}\sum_{i=1}^{T-1}a_{Ti}-a_{ii}\quad(13) FM=T11i=1T1aTiaii(13)

在本文中,我们使用节点分类精度为 a i j a_{ij} aij。因此,较高的 PM 表明更好的整体表现,而更负的 FM 表明更大的遗忘。另外,FM<0表示遗忘,FM>0表示没有遗忘。

4.2 Quantitative Results

表 2 显示了 PI-GNN 与基线相比的性能。我们提出以下观察。

  • 在 PM 方面,PI-GNN 优于所有连续和动态图学习基线,这表明 PI-GNN 通过学习稳定参数并在每个快照处分割新参数,更好地适应新的图模式。需要注意的是,DNE不使用节点属性,因此性能较差。
    • 就FM而言,动态基线通常比连续基线更差,因为一般的动态图学习方法无法解决先前模式的遗忘问题。与连续图学习基线相比,PI-GNN 实现了最少的负 FM,从而实现了最少的遗忘,表明 PIGNN 在维持稳定拓扑模式方面的有效性。
    • 尽管基线使用与 PI-GNN 相同的模型大小,但由于共享和固定的参数集,不可避免地会覆盖编码旧模式的参数,从而学习信息丰富的新兴模式。因此,即使模型大小相同,它们的性能也比我们的方法差,这验证了显式隔离稳定图模式的参数和逐步扩展参数以学习新图模式的有效性。
    • 最后,通过将 PI-GNN 与 Distilled PI-GNN 进行比较,我们观察到 Distilled PI-GNN 仅遭受约 1% 的性能损失,并且仍然优于基线,这表明过度扩展问题通过蒸馏得到了有效解决。
      文章配图

我们还在图 4 中显示了训练过程中当前任务和第一个任务的 PI-GNN 和基线的准确性。当前任务的性能显示了模型适应新图形模式的程度,而第一个任务的性能则显示了 它如何很好地保留旧图形模式的知识。我们提出以下观察:

  • 在训练过程中,PI-GNN是最接近Retrain的,这证明了PI-GNN适应新模式的能力,与我们的理论分析相吻合。OnlineGNN 由于重写参数而波动很大,因此遭受灾难性遗忘问题。预训练无法学习新模式,因此表现最差。
    • ContinualGNN和EvolveGCN的性能逐渐下降。我们将此归因于以下原因。由于模型容量恒定,ContinualGNN在学习许多新模式后会逐渐忘记旧知识,这使得很难使用现有参数来适应新模式而不忘记。EvolveGCN可以在整个快照上进行学习,但它的目标是捕捉动态图的动态性,并且不可避免地会忘记。
      文章配图

4.3 Efficiency

图 5 显示了与基线相比,每个 epoch 的 PI-GNN 平均训练时间。我们没有显示 EvolveGCN 的平均训练时间,因为它使用整个快照和 RNN 来进化参数,这比 Retrain 需要更多的开销。DiCGRL 未显示,因为它在 Paper100M-S 中遇到内存不足问题。从结果中,我们观察到 TWP 必须计算拓扑权重来保留结构信息,从而导致更多的开销。值得注意的是,DyGNN 和 DNE 有不同的设置,它们在每个新边出现后更新节点嵌入,因此它们具有相对较大的开销。PI-GNN 与 OnlineGNN 一样高效。高效率可归因于对 G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1进行采样,以及在每个快照上对 Δ G t \Delta G^t ΔGt G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1进行增量学习。

文章配图

4.4 Model Analysis

4.4.1 不同骨干网的影响。 我们使用不同的 GNN 模型作为 PI-GNN 的骨干。结果如表3所示。我们只展示了分别在持续学习方法和动态学习方法中表现最好的ContinualGNN和EvolveGCN。我们发现我们的 PI-GNN 可以与不同的 GNN 主干网络正确组合。

文章配图

4.4.2 知识矫正和参数隔离。首先,我们研究知识矫正的影响。我们为知识纠正阶段训练不同的 epoch,结果如图 6(a)所示。一方面,我们观察到在缺乏知识纠正(0 epoch)的情况下会出现很大的退化,因为我们可能会冻结不稳定模式的参数。另一方面,只要存在纠正,纪元的数量就几乎没有影响。

文章配图

其次,我们对参数隔离阶段进行消融研究,结果如图 6(b) 所示。移除参数隔离或扩展后性能显着下降,凸显了它们对 PI-GNN 的贡献。

4.4.3 超参数研究。 我们对模型的超参数进行了详细的超参数研究。

抽样规模研究。 我们首先研究样本 G m e m o r y t − 1 G_{memory}^{t-1} Gmemoryt1 的大小。 结果如图6©所示。 我们发现采样更多的节点可以保证优化上限的紧密性。

当上限足够紧时,采样丰富的节点不再带来额外的好处,而是增加了开销。因此,我们需要在采样和效率之间选择合适的平衡点。根据经验,我们发现当采样节点总数的 1% 时可以获得良好的结果。在我们的实验中,我们根据经验对 Arxiv-S 采样了 128 个节点,对其他数据集采样了 256 个节点(约 1%)。

扩展单元数研究。 我们研究了扩展单元数量的影响。如图6(d)所示。我们发现少量(例如 12 个)单元就足够了,因为过度扩展几乎不会带来性能提升,但开销会更大。

平衡因素研究。 我们在表4中显示了平衡因子 β \beta β,在表5中显示了平衡因子 α \alpha α的影响。我们发现,不适当的平衡会对性能产生一些负面影响。

文章配图

4.5 Layer Output Visualization

为了验证我们的论点,即不同的参数有助于捕获不同的模式,这是 PI-GNN 的基础,我们在 Arxiv-S 数据集上可视化 PI-GNN 的第一层输出。具体来说,我们分别使用任务 0 和任务 2 中的 20 个样本来显示不同模式与模型第一层输出之间的关系。如图7所示,对于任务0的样本,激活的神经元主要集中在前半部分,对于任务2的样本,激活的神经元主要集中在后半部分,这表明不同的参数对不同的模式有贡献。

文章配图

4.6 Model Compression

最后,我们比较压缩前后的 PI-GNN 以及一些基线。 结果如表 6 所示。我们观察到,压缩后,我们的模型大小减小了 4 倍,性能下降不到 1%(如表 2 所示)。结果表明,PI-GNN 可以被压缩以避免过度扩展,因此,即使在大 T T T 下,PI-GNN 也是高效的。

文章配图

5 RELATED WORK

5.1 Dynamic Graph Learning

大多数现实世界的图都是动态的,有新的节点和边。人们付出了很多努力来学习动态图的表示。 DNE和 DyGNN增量更新节点嵌入以反映图中的变化。Dyrep 对图动态的微观和宏观过程进行建模,并融合时间信息来更新节点嵌入。 EvolveGCN使用循环网络来模拟与图动态相对应的不断演化的 GNN 参数。然而,动态图学习方法通常侧重于学习当前和未来图的更好嵌入,而不是以前的图。因此,它们通常无法维持先前图表的性能,这被称为灾难性遗忘。

5.2 Continual Graph Learning

为了减轻动态图中的灾难性遗忘,研究人员提出了持续图学习方法。ER-GNN将基于重放的方法推广到 GNN。ContinualGNN提出重要性采样来存储旧数据以进行重放和正则化。DiCGRL解开节点表示,并且在学习新模式时仅更新最相关的部分。TWP考虑图结构并保留它们以防止遗忘。然而,所有这些方法的目的都是保持先前图的性能,同时学习具有固定大小的相同参数集的未来图。因此,必须在动态图中的新旧模式之间进行权衡,从而使现有方法不是最佳的。

6 CONCLUSION

在本文中,我们提出了 PI-GNN 用于动态图的持续学习。PI-GNN 的思想自然适合持续图学习的独特挑战。我们特别找到了通过优化学习稳定图形模式的参数,并将它们冻结以防止灾难性遗忘。然后我们扩展模型参数以增量学习新的图形模式。我们的 PI-GNN 可以与不同的 GNN 主干网络正确组合。我们从理论上证明 PI-GNN 优化了整个图上的再训练损失的严格上限。PI-GNN 在八个真实数据集上进行了测试,结果显示了其优越性。

论文链接:

https://arxiv.org/abs/2305.13825

GitHub:

https://github.com/Jerry2398/PI-GNN

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1996032.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

VueTreeselect自定义label

插槽 使用插槽 //node.raw&#xff1a;所有传入的数据项<treeselectv-model"areaCode":options"deptOptions":normalizer"normalizer"><div slot"value-label" slot-scope"{ node }">{{ node.raw.title }}<…

CommonJs模块化简明笔记

1、什么是模块化 模块化是指将一个复杂的程序依据一定的规则&#xff08;规范&#xff09;封装成几个块&#xff08;文件&#xff09;&#xff0c;并进行组合在一起。 最早我们开发将所有的代码写在一个js文件中&#xff0c;随着需求越来越复杂&#xff0c;代码量越来越大&am…

硬盘文件数据销毁|文件销毁|硬盘销毁|数据销毁|中国成就的伟大与数据安全在新时代国家安全中的关键作用

在当今世界&#xff0c;中国的发展成就举世瞩目&#xff0c;但令人惊讶的是&#xff0c;大多数人可能并未充分意识到其伟大之处。与此同时&#xff0c;数据安全作为国家安全的重要组成部分&#xff0c;其重要性在新时代愈发凸显。 二、中国取得的伟大成就 中国在经济领域的崛起…

iOS ------ 事件响应链

响应者链 响应者链是由一系列链接在一起的响应者&#xff08;UIResponser之类&#xff1a;UIApplication&#xff0c;UIViewController&#xff0c;UIView&#xff09;注组成的。一般情况下&#xff0c;一条响应链开始于第一响应者&#xff0c;结束于application对象。如果一个…

Ashok:一款多功能开源网络侦查OSINT工具

关于Ashok Ashok是一款多功能开源网络侦查公开资源情报OSINT工具&#xff0c;该工具可谓是OSINT领域中的瑞士军刀&#xff0c;广大研究人员可以使用该工具轻松完成网络侦查任务。 侦察是渗透测试的第一阶段&#xff0c;这意味着在计划任何实际攻击之前收集信息。因此&#xff…

【Linux】输入输出重定向

目录 一、概念 二、重定向的本质 三、系统调用接口dup和dup2 3.1 dup 3.2 dup2 一、概念 在之前对Linux的学习中&#xff0c;我们有接触过一系列的重定向命令&#xff0c;例如 >、>>等 它们可以将一个命令的输出或输入重定向到其他地方&#xff0c;如echo命令…

Java泛型的理解

前言 泛型是Java中一个比较重要的特性&#xff0c;是于JDK5引入新特性&#xff0c;其主要目的是为了提供编译时的类型安全检测机制和简化代码。本文主要探讨一下泛型的使用。 假如说没有泛型 假如说没有泛型&#xff0c;可以举一个例子&#xff1a; ArrayList list new Ar…

怎么把pdf转换成jpg图片免费?分享11款超实用的PDF转图片工具,工作效率直接拉满!

怎么把pdf转换成jpg图片&#xff1f;将PDF转换成图片&#xff0c;有多种方法可供选择&#xff0c;包括使用专业的PDF转换软件、在线转换工具&#xff0c;甚至电脑上有自带的转换方法。 pdf转图片的优势有很多&#xff0c;其中包括以下几点&#xff1a; 1、兼容性和可访性 转换…

Linux的platform设备驱动框架

platform其实就是linux中用来匹配设备和驱动的一种虚拟总线技术。之所以有这么个技术&#xff0c;是为了将驱动和设备分开来&#xff0c;设备负责描述设备信息&#xff0c;驱动负责实现功能逻辑。是一种分层思想下的产物。platform并不是局限于某一类设备&#xff0c;而是整个框…

鸿蒙(API 12 Beta3版)【视频解码】 音视频编码

开发者可以调用本模块的Native API接口&#xff0c;完成视频解码&#xff0c;即将媒体数据解码成YUV文件或送显。 当前支持的解码能力如下&#xff1a; 视频硬解类型视频软解类型AVC(H.264)、HEVC(H.265)AVC(H.264) 视频解码软/硬件解码存在差异&#xff0c;基于MimeType创建…

打造高品质短视频,四款好用的剪辑软件推荐!

作为一个热爱记录生活点滴的Vlogger&#xff0c;今天我想聊聊那些让我的视频剪辑之路变得轻松又有趣的剪辑软件。 福昕视频剪辑 链接&#xff1a;www.pdf365.cn/foxit-clip/ 首先&#xff0c;我要说的是福昕视频剪辑。它的界面设计非常人性化&#xff0c;让我可以一目了然地…

绝望者的希望——《这几年》

屈原在《离骚》里面说道&#xff1a;“路漫漫其修远兮&#xff0c;吾将上下而求索。”这句诗最有分量的两个字就是“求索”。许国忠的人生就是在用行动践行着这两个字。书作《这几年》正是他求索的轨迹。 他求索人间真情味。在书作里&#xff0c;我们大抵看到许国忠柔情的笔锋…

爬虫入门--了解相关工具

目录 1.爬虫与python 2.第一个爬虫 3.web请求的全过程 3.1服务器渲染 3.2前端JS渲染 4.浏览器工具 4.1Elements 4.2Console 4.3Source 4.4network&#xff08;重点&#xff09; 5.小结 1.爬虫与python 首先我们要知道&#xff0c;爬虫一定要用Python么? 非也~…

运算放大器电气测试中的典型参数

为了评估与空间应用相关的某些应力源的影响&#xff0c;在运算放大器的电气测试过程中会测量一组电气参数。以下是运算放大器中常用的典型参数。 尽管理想情况下&#xff0c;运放在输入端没有电流&#xff0c;输入和输出没有失调&#xff0c;增益无限&#xff0c;速度无限&…

环境配置:如何在IntelliJ IDEA中安装和修改JDK版本配置(以Windows为例)

环境配置&#xff1a;如何在IntelliJ IDEA中安装和修改JDK版本配置&#xff08;以Windows为例&#xff09; 为了在Java开发中使用最新的功能和优化&#xff0c;升级和配置JDK版本是必不可少的。本文将详细介绍如何下载、安装、配置最新的JDK版本&#xff0c;并在IntelliJ IDEA…

04_Electron 模块介绍

Electron 模块介绍 一、Electron 主进程和渲染进程中的模块&#xff08;介绍&#xff09;二、Electron remote 模块三、Electron 渲染进程中通过 remote 模块调用主进程中的 BrowserWindow 打开新窗口1、安装 electron/remote2、主进程中配置启用 remote 模块3、渲染进程引入 r…

大模型应用开发的框架

一、大语言模型的几个框架 1、python的版本langchain LangChain英文官方地址&#xff1a;https://www.langchain.com/ LangChain中文官网&#xff1a;https://www.langchain.com.cn/ Python官方地址&#xff1a;https://python.langchain.com/en/latest/ LangChain源代码地…

使用 Seurat 处理多模态数据

文章目录 前言一、Multimodal analysis有什么用?二、代码复现1.数据的导入2.构建seurat对象,并添加RNA和protein数据3.根据其单细胞 RNA 测序&#xff08;scRNA-seq&#xff09;图谱对细胞进行聚类4.并排可视化多种模态4.1.1可视化RNA和蛋白质水平,这里检测的基因CD19在蛋白质…

【博客搭建 第二篇章】项目中怎么引入其他的 icon

一、注册账号并将图标添加到自己的项目中 1、网站地址&#xff1a;https://www.iconfont.cn/ 2、注册 iconfont 账号 3、登录 iconfont 网站中 4、添加图标到购物车中 5、添加图标到项目中 6、生成在线连接 7、复制连接 二、项目中配置连接地址 找到项目中的 them…

嵌入式初学-C语言-十九

指针的引入 为函数修改实参提供支持为动态内存管理提供支持为动态数据及结构提供支持为内存访问提供另一种途径 指针的概述 内存地址&#xff1a; 系统为了内存管理的方便将内存划分为一个个内存单元&#xff08;一个内存单元占一个字节&#xff09;&#xff0c;并为每一个…