CN112733136A - 一种基于网络节点拓扑结构的对抗攻击检测方法和系统 - Google Patents
一种基于网络节点拓扑结构的对抗攻击检测方法和系统 Download PDFInfo
- Publication number
- CN112733136A CN112733136A CN202110034275.7A CN202110034275A CN112733136A CN 112733136 A CN112733136 A CN 112733136A CN 202110034275 A CN202110034275 A CN 202110034275A CN 112733136 A CN112733136 A CN 112733136A
- Authority
- CN
- China
- Prior art keywords
- node
- network
- nodes
- centrality
- attacked
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
Abstract
一种基于网络节点拓扑结构的对抗攻击检测方法,包括以下步骤:S1导入网络并选取节点作为攻击对象;S2计算5种网络拓扑性质:聚类系数、介数中心性、接近中心性、特征向量中心性以及邻居节点平均度值;S4特征向量空间构建;S5利用对抗攻击方法对网络进行攻击;S6在被攻击的网络中提取5种网络拓扑性质并构建向量空间;S7采用机器学习中的分类器模型随机森林,对S4和S6提取的特征向量采用留出法验证,得出分类精度。本发明还提供了基于网络节点拓扑结构的对抗攻击检测系统。本发明利用多种节点在网络中的拓扑性质来检测节点是否被某一对抗攻击方法所攻击,降低了检测算法的复杂度,普遍适用于各类攻击方法,并取得了较高的检测精度。
Description
技术领域
本发明涉及网络节点拓扑结构和网络中的对抗攻击检测方法和系统,特别是涉及一种基于网络节点拓扑结构的对抗攻击检测方法和系统。
背景技术
近年来,深度神经网络在多个领域中都取得了十分出色的效果,例如图像识别、自然语言处理等。如今深度学习已经应用于我们生活中的很多场景,其中部分场景,例如自动驾驶、欺诈行为检测等都需要深度学习模型有着很高的安全性以及鲁棒性。由此,许多针对深度神经网络的脆弱性、易受攻击性研究也成为一个热点。例如针对图像识别任务,Goodfellow等人提出了基于梯度的对抗样本生成方法使得深度神经网络误分类,这些针对深度神经网络的攻击方法的提出表明了深度神经网络在实际应用中存在着风险。
网络在现实生活中有着十分广泛地应用,许多数据都可以被构建为网络数据,例如社交关系网络、金融网络甚至在化学领域,化合物也可以被看作由一个个原子构成的网络。近年来由于深度学习在各领域展示了强大的能力,因此深度学习也被引入到了网络领域中,图神经网络也得到了长足的发展。近年来图神经网络如Kipf等人提出的GCN模型、Jure Leskovec等人提出的GraphSAGE模型等等,在节点分类、链路预测、图分类等任务中取得了十分卓越的效果。但图神经网络模型同样存在着和其他深度神经网络类似的问题,图神经网络的鲁棒性和安全性也吸引了许多人的研究。例如在节点分类任务中,Daniel Zügner等人提出的Nettack攻击方法、Hanjun Dai等人提出的GradArgmax以及ReinforcementLearning Based attack等攻击方法都对图神经网络模型的分类精度造成了很大的影响。
因为网络的离散性质,对网络的攻击不像对图像的攻击一样具有连续性。因此,对于网络的攻击常常是对网络结构(如网络的连边)或者对网络的属性(如节点的属性)进行改变。这样的改变往往是离散的。因此,现有的大多数对网络的攻击方法为了保证攻击的隐蔽性,仅仅对网络结构、属性做微小的变动,或者保证网络的某一拓扑性质不变来对网络进行攻击,最终使得深度模型在节点分类、链路预测等任务上出现差错。
按照以上的方式来对网络进行攻击的同时保证其隐蔽性的方式相对较为简陋,因此现有的攻击方法存在被检测的风险。对于图对抗攻击的检测工作,现阶段也有少量的检测方法被提出,例如有Vassilis N.Ioannidis等人提出的GraphSAC以及由Xiaoiun Xu等人提出的针对恶意连边的检测。前者主要通过随机抽取部分节点形成集合然后利用一个网络层面的准则去过滤含有被攻击节点的集合,而后者主要为基于对抗样本往往会在网络中增加或删减恶意连边的特征进行检测。
在现阶段的研究中,现有的检测方法往往是一套比较复杂的检测算法,在实际应用中实用性不高,并且部分检测方法仅仅针对部分攻击方法,普适性不好。本发明受到现有网络攻击方法就保持网络部分属性不变的特征的启发,提出了利用网络的多种拓扑属性来检测网络是否被攻击。这样的检测方式实现简单,在实际应用中实施成本较低,能够对各种网络节点分类攻击方法进行检测,普适性较好,除此之外此方法也能够达到较高的检测精度。
发明内容
为了能够检测出一个网络是否被某一种攻击方法修改过,本发明提供了一种基于网络拓扑性质的网络攻击检测方法和系统,通过检测网络中的拓扑结构判断一个实际网络有无被修改。其能够有效地检测出一个实际网络是否被某一种攻击方法所攻击。
本发明实现上述发明目的所采用的技术方案如下:
一种基于网络节点拓扑结构的对抗攻击检测方法,其特征在于,所述攻击检测方法包括以下步骤:
S1:导入网络G=(V,E),其中V表示网络中的节点集合,E表示网络中的连边的集合,不妨设一个网络中共存在N个节点,M条连边。对于这一网络,假设节点μ可能被某种针对节点分类任务的攻击方法所攻击。
S2:在原始网络中计算节点μ的5个网络拓扑性质,5个网络拓扑性质的计算如下:
2.1)计算节点μ的聚类系数(Clustering Coefficient);聚类系数被用来衡量一个节点的邻居节点之间的联系程度;它被定义为与该节点相连的节点之间实际连接的连边数目与理论上最大连接数之间的比值;节点μ的聚类系数可以被计算为
其中Lμ表示与节点μ连接的邻居节点之间实际存在的连边数量,kμ表示与节点μ连接的邻居节点数量,也被称为节点μ的度;
2.2)计算节点μ的介值中心性(Betweenness Centrality);介值中心性被用来衡量一个节点的重要性;例如对于节点μ,该节点的介值中心性被定义为从任一节点到另一节点的最短路径通过节点μ的路径数量与任意两节点之间最短路径数量之和之间的比值,即节点μ的介值中心性可以被计算为
2.3)计算节点μ的接近中心性(Closeness Centrality);接近中心性被用来衡量一个节点与其他节点之间的联系;如对于节点μ,它被定义为其他节点到这一节点的平均距离的倒数,即节点μ的接近中心性可以被计算为
其中,dμj表示为节点j到节点u的距离,而N即为网络中的所有节点的数量;
2.4)计算节点μ的特征向量中心性(Eigenvector Centrality);特征向量中心性同样被用来表征节点的重要性;不同于介值中心性,特征向量中心性认为一个节点的重要性与其邻居节点的重要性有关,考虑到此因素,对于节点μ,其特征向量中心性可以被计算为
其中,c是一个预设参数,auj为一个二值变量,用来表示节点μ和节点j间是否存在连边,若aμj=1则表示节点μ和节点j之间存在连边;反之则表示二者之间无连边;xj为节点j的重要性度量值;
2.5)计算节点μ的邻居节点平均度值(Average Neighbor Degree);对于任一节点μ,邻居节点度被定义为该节点的邻居节点的平均度值,即
其中,kμ表示为节点μ的邻居节点数,即节点i的度值。N(μ)表示由节点μ的所有邻居节点组成的集合;
S3:特征向量空间构建;将在S2中得到的5个网络结构特征以横向拼接的形式进行特征空间扩展,从而,对每一个节点,我们可以得到该节点在原始网络中的一个维度为1×5的特征向量,即特征向量中网络拓扑性质的排列顺序是任意的,但此排列顺序一旦确定,对于所有节点的特征向量都应保持这样的排列顺序;
S4:利用网络中的对抗攻击方法针对节点μ进行攻击,获得被攻击的网络;
S6:采用机器学习中的分类器模型对所有节点利用留出法验证,将所有节点以一定比例划分成训练集和测试集,得出分类精度;本例中我们将S3和S5中得到的各个节点的特征向量作为输入。
如上所述,所述步骤S2中特征向量中心性计算中,预设参数c被设置为1,而每个节点的重要性度量值对于不同网络可以设置为不同的值,在没有特别说明的情况下,每个节点的重要性度量值设置为1。
如上所述,所述步骤S4中所采用的攻击方法,可以选用Nettack、GradArgmax、MetaGradient attack等攻击方法中任意一种进行攻击。
如上所述,所述步骤S6中利用留出法对所有节点的检测效果进行验证,此方法以80%和20%的比例来将节点划分为训练集和测试集;并且选取随机森林作为节点检测的分类器,随机森林中树的数量设置为256,将最小Cost-Complexity剪枝参数设定为0.05,树的最大深度设置为50。
本发明还提供了一种基于网络节点拓扑结构的对抗攻击检测系统,包括原始网络图导入模块、原始网络拓扑性质计算模块、原始特征向量构建模块、攻击原始网络模块、被攻击网络拓扑性质计算模块、受攻击后特征向量构建模块、随机森林分类器,导入模块向原始网络拓扑性质计算模块和攻击原始网络模块分别从原始网络图导入网络G=(V,E),导入模块向原始网络拓扑性质计算模块向原始特征向量构建模块输出节点μ的聚类系数、节点μ的介值中心性、节点μ的接近中心性、节点μ的特征向量中心性、节点μ的邻居节点平均度值;攻击原始网络模块向被攻击网络拓扑性质计算模块输出被攻击的网络;被攻击网络拓扑性质计算模块向受攻击后特征向量构建模块输出被攻击网络的中的节点μ的5个网络拓扑性质特征;原始特征向量构建模块和受攻击后特征向量构建模块分别向随机森林分类器输出各节点的特征向量;
原始网络图导入模块导入网络G=(V,E),其中V表示网络中的节点集合,E表示网络中的连边的集合,不妨设一个网络中共存在N个节点,M条连边。对于这一网络,假设节点μ可能被某种针对节点分类任务的攻击方法所攻击。
原始网络拓扑性质计算模块,在原始网络中计算节点μ的5个网络拓扑性质,5个网络拓扑性质的计算如下:
2.1)计算节点μ的聚类系数(Clustering Coefficient);聚类系数被用来衡量一个节点的邻居节点之间的联系程度;它被定义为与该节点相连的节点之间实际连接的连边数目与理论上最大连接数之间的比值;节点μ的聚类系数可以被计算为
其中Lμ表示与节点μ连接的邻居节点之间实际存在的连边数量,kμ表示与节点μ连接的邻居节点数量,也被称为节点μ的度;
2.2)计算节点μ的介值中心性(Betweenness Centrality);介值中心性被用来衡量一个节点的重要性;例如对于节点μ,该节点的介值中心性被定义为从任一节点到另一节点的最短路径通过节点μ的路径数量与任意两节点之间最短路径数量之和之间的比值,即节点μ的介值中心性可以被计算为
2.3)计算节点μ的接近中心性(Closeness Centrality);接近中心性被用来衡量一个节点与其他节点之间的联系;如对于节点μ,它被定义为其他节点到这一节点的平均距离的倒数,即节点μ的接近中心性可以被计算为
其中,dμj表示为节点j到节点u的距离,而N即为网络中的所有节点的数量;
2.4)计算节点μ的特征向量中心性(Eigenvector Centrality);特征向量中心性同样被用来表征节点的重要性;不同于介值中心性,特征向量中心性认为一个节点的重要性与其邻居节点的重要性有关,考虑到此因素,对于节点μ,其特征向量中心性可以被计算为
其中,c是一个预设参数,auj为一个二值变量,用来表示节点μ和节点j间是否存在连边,若aμj=1则表示节点μ和节点j之间存在连边;反之则表示二者之间无连边;xj为节点j的重要性度量值;
2.5)计算节点μ的邻居节点平均度值(Average Neighbor Degree);对于任一节点μ,邻居节点度被定义为该节点的邻居节点的平均度值,即
其中,kμ表示为节点μ的邻居节点数,即节点i的度值。N(μ)表示由节点μ的所有邻居节点组成的集合;
原始特征向量构建模块,将原始网络拓扑性质计算模块得到的5个网络结构特征以横向拼接的形式进行特征空间扩展,从而,对每一个节点,得到该节点在原始网络中的一个维度为1×5的特征向量,即特征向量中网络拓扑性质的排列顺序是任意的,但此排列顺序一旦确定,对于所有节点的特征向量都应保持这样的排列顺序。
攻击原始网络模块,利用网络中的对抗攻击方法针对节点μ进行攻击,获得被攻击的网络;
被攻击网络拓扑性质计算模块,利用与原始网络拓扑性质计算模块相同的计算方式计算节点μ的5个网络拓扑性质;
随机森林分类器,从原始特征向量构建模块和受攻击后特征向量构建模块输入各节点的特征向量,采用机器学习中的分类器模型对所有节点利用留出法验证,将所有节点以一定比例划分成训练集和测试集,得出分类精度。
本发明提出了一种基于多种网络节点拓扑结构的对抗攻击检测方法。针对现有检测网络对抗攻击样本方法的弊端,本发明根据现有网络对抗攻击方法大多数仅仅保证网络中的某一类特征不发生明显的改变而对网络结构进行修改,此方法利用了网络中的多种拓扑结构信息来检测网络是否被某一种攻击方法所攻击。
公开号为CN111882446A的一种基于图卷积网络的异常账户检测方法,将账户依据消费能力进行分组,分组处理之后构建金融网络,然后采用GCN对异常账户进行分类,得到异常账户和正常账户,应用KNN对异常账户进行识别,找到与该异常账户异常情况最为相似的现有异常账户。这种检测方法的缺点之一是它仅适用于金融领域,而对于其他的领域并不适用,适用面小;其次GCN对异常账户的检测并不完全准确,可能导致KNN的识别进一步出错。相比之下,本发明的有益效果为:这种检测方式受到现有网络对抗攻击中仅保持少量特征不变的特性的启发,利用多种网络结构特性来对网络是否被攻击进行检测。这样的检测方法相较现有的其余检测方法较为简单,更易实现,并且不像现有的一些检测方法仅适用于部分攻击方法,这种检测普遍适用于各种攻击方法,检测范围广,并且在此基础上,此检测方法保证了较高的检测精度。在大多数情况下能够分辨出一个网络是否被某种攻击方法所攻击。
附图说明
图1是本发明方法的流程图。
图2是本发明检测对抗攻击样本的检测效果图。
具体实施方式
下面结合说明书附图对本发明的具体实施方式作进一步的详细说明。
参照图1,一种基于网络节点拓扑结构的对抗攻击检测方法,本发明以增量攻击方法Nettack为例,其中被攻击的对象为GCN模型在Cora引文网络中的节点分类任务。
本发明分为如下几个步骤:
S1:导入网络G=(V,E),其中V表示网络中的节点集合,E表示网络中的连边的集合。在此实施例中我们导入一个Cora引文网络。在Cora网络中存在2708个节点和5429条连边,其中每个节点表示一篇论文,若两篇论文存在引用关系则认为二者之间存在一条连边。我们随机选取若干节点作为被攻击的对象。对于这一网络,假设节点μ可能被某种针对节点分类任务的攻击方法所攻击。
S2:在原始网络中计算节点μ的5个网络拓扑性质,5个网络拓扑性质的计算如下:
2.1)计算节点μ的聚类系数(Clustering Coefficient);聚类系数被用来衡量一个节点的邻居节点之间的联系程度;它被定义为与该节点相连的节点之间实际连接的连边数目与理论上最大连接数之间的比值;节点μ的聚类系数可以被计算为
其中Lμ表示与节点μ连接的邻居节点之间实际存在的连边数量,kμ表示与节点μ连接的邻居节点数量,也被称为节点μ的度;
2.2)计算节点μ的介值中心性(Betweenness Centrality);介值中心性被用来衡量一个节点的重要性;例如对于节点μ,该节点的介值中心性被定义为从任一节点到另一节点的最短路径通过节点μ的路径数量与任意两节点之间最短路径数量之和之间的比值,即节点μ的介值中心性可以被计算为
2.3)计算节点μ的接近中心性(Closeness Centrality);接近中心性被用来衡量一个节点与其他节点之间的联系;如对于节点μ,它被定义为其他节点到这一节点的平均距离的倒数,即节点μ的接近中心性可以被计算为
其中,dμj表示为节点j到节点u的距离,而N即为网络中的所有节点的数量;
2.4)计算节点μ的特征向量中心性(Eigenvector Centrality);特征向量中心性同样被用来表征节点的重要性;不同于介值中心性,特征向量中心性认为一个节点的重要性与其邻居节点的重要性有关,考虑到此因素,对于节点μ,其特征向量中心性可以被计算为
其中,c是一个预设参数,此实施例中c被设置为1。auj为一个二值变量,用来表示节点μ和节点j间是否存在连边,若aμj=1则表示节点μ和节点j之间存在连边;反之则表示二者之间无连边;xj为节点j的重要性度量值,此实施例中Cora网络中每个节点的重要性度量值分配为1;
2.5)计算节点μ的邻居节点平均度值(Average Neighbor Degree);对于任一节点μ,邻居节点度被定义为该节点的邻居节点的平均度值,即
其中,kμ表示为节点μ的邻居节点数,即节点i的度值;N(μ)表示由节点μ的所有邻居节点组成的集合;
S3:特征向量空间构建。将在S2中得到的5个网络结构特征以横向拼接的形式进行特征空间扩展,从而,对每一个节点,可以得到该节点在原始网络中的一个维度为1×5的特征向量,即特征向量中网络拓扑性质的排列顺序是任意的,但此排列顺序一旦确定,对于所有节点的特征向量都应保持这样的排列顺序;
S4:利用网络中的对抗攻击方法针对节点μ进行攻击,获得被攻击的网络。此实施例中,所采用的攻击方法为Nettack,并且攻击的对象为GCN节点分类模型;实施对网络的攻击后获得被攻击的网络;
S6:采用机器学习中的分类器模型对所有节点利用留出法验证,将所有节点以一定比例划分成训练集和测试集,得出分类精度。本例中我们将S3和S5中得到的各个节点的特征向量作为输入。
如上所述,所述步骤S2中特征向量中心性计算中,预设参数c被设置为1,而每个节点的重要性度量值对于不同网络可以设置为不同的值,在没有特别说明的情况下,每个节点的重要性度量值设置为1。
如上所述,所述步骤S4中所采用的攻击方法,可以选用Nettack、GradArgmax、MetaGradient attack等攻击方法中任意一种进行攻击。
如上所述,所述步骤S6中利用留出法对所有节点的检测效果进行验证,此方法以80%和20%的比例来将节点划分为训练集和测试集。并且选取随机森林作为节点检测的分类器,随机森林中树的数量设置为256,将最小Cost-Complexity剪枝参数设定为0.05,树的最大深度设置为50。
本发明还提供了一种际遇网络节点拓扑结构的对抗攻击检测系统,包括原始网络图导入模块、原始网络拓扑性质计算模块、原始特征向量构建模块、攻击原始网络模块、被攻击网络拓扑性质计算模块、受攻击后特征向量构建模块、随机森林分类器,导入模块向原始网络拓扑性质计算模块和攻击原始网络模块分别从原始网络图导入网络G=(V,E),导入模块向原始网络拓扑性质计算模块向原始特征向量构建模块输出节点μ的聚类系数、节点μ的介值中心性、节点μ的接近中心性、节点μ的特征向量中心性、节点μ的邻居节点平均度值;攻击原始网络模块向被攻击网络拓扑性质计算模块输出被攻击的网络;被攻击网络拓扑性质计算模块向受攻击后特征向量构建模块输出被攻击网络的中的节点μ的5个网络拓扑性质特征;原始特征向量构建模块和受攻击后特征向量构建模块分别向随机森林分类器输出各节点的特征向量;
原始网络图导入模块导入网络G=(V,E),其中V表示网络中的节点集合,E表示网络中的连边的集合,不妨设一个网络中共存在N个节点,M条连边。对于这一网络,假设节点μ可能被某种针对节点分类任务的攻击方法所攻击。
原始网络拓扑性质计算模块,在原始网络中计算节点μ的5个网络拓扑性质,5个网络拓扑性质的计算如下:
2.1)计算节点μ的聚类系数(Clustering Coefficient);聚类系数被用来衡量一个节点的邻居节点之间的联系程度;它被定义为与该节点相连的节点之间实际连接的连边数目与理论上最大连接数之间的比值;节点μ的聚类系数可以被计算为
其中Lμ表示与节点μ连接的邻居节点之间实际存在的连边数量,kμ表示与节点μ连接的邻居节点数量,也被称为节点μ的度;
2.2)计算节点μ的介值中心性(Betweenness Centrality);介值中心性被用来衡量一个节点的重要性;例如对于节点μ,该节点的介值中心性被定义为从任一节点到另一节点的最短路径通过节点μ的路径数量与任意两节点之间最短路径数量之和之间的比值,即节点μ的介值中心性可以被计算为
2.3)计算节点μ的接近中心性(Closeness Centrality);接近中心性被用来衡量一个节点与其他节点之间的联系;如对于节点μ,它被定义为其他节点到这一节点的平均距离的倒数,即节点μ的接近中心性可以被计算为
其中,dμj表示为节点j到节点u的距离,而N即为网络中的所有节点的数量;
2.4)计算节点μ的特征向量中心性(Eigenvector Centrality);特征向量中心性同样被用来表征节点的重要性;不同于介值中心性,特征向量中心性认为一个节点的重要性与其邻居节点的重要性有关,考虑到此因素,对于节点μ,其特征向量中心性可以被计算为
其中,c是一个预设参数,auj为一个二值变量,用来表示节点μ和节点j间是否存在连边,若aμj=1则表示节点μ和节点j之间存在连边;反之则表示二者之间无连边;xj为节点j的重要性度量值;
2.5)计算节点μ的邻居节点平均度值(Average Neighbor Degree);对于任一节点μ,邻居节点度被定义为该节点的邻居节点的平均度值,即
其中,kμ表示为节点μ的邻居节点数,即节点i的度值。N(μ)表示由节点μ的所有邻居节点组成的集合;
原始特征向量构建模块,将原始网络拓扑性质计算模块得到的5个网络结构特征以横向拼接的形式进行特征空间扩展,从而,对每一个节点,得到该节点在原始网络中的一个维度为1×5的特征向量,即特征向量中网络拓扑性质的排列顺序是任意的,但此排列顺序一旦确定,对于所有节点的特征向量都应保持这样的排列顺序。
攻击原始网络模块,利用网络中的对抗攻击方法针对节点μ进行攻击,获得被攻击的网络;
被攻击网络拓扑性质计算模块,利用与原始网络拓扑性质计算模块相同的计算方式计算节点μ的5个网络拓扑性质;
随机森林分类器,从原始特征向量构建模块和受攻击后特征向量构建模块输入各节点的特征向量,采用机器学习中的分类器模型对所有节点利用留出法验证,将所有节点以一定比例划分成训练集和测试集,得出分类精度。
图2展示了本发明在检测攻击样本任务中取得的优良效果。对于在步骤S3以及S5中得到的节点的高维特征向量,利用t-SNE降维方法将其降至2维的向量,并将其绘制在二维平面中,图2中的每一个点对应了一个节点的特征向量。其中,黑色的点表示未被攻击上述方法攻击的节点所对应的特征向量;白色的点表示被攻击方法所攻击的节点对应的特征向量。从图中可以看出,被攻击的节点提取的特征向量和未被攻击的节点提取的特征向量可以被明显地区分开,这表示通过此种方法所提取的特征向量可以被用来检测出一个节点是否被某种网络攻击方法所攻击。
如上述为本发明在Cora引文网络数据集以及针对Nettack对抗攻击方法攻击GCN节点分类模型的检测方法的实例介绍。这种检测方式受到现有网络对抗攻击中仅保持少量特征不变的特性的启发,采用多种网络结构特征来对网络是否被攻击进行检测。这样的检测方法相较现有的其余检测方法较为简单,更易实现,并且不像现有的部分检测方法仅适用于部分攻击方法,这种检测普遍适用于各种攻击方法,检测范围广,并且在此基础上,此检测方法保证了较高的检测精度。显然,本发明不仅适用于上述的仅仅针对于Nettack攻击方法以及Cora数据集,在不偏离本发明基本精神及不超过本发明实质内容所涉及内容的前提下可对其做种种变化加以实施。
Claims (5)
1.一种基于网络节点拓扑结构的对抗攻击检测方法,其特征在于,所述攻击检测方法包括以下步骤:
S1:导入网络G=(V,E),其中V表示网络中的节点集合,E表示网络中的连边的集合,不妨设一个网络中共存在N个节点,M条连边;对于这一网络,假设节点μ可能被某种针对节点分类任务的攻击方法所攻击;
S2:在原始网络中计算节点μ的5个网络拓扑性质,5个网络拓扑性质的计算如下:
2.1)计算节点μ的聚类系数(Clustering Coefficient);聚类系数被用来衡量一个节点的邻居节点之间的联系程度;它被定义为与该节点相连的节点之间实际连接的连边数目与理论上最大连接数之间的比值;节点μ的聚类系数可以被计算为
其中Lμ表示与节点μ连接的邻居节点之间实际存在的连边数量,kμ表示与节点μ连接的邻居节点数量,也被称为节点μ的度;
2.2)计算节点μ的介值中心性(Betweenness Centrality);介值中心性被用来衡量一个节点的重要性;例如对于节点μ,该节点的介值中心性被定义为从任一节点到另一节点的最短路径通过节点μ的路径数量与任意两节点之间最短路径数量之和之间的比值,即节点μ的介值中心性可以被计算为
2.3)计算节点μ的接近中心性(Closeness Centrality);接近中心性被用来衡量一个节点与其他节点之间的联系;如对于节点μ,它被定义为其他节点到这一节点的平均距离的倒数,即节点μ的接近中心性可以被计算为
其中,dμj表示为节点j到节点u的距离,而N即为网络中的所有节点的数量。
2.4)计算节点μ的特征向量中心性(Eigenvector Centrality);特征向量中心性同样被用来表征节点的重要性;不同于介值中心性,特征向量中心性认为一个节点的重要性与其邻居节点的重要性有关,考虑到此因素,对于节点μ,其特征向量中心性可以被计算为
其中,c是一个预设参数,auj为一个二值变量,用来表示节点μ和节点j间是否存在连边,若aμj=1则表示节点μ和节点j之间存在连边;反之则表示二者之间无连边。xj为节点j的重要性度量值;
2.5)计算节点μ的邻居节点平均度值(Average Neighbor Degree);对于任一节点μ,邻居节点度被定义为该节点的邻居节点的平均度值,即
其中,kμ表示为节点μ的邻居节点数,即节点i的度值。N(μ)表示由节点μ的所有邻居节点组成的集合;
S3:特征向量空间构建;将在S2中得到的5个网络结构特征以横向拼接的形式进行特征空间扩展,从而,对每一个节点,我们可以得到该节点在原始网络中的一个维度为1×5的特征向量,即特征向量中网络拓扑性质的排列顺序是任意的,但此排列顺序一旦确定,对于所有节点的特征向量都应保持这样的排列顺序;
S4:利用网络中的对抗攻击方法针对节点μ进行攻击,获得被攻击的网络;
S6:采用机器学习中的分类器模型对所有节点利用留出法验证,将所有节点以一定比例划分成训练集和测试集,得出分类精度;本例中我们将S3和S5中得到的各个节点的特征向量作为输入。
2.如上所述,所述步骤S2中特征向量中心性计算中,预设参数c被设置为1,而每个节点的重要性度量值对于不同网络可以设置为不同的值,在没有特别说明的情况下,每个节点的重要性度量值设置为1。
3.如上所述,所述步骤S4中所采用的攻击方法,可以选用Nettack、GradArgmax、MetaGradient attack等攻击方法中任意一种进行攻击。
4.如上所述,所述步骤S6中利用留出法对所有节点的检测效果进行验证,此方法以80%和20%的比例来将节点划分为训练集和测试集;并且选取随机森林作为节点检测的分类器,随机森林中树的数量设置为256,将最小Cost-Complexity剪枝参数设定为0.05,树的最大深度设置为50。
5.一种基于网络节点拓扑结构的对抗攻击检测系统,其特征在于:包括原始网络图导入模块、原始网络拓扑性质计算模块、原始特征向量构建模块、攻击原始网络模块、被攻击网络拓扑性质计算模块、受攻击后特征向量构建模块、随机森林分类器,导入模块向原始网络拓扑性质计算模块和攻击原始网络模块分别从原始网络图导入网络G=(V,E),导入模块向原始网络拓扑性质计算模块向原始特征向量构建模块输出节点μ的聚类系数、节点μ的介值中心性、节点μ的接近中心性、节点μ的特征向量中心性、节点μ的邻居节点平均度值;攻击原始网络模块向被攻击网络拓扑性质计算模块输出被攻击的网络;被攻击网络拓扑性质计算模块向受攻击后特征向量构建模块输出被攻击网络的中的节点μ的5个网络拓扑性质特征;原始特征向量构建模块和受攻击后特征向量构建模块分别向随机森林分类器输出各节点的特征向量;
原始网络图导入模块导入网络G=(V,E),其中V表示网络中的节点集合,E表示网络中的连边的集合,不妨设一个网络中共存在N个节点,M条连边;对于这一网络,假设节点μ可能被某种针对节点分类任务的攻击方法所攻击;
原始网络拓扑性质计算模块,在原始网络中计算节点μ的5个网络拓扑性质,5个网络拓扑性质的计算如下:
2.1)计算节点μ的聚类系数(Clustering Coefficient);聚类系数被用来衡量一个节点的邻居节点之间的联系程度;它被定义为与该节点相连的节点之间实际连接的连边数目与理论上最大连接数之间的比值;节点μ的聚类系数可以被计算为
其中Lμ表示与节点μ连接的邻居节点之间实际存在的连边数量,kμ表示与节点μ连接的邻居节点数量,也被称为节点μ的度;
2.2)计算节点μ的介值中心性(Betweenness Centrality);介值中心性被用来衡量一个节点的重要性;例如对于节点μ,该节点的介值中心性被定义为从任一节点到另一节点的最短路径通过节点μ的路径数量与任意两节点之间最短路径数量之和之间的比值,即节点μ的介值中心性可以被计算为
2.3)计算节点μ的接近中心性(Closeness Centrality);接近中心性被用来衡量一个节点与其他节点之间的联系;如对于节点μ,它被定义为其他节点到这一节点的平均距离的倒数,即节点μ的接近中心性可以被计算为
其中,dμj表示为节点j到节点u的距离,而N即为网络中的所有节点的数量;
2.4)计算节点μ的特征向量中心性(Eigenvector Centrality);特征向量中心性同样被用来表征节点的重要性;不同于介值中心性,特征向量中心性认为一个节点的重要性与其邻居节点的重要性有关,考虑到此因素,对于节点μ,其特征向量中心性可以被计算为
其中,c是一个预设参数,auj为一个二值变量,用来表示节点μ和节点j间是否存在连边,若aμj=1则表示节点μ和节点j之间存在连边;反之则表示二者之间无连边;xj为节点j的重要性度量值;
2.5)计算节点μ的邻居节点平均度值(Average Neighbor Degree);对于任一节点μ,邻居节点度被定义为该节点的邻居节点的平均度值,即
其中,kμ表示为节点μ的邻居节点数,即节点i的度值;N(μ)表示由节点μ的所有邻居节点组成的集合;
原始特征向量构建模块,将原始网络拓扑性质计算模块得到的5个网络结构特征以横向拼接的形式进行特征空间扩展,从而,对每一个节点,得到该节点在原始网络中的一个维度为1×5的特征向量,即 特征向量中网络拓扑性质的排列顺序是任意的,但此排列顺序一旦确定,对于所有节点的特征向量都应保持这样的排列顺序;
攻击原始网络模块,利用网络中的对抗攻击方法针对节点μ进行攻击,获得被攻击的网络;
被攻击网络拓扑性质计算模块,利用与原始网络拓扑性质计算模块相同的计算方式计算节点μ的5个网络拓扑性质;
随机森林分类器,从原始特征向量构建模块和受攻击后特征向量构建模块输入各节点的特征向量,采用机器学习中的分类器模型对所有节点利用留出法验证,将所有节点以一定比例划分成训练集和测试集,得出分类精度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110034275.7A CN112733136B (zh) | 2021-01-12 | 2021-01-12 | 一种基于网络节点拓扑结构的对抗攻击检测方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110034275.7A CN112733136B (zh) | 2021-01-12 | 2021-01-12 | 一种基于网络节点拓扑结构的对抗攻击检测方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112733136A true CN112733136A (zh) | 2021-04-30 |
CN112733136B CN112733136B (zh) | 2022-03-18 |
Family
ID=75590258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110034275.7A Active CN112733136B (zh) | 2021-01-12 | 2021-01-12 | 一种基于网络节点拓扑结构的对抗攻击检测方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112733136B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113326356A (zh) * | 2021-08-03 | 2021-08-31 | 北京邮电大学 | 针对文本分类器的自然对抗样本生成方法及相关装置 |
CN113452548A (zh) * | 2021-05-08 | 2021-09-28 | 浙江工业大学 | 一种针对网络节点分类和链路预测的指标评测方法及系统 |
CN113572739A (zh) * | 2021-06-30 | 2021-10-29 | 中国人民解放军战略支援部队信息工程大学 | 一种网络有组织攻击入侵检测方法及装置 |
CN113645182A (zh) * | 2021-06-21 | 2021-11-12 | 上海电力大学 | 一种基于二次特征筛选的拒绝服务攻击随机森林检测方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106027567A (zh) * | 2016-07-12 | 2016-10-12 | 西安邮电大学 | 利用篡改感知数据攻击特征的分布式频谱感知方法和装置 |
CN108471382A (zh) * | 2018-01-29 | 2018-08-31 | 浙江工业大学 | 一种基于节点度值的复杂网络聚类算法攻击方法 |
CN110909769A (zh) * | 2019-11-05 | 2020-03-24 | 浙江工业大学 | 一种基于度值的无标度网络分类算法的对抗攻击方法 |
CN111950153A (zh) * | 2020-08-14 | 2020-11-17 | 江苏师范大学 | 一种基于多种攻击策略的电力网络脆弱性评估方法 |
-
2021
- 2021-01-12 CN CN202110034275.7A patent/CN112733136B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106027567A (zh) * | 2016-07-12 | 2016-10-12 | 西安邮电大学 | 利用篡改感知数据攻击特征的分布式频谱感知方法和装置 |
CN108471382A (zh) * | 2018-01-29 | 2018-08-31 | 浙江工业大学 | 一种基于节点度值的复杂网络聚类算法攻击方法 |
CN110909769A (zh) * | 2019-11-05 | 2020-03-24 | 浙江工业大学 | 一种基于度值的无标度网络分类算法的对抗攻击方法 |
CN111950153A (zh) * | 2020-08-14 | 2020-11-17 | 江苏师范大学 | 一种基于多种攻击策略的电力网络脆弱性评估方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113452548A (zh) * | 2021-05-08 | 2021-09-28 | 浙江工业大学 | 一种针对网络节点分类和链路预测的指标评测方法及系统 |
CN113452548B (zh) * | 2021-05-08 | 2022-07-19 | 浙江工业大学 | 一种针对网络节点分类和链路预测的指标评测方法及系统 |
CN113645182A (zh) * | 2021-06-21 | 2021-11-12 | 上海电力大学 | 一种基于二次特征筛选的拒绝服务攻击随机森林检测方法 |
CN113645182B (zh) * | 2021-06-21 | 2023-07-14 | 上海电力大学 | 一种基于二次特征筛选的拒绝服务攻击随机森林检测方法 |
CN113572739A (zh) * | 2021-06-30 | 2021-10-29 | 中国人民解放军战略支援部队信息工程大学 | 一种网络有组织攻击入侵检测方法及装置 |
CN113326356A (zh) * | 2021-08-03 | 2021-08-31 | 北京邮电大学 | 针对文本分类器的自然对抗样本生成方法及相关装置 |
CN113326356B (zh) * | 2021-08-03 | 2021-11-02 | 北京邮电大学 | 针对文本分类器的自然对抗样本生成方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112733136B (zh) | 2022-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112733136B (zh) | 一种基于网络节点拓扑结构的对抗攻击检测方法和系统 | |
US20210203605A1 (en) | Method and apparatus for detecting abnormal traffic pattern | |
CN113806546B (zh) | 一种基于协同训练的图神经网络对抗防御方法及系统 | |
EP3266156A1 (en) | Network infrastructure device to implement pre-filter rules | |
CN113010896B (zh) | 确定异常对象的方法、装置、设备、介质和程序产品 | |
CN108540327B (zh) | 一种动态网络异常链接行为检测方法及系统 | |
Manganiello et al. | Multistep attack detection and alert correlation in intrusion detection systems | |
CN116250020A (zh) | 使用潜在邻域图检测对抗性示例 | |
CN114626890A (zh) | 一种基于图结构学习的异常用户检测方法 | |
CN113297572A (zh) | 基于神经元激活模式的深度学习样本级对抗攻击防御方法及其装置 | |
CN111046949A (zh) | 一种图像分类方法、装置及设备 | |
CN111210018A (zh) | 一种提升深度神经网络模型鲁棒性的方法及装置 | |
CN112329730A (zh) | 视频检测方法、装置、设备及计算机可读存储介质 | |
CN114708479A (zh) | 一种基于图结构和特征的自适应防御方法 | |
CN109977131A (zh) | 一种房型匹配系统 | |
CN115221471B (zh) | 一种异常数据的识别方法、装置、存储介质及计算机设备 | |
CN114925765A (zh) | 对抗性集成分类模型的构建方法、装置、设备及存储介质 | |
Iqbal et al. | Denial of Service (DoS) Defences against Adversarial Attacks in IoT Smart Home Networks using Machine Learning Methods | |
CN113537463A (zh) | 基于数据扰动的对抗样本防御方法与装置 | |
CN112749759A (zh) | 一种深度神经网络图对抗样本的预处理方法、系统及应用 | |
KR101759507B1 (ko) | 스팸 탐지 장치 및 방법 | |
CN112862082B (zh) | 一种基于支持向量机的链路预测方法 | |
CN114741687B (zh) | 面向二值量化fir系统的数据篡改攻击检测方法及系统 | |
Kerdels et al. | A Sparse Representation of High-Dimensional Input Spaces Based on an Augmented Growing Neural Gas. | |
CN115293025A (zh) | 图数据的处理方法及对应装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230324 Address after: Room 201, Building 3, No. 575, Huxi Road, Changhe Street, Binjiang District, Hangzhou City, Zhejiang Province, 310051 Patentee after: Hangzhou Jiangshang Printing Technology Co.,Ltd. Address before: 310014 No. 18 Chao Wang Road, Xiacheng District, Zhejiang, Hangzhou Patentee before: JIANG University OF TECHNOLOGY |
|
TR01 | Transfer of patent right |