一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种面向机器学习模型的数据恢复方法及相关装置

2022-06-01 17:54:54 来源:中国专利 TAG:


1.本发明涉及机器学习领域,特别涉及一种面向机器学习模型的数据恢复方法、装置、电子设备及存储介质。


背景技术:

2.在机器学习领域中,训练后的机器学习模型通常无法对训练集进行直接还原恢复。然而,若对机器学习模型的训练方式进行修改,在训练过程中引导该模型利用模型参数主动记录训练集数据,则可利用训练后的模型参数对训练集进行还原。相关值编码攻击正是一种能够引导机器学习模型记录训练集的训练方式,其通过皮尔逊相关系数使得模型参数和要记录的数据的相关性最大来完成数据记录。然而相关值编码攻击存在一些问题,例如记录能力有限,恢复出的数据和原始数据相比误差较大,此外还会降低模型的测试集准确率。


技术实现要素:

3.本发明的目的是提供一种面向机器学习模型的数据恢复方法、装置、电子设备及存储介质,可采用模型权重线性组合的方式来记录及恢复训练集数据,可提升恢复数据的准确性并降低对模型准确度的影响。
4.为解决上述技术问题,本发明提供一种面向机器学习模型的数据恢复方法,包括:
5.获取图像训练集和模型权重序列,并利用预设值及所述模型权重序列的长度计算数据记录长度;所述模型权重序列包含机器学习模型所使用的所有模型权重,所述预设值为记录单个像素数据值所需使用的模型权重数量;
6.从所述图像训练集中提取长度为所述数据记录长度的私有数据;
7.根据所述数据记录长度将所述模型权重序列完整划分为多个记录向量,并利用所述记录向量、所述私有数据及所述数据记录长度生成恶意项;
8.在每一轮训练中,利用所述图像训练集、所述恶意项及预设损失函数对所述模型权重序列进行训练更新,并利用更新后的模型权重序列对所述恶意项进行数值更新,直至完成训练;
9.利用所述数据记录长度及完成训练的模型权重序列恢复所述私有数据。
10.可选地,所述利用所述图像训练集、所述恶意项及预设损失函数对所述模型权重序列进行训练更新,包括:
11.将所述恶意项与利用所述预设损失函数计算得到的正常损失值相加得到总损失值;
12.对所述总损失值进行求导得到所述总损失值对所述模型权重序列的梯度,并利用所述梯度更新所述模型权重序列。
13.可选地,所述利用所述记录向量、所述私有数据及所述数据记录长度生成恶意项,包括:
14.利用所述记录向量、所述私有数据及所述数据记录长度采用如下方式生成所述恶意项:
[0015][0016]
其中w(θ,s)表示恶意项,θ表示所述模型权重序列,θi(i∈[1,k])表示所述记录向量,k表示所述预设值,λ表示预设的影响因子,s表示所述私有数据,r表示预设的缩放因子,l表示所述数据记录长度,绝对值下角标1表示l1范数。
[0017]
可选地,所述利用所述数据记录长度及完成训练的模型权重序列恢复所述私有数据,包括:
[0018]
根据所述数据记录长度将所述完成训练的模型权重序列完整划分为多个恢复向量;
[0019]
将所述恢复向量进行叠加得到初始私有数据,并将所述初始私有数据的绝对值与所述缩放因子相乘,得到所述私有数据。
[0020]
本发明还提供一种面向机器学习模型的数据恢复装置,包括:
[0021]
获取模块,用于获取图像训练集和模型权重序列,并利用预设值及所述模型权重序列的长度计算数据记录长度;所述模型权重序列包含机器学习模型所使用的所有模型权重,所述预设值为记录单个像素数据值所需使用的模型权重数量;
[0022]
提取模块,用于从所述图像训练集中提取长度为所述数据记录长度的私有数据;
[0023]
恶意项生成模块,用于根据所述数据记录长度将所述模型权重序列完整划分为多个记录向量,并利用所述记录向量、所述私有数据及所述数据记录长度生成恶意项;
[0024]
训练模块,用于在每一轮训练中,利用所述图像训练集、所述恶意项及预设损失函数对所述模型权重序列进行训练更新,并利用更新后的模型权重序列对所述恶意项进行数值更新,直至完成训练;
[0025]
恢复模块,用于利用所述数据记录长度及完成训练的模型权重序列恢复所述私有数据。
[0026]
可选地,所述训练模块,包括:
[0027]
总损失值计算子模块,用于将所述恶意项与利用所述模型预设损失函数计算得到的正常损失值相加得到总损失值;
[0028]
更新子模块,用于对所述总损失值进行求导得到所述总损失值对所述模型权重序列的梯度,并利用所述梯度更新所述模型权重序列。
[0029]
可选地,所述恶意项生成模块,具体用于利用所述记录向量、所述私有数据及所述数据记录长度采用如下方式生成所述恶意项:
[0030][0031]
其中w(θ,s)表示恶意项,θ表示所述模型权重序列,θi(i∈[1,k])表示所述记录向量,k表示所述预设值,λ表示预设的影响因子,s表示所述私有数据,r表示预设的缩放因子,l表示所述数据记录长度,绝对值下角标1表示l1范数。
[0032]
可选地,所述恢复模块,包括:
[0033]
划分子模块,用于根据所述数据记录长度将所述完成训练的模型权重序列完整划
分为多个恢复向量;
[0034]
恢复子模块,用于将所述恢复向量进行叠加得到初始私有数据,并将所述初始私有数据的绝对值与所述缩放因子相乘,得到所述私有数据。
[0035]
本发明还提供一种电子设备,包括:
[0036]
存储器,用于存储计算机程序;
[0037]
处理器,用于执行所述计算机程序时实现如上述所述的面向机器学习模型的数据恢复方法的步骤。
[0038]
本发明还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的面向机器学习模型的数据恢复方法的步骤。
[0039]
本发明提供一种面向机器学习模型的数据恢复方法,包括:获取图像训练集和模型权重序列,并利用预设值及所述模型权重序列的长度计算数据记录长度;所述模型权重序列包含机器学习模型所使用的所有模型权重,所述预设值为记录单个像素数据值所需使用的模型权重数量;从所述图像训练集中提取长度为所述数据记录长度的私有数据;根据所述数据记录长度将所述模型权重序列完整划分为多个记录向量,并利用所述记录向量、所述私有数据及所述数据记录长度生成恶意项;在每一轮训练中,利用所述图像训练集、所述恶意项及预设损失函数对所述模型权重序列进行训练更新,并利用更新后的模型权重序列对所述恶意项进行数值更新,直至完成训练;利用所述数据记录长度及完成训练的模型权重序列恢复所述私有数据。
[0040]
可见,本发明首先提取了图像训练集和模型权重序列,并利用预设值及所述模型权重序列的长度计算数据记录长度,其中该序列包含有机器学习模型所需使用的所有模型权重,该预设值为记录单个像素数据值所需使用的模型权重数量;进一步,本发明根据该数据记录长度从图像训练集中提取了需要记录的私有数据,以及将模型权重序列完整划分为多个记录向量,并利用所述记录向量、所述私有数据及所述数据记录长度生成恶意项,其中该恶意项用于影响机器学习模型的训练方向,以在模型权重中记录私有数据;最后,本发明利用所述图像训练集、正常的预设损失函数以及恶意项对机器学习模型的模型权重进行迭代训练,以达到影响模型参数的梯度下降,迫使所有模型参数对私有数据进行记录的效果。换而言之,本发明可采用模型权重线性组合的方式来记录训练集数据,由于采用所有模型权重进行记录,因此相较于现有的相关性编码攻击而言准确性更高,且不易降低模型的性能;此外,模型权重线性组合也可获得更大的记录空间。本发明还提供一种数据恢复装置、电子设备及存储介质,具有上述有益效果。
附图说明
[0041]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0042]
图1为本发明实施例所提供的一种面向机器学习模型的数据恢复方法的流程图;
[0043]
图2为本发明实施例所提供的一种面向机器学习模型的数据恢复装置的结构框图。
具体实施方式
[0044]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0045]
相关值编码攻击正是一种能够引导机器学习模型记录训练集的训练方式,其通过皮尔逊相关系数使得模型参数和要记录的数据的相关性最大来完成数据记录。然而相关值编码攻击存在一些问题,例如记录能力有限,恢复出的数据和原始数据相比误差较大,此外还会降低模型的测试集准确率。有鉴于此,本发明提供一种面向机器学习模型的数据恢复方法,可采用模型权重线性组合的方式来记录及恢复训练集数据,可提升恢复数据的准确性并降低对模型准确度的影响。请参考图1,图1为本发明实施例所提供的一种面向机器学习模型的数据恢复方法的流程图,该方法可以包括:
[0046]
s101、获取图像训练集和模型权重序列,并利用预设值及模型权重序列的长度计算数据记录长度;模型权重序列包含机器学习模型所使用的所有模型权重,预设值为记录单个像素数据值所需使用的模型权重数量。
[0047]
区别于现有的相关值编码攻击仅采用单个模型权重来记录一个窃取数据值,本发明采用了多个模型权重线性组合的方式来记录一个窃取数据值,能够有效提升数据恢复精度,并降低对机器学习模型准确度的影响;此外,由于本发明采用多个模型权重进行记录,进而可获得更大的记录空间,能够对训练集中的数据进行更加精确的记录。需要说明的是,模型权重序列即为包含机器学习模型所使用的所有模型权重的序列。本发明实施例并不限定模型权重的具体数量,可参考机器学习的相关技术。
[0048]
进一步,本发明实施例还使用到了一个特殊的预设值,该预设值为记录单个像素数据值所需使用的模型权重数量,例如,若将预设值设置为3,则记录单个像素数据值需要使用3个模型权重。在本发明实施例中,该预设值的用途为确定数据记录长度,以及将模型权重序列平均划分为多个记录向量。例如,若一个机器学习模型有6000个权值参数,且预设值为3,那么6000个权值参数就可以记录2000个像素点,同时这些权值参数可完整划分至3个记录向量,每一记录向量所包含的模型权重数量为2000个。显然,只需对预设值进行调整,便可获得更大的记录空间。需要说明的是,本发明实施例并不限定预设值的具体数值,可根据实际应用需求进行设定。
[0049]
进一步,需要说明的是,本发明实施例并不限定具体的机器学习模型,可根据实际需求进行选择;本发明实施例也不限定具体的图像训练集,该训练集可包含任意数量及类型的图像,可根据实际应用需求进行设定。
[0050]
s102、从图像训练集中提取长度为数据记录长度的私有数据。
[0051]
需要说明的是,本发明实施例并不限定如何从图像训练集中提取长度为数据记录长度的私有数据,只要私有数据中包含的像素数量与数据记录长度的数值相等即可,可根据实际应用需求进行设定。
[0052]
s103、根据数据记录长度将模型权重序列完整划分为多个记录向量,并利用记录向量、私有数据及数据记录长度生成恶意项。
[0053]
需要指出的是,每一记录向量所包含的模型权重数量均相同,且等于数据记录长
度,这是由于所有记录向量需共同记录私有数据,需保持与私有数据相同的长度。本发明实施例并不限定具体的划分方式,可根据实际应用需求进行设定,例如可将模型权重序列划分为多段,每段的长度均等于数据记录长度,并将每段模型权重序列作为记录向量,如模型权重序列θ包含6000个模型权重,数据记录长度为2000,则可将模型权重序列θ划分为θ1=θ[0:1999]、θ2=θ[2000:3999]和θ3=θ[4000:5999],其中θ1、θ2和θ3为三个记录向量。
[0054]
在一种可能的情况中,利用记录向量、私有数据及数据记录长度采用如下方式生成恶意项:
[0055][0056]
其中w(θ,s)表示恶意项,θ表示模型权重序列,θi(i∈[1,k])表示记录向量,k表示预设值,λ表示预设的影响因子,s表示私有数据,r表示预设的缩放因子,l表示数据记录长度,绝对值下角标1表示l1范数。
[0057]
需要说明的是,影响因子用于调整恶意项的影响程度;缩放因子用于缩放私有数据,添加缩放因子的原因在于,单个像素点的值一般为0-255,同时模型权重一般比较小,大概在-0.1到 0.1之间,若s值太大,则无法利用模型权重表示像素点值,因此需对s进行合适的缩小。本发明实施例并不限定影响因子和缩放因子的具体数值,可根据实际应用需求进行设定。
[0058]
s104、在每一轮训练中,利用图像训练集、恶意项及预设损失函数对模型权重序列进行训练更新,并利用更新后的模型权重序列对恶意项进行数值更新,直至完成训练。
[0059]
在得到恶意项后,便可将该项添加至机器学习模型的损失函数中,一起影响模型权重的梯度下降,迫使模型权重朝着恶意项的目的进行梯度下降,而该目的正是使得多个模型参数的累加和绝对值等于某一个要窃取的像素点的值。具体的,可将恶意项与利用模型预设损失函数计算得到的正常损失值相加得到总损失值,并对总损失值进行求导得到总损失值对模型权重序列的梯度,最后利用该梯度更新模型权重序列。上述梯度可表示为:
[0060][0061]
其中,θi表示第i轮训练的模型权重序列,f(
·
)表示机器学习模型,l(
·
)表示损失函数,(x,y)表示图像训练集,表示梯度,s表示记录的隐私数据。
[0062]
需要说明的是,本发明实施例并不限定具体的损失函数,可参考机器学习的相关技术。本发明实施例也不限定如何利用损失值更新模型权重,同样可参考机器学习的相关技术。
[0063]
在一种可能的情况中,利用图像训练集、恶意项及预设损失函数对模型权重序列进行训练更新,可以包括:
[0064]
步骤11:将恶意项与利用预设损失函数计算得到的正常损失值相加得到总损失值;
[0065]
步骤12:对总损失值进行求导得到总损失值对模型权重序列的梯度,并利用梯度更新模型权重序列。
[0066]
进一步,可以理解的是,由于模型权重序列中的权重值在每轮训练中均会发生改变,而恶意项基于该序列生成并影响该序列的梯度下降,因此在每轮训练后,都需要利用更新后的模型权重序列对恶意项进行数值更新,即利用更新后的模型权重值重新计算恶意项
的数值。
[0067]
s105、利用数据记录长度及完成训练的模型权重序列恢复私有数据。
[0068]
由于添加恶意项的目的在于使得多个模型参数的累加和绝对值等于某一个要窃取的像素点的值,因此只需要依照数据记录长度对完成训练的模型权重序列进行重新划分,得到与训练过程中的记录向量相对应的恢复向量,并将恢复向量进行累加即可恢复出私有数据。进一步,由于训练时采用缩放因子进行了缩放,因此在将恢复向量累加后,还需将累加结果与缩放因子相乘,还原缩放操作,才可得到私有数据。
[0069]
在一种可能的情况中,利用数据记录长度及完成训练的模型权重序列恢复私有数据,可以包括:
[0070]
步骤21:根据数据记录长度将完成训练的模型权重序列完整划分为多个恢复向量;
[0071]
步骤22:将恢复向量进行叠加得到初始私有数据,并将初始私有数据的绝对值与缩放因子相乘,得到私有数据。
[0072]
基于上述实施例,本发明首先提取了图像训练集和模型权重序列,并利用预设值及所述模型权重序列的长度计算数据记录长度,其中该序列包含有机器学习模型所需使用的所有模型权重,该预设值为记录单个像素数据值所需使用的模型权重数量;进一步,本发明根据该数据记录长度从图像训练集中提取了需要记录的私有数据,以及将模型权重序列完整划分为多个记录向量,并利用所述记录向量、所述私有数据及所述数据记录长度生成恶意项,其中该恶意项用于影响机器学习模型的训练方向,以在模型权重中记录私有数据;最后,本发明利用所述图像训练集、正常的预设损失函数以及恶意项对机器学习模型的模型权重进行迭代训练,以达到影响模型参数的梯度下降,迫使所有模型参数对私有数据进行记录的效果。换而言之,本发明可采用模型权重线性组合的方式来记录训练集数据,由于采用所有模型权重进行记录,因此相较于现有的相关性编码攻击而言准确性更高,且不易降低模型的性能;此外,模型权重线性组合也可获得更大的记录空间。
[0073]
下面对本发明实施例提供的面向机器学习模型的数据恢复装置、电子设备及存储介质进行介绍,下文描述的面向机器学习模型的数据恢复装置、电子设备及存储介质与上文描述的面向机器学习模型的数据恢复方法可相互对应参照。
[0074]
请参考图2,图2为本发明实施例所提供的一种面向机器学习模型的数据恢复装置的结构框图,该装置可以包括:
[0075]
获取模块201,用于获取图像训练集和模型权重序列,并利用预设值及模型权重序列的长度计算数据记录长度;模型权重序列包含机器学习模型所使用的所有模型权重,预设值为记录单个像素数据值所需使用的模型权重数量;
[0076]
提取模块202,用于从图像训练集中提取长度为数据记录长度的私有数据;
[0077]
恶意项生成模块203,用于根据数据记录长度将模型权重序列完整划分为多个记录向量,并利用记录向量、私有数据及数据记录长度生成恶意项;
[0078]
训练模块204,用于在每一轮训练中,利用图像训练集、恶意项及预设损失函数对模型权重序列进行训练更新,并利用更新后的模型权重序列对恶意项进行数值更新,直至完成训练;
[0079]
恢复模块205,用于利用数据记录长度及完成训练的模型权重序列恢复私有数据。
[0080]
可选地,训练模块204,可以包括:
[0081]
总损失值计算子模块,用于将恶意项与利用预设损失函数计算得到的正常损失值相加得到总损失值;
[0082]
更新子模块,用于对总损失值进行求导得到总损失值对模型权重序列的梯度,并利用梯度更新模型权重序列。
[0083]
可选地,恶意项生成模块203,具体用于利用记录向量、私有数据及数据记录长度采用如下方式生成恶意项:
[0084][0085]
其中w(θ,s)表示恶意项,θ表示模型权重序列,θi(i∈[1,k])表示记录向量,k表示预设值,λ表示预设的影响因子,s表示私有数据,r表示预设的缩放因子,l表示数据记录长度,绝对值下角标1表示l1范数。
[0086]
可选地,恢复模块205,可以包括:
[0087]
划分子模块,用于根据数据记录长度将完成训练的模型权重序列完整划分为多个恢复向量;
[0088]
恢复子模块,用于将恢复向量进行叠加得到初始私有数据,并将初始私有数据的绝对值与缩放因子相乘,得到私有数据。
[0089]
本发明实施例还提供一种电子设备,包括:
[0090]
存储器,用于存储计算机程序;
[0091]
处理器,用于执行计算机程序时实现如上述的面向机器学习模型的数据恢复方法的步骤。
[0092]
由于电子设备部分的实施例与面向机器学习模型的数据恢复方法部分的实施例相互对应,因此电子设备部分的实施例请参见面向机器学习模型的数据恢复方法部分的实施例的描述,这里不再赘述。
[0093]
本发明实施例还提供一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述任意实施例的面向机器学习模型的数据恢复方法的步骤。
[0094]
由于存储介质部分的实施例与面向机器学习模型的数据恢复方法部分的实施例相互对应,因此存储介质部分的实施例请参见面向机器学习模型的数据恢复方法部分的实施例的描述,这里不再赘述。
[0095]
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0096]
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0097]
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
[0098]
以上对本发明所提供的一种面向机器学习模型的数据恢复方法、装置、电子设备及存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献