网络对抗训练样本生成方法及图神经网络鲁棒性评估方法技术

技术编号:35022208 阅读:28 留言:0更新日期:2022-09-24 22:52
本发明专利技术属于人工智能技术领域,特别涉及一种网络对抗训练样本生成方法及图神经网络鲁棒性评估方法,利用诱导数据对图神经网络进行对抗训练,将攻击损失建立在未扰动的训练集上,在鲁棒性评估中考虑模型参数的对抗训练过程,从过拟合角度出发,构造加扰的训练数据,使图神经网络能够对训练数据很好地拟合,却难以对测试数据正确分类,也即图神经网络过拟合训练集学习出一个“假模型”。本发明专利技术采用对抗性攻击准确率下降幅度作为图神经网络鲁棒性评估方案,使图神经网络鲁棒性评估更加全面、完整、细致,评估后的图神经网络更加有效、可靠,便于图卷积神经网络在自然语言处理、计算机视觉及网络分析预测等领域中实际应用。网络分析预测等领域中实际应用。网络分析预测等领域中实际应用。

【技术实现步骤摘要】
网络对抗训练样本生成方法及图神经网络鲁棒性评估方法


[0001]本专利技术属于人工智能
,特别涉及一种网络对抗训练样本生成方法及图神经网络鲁棒性评估方法。

技术介绍

[0002]随着人工智能技术的研究与发展,深度学习在自然语言处理、图像识别、信号处理、物体识别等领域中表现不俗。图数据由于其强大的表达能力,在现实生活中有着广泛的应用。图神经网络(Graph Neural Network,GNN)使用神经网络来学习图结构数据,可以巧妙地从图数据中提取特征,而这些被提取出来的特征可以完成许多图数据分析任务,如节点分类、链路预测、社区发现和图分类等。在对图神经网络研究中发现,其很容易被一些微小的扰动迷惑,这类扰动可以被定义为对抗性扰动,通过在模型测试阶段可利用这些扰动因素来发现图神经网络存在的缺陷,进而能够根据这些漏洞缺陷做出相应的防御措施来增强模型鲁棒性。现有利用矛盾数据攻击方法,通过构造一组存在矛盾的对抗性训练数据,从欠拟合角度出发施加扰动,使图神经网络难以对其拟合,最终学习出一个“坏模型”,其是通过在污染训练集上的损失函数达到最大来进行对抗训练,忽略了模型参数在训练前后的差异性,进而影响图神经网络鲁棒性评估效果。

技术实现思路

