一种基于深度强化学习的边攻击网络瓦解方法

文档序号:31786529发布日期:2022-10-12 13:45阅读:132来源:国知局
一种基于深度强化学习的边攻击网络瓦解方法

1.本发明涉及网络瓦解技术领域,具体涉及一种基于深度强化学习的边攻击网络瓦解方法。


背景技术:

2.在过去的几十年里,复杂网络理论被广泛用于描述存在于自然界和人类社会中的复杂系统。网络描述了客观世界中不同事物之间的普遍联系。网络无处不在,包括社会合作网络,人际社会网络,交流网络,运输网络,以及一些看不到的网络,如代谢网络,蛋白质相互作用网络,以及基因转录网络。网络健壮性的研究是网络科学的一个重要研究领域,很多研究都集中在提高网络健壮性上。
3.然而,人们并不是期望所有的网络都是高度稳健的根据攻击对象的不同,瓦解策略可以分为节点攻击的瓦解和边攻击的瓦解。当前大多数研究都集中在节点攻击策略上,而对边攻击策略的研究相对较少。
4.节点表示网络中的实体,如电力网络中的发电厂和神经网络中的神经元,它们的共同点是规模较小,更容易被监控、掌握和保护;边表示实体间的关系,如电力网络中的输电线和神经网络中的神经突触,它们的共同点是数量多、空间尺度大,任何一点的失效都会导致整条边失效。因此,边攻击的瓦解策略是值得研究的,而网络中的边更多、更复杂,从而使边攻击难度更大。
5.边攻击策略可以转化为寻找高价值边序列的问题,研究者们基于先验知识提出了各种边重要性度量,然而它们只适用于特定的网络,很难找到一个适用于各种场景的度量。feng等人提出了一种有向网络最优边攻击策略,但该方法可扩展性差、运行时间长。因此,人们需要一种在同类型的小型网络进行离线训练后能广泛应用于各种网络的算法,同时平衡算法的迁移性和及时性。本发明期望在无先验知识的情况下获得具有实时性和可移植性的边攻击策略。
6.fan等人试图解决模型的可移植性问题,并提出了finder,它在小型合成网络上进行训练后能快速应用于各种网络。finder在图结构数据和机器学习之间架起了一座桥梁。它使用gnn获得网络嵌入表示,不依赖需要专家知识的特征工程,将网络嵌入用作强化学习的输入来更新策略。但当前对于边攻击,研究边嵌入的工作极为有限。
7.zhou等人提出了一种结合本地网络嵌入和多标签分类的边嵌入框架,另外他们还开发了一个本地自动编码器,通过密度自适应学习方法对其进行优化。nsne方法使用映射函数和两个节点向量来表示每个边向量,并通过多层感知器从数据中学习映射函数。然而,这些方法只对标签分类的简单下游任务有效,不能处理复杂任务。


技术实现要素:

