针对模型窃取攻击的图神经网络水印方法
未命名
07-13
阅读:149
评论:0
1.本发明属于数字资产保护领域,尤其涉及一种使用抗模型窃取攻击水印的图神经网络的数字资产保护方法。
背景技术:
2.图是一种广泛存在的数据类型。图神经网络是一种为图数据设计,能过高效完成图数据分析任务的机器学习模型。作为一种机器学习模型,图神经网络易遭受模型窃取攻击[1],使图神经网络拥有者的知识产权受到威胁。现有的神经网络水印方法[2]不能有效应对模型窃取攻击。
[0003]
[1]zhang,x.,fang,c.and shi,j.,2021.thief,beware of what get you there:towards understanding model extraction attack.arxiv preprint arxiv:2104.05921.
[0004]
[2]zhang,j.,gu,z.,jang,j.,wu,h.,stoecklin,m.p.,huang,h.and molloy,i.,2018,may.protecting intellectual property of deep neural networks with watermarking.in proceedings of the 2018 on asia conference on computer and communications security(pp.159-172).
技术实现要素:
[0005]
本发明的目的在于,针对现有方法不能防范模型窃取攻击的缺点,提出一种向图神经网络中加入抗模型窃取攻击水印,同时减少水印对图神经网络性能影响的方法。
[0006]
这里的模型窃取攻击,是指攻击者通过将特殊设计的攻击数据集输入受保护的图神经网络模型得到预测结果,进而利用攻击数据集和预测结果训练窃取模型的过程。
[0007]
这里的水印,是指使用特殊的损失函数训练模型等方式,使得加入水印的图神经网络有着特定的输入输出模式,即该图神经网络在输入特定的不常见输入后有着特定的输出。这种输入输出对应关系在未加入水印的图神经网络中是不存在的,因此可以用来验证图神经网络的所有权。
[0008]
本发明所针对的图神经网络是图级别的模型,即模型用于完成图级别的数据挖掘任务如图的分类。模型输入为一个完整的图拓扑及其每个节点的属性数据,输出是对整个图的预测结果。
[0009]
本发明的目的是通过以下技术方案实现的:一种针对模型窃取攻击的图神经网络水印方法,该方法包括以下步骤:
[0010]
s1,图神经网络模型的持有者拥有原始图数据集d
ori
,每条原始图数据具有对应的类别标签,在d
ori
中随机选择若干图,并对这些图做随机化处理生成水印图数据;
[0011]
s2,仅使用d
ori
训练一个无水印的图神经网络模型,将每一个随机化后的水印图数据输入此图神经网络模型得到此图所对应的无水印模型预测标签;在除了此预测标签的所有可能类别标签中,随机选择一个设定为此水印图数据的水印标签,所有水印图数据及其
对应的水印标签构成水印图数据集d
wn
;
[0012]
s3,使用d
ori
和d
wn
训练一个带水印的图神经网络模型,使得图神经网络模型中含有可在模型窃取攻击下保持的水印;
[0013]
s4,图神经网络模型的持有者量化模型的性能损失进行水印图数据优化,得到优化后的水印图数据,减小水印对图神经网络性能的影响;
[0014]
s5,图神经网络模型的持有者认为某个嫌疑模型是从其所持有的带水印图神经网络模型中通过模型窃取攻击得来时,检验水印是否存在于嫌疑模型上。
[0015]
进一步地,s1中,针对一条从d
ori
中选择的图数据i生成水印图数据的过程包括:
[0016]
在图i中随机选择n
t
个节点;利用随机图生成算法生成一个有n
t
个节点的随机图,使用该随机图的拓扑结构替代图i中被选择的n
t
个节点之间的拓扑结构;
[0017]
将图i中被选择的n
t
个节点的属性数据进行随机化,随机化后的节点属性数据格式与随机化前保持相同。
[0018]
进一步地,s3带水印的图神经网络模型训练过程中,在s2无水印模型训练的正常损失函数loss
task
中加入柔性最近邻居损失函数snnl,以使得被模型窃取攻击窃取的模型获得体现水印的输入输出模式。
[0019]
进一步地,所述柔性最近邻居损失函数snnl的公式如下:
[0020][0021]
其中d为d
ori
和d
wn
的并集,xi是d中第i个图中的所有节点属性数据或者第i个图输入图神经网络模型中得到的隐藏层数据,yi是一个表征第i个图是否为水印图数据的标签,t是一个调整snnl在嵌入空间内拉近原始图数据和水印图数据距离能力的参数。
[0022]
进一步地,s3中的训练过程包括:仅使用d
ori
和loss
task
的普通训练过程,以及使用d
ori
、d
wn
和loss=loss
task-snnl的加水印训练过程;普通训练过程和加水印训练过程交替进行。
[0023]
进一步地,s4中的优化过程分多轮进行,优化前初始化两个深度神经网络模型m
topo
和m
feat
,分别用于优化水印图数据的拓扑结构和节点属性数据,每一轮分为两步进行:
[0024]
1)将初始水印图数据的拓扑结构和节点属性数据分别输入m
topo
和m
feat
,输出结果是作为优化中间量的水印图数据的拓扑结构和节点属性数据,输入数据和输出数据的标签保持一致;使用d
ori
和作为优化中间量的水印图数据训练一个带水印的图神经网络模型m
opt
;
[0025]
2)计算损失函数loss
opt
=ce(m
opt
(d
ori
),labels),其中ce是交叉熵损,labels是d
ori
中图数据的真实标签,根据loss
opt
优化m
topo
和m
feat
的参数。
[0026]
多轮优化结束后,将初始水印图数据的拓扑结构和节点属性数据再次分别输入m
topo
和m
feat
,得到的结果即为最终优化后的水印图数据的拓扑结构和节点属性数据。
[0027]
进一步地,s4中,m
topo
的层与层之间是全连接结构;每层的神经元数量与s3中的图
神经网络模型中最后一层的神经元个数相等;每个水印图的邻接矩阵在扩充为统一规模后被视作多条数据的形式输入m
topo
,最后一层的神经元输出值经由一个阈值函数映射为一个邻接矩阵输出;
[0028]mfeat
的层与层之间是全连接结构;每层的神经元数量与s3中的图神经网络模型中最后一层的神经元个数相等,每个水印图的节点属性数据在扩充为统一规模后以多条数据的形式输入m
feat
,最后一层的神经元输出值再根据输入值的格式进行处理为符合格式要求的数据后输出。
[0029]
进一步地,s5中,图神经网络模型持有者验证水印的方法如下:
[0030]
1)持有者将s4得到的优化后的水印图数据输入嫌疑模型得到嫌疑模型对所有水印图数据的预测标签,将这些预测标签与为这些水印图数据设定的水印标签进行对比并计算匹配度;
[0031]
2)如果匹配度大于设定阈值,则说明水印存在于嫌疑模型中,即嫌疑模型是从带水印的图神经网络模型中窃取得到的。
[0032]
进一步地,s5中,匹配度a的定义为:其中w是优化后水印图数据集合;1
p=q
是相等函数;mw(x)是嫌疑模型对水印图数据x的预测标签;label(x)是在s2中为水印图数据x设定的水印标签。
[0033]
进一步地,s5中,阈值设定的具体方法为:将s4优化后的水印图数据输入无水印的图神经网络模型得到的匹配度和随机猜测的匹配度进行对比,选取这两个匹配度中较大的一个值设定为阈值。
[0034]
本发明的优点及有益效果是:本发明利用随机化的水印图数据和柔性邻居损失,使得训练后的图神经网络水印得以在被模型窃取攻击所窃得的模型上存续,从而水印可以抵抗模型窃取攻击。
附图说明
[0035]
图1为本发明实施例提供的针对模型窃取攻击的图神经网络水印方法流程图;
[0036]
图2为本发明实施例所产生的水印在嫌疑模型上保持率的比较图;
[0037]
图3为本发明实施例所产生的水印对图神经网络性能影响的比较图。
具体实施方式
[0038]
为了更好的理解本技术的技术方案,下面结合附图对本技术实施例进行详细描述。应当明确,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
[0039]
在本技术实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
[0040]
图1为本发明实施实例中的针对模型窃取攻击的图神经网络水印方法流程图。该方法包括以下步骤:
[0041]
步骤一,图神经网络模型的持有者拥有原始图数据集d
ori
,每条原始图数据具有对应的类别标签,设置水印图数据个数nk。
[0042]
步骤二,图神经网络模型的持有者在d
ori
中随机选择nk个图,并对这些图做随机化处理生成水印图数据。被随机化的图不会替代d
ori
中的原图。针对一条被选择的图数据i的具体实现如下,其他图数据同理:
[0043]
1)在图i中随机选择n
t
个节点。n
t
一般为d
ori
中所有图平均节点个数的0.3-0.5倍。对于不足n
t
个节点的图,在d
ori
中重新随机选择一个图进行替代。
[0044]
2)用随机图生成算法生成一个有n
t
个节点的随机图,使用该随机图的拓扑结构替代图i中被选择的n
t
个节点之间的拓扑结构。随机图生成算法可以采用er随机图模型。
[0045]
3)将图i中被选择的n
t
个节点的属性数据进行随机化。随机化后的节点属性数据格式与随机化前保持相同。
[0046]
步骤三,仅使用d
ori
训练一个无水印的图神经网络模型,将每一个随机化后的水印图数据输入此图神经网络模型得到此图所对应的无水印模型预测标签。在除了此预测标签的所有可能类别标签中,随机选择一个设定为此水印图数据的水印标签。无水印模型训练的损失函数记为loss
task
。所有水印图数据及其对应的水印标签构成水印图数据集d
wn
。
[0047]
步骤四,使用d
ori
和d
wn
训练一个带水印的图神经网络模型,使得图神经网络模型中含有可在模型窃取攻击下保持的水印。
[0048]
具体地,训练轮数由不同的数据集确定,一般为步骤三无水印模型训练轮数的1.5-2倍。
[0049]
在训练过程中,在步骤三无水印模型训练的正常损失函数loss
task
中加入柔性最近邻居损失函数(soft nearest neighbor loss,snnl),以使得被模型窃取攻击窃取的模型获得体现水印的输入输出模式。柔性最近邻居损失函数snnl的公式如下:
[0050][0051]
其中d为d
ori
和d
wn
的并集,xi是d中第i个图中的所有节点属性数据或者第i个图输入图神经网络模型中得到的隐藏层数据,yi是一个表征第i个图是否为水印图数据的标签,t是一个调整snnl在嵌入空间内拉近原始图数据和水印图数据距离能力的参数,t通常取(1,10)。
[0052]
步骤四的训练过程包括:仅使用d
ori
和loss
task
的普通训练过程,以及使用d
ori
、d
wn
和loss=loss
task-snnl的加水印训练过程;普通训练过程和加水印训练过程交替进行。本实施例中,每经过20-50轮普通训练,进行10轮的加水印训练。
[0053]
步骤五,图神经网络模型的持有者量化模型的性能损失进行水印图数据优化,得到优化后的水印图数据,减小水印对图神经网络性能的影响。
[0054]
优化过程分多轮进行,每轮进行两步优化。优化前,初始化两个深度神经网络模型m
topo
和m
feat
,分别用于优化水印图数据的拓扑结构和节点属性数据。m
topo
的输入是待优化水
印图数据的邻接矩阵,输出是优化后的邻接矩阵;m
feat
的输入是待优化水印图数据的节点属性数据,输出是优化后的节点属性数据。
[0055]
具体地,m
topo
有着3-5层神经网络,层与层之间是全连接结构;每层的神经元数量与步骤四中的图神经网络模型中最后一层的神经元个数相等。每个水印图的邻接矩阵,在扩充为统一规模后被视作多条数据的形式输入m
topo
,即矩阵的每一列视为一条数据。最后一层的神经元输出值经由一个阈值函数(每个神经元输出值大于阈值的映射为1,反之映射为0,阈值一般取0.5~1)映射为一个邻接矩阵,该邻接矩阵为m
topo
的输出结果。
[0056]
具体地,m
feat
有着3-5层神经网络,层与层之间是全连接结构;每层的神经元数量与步骤四中的图神经网络模型中最后一层的神经元个数相等。每个水印图的节点属性数据,在扩充为统一规模后以多条数据的形式输入m
feat
。最后一层的神经元输出值再根据输入值的格式(例如是否为独热向量,只能取整数等)进行处理为符合格式要求的数据后输出。
[0057]
优化过程一般持续20轮,每一轮分为两步进行:
[0058]
1)将步骤二中生成的初始水印图数据的拓扑结构和节点属性数据分别输入m
topo
和m
feat
,输出结果是作为优化中间量的水印图数据的拓扑结构和节点属性数据,输入数据和输出数据的标签保持一致。使用d
ori
和作为优化中间量的水印图数据训练一个带水印的图神经网络模型m
opt
,训练方法同步骤四。
[0059]
2)计算损失函数loss
opt
=ce(m
opt
(d
ori
),labels),其中ce是交叉熵损,labels是d
ori
中图数据的真实标签。根据loss
opt
优化m
topo
和m
feat
的参数。
[0060]
多轮优化结束后,将第二步中生成的初始水印图数据的拓扑结构和节点属性数据再次分别输入m
topo
和m
feat
,得到的结果即为最终优化后的水印图数据的拓扑结构和节点属性数据。最终优化后的水印图数据用于训练最终使用或发布的带水印图神经网络模型。
[0061]
第六步,图神经网络模型的持有者认为某个嫌疑模型是从他所持有的带水印图神经网络模型中通过模型窃取攻击得来时,检验水印是否存在于嫌疑模型上,从而确定嫌疑模型是否侵犯了其知识产权。
[0062]
这里的模型窃取攻击,是指攻击者通过将特殊设计的攻击数据集输入受保护的图神经网络模型得到预测结果,进而利用攻击数据集和预测结果训练窃取模型的过程。嫌疑模型是被模型持有者怀疑为通过对其带水印的图神经网络模型实施模型窃取攻击而训练得到的窃取模型。
[0063]
具体地,图神经网络模型持有者验证水印的方法如下:
[0064]
1)持有者将步骤五得到的最终优化后的水印图数据输入嫌疑模型并得到嫌疑模型对所有水印图数据的预测标签。将这些预测标签与步骤三中为这些水印图数据设定的水印标签进行对比并计算匹配度。这里,匹配度a的定义为:其中w是最终优化后水印图数据的集合;1
p=q
是相等函数,在p=q成立的时候为1,其他时候为0;mw(x)是嫌疑模型对水印图数据x的预测标签;label(x)是在步骤三中为水印图数据x设定的水印标签。
[0065]
2)如果匹配度大于一个设定的阈值,则可以说明水印存在于嫌疑模型中,即嫌疑模型是从带水印的图神经网络模型中窃取得到的。阈值设定的具体方法为:将步骤五最终
优化后的水印图数据输入无水印的图神经网络模型(只用d
ori
训练得到的)得到的匹配度和随机猜测的匹配度(用1除以所有可能的标签类别数)进行对比,选取这两个匹配度中较大的一个值设定为阈值。例如无水印的图神经网络模型的预测标签和设定的水印标签的匹配度为0.1,所有可能的标签类别数为5,则随机猜测的匹配度为0.2,将阈值设定为0.2,如果嫌疑模型对最终优化后的水印图数据的预测结果匹配度大于0.2则认为水印存在于嫌疑模型中。
[0066]
对比以上步骤配以实验分析如下:
[0067]
为了验证本发明方法的有效性,下面使用真实数据集(msrc-9,enzymes)进行实验,说明本发明所提方法在提升模型水印效果和保持图神经网络模型预测效果的良好性能。
[0068]
图2显示了本发明的方法实现水印在模型窃取攻击下更容易保持。此实验训练带普通水印的图神经网络(普通水印)和带本发明水印的图神经网络(本发明水印),对比两种水印的保持率。带普通水印的图神经网络利用固定的随机图数据作为水印图数据,之后将水印图数据和正常数据集d
ori
一起进行普通训练得到的。带本发明水印的图神经网络按照本发明所叙述的方法训练得到。对带普通水印的图神经网络和带本发明水印的图神经网络分别实施模型窃取攻击,分别得到100个窃取模型,这两组100个模型中能成功验证水印的模型数量除以100,分别为带普通水印的图神经网络(普通水印)和带本发明水印的图神经网络(本发明水印)的水印保持率。水印保持率越高,说明水印在模型窃取攻击下的效果越好。
[0069]
图3显示了本发明提出的水印图数据优化方法能够提高带水印模型的预测效果。带水印模型的性能损失为带水印的图神经网络在正常数据测试集上的预测精度对比无水印模型在正常数据测试集上的预测精度的相对损失。本实验对比了带普通水印的图神经网络(普通水印)和带本发明水印的图神经网络(本发明水印)的性能损失。性能损失越大,说明水印对图神经网络的预测效果削弱约明显。
[0070]
以上所述仅是本发明的优选实施方式,虽然本发明已以较佳实施例披露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
技术特征:
1.一种针对模型窃取攻击的图神经网络水印方法,其特征在于,包括以下步骤:s1,图神经网络模型的持有者拥有原始图数据集d
ori
,每条原始图数据具有对应的类别标签,在d
ori
中随机选择若干图,并对这些图做随机化处理生成水印图数据;s2,仅使用d
ori
训练一个无水印的图神经网络模型,将每一个随机化后的水印图数据输入此图神经网络模型得到此图所对应的无水印模型预测标签;在除了此预测标签的所有可能类别标签中,随机选择一个设定为此水印图数据的水印标签,所有水印图数据及其对应的水印标签构成水印图数据集d
wn
;s3,使用d
ori
和d
wn
训练一个带水印的图神经网络模型,使得图神经网络模型中含有可在模型窃取攻击下保持的水印;s4,图神经网络模型的持有者量化模型的性能损失进行水印图数据优化,得到优化后的水印图数据,减小水印对图神经网络性能的影响;s5,图神经网络模型的持有者认为某个嫌疑模型是从其所持有的带水印图神经网络模型中通过模型窃取攻击得来时,检验水印是否存在于嫌疑模型上。2.根据权利要求1所述的一种针对模型窃取攻击的图神经网络水印方法,其特征在于,s1中,针对一条从d
ori
中选择的图数据i生成水印图数据的过程包括:在图i中随机选择n
t
个节点;利用随机图生成算法生成一个有n
t
个节点的随机图,使用该随机图的拓扑结构替代图i中被选择的n
t
个节点之间的拓扑结构;将图i中被选择的n
t
个节点的属性数据进行随机化,随机化后的节点属性数据格式与随机化前保持相同。3.根据权利要求1所述的一种针对模型窃取攻击的图神经网络水印方法,其特征在于,s3带水印的图神经网络模型训练过程中,在s2无水印模型训练的正常损失函数loss
task
中加入柔性最近邻居损失函数snnl,以使得被模型窃取攻击窃取的模型获得体现水印的输入输出模式。4.根据权利要求3所述的一种针对模型窃取攻击的图神经网络水印方法,其特征在于,所述柔性最近邻居损失函数snnl的公式如下:其中d为d
ori
和d
wn
的并集,x
i
是d中第i个图中的所有节点属性数据或者第i个图输入图神经网络模型中得到的隐藏层数据,y
i
是一个表征第i个图是否为水印图数据的标签,t是一个调整snnl在嵌入空间内拉近原始图数据和水印图数据距离能力的参数。5.根据权利要求3所述的一种针对模型窃取攻击的图神经网络水印方法,其特征在于,s3中的训练过程包括:仅使用d
ori
和loss
task
的普通训练过程,以及使用d
ori
、d
wn
和loss=loss
task-snnl的加水印训练过程;普通训练过程和加水印训练过程交替进行。6.根据权利要求1所述的一种针对模型窃取攻击的图神经网络水印方法,其特征在于,
s4中的优化过程分多轮进行,优化前初始化两个深度神经网络模型m
topo
和m
feat
,分别用于优化水印图数据的拓扑结构和节点属性数据,每一轮分为两步进行:1)将初始水印图数据的拓扑结构和节点属性数据分别输入m
topo
和m
feat
,输出结果是作为优化中间量的水印图数据的拓扑结构和节点属性数据,输入数据和输出数据的标签保持一致;使用d
ori
和作为优化中间量的水印图数据训练一个带水印的图神经网络模型m
opt
;2)计算损失函数loss
opt
=ce(m
opt
(d
ori
),labels),其中ce是交叉熵损,labels是d
ori
中图数据的真实标签,根据loss
opt
优化m
topo
和m
feat
的参数。多轮优化结束后,将初始水印图数据的拓扑结构和节点属性数据再次分别输入m
topo
和m
feat
,得到的结果即为最终优化后的水印图数据的拓扑结构和节点属性数据。7.根据权利要求1所述的一种针对模型窃取攻击的图神经网络水印方法,其特征在于,s4中,m
topo
的层与层之间是全连接结构;每层的神经元数量与s3中的图神经网络模型中最后一层的神经元个数相等;每个水印图的邻接矩阵在扩充为统一规模后被视作多条数据的形式输入m
topo
,最后一层的神经元输出值经由一个阈值函数映射为一个邻接矩阵输出;m
feat
的层与层之间是全连接结构;每层的神经元数量与s3中的图神经网络模型中最后一层的神经元个数相等,每个水印图的节点属性数据在扩充为统一规模后以多条数据的形式输入m
feat
,最后一层的神经元输出值再根据输入值的格式进行处理为符合格式要求的数据后输出。8.根据权利要求1所述的一种针对模型窃取攻击的图神经网络水印方法,其特征在于,s5中,图神经网络模型持有者验证水印的方法如下:1)持有者将s4得到的优化后的水印图数据输入嫌疑模型得到嫌疑模型对所有水印图数据的预测标签,将这些预测标签与为这些水印图数据设定的水印标签进行对比并计算匹配度;2)如果匹配度大于设定阈值,则说明水印存在于嫌疑模型中,即嫌疑模型是从带水印的图神经网络模型中窃取得到的。9.根据权利要求8所述的一种针对模型窃取攻击的图神经网络水印方法,其特征在于,s5中,匹配度a的定义为:其中w是优化后水印图数据集合;1
p=q
是相等函数;m
w
(x)是嫌疑模型对水印图数据x的预测标签;label(x)是在s2中为水印图数据x设定的水印标签。10.根据权利要求8所述的一种针对模型窃取攻击的图神经网络水印方法,其特征在于,s5中,阈值设定的具体方法为:将s4优化后的水印图数据输入无水印的图神经网络模型得到的匹配度和随机猜测的匹配度进行对比,选取这两个匹配度中较大的一个值设定为阈值。
技术总结
本发明公开了一种针对模型窃取攻击的图神经网络水印方法,本发明设计了水印图数据的随机化生成方法,并在训练中加入柔性最近邻居损失函数来使得水印得以来模型窃取攻击所窃取的模型中留存。其次,本发明通过设计优化方法优化水印图数据,提高了带水印图神经网络的性能。最后,本发明设计了检验模型是否含有水印的匹配度阈值。印的匹配度阈值。印的匹配度阈值。
技术研发人员:王海明 贺诗波 陈积明
受保护的技术使用者:浙江大学
技术研发日:2023.03.03
技术公布日:2023/7/12
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种具有漏电防护结构的激光切割设备的制作方法 下一篇:一种安装施工设备的制作方法