[0003]为此,本专利技术提供一种网络对抗训练样本生成方法及图神经网络鲁棒性评估方法,从过拟合角度出发,构造加扰的训练数据,使图神经网络能够对训练数据很好地拟合,却难以对测试数据正确分类,也即图神经网络过拟合训练集学习出一个“假模型”,进而能够实现对抗训练中的诱导数据攻击,将模型参数视为扰动因素来对图神经网络进行全面评估,具有较好的实用性。
[0004]按照本专利技术所提供的设计方案,提供一种网络对抗训练样本生成方法,包含如下内容:
[0005]依据图神经网络设置原始样本数据的扰动参数并初始化,该扰动参数至少包含:扰动方式、扰动总数及用于存放扰动用数据节点编号的扰动列表,其中,扰动方式为图结构扰动或样本标签扰动;
[0006]在原始样本数据中添加诱导数据,获取扰动后的邻接矩阵或标签矩阵,利用目标损失函数正向训练图神经网络,获取训练后的网络参数;并依据训练后的网络参数获取攻击损失,并计算攻击损失对邻接矩阵或标签矩阵的攻击梯度;将攻击梯度转化为梯度矩阵,并依据预设的扰动值选取梯度矩阵中最大的两个元素,将该最大的两个元素对应的数据节点编号加入扰动列表;循环执行根据扰动列表在原始样本数据中添加诱导数据并利用目标损失函数训练图神经网络的步骤,更新扰动列表,直至满足循环终止条件;
[0007]根据更新后的扰动列表在原始样本数据上注入诱导数据,得到最终生成的训练样本。
[0008]作为本专利技术网络对抗训练样本生成方法,进一步地,依据正向训练的目标损失函数及未扰动的原始样本数据邻接矩阵或标签矩阵来获取攻击损失。
[0009]作为本专利技术网络对抗训练样本生成方法,进一步地,将攻击梯度转换为梯度矩阵时,并对矩阵符号进行有效处理,保留对扰动有效的攻击梯度,其余位置置零。
[0010]作为本专利技术网络对抗训练样本生成方法,进一步地,对矩阵符号进行有效处理中,对于扰动后邻接矩阵或符号矩阵的元素值为1且梯度值为负数时或对应的元素值为0且梯度值为正数时,则视为是对扰动有效的攻击梯度。
[0011]作为本专利技术网络对抗训练样本生成方法,进一步地,梯度矩阵的转换过程包含如下内容:利用矩阵逐元素相乘法将扰动后的邻接矩阵或标签矩阵与攻击梯度矩阵相乘,获取中间矩阵;将中间矩阵中的正值置为1,负值置为0,得到结果矩阵;依据结果矩阵和中间矩阵的逐元素相乘及转置相加,得到转换后的梯度矩阵。
[0012]作为本专利技术网络对抗训练样本生成方法,进一步地,中间矩阵计算公式表示为:其中,为扰动后邻接矩阵或标签矩阵的攻击梯度,为攻击损失。
[0013]作为本专利技术网络对抗训练样本生成方法,进一步地,转换后的梯度矩阵表示为:作为本专利技术网络对抗训练样本生成方法,进一步地,转换后的梯度矩阵表示为:其中,F
X
为对应的结果矩阵。
[0014]进一步地,本专利技术还提供一种图神经网络鲁棒性评估方法,包含如下内容:
[0015]收集图神经网络图结构数据和样本标签数据作为网络学习样本集,并将样本集划分为训练集和测试集;
[0016]将训练集中的图结构数据和样本标签数据作为图神经网络输入数据,对图神经网络进行正向训练,并利用测试集对训练后的图神经网络进行测试,获取图神经网络在测试集上的分类准确率;
[0017]将训练集作为原始样本数据,利用上述的样本生成方法生成的训练样本对图神经网络进行重新训练,并利用测试集对训练后的图神经网络进行测试,再次获取图神经网络在测试集上的分类准确率;
[0018]利用前后两次获取的图神经网络在测试集上的分类准确率的差值来评估图神经网络鲁棒性。
[0019]本专利技术的有益效果:
[0020]本专利技术利用诱导数据对图神经网络进行对抗训练,将攻击损失建立在未扰动的训练集上,在鲁棒性评估中考虑模型参数的对抗训练过程,而不是将模型参数视作与扰动无关的独立变量,采用对抗性攻击准确率下降幅度作为图神经网络鲁棒性评估方案,使图神经网络鲁棒性评估更加全面、完整、细致,评估后的图神经网络更加有效、可靠,便于图卷积神经网络在自然语言处理、计算机视觉及网络分析预测等领域中的实际应用。
附图说明:
[0021]图1为实施例中网络对抗训练样本生成方法流程示意;
[0022]图2为实施例中图神经网络鲁棒性评估方法流程示意。
具体实施方式:
[0023]为使本专利技术的目的、技术方案和优点更加清楚、明白,下面结合附图和技术方案对本专利技术作进一步详细的说明。
[0024]本专利技术实施例,参见图1所示,提供一种网络对抗训练样本生成方法,包含如下内容:
[0025]S101、依据图神经网络设置原始样本数据的扰动参数并初始化,该扰动参数至少包含:扰动方式、扰动总数及用于存放扰动用数据节点编号的扰动列表,其中,扰动方式为图结构扰动或样本标签扰动;
[0026]S102、在原始样本数据中添加诱导数据,获取扰动后的邻接矩阵或标签矩阵,利用目标损失函数正向训练图神经网络,获取训练后的网络参数;并依据训练后的网络参数获取攻击损失,并计算攻击损失对邻接矩阵或标签矩阵的攻击梯度;将攻击梯度转化为梯度矩阵,并依据预设的扰动值选取梯度矩阵中最大的两个元素,将该最大的两个元素对应的数据节点编号加入扰动列表;循环执行根据扰动列表在原始样本数据中添加诱导数据并利用目标损失函数训练图神经网络的步骤,更新扰动列表,直至满足循环终止条件;
[0027]S103、根据更新后的扰动列表在原始样本数据上注入诱导数据,得到最终生成的训练样本。
[0028]本案实施例中,从过拟合角度出发,构造加扰的训练数据,使图神经网络能够对训练数据很好地拟合,却难以对测试数据正确分类,也即图神经网络过拟合训练集学习出一个“假模型”,即诱导数据攻击本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种网络对抗训练样本生成方法,其特征在于,包含如下内容:依据图神经网络设置原始样本数据的扰动参数并初始化,该扰动参数至少包含:扰动方式、扰动总数及用于存放扰动用数据节点编号的扰动列表,其中,扰动方式为图结构扰动或样本标签扰动;在原始样本数据中添加诱导数据,获取扰动后的邻接矩阵或标签矩阵,利用目标损失函数正向训练图神经网络,获取训练后的网络参数;并依据训练后的网络参数获取攻击损失,并计算攻击损失对邻接矩阵或标签矩阵的攻击梯度;将攻击梯度转化为梯度矩阵,并选取梯度矩阵中最大的两个元素,将该最大的两个元素对应的数据节点编号加入扰动列表;循环执行根据扰动列表在原始样本数据中添加诱导数据并利用目标损失函数训练图神经网络的步骤,更新扰动列表,直至满足循环终止条件;根据更新后的扰动列表在原始样本数据上注入诱导数据,得到最终生成的训练样本。2.根据权利要求1所述的网络对抗训练样本生成方法,其特征在于,依据正向训练的目标损失函数及未扰动的原始样本数据邻接矩阵或标签矩阵来获取攻击损失。3.根据权利要求1所述的网络对抗训练样本生成方法,其特征在于,将攻击梯度转换为梯度矩阵时,并对矩阵符号进行有效处理,保留对扰动有效的攻击梯度,其余位置置零。4.根据权利要求3所述的网络对抗训练样本生成方法,其特征在于,对矩阵符号进行有效处理中,对于扰动后邻接矩阵或符号矩阵的元素值为1且梯度值为负数时或对应的元素值为0且梯度值为正数时,则视为是对扰动有效的攻击梯度。5.根据权利要求3或4所述的网络对抗训练样本生成方法,其特征在于,梯度矩阵的转换过程包含如下内容:利用...

【专利技术属性】
技术研发人员:吴翼腾于洪涛李邵梅金柯君赵秀明潘永昊宋旭晖李倩
申请(专利权)人:中国人民解放军战略支援部队信息工程大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1