8.本发明所要解决的技术问题是:提出一种基于深度强化学习的边攻击网络瓦解方法,其能够在无先验知识的情况下,通过同类型的小型网络进行离线训练,获得具有实时性
和可移植性的边攻击策略。
9.本发明解决上述技术问题采用的技术方案是:一种基于深度强化学习的边攻击网络瓦解方法,包括以下步骤:
10.a、训练模型:
11.a1、生成网络训练集,并初始化深度强化学习模型的回放经验池以及编解码参数;
12.a2、输入训练集的训练网络;
13.a3、判断是否满足预设的更新条件,若满足,则更新编解码参数,然后执行步骤a4;否则,执行步骤a4;
14.所述更新编解码参数,包括:
15.更新编码及评估网络的参数,所述评估网络的参数也即对应评估网络的解码参数,其更新过程是从经验回放池中随机采样获得训练样本,根据训练样本并基于损失函数对参数进行更新;
16.和/或更新目标网络的参数,所述目标网络的参数也即对应目标网络的解码参数,其是根据评估网络的参数对目标网络的参数进行同步;
17.a4、基于输入的网络进行编码:
18.根据输入的网络g(v,e),构建网络的邻接矩阵a和节点属性矩阵x∈rn×c,其中,v表示节点集代表功能实体,e表示边集代表功能实体间的信息流,c为属性矩阵的维数;基于节点属性矩阵,通过对各节点的邻居节点的聚合表示获得其节点嵌入向量,通过边的两端节点的节点嵌入向量进行映射计算,并进行正则化处理,将边编码为边嵌入向量by,并通过对节点嵌入向量的聚合获得网络的表示向量hs;
19.a5、首先,基于深度强化学习模型进行解码:在所述深度强化学习模型中,以网络的表示向量hs表征状态,以边嵌入向量by表征动作;基于深度强化学习模型的价值函数,根据hs与by,获得在当前步的状态下,各边嵌入向量所对应的价值度;
20.然后,根据当前步的状态下,各边嵌入向量所对应的价值度,采用贪心策略作为决策策略,确定当前步的动作;执行当前步的动作,并基于状态变化所导致的网络性能差异,计算当前步动作对应状态变化的回报;
21.完成决策后,根据当前步的状态、动作、回报及执行动作后的状态构建训练样本,并将训练样本存入深度强化学习模型的回放经验池;
22.a6、判定执行完成当前步动作后,网络是否瓦解:
23.若不是,则将执行当前步动作后的剩余网络作为输入,跳转至步骤a3;
24.若是,则完成本轮训练迭代,并执行步骤a7;
25.a7、判定是否收敛或达到设定的迭代次数,若是,则完成训练,并获得完成训练的模型;否则,跳转至步骤a2;
26.b、网络瓦解:
27.将待瓦解的网络输入至完成训练的网络瓦解模型中,获得作为瓦解策略。
28.进一步的,步骤a1中,采用ba模型生成无标度网络构成网络训练集。
29.进一步的,步骤a4中,基于节点属性矩阵,通过对各节点的邻居节点的聚合表示获得其节点嵌入向量,包括:
30.a41、按照如下公式对节点嵌入向量进行初始化和归一化:
[0031][0032][0033]
其中,表示节点v的属性信息,w1为可学习参数;
[0034]
a42、对输入的节点嵌入向量,按如下公式进行聚合:
[0035][0036]
其中,k

表示当前迭代次数,表示与节点v有直接连接的邻居节点集合, aggregate表示可微的聚合函数,w2、w3均为可学习参数;所述{w1,w2,w3}可统一记为θe;
[0037]
a43、根据聚合的邻居跳数k,判定是否完成聚合,若是则进入下一步;否则,将当前迭代获得的节点嵌入向量作为输入,返回步骤a42。
[0038]
进一步的,步骤a4中,在完成迭代后,通过边的两端节点的节点嵌入向量进行映射计算,并进行正则化处理,将边编码为边嵌入向量by,计算公式如下:
[0039][0040][0041]
其中,和分别表示节点υi和节点υj迭代k次后的节点嵌入向量。
[0042]
进一步的,步骤a4中,在完成迭代后,按如下公式,对节点嵌入向量进行聚合,获得网络的表示向量hs:
[0043][0044]
其中,agg表示聚合函数。
[0045]
进一步的,步骤a5中,价值度的计算公式如下;
[0046][0047]
其中,t表示当前步,t表示矩阵转置,{w4,w5}∈r
p
×1为可学习参数并统一记为θd,by与hs表示编码输出的边嵌入向量和网络的表示向量,σ(
·
)是与任务相关的激活函数。
[0048]
进一步的,步骤a3中,判断是否满足预设的更新条件,若满足,则更新编解码参数,然后执行步骤a4;否则,执行步骤a4,具体包括如下步骤:
[0049]
a31、判定经验回放池是否已满,若是则执行步骤a32,否则执行步骤a4;
[0050]
a32、更新编码及评估网络的参数,并累计训练步长;
[0051]
a33、判定训练步长是否达到步长阈值c,若是,则更新目标网络的参数并重置训练步长,然后,执行步骤a4;否则,执行步骤a4。
[0052]
进一步的,步骤a32中,更新编码及评估网络的参数,具体包括:
[0053]
a321、从经验回放池中随机采样获得训练样本(s
t
,a
t
,r
t
,s
t+1
),其中,s
t
表示训练
样本当前步的状态,a
t
表示训练样本当前步的动作,r
t
表示执行动作a
t
的回报,s
t+1
表示执行动作a
t
后的状态;
[0054]
a322、根据训练样本计算损失函数:
[0055][0056][0057][0058]
其中,为任务损失,表示评估网络q和目标网络之间的差距,γ是奖励的折扣因子,t表示训练样本的当前步,θq为评估网络各权重参数的统一表示,θq={θe,θd},θe为编码过程参数的统一表示,θd为解码过程参数的统一表示,为目标网络权重参数的统一表示;为图重构损失,n为当前网络的节点数,hi和hj表示节点υi和υj的节点嵌入向量, s
ij
表示节点i和j在网络中是否连接,连接则为1,否则为0;
[0059]
a323、判定循环次数是否达到批量样本数量p,若是,则基于各次的损失函数的和对编码及评估网络的参数进行更新,然后执行步骤a33;否则,跳转至步骤a321。
[0060]
进一步的,通过ci表示当前计算网络g的第i个连通图,δi表示ci的节点数量,所述连通图是指当前计算网络g或者其子图,所述连通图应满足其中的每两个节点之间均存在路径可达;
[0061]
在步骤a5中,采用执行当前步动作后剩余网络的连通图的累计归一化作为回报;在步骤 b中,在获得瓦解边序列后,采用执行当前步动作后剩余网络的连通图的累计归一化对网络的瓦解效能进行评估;其计算公式为:
[0062][0063]
其中,μ(g\{e1,e2,...,ek})表示网络g中的边集合φ={e1,e2,...,ek}被顺序去除后的连通性,μ(g)是网络g的初始连通性,w代表去除的边数量,c(ek)表示边的归一化移除成本ek;
[0064]
其中,μ(g)的计算公式为:
[0065][0066]
c(ek)的计算公式为:
[0067]
在(0,100]之间随机取值,并进行归一化满足
[0068]
或取值为边介数值,并进行归一化满足所述边介数为网络中所有最短路径中经过该边的路径的数量占最短路径总数的比值。
[0069]
本发明的有益效果是:本发明提出了一种边嵌入表示方法,该方法自动整合网络的属性信息和拓扑信息,以解决更复杂的下游任务,并基于此提供了一种基于深度强化学习的边攻击网络瓦解方法。
[0070]
进一步的讲,本发明将攻击过程视为马尔可夫过程,并设计了一个通过深度强化
学习搜索高价值边攻击序列的框架shear(searching high-value edges attack sequence through deepreinforcement learning)。在训练过程中,考虑到边多且难度量,本发明设计了编码模块以自动获取边嵌入,首先,应用图神经网络(gnn)自动获取节点嵌入,然后根据网络中边连接的机制,提出一个映射函数将节点嵌入转化为边嵌入,该映射函数可以放大节点间的相似维度,缩小节点间的不同维度,保留更多的网络信息。在解码模块,输入为边向量和网络向量,本发明用q网络逼近状态-动作值函数,利用q函数将删除边的操作映射到实数值并更新q 网络的参数,从而可以使shear广泛快速地应用于网络瓦解,其对于不同规模的网络以及瓦解成本不均匀条件下的瓦解均能保持良好和稳定的性能。而shear的参数可以通过在小型合成网络上的离线训练来调整以优化其在线应用。
附图说明
[0071]
图1为本发明的shear框架的算法原理图;
[0072]
图2为本实施例的瓦解模型训练过程图框架图;
[0073]
图3为通过本发明模型确定的高价值边在3个边权重值等于边本身的边介数值的真实网络上的成本分布;
[0074]
图4为通过本发明模型确定的高价值边在3个具有随机边权重的真实网络上的成本分布。
具体实施方式
[0075]
如图1所示,本发明将攻击过程视为马尔可夫过程,并设计了一个通过深度强化学习搜索高价值边攻击序列的框架shear,基于dqn搜索高价值边攻击序列。首先,在编码模块中,使用基于gnn的网络表示方法将网络和边嵌入到低维表示中;然后,在解码模块中,边的删除被认为是一个马尔可夫过程:模型通过一系列状态、动作和奖励与环境交互,这里,环境是被瓦解的网络,状态定义为残余网络,动作是移除选中的边,奖励是采取行动后网络瓦解效能评估指标的减少。
[0076]
实施例:
[0077]
本实施例中的基于深度强化学习的边攻击网络瓦解方法,首先训练边攻击网络瓦解模型,如图2所示,其包括以下实施步骤:
[0078]
s1、生成网络训练集,并初始化深度强化学习模型的回放经验池以及编解码参数。
[0079]
所述编解码参数包括编码参数和解码参数,其中解码参数,根据其对应深度强化学习模型的评估网络,也或目标网络,又被区分为评估网络的参数和目标网络的参数;
[0080]
本步骤中,采用ba模型生成无标度网络构成网络训练集。
[0081]
s2、输入训练集的训练网络。
[0082]
本步骤中,将网络训练集的训练网络作为深度强化学习模型的输入。
[0083]
s3、判断是否满足预设的更新条件,若满足,则更新编解码参数,然后执行步骤s4;否则,执行步骤s4。
[0084]
在本实施例中,所述的预设的更新条件为回放经验池是否已满,若判断出未满,则直接进入步骤s4:若回放经验池已满,则首先更新编解码参数,然后再执行步骤s4。
[0085]
s4、基于输入的网络进行编码:
[0086]
本步骤中,即是对训练网络的节点、边和整个网络进行编码表示。
[0087]
为了能够更深入地挖掘网络信息,本实施例基于graphsage设计了一种基于gnn的边嵌入表示方法,将网络中的瓦解成本信息和结构信息嵌入到表示向量中,更有利于下游任务。具体的讲,其应用图神经网络(gnn)自动聚合网络中的信息来获取节点嵌入,然后根据网络中边连接的机制,提出一个映射函数:hadamard,可以放大节点间的相似维度,缩小节点间的不相似维度,从而保留更多的网络信息。具体说明如下:
[0088]
s41、根据输入的网络g(v,e),构建网络的邻接矩阵a和节点属性矩阵x∈rn×c,其中, v表示节点集代表功能实体,e表示边集代表功能实体间的信息流,c为属性矩阵的维数。
[0089]
s42、基于节点属性矩阵,通过对各节点的邻居节点的聚合表示获得其节点嵌入向量,包括:
[0090]
s421、按照如下公式对节点嵌入向量进行初始化和归一化:
[0091][0092][0093]
其中,表示节点v的属性信息,w1为可学习参数;
[0094]
s422、对输入的节点嵌入向量,按如下公式进行聚合:
[0095][0096]
其中,k

表示当前迭代次数,表示与节点v有直接连接的邻居节点集合, aggregate表示可微的聚合函数,w2、w3均为可学习参数;所述{w1,w2,w3}可统一记为θe;
[0097]
s423、根据聚合的邻居跳数k,判定是否完成聚合,若是则进入下一步;否则,将当前迭代获得的节点嵌入向量作为输入,返回步骤s422。
[0098]
上述迭代次数的也即邻居跳数,在本实施例中,迭代3次,其目的在于聚合每个节点的 3跳邻居中包含的结构信息和属性信息。aggregate是可微的聚合函数,在本实施例中设置为aggregate

sum。
[0099]
s43、通过边的两端节点的节点嵌入向量进行映射计算,将边编码为边嵌入向量by,并通过对节点嵌入向量的聚合获得网络的表示向量hs。
[0100]
其中,针对边嵌入向量by,本发明使用向量映射函数代表这种关系,即 by=f(hi,hj),hi和hj表示节点υi和υj的嵌入向量。在本实施例中,具体的,选择hadamard 作为映射函数,来保留更多节点特征和拓扑信息。也即按如下计算公式,在完成上述迭代后,通过边的两端节点的节点嵌入向量进行映射计算,并进行正则化处理,将边编码为边嵌入向量by:
[0101][0102]
[0103]
其中,和分别表示节点υi和节点υj迭代k次后的节点嵌入向量。
[0104]
针对网络的表示向量hs,本发明采用了一种聚合节点嵌入的网络表示方法,也即在完成迭代后,按如下公式,对节点嵌入向量进行聚合,获得网络的表示向量hs:
[0105][0106]
其中,agg表示聚合函数。理论上,agg函数可以是任何形式的聚合函数。为了简化操作,本实施例使用sum函数,也即agg

sum。
[0107]
s5、进行解码并决策执行网络瓦解动作:
[0108]
本发明采用深度q网络(dqn)来解决在数学上被形式化为马尔可夫决策过程(mdp) 的选择攻击节点的决策过程。
[0109]
首先,基于深度强化学习模型进行解码,在所述深度强化学习模型中,以网络的表示向量hs表征状态s,以边嵌入向量by表征动作a;基于深度强化学习模型的价值函数,根据hs与by,获得在当前步的状态下,各边嵌入向量所对应的价值度。
[0110]
具体而言,对于解码,以步骤s4中获得的网络的表示向量hs和边嵌入向量by分别对应作为解码过程中的状态向量s和动作向量a,使用价值函数评价由状态向量s和动作向量a 组成的状态动作对(s,a):
[0111][0112]
其中,t表示当前步,t表示矩阵转置,{w4,w5}∈r
p
×1为可学习参数并统一记为θd,by与hs表示编码输出的边嵌入向量和网络的表示向量,σ(
·
)是与任务相关的激活函数。
[0113]
然后,根据当前步的状态下,各边嵌入向量所对应的价值度,采用贪心策略作为决策策略,确定当前步的动作;执行当前步的动作,并基于状态变化所导致的网络性能差异,计算当前步动作对应状态变化的回报;
[0114]
完成决策后,根据当前步的状态、动作、回报及执行动作后的状态构建训练样本,并将训练样本存入深度强化学习模型的回放经验池。
[0115]
s6、判定执行完成当前步动作后,网络是否瓦解:
[0116]
若不是,则将执行当前步动作后的剩余网络作为输入,跳转至步骤s3;
[0117]
若是,则完成本轮训练迭代,并执行步骤s7;
[0118]
s7、判定是否收敛或达到设定的迭代次数,若是,则完成训练,并获得完成训练的模型;否则,跳转至步骤s2;
[0119]
对于编解码参数更新,其中,更新编码参数和评估网络参数,是从经验回放池中随机采样获得训练样本,根据训练样本并基于损失函数对参数进行更新;更新目标网络的参数,则是根据评估网络的参数对目标网络的参数进行同步。
[0120]
现有技术中,针对评估网络参数的更新包括以下方式:
[0121]
1)基于完整的动作序列进行训练,也即by episode;
[0122]
2)基于每一步动作进行训练,也即by step。
[0123]
参数更新频率越大则算法越容易收敛。因此,本发明基于by step进行更新,对参数更新,具体包括:
[0124]
s31、判定经验回放池是否已满,若是则更新,否则不更新,并执行步骤s4;
[0125]
s32、更新编码及评估网络的参数,并累计训练步长;
[0126]
s33、判定训练步长是否达到步长阈值c,若是,则更新目标网络的参数并重置训练步长,然后,执行步骤s4;否则,执行步骤s4。
[0127]
其中,更新编码及评估网络的参数,具体包括:
[0128]
s321、从经验回放池中随机采样获得训练样本(s
t
,a
t
,r
t
,s
t+1
),其中,s
t
表示训练样本当前步的状态,a
t
表示训练样本当前步的动作,r
t
表示执行动作a
t
的回报,s
t+1
表示执行动作a
t
后的状态;
[0129]
s322、根据训练样本计算损失函数:
[0130][0131][0132][0133]
其中,为任务损失,表示评估网络q和目标网络之间的差距,γ是奖励的折扣因子,t表示训练样本的当前步,θq为评估网络各权重参数的统一表示,θq={θe,θd},θe为编码过程参数的统一表示,θd为解码过程参数的统一表示,为目标网络权重参数的统一表示;为图重构损失,n为当前网络的节点数,hi和hj表示节点vi和vj的节点嵌入向量, s
ij
表示节点i和j在网络中是否连接,连接则为1,否则为0;
[0134]
s323、判定循环次数是否达到批量样本数量p,若是,则基于各次的损失函数的和对编码及评估网络的参数进行更新,然后执行后续步骤s33;否则,跳转至步骤 s321。
[0135]
在前述中,执行当前步的动作,并基于状态变化所导致的网络性能差异,计算当前步动作对应状态变化的回报,其以采用现有的对网络性能差异的各类算法。
[0136]
在本实施例中,优选的,在步骤s5中,采用执行当前步动作后剩余网络的连通图的累计归一化作为回报;在后续的实际采用完成训练的模型进行的实际瓦解攻击中,在获得瓦解边序列后,采用执行当前步动作后剩余网络的连通图的累计归一化对网络的瓦解效能进行评估。
[0137]
具体的,定义了连通性度量可以将网络映射为非负实数。这里使用常用的成对连通性:
[0138][0139]
其中,ci表示当前计算网络g的第i个连通图,δi表示ci的节点数量,所述连通图是指当前计算网络g或者其子图。
[0140]
所述连通图应满足其中的每两个节点之间均存在路径可达。也即无向图g的极大连通子图成为g的连通分量,连通图的连通分量只有一个,即其自身;非连通的无向图g有多个连通分量,连通分量就是一个图g里面有多少个连通图。
[0141]
具体的,其计算公式为:
[0142][0143]
其中,μ(g\{e1,e2,...,ek})表示网络g中的边集合φ={e1,e2,...,ek}被顺序去除后的连通性,μ(g)是网络g的初始连通性,w代表去除的边数量,c(ek)表示边的归一化移除成本ek;
[0144]
其中,μ(g)的计算公式为:
[0145][0146]
c(ek)的计算公式为:
[0147]
在(0,100]之间随机取值,并进行归一化满足
[0148]
或取值为边介数值,并进行归一化满足所述边介数为网络中所有最短路径中经过该边的路径的数量占最短路径总数的比值。
[0149]
在实际应用场景中,不同的边与不同的“权重”相关联,即各边的移除成本并不一致。但作为一种特例,假设网络g中的各边的权重相等,则上述公式可简化为:
[0150][0151]
上述的归一化网络瓦解效能评估方法,能够根据边攻击的特点并考虑边攻击的成本,随着网络结构的变化,动态地、准确地评估高价值边攻击序列的价值,更加贴合真实的应用场景。
[0152]
基于上述网络瓦解模型的训练,在模型应用时,将待瓦解的网络输入至训练获得的网络瓦解模型中,获得瓦解边序列,作为瓦解策略。
[0153]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何属于本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
[0154]
实验验证:
[0155]
在本部分,将完成上述实施例训练的网络瓦解模型,应用于两种不同的网络,以验证其优越性。同时,将其他四种基线方法应用于同一场景,对比仿真实验结果。所有实验均在配备nvidia geforce rtx 2070gpu的计算机上运行。dqn模型采用pytorch 1.7.0编写,cuda 版本是11.0。在服务器上训练模型大约需要321小时。
[0156]
shear方法训练过程的超参数设置如表1所示:
[0157]
表1:shear方法超参数设置表
[0158][0159]
实验验证在7个数据集上进行评估,这些数据集可分为两种:合成网络和真实网络。
[0160]
其中,针对合成网络,为了证明本发明的模型可以很好地扩展到大规模网络,对四个数据集进行了实验,这些数据集由四个集群组成,每个集群包含600个随机生成的无标度网络。它们的区别在于网络规模,分为以下几类,30-50个节点的网络,50-100个节点的网络,100-200 个节点的网络,200-300个节点的网络。
[0161]
而真实网络数据集,则包含jazz、fwfb和c.elegans数据集。jazz对应爵士乐手合作网络,是由爵士乐手的合作关系组成的网络。fwfb是佛罗里达湾的预期食物链网络,包含128 个物种和2106个捕食者-猎物关系,包括31个互惠面,该数据集用碳交换关系描述了捕食者与猎物的关系,在这里它被视为一个无向网络,即它有2075条边。c.elegans是线虫的神经网络,节点代表线虫的神经元,边代表神经突触或间隙连接,它是一个有向加权网络,而在实验中,则将c.elegans视为无向和无权网络。这些真实网络的具体参数如表2所示。n是节点数,e是边数,《k》是平均度数,《d》是平均最短路径,c是聚类系数,h是异质性程度, p是皮尔逊相关系数。
[0162]
作为对比,实验选择了四种方法作为基线方法,分别为随机、度乘积、度和、边介数,具体如下:
[0163]
1、随机:从网络中随机删除边。
[0164]
2、度乘积:将网络中边两端节点的度数相乘,得到边对应的分数,然后按照分数降序排序,作为去除边的顺序。可以看出,连接两个度数较大的节点的边会先被去除。
[0165]
3、度和:将网络中边两端节点的度数相加,得到边对应的分数,然后按照分数降序排列,作为去除边的顺序。可以看出,连接两个度数较大的节点的边会先被移除。
[0166]
4、边介数:边的介数中心性是通过的所有节点对的最短路径的分数的总和。计算网络中边的边介数值作为边对应的分数,然后按照分数降序排序作为去除边的顺序。可以看出,边介数越大,边在维持网络连通性中的作用就越大。
[0167]
表2:真实网络参数
[0168]
网络ne《k》《d》chpjazz198274227.72.240.631.40.02fwfb128207532.421.780.331.24-0.11c.elegans297214814.462.460.311.8-0.16
[0169]
在训练阶段,模型每100次迭代存储一次。随着训练的进行,损失函数的值逐渐趋于稳定。因此,将每100次迭代记录的参数加载到shear中,然后在一系列网络中对其进行测试。对测试过程中的瓦解效能评估指标值进行计算和平均,可以看作是模型的性能。随着训练的进行,shear在测试集上得到的r越来越小,直到稳定。这一现象表明shear对边攻击的效果越来越好。随后,本发明将完成训练的模型应用于合成ba网络,结果如表3所示。
[0170]
表3:在合成网络上五种算法的r值
[0171][0172]
从表3中可以看出,本发明的模型在四个不同规模的合成ba网络上的表现始终优于所有基线。随着网络节点数量的增加,几种不同算法的r值也会增加,但本发明的模型则可以将r保持在0.4左右,其优于其他方法中的最佳值。
[0173]
然后完成训练的模型应用于3个真实网络。与其他四种方法相比,shear在fwfb和 c.elegans上表现最好,而在jazz上表现次好。当shear表现最好时,其r值远小于其他方法。而当它次好时,它的得分与方法排名第一的几乎相同。对比结果如表4所示。
[0174]
表4:在真实网络上五种算法的r值
[0175] jazzfwfbc.elegans随机0.8660.9260.797度乘积0.810.7990.7度和0.8770.8630.79边介数0.5410.7550.655本发明模型0.5750.5510.454提升/(%)-6.2627.0130.74
[0176]
此外,考虑到边的去除成本,将本发明应用于加权网络,通过实验展示本发明在边加权场景中的巨大优势。
[0177]
在训练阶段,通过人工合成一组100个30-50个节点的无标度网络。每个网络中每条边的初始权重值是从0-100随机采样生成的,然后对权重值进行归一化处理。本发明的模型在这样一组网络中经过充分训练后,在应用阶段,将其应用于合成网络和真实网络。在测试集中,根据获取边权重的方法不同,我们将其分为两类:(a)边权重值从0-100随机采样中获取,(b)边权重值等于边的边介数值,每个类别中得到的边的权重需要归一化。每个类别包括四组不同规模的合成网络和真实网络。合成网络的节点数分别为30-50、50-100、100-200、 200-300。真实网络包括前述三种网络。
[0178]
本发明模型与其他四种方法在4组边权重值等于边介数值和随机边权重值的合成网络中的比较如表5和表6所示。
[0179]
表5:边权重值等于边介数值的合成网络上5种算法的r值
[0180][0181]
表6:随机边权重值场景下合成网络上5种算法的r值
[0182][0183]
本发明模型与其他四种方法在3个边权重值等于边介数值和随机边权重值的真实网络中的比较如表7和表8所示。
[0184]
表7边权重值等于边介数值的真实网络上5种算法的r值
[0185] jazzfwfbc.elegans随机0.8520.9230.807度乘积0.7990.8070.804度和0.8010.8440.842边介数0.7810.8450.815本发明模型0.5080.5710.491提升/(%)34.9929.2438.93
[0186]
表8随机边权重值场景下真实网络上5种算法的r值
[0187] jazzfwfbc.elegans随机0.8830.9160.799度乘积0.8160.8040.712度和0.8840.8690.804边介数0.5440.7530.668本发明模型0.5090.5320.482提升/(%)6.4329.322.79
[0188]
实验结果表明,本发明模型倾向于避免选择去除成本高(权重值大)的边,同时保证降低网络连通性的效率,这自然会使本发明模型的选择有效且经济。传统方法的总成本较高,因为它们倾向于以去除高成本为目标。相比之下,本发明模型通过避免那些“昂贵”的
边获得了更具成本效益的策略。以真实网络为例,当攻击代价为0.1时,本发明模型在3个边权重值等于边介数值和随机边权重值的真实网络中进行攻击,计算这些加权高价值边的核密度估计(kde),分别如图3和图4所示。
[0189]
其中,图3的a、b、c分别对应3种真实网络,反应了由本发明模型确定的高价值边在3 个边权重值等于边本身的边介数值的真实网络上的成本分布。曲线代表高价值边代价分布的核密度估计,柱形图代表本发明模型选择的边的代价分布,底部深色短线代表每条边的代价在x轴上的位置,最大值x轴的值是归一化边权重的最大值,y轴是边成本的核密度估计。
[0190]
图4的a、b、c分别对应3种真实网络,反应了由本发明模型确定的高价值边在3个具有随机边权重的真实网络上的成本分布。曲线代表高价值边代价分布的核密度估计,柱形图代表本发明模型选择的边的代价分布,底部深色短线代表每条边的代价在x轴上的位置,最大值x轴的值是归一化边权重值的最大值,y轴是边成本的核密度估计。
[0191]
因此,综上,本发明视网络瓦解为马尔科夫过程,并提出了shear,它结合深度强化学习和gnn,用于搜索高价值边攻击序列以瓦解网络。具体来说,本发明设计了编码模块和解码模块,分别得到网络嵌入和边攻击对应的q值。训练好的模型具有良好的迁移能力,可以适用于很多场景。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1