深度学习模型水印嵌入方法、装置、电子设备及存储介质与流程

文档序号:21821946发布日期:2020-08-11 21:38阅读:298来源:国知局
深度学习模型水印嵌入方法、装置、电子设备及存储介质与流程

本发明涉及信息安全技术领域,尤其涉及一种深度学习模型的水印嵌入方法、装置、电子设备及计算机可读存储介质。



背景技术:

目前,深度学习模型已经广泛应用于图像识别、分类等行业。虽然深度学习模型的编程框架使得深度学习模型在实际项目应用中很容易上手,但对深度学习模型的训练仍然是一项困难的任务,因为它需要大量的数据和时间。因此,在深度学习模型的研究和发展中,共享训练好的深度学习模型是非常重要的。共享会带来深度学习模型的产权保护问题,现如今还没有出现较好的技术能够实现深度学习模型的产权保护。



技术实现要素:

本发明提供一种深度学习模型的水印嵌入方法、装置、电子设备及计算机可读存储介质,其主要目的在于提供一种能够保护深度学习模型的产权的方案。

为实现上述目的,本发明提供的一种深度学习模型的水印嵌入方法,包括:

获取用户的水印签名及训练完成的深度学习模型,其中,所述水印签名包括二进制字符串,将所述水印签名输入至所述深度学习模型中进行训练,得到训练值;

计算所述训练值的损失函数值,将所述损失函数值与一个预设的阈值进行比较,根据比较的结果调整所述水印签名,直至所述损失函数值小于所述预设的阈值时,输出调整后的水印签名;

利用所述深度学习模型对所述调整后的水印签名进行编码操作,得到多个子水印签名,将所述子水印签名嵌入在所述深度学习模型的不同层中,并根据所述多个子水印签名生成所述水印签名的水印密钥。

可选地,所述方法还包括:

通过所述水印密钥查询所述水印签名在所述深度学习模型中的编码记录,通过所述编码记录提取出嵌入在所述深度学习模型中不同层的子水印签名集,根据所述提取出的子水印签名集验证待检测用户的水印签名是否正确。

可选地,所述方法还包括:

接收待检测用户的水印签名,计算所述子水印签名集与所述待检测的用户水印签名的比特错误率;

若所述比特错误率为零,判断所述待检测用户的水印签名为真实水印签名,则表示所述待检测用户为所述深度学习模型的产权人;

若所述比特错误率不为零,则判断所述待检测的水印签名为错误水印签名,则表示所述待检测用户不是所述深度学习模型的产权人。

可选地,所述深度学习模型包括:输入层、隐藏层、全连接层以及输出层,及所述将所述水印签名作为训练集输入至所述深度学习模型中进行训练,得到训练值,包括:

通过所述输入层接收所述水印签名,通过所述卷积层对所述水印签名进行卷积操作,得到所述水印签名的特征向量;

利用所述池化层对所述特征向量进行池化操作,通过所述激活层的激活函数对池化后的所述特征向量进行计算,得到所述训练值,并利用全连接层将所述训练值输入至所述输出层中。

可选地,所述激活函数包括:

其中,oj表示激活层第j个神经元的训练值,ij表示激活层第j个神经元的输入值,t表示激活层神经元的总量,e为无限不循环小数。

可选地,所述训练值的损失函数值的计算方法包括:

其中,l(s)表示损失函数值,k表示水印签名的二进制字符串数量,yi表示输入的水印签名第i个二进制字符串,y′i表示输出的水印签名第i个二进制字符串。

可选地,所述比特错误率的计算方法包括:

其中,ber表示比特错误率,n表示水印签名的二进制字符串数量,signature1[i]表示待检测水印签名中第i个字节序列,signature2[i]表示深度学习模型中不同层子水印签名中第i个字节序列。

为了解决上述问题,本发明还提供一种深度学习模型的水印嵌入的装置,所述装置包括:

训练模块,用于获取用户的水印签名及预构建深度学习模型,将所述水印签名作为训练集输入至所述深度学习模型中进行训练,得到训练值;

计算模块,用于计算所述训练值的损失函数值,将所述损失函数值与一个预设的阈值进行比较,根据比较的结果调整所述水印签名,直至所述损失函数值小于所述预设的阈值时,输出调整后的水印签名;

编码及嵌入模块,用于利用所述深度学习模型对所述调整后的水印签名进行编码操作,得到多个子水印签名,将所述子水印签名嵌入在所述深度学习模型的不同层中;

生成模块,用于根据所述多个子水印签名生成所述水印签名的水印密钥;

验证模块:用于通过所述水印密钥查询所述水印签名在所述深度学习模型中的编码记录,通过所述编码记录提取出嵌入在所述深度学习模型中不同层的子水印签名集,及接收待检测的水印签名,计算所述子水印签名集与所述待检测的水印签名的比特错误率,根据所述比特错误率判断所述待检测的水印签名是否为真实水印签名。

为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:

存储器,存储至少一个指令;及

处理器,执行所述存储器中存储的指令以实现上述中任意一项所述的深度学习模型的水印嵌入方法。

为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现上述中任意一项所述的深度学习模型的水印嵌入方法。

本发明实施例使用二进制字符串生成的水印签名,实现了所述水印签名的唯一性,利用深度学习模型对所述水印签名进行训练,可以保证所述水印签名与所述深度学习模型更加匹配,进一步地,对所述水印签名进行编码操作得到多个子水印签名,并将所述多个子水印签名嵌入到所述深度学习模型的不同层中,实现了对所述深度学习模型的产权保护,进一步地,根据所述编码操作生成所述水印密钥可以用于水印签名的验证,从而能够实现深度学习模型的产权人的验证。

附图说明

图1为本发明深度学习模型的水印嵌入方法第一较佳实施例的流程示意图;

图2为本发明深度学习模型的水印嵌入方法第二较佳实施例的流程示意图;

图3为本发明深度学习模型的水印嵌入装置的较佳实施例的功能模块示意图;

图4为本发明实现深度学习模型的水印嵌入方法的电子设备的内部结构示意图;

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供一种深度学习模型的水印嵌入方法。参照图1所示,为本发明一实施例提供的深度学习模型的水印嵌入方法流程示意图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。

在本发明实施例中,所述深度学习模型的水印嵌入方法包括:

s1、获取用户的水印签名及训练完成的深度学习模型,将所述水印签名作为训练集输入至所述深度学习模型中进行训练,得到训练值。

在本发明的至少一个实施例中,所述水印签名包括一组二进制字符串。所述二进制字符串指的是用二进制码来表示字符以及由多个字符构成的字符串,其实质是一个字节序列。较佳地,本发明所述二进制字符串上的每个位数字都是相互独立分布的,用于保障用户信息的唯一性以及安全性。其中,所述二进制字符串的类型包括:bit、blob、binary以及varbinary。

本发明实施方式利用二进制字符串生成的水印签名,可以保证水印签名的唯一性。

较佳地,本发明中所述深度学习模型可以是已经训练好的用于执行图像识别、分类等目的深度神经网络(deepneuralnetworks,dnn)模型。其中,所述述深度学习模型模型包括输入层、隐藏层、全连接层以及输出层。所述输入层用于接收数据;所述隐藏层包括卷积层、池化层以及激活层,用于对所述数据进行训练以及增强模型的表达能力;所述全连接层用于隐藏层和输出层之间的数据传输;所述输出层用于输出训练后的数据。

为了使所述水印签名与所述深度学习模型更加匹配,本发明较佳实施例需要对所述水印签名进行训练。

详细地,本发明较佳实施例中所述将所述水印签名输入至所述深度学习模型中进行训练,包括:

通过所述输入层接收所述水印签名,通过所述卷积层对所述水印签名进行卷积操作,得到所述水印签名的特征向量,利用所述池化层对所述特征向量进行池化操作,通过所述激活层的激活函数对池化后的所述特征向量进行计算,得到所述训练值,并利用全连接层将所述训练值输入至所述输出层中,并输出所述训练值。

本发明实施例中,所述激活函数包括:

其中,oj表示激活层第j个神经元的训练值,ij表示激活层第j个神经元的输入值,t表示激活层神经元的总量,e为无限不循环小数。

s2、计算所述训练值的损失函数值,将所述损失函数值与一个预设的阈值进行比较,根据比较的结果调整所述水印签名,直至所述损失函数值小于所述预设的阈值时,输出调整后的水印签名。

本发明较佳实施中,所述训练值的损失函数值的计算方法包括:

其中,l(s)表示损失函数值,k表示水印签名的二进制字符串数量,yi表示输入的水印签名第i个二进制字符串,y′i表示输出的水印签名第i个二进制字符串。

由于输入的水印签名与深度学习模型会出现契合度不高的情况,本发明实施例通过将计算出所述损失函数值与一个预设的阈值进行对比,根据对比的结果对所述水印签名进行调整,直至所述损失函数值小于预算阈值时,输出调整后的水印签名,较佳地,本发明中所述预设阈值可以设置为0.1。

s3、利用所述深度学习模型对所述调整后的水印签名进行编码操作,得到多个子水印签名,将所述子水印签名嵌入在所述深度学习模型的不同层中,并根据所述编码操作生成所述水印签名的水印密钥。

详细地,本发明实施例中所述利用所述深度学习模型对所述调整后的水印签名进行编码操作,得到多个子水印签名,将所述子水印签名嵌入在所述深度学习模型的不同层中,包括:

根据上述卷积操作,获取所述水印签名在所述卷积层的高斯分布阶值,得到第一子水印签名,将所述第一子水印签名嵌入至所述卷积层中;

根据上述池化操作,获取所述水印签名在所述池化层的维度分布值,得到第二子水印签名,将所述第二子水印签名嵌入至所述池化层中;

根据上述激活层的激活函数的计算,获取所述水印签名在所述激活层的强度参数值,得到第三子水印签名,将所述第三子水印签名签名嵌入至激活层中。

进一步地,本发明实施例根据所述高斯分布阶值、维度分布值以及强度参数值生成所述水印签名的水印密钥。所述水印密钥可以用于在水印提取时获取相应的水印签名信息。

所述水印密钥生成过程如下所示:

t←select_gaussian_classes([1,s])

dkey←subset_training_data(t,{xtrain,ytrain})

am×n←generate_secret_matrix(m,n)

其中,t表示高斯分布阶值,dkey表示维度分布值,am×n表示强度参数值,select_gaussian_classes([1,s])序列表示选取所述水印签名在所述卷积层中最优的高斯分布阶值,s表示高斯分布阶值的最大值;subset_training_data(t,{xtrain,ytrain})序列表示将所述水印签名在所述池化层横坐标和纵坐标的训练集与所述高斯分布阶值进行集合;generate_secret_matrix(m,n)序列表示计算所述水印签名在所述激活层的特征向量,根据所述特征向量生成向量矩阵,m、n表示向量矩阵横向和纵向的强度值。

基于上述的实施方式,本发明将水印签名嵌入到了深度学习模型的不同层中,实现了深度学习模型的产权保护。

进一步地,本发明第二较佳实施例中,在上述的s3之后,还可以包括对深度学习模型的产权人的验证步骤,如图2所示,具体实施步骤包括:

s4、通过所述水印密钥查询所述水印签名在所述深度学习模型中的编码记录,通过所述编码记录提取出嵌入在所述深度学习模型中不同层的子水印签名集,根据所述提取出的子水印签名集验证待检测用户的水印签名是否正确。

本发明的至少一个实施例通过预设的记录系统记录所述深度学习模型所发生的事件记录,其中,所述预设的记录系统为event记录系统,所述event记录系统通过python编程语言进行编译。进一步地,本发明实施例根据所述生成的水印密钥的时间通过所述event记录系统查询所述水印签名在所述深度学习模型中的编码记录,根据所述编码记录提取出所述深度学习模型中不同层的子水印签名,通过所述提取出的子水印签名集验证待检测用户的水印签名是否正确。

详细地,所述提取的具体实施步骤包括:

获取所述水印签名在所述深度学习模型中不同层的编码信息,根据所述编码信息利用所述深度学习模型的累计分布函数(简称pdf)进行水印签名的激活映射,将激活映射后的所述水印签名进行提取,从而得到在所述深度学习模型不同层的子水印签名,得到所述子水印签名集。

s5、接收待检测用户的水印签名,计算所述子水印签名集与所述待检测的用户水印签名的比特错误率,根据所述比特错误率判断所述待检测用户的水印签名是否为真实水印签名。

本发明实施例中,若所述比特错误率为零,判断所述待检测用户的水印签名为真实水印签名,则表示所述待检测用户为所述深度学习模型的产权人;

若所述比特错误率不为零,则判断所述待检测的水印签名为错误水印签名,则表示所述待检测用户不是所述深度学习模型的产权人。

本发明较佳实施例中,所述待检测的水印签名与上述用户的水印签名生成原理相同,即通过二进制字符串进行生成,由于二进制字符串是通过0,1序列进行生成。本发明实施例中所述比特错误率(biterrorratio,ber)是一个研究时间间隔期间由错误比特的数目除以传送的比特的总数,通常以百分比表示。所述比特是信息量单位,也是二进制数字中的位,信息量的度量单位,表示信息量的最小单位。详细地,本发明中所述比特错误率的计算方法包括:

其中,ber表示比特错误率,n表示水印签名的二进制字符串数量,signature1[i]表示待检测水印签名中第i个二进制字符,signature2[i]表示深度学习模型中不同层子水印签名中第i个二进制字符。

基于上述的实施方式,通过计算比特错误率的方法可以识别出待检测水印签名是否正确,从而能够识别出深度学习模型的实际产权人。

如图3所示,是本发明深度学习模型的水印嵌入装置的功能模块图。

本发明所述深度学习模型的水印嵌入装置100可以安装于电子设备中。根据实现的功能,所述深度学习模型的水印嵌入装置可以包括训练模块101、计算模块102、编码及嵌入模块103、生成模块104以及验证模块105。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。

在本实施例中,关于各模块/单元的功能如下:

所述训练模块101、获取用户的水印签名及预构建深度学习模型,将所述水印签名作为训练集输入至所述深度学习模型中进行训练,得到训练值。

在本发明的至少一个实施例中,所述水印签名包括一组二进制字符串。所述二进制字符串指的是用二进制码来表示字符以及由多个字符构成的字符串,其实质是一个字节序列。较佳地,本发明所述二进制字符串上的每个位数字都是相互独立分布的,用于保障用户信息的唯一性以及安全性。其中,所述二进制字符串的类型包括:bit、blob、binary以及varbinary。

本发明实施方式利用二进制字符串生成的水印签名,可以保证水印签名的唯一性。

较佳地,本发明中所述深度学习模型可以是已经训练好的用于执行图像识别、分类等目的深度神经网络(deepneuralnetworks,dnn)模型。其中,所述深度学习模型包括输入层、隐藏层、全连接层以及输出层。所述输入层用于接收数据;所述隐藏层包括卷积层、池化层以及激活层,用于对所述数据进行训练以及增强模型的表达能力;所述全连接层用于隐藏层和输出层之间的数据传输;所述输出层用于输出训练后的数据。

为了使所述水印签名与所述深度学习模型更加匹配,本发明较佳实施例需要对所述水印签名进行训练。

详细地,本发明较佳实施例中所述将所述水印签名输入至所述深度学习模型中进行训练,包括:

通过所述输入层接收所述水印签名,通过所述卷积层对所述水印签名进行卷积操作,得到所述水印签名的特征向量,利用所述池化层对所述特征向量进行池化操作,通过所述激活层的激活函数对池化后的所述特征向量进行计算,得到所述训练值,并利用全连接层将所述训练值输入至所述输出层中,并输出所述训练值。

本发明实施例中,所述激活函数包括:

其中,oj表示激活层第j个神经元的训练值,ij表示激活层第j个神经元的输入值,t表示激活层神经元的总量,e为无限不循环小数。所述计算模块102,用于计算所述训练值的损失函数值,将所述损失函数值与一个预设的阈值进行比较,根据比较的结果调整所述水印签名,直至所述损失函数值小于所述预设的阈值时,输出调整后的水印签名。

所述计算模块102、计算所述训练值的损失函数值,将所述损失函数值与一个预设的阈值进行比较,根据比较的结果调整所述水印签名,直至所述损失函数值小于所述预设的阈值时,输出调整后的水印签名。

本发明较佳实施中,所述训练值的损失函数值的计算方法包括:

其中,l(s)表示损失函数值,k表示水印签名的二进制字符串数量,yi表示输入的水印签名第i个二进制字符串,y′i表示输出的水印签名第i个二进制字符串。

由于输入的水印签名与深度学习模型会出现契合度不高的情况,本发明实施例通过将计算出所述损失函数值与一个预设的阈值进行对比,根据对比的结果对所述水印签名进行调整,直至所述损失函数值小于预算阈值时,输出调整后的水印签名,较佳地,本发明中所述预设阈值可以设置为0.1。

所述编码及嵌入模块103、利用所述深度学习模型对所述调整后的水印签名进行编码操作,得到多个子水印签名,将所述子水印签名嵌入在所述深度学习模型的不同层中。

详细地,本发明实施例中所述利用所述深度学习模型对所述调整后的水印签名进行编码操作,得到多个子水印签名,将所述子水印签名嵌入在所述深度学习模型的不同层中,包括:

根据上述卷积操作,获取所述水印签名在所述卷积层的高斯分布阶值,得到第一子水印签名,将所述第一子水印签名嵌入至所述卷积层中;

根据上述池化操作,获取所述水印签名在所述池化层的维度分布值,得到第二子水印签名,将所述第二子水印签名嵌入至所述池化层中;

根据上述激活层的激活函数的计算,获取所述水印签名在所述激活层的强度参数值,得到第三子水印签名,将所述第三子水印签名签名嵌入至激活层中。

基于上述的实施方式,本发明将水印签名嵌入到了深度学习模型的不同层中,实现了深度学习模型的产权保护。

所述生成模块104、根据所述多个子水印签名生成所述水印签名的水印密钥。

本发明实施例根据所述高斯分布阶值、维度分布值以及强度参数值生成所述水印签名的水印密钥。所述水印密钥可以用于在水印提取时获取相应的水印签名信息。

所述水印密钥生成过程如下所示:

t←select_gaussian_classes([1,s])

dkey←subset_training_data(t,{xtrain,ytrain})

am×n←generate_secret_matrix(m,n)

其中,t表示高斯分布阶值,dkey表示维度分布值,am×n表示强度参数值,select_gaussian_classes([1,s])序列表示选取所述水印签名在所述卷积层中最优的高斯分布阶值,s表示高斯分布阶值的最大值;subset_training_data(t,{xtrain,ytrain})序列表示将所述水印签名在所述池化层横坐标和纵坐标的训练集与所述高斯分布阶值进行集合;generate_secret_matrix(m,n)序列表示计算所述水印签名在所述激活层的特征向量,根据所述特征向量生成向量矩阵,m、n表示向量矩阵横向和纵向的强度值。

进一步地,本发明实施例中,所述深度学习模型的水印嵌入装置还可以包括验证模块105:

所述验证模块105、通过所述水印密钥查询所述水印签名在所述深度学习模型中的编码记录,通过所述编码记录提取出嵌入在所述深度学习模型中不同层的子水印签名集,及接收待检测的水印签名,计算所述子水印签名集与所述待检测的水印签名的比特错误率,根据所述比特错误率判断所述待检测的水印签名是否为真实水印签名。

本发明的至少一个实施例通过预设的记录系统记录所述深度学习模型所发生的事件记录,其中,所述预设的记录系统为event记录系统,所述event记录系统通过python编程语言进行编译。进一步地,本发明实施例根据所述生成的水印密钥的时间通过所述event记录系统查询所述水印签名在所述深度学习模型中的编码记录,根据所述编码记录提取出所述深度学习模型中不同层的子水印签名,通过所述提取出的子水印签名集验证待检测用户的水印签名是否正确。

详细地,所述提取的具体实施步骤包括:

获取所述水印签名在所述深度学习模型中不同层的编码信息,根据所述编码信息利用所述深度学习模型的累计分布函数(简称pdf)进行水印签名的激活映射,将激活映射后的所述水印签名进行提取,从而得到在所述深度学习模型不同层的子水印签名,得到所述子水印签名集。

本发明实施例中,若所述比特错误率为零,判断所述待检测用户的水印签名为真实水印签名,则表示所述待检测用户为所述深度学习模型的产权人;若所述比特错误率不为零,则判断所述待检测的水印签名为错误水印签名,则表示所述待检测用户不是所述深度学习模型的产权人。

本发明较佳实施例中,所述待检测的水印签名与上述用户的水印签名生成原理相同,即通过二进制字符串进行生成,由于二进制字符串是通过0,1序列进行生成。本发明实施例中所述比特错误率(biterrorratio,ber)是一个研究时间间隔期间由错误比特的数目除以传送的比特的总数,通常以百分比表示。所述比特是信息量单位,也是二进制数字中的位,信息量的度量单位,表示信息量的最小单位。详细地,本发明中所述比特错误率的计算方法包括:

其中,ber表示比特错误率,n表示水印签名的二进制字符串数量,signature1[i]表示待检测水印签名中第i个二进制字符,signature2[i]表示深度学习模型中不同层子水印签名中第i个二进制字符。

基于上述的实施方式,通过计算比特错误率的方法可以识别出待检测水印签名是否正确,从而能够识别出深度学习模型的实际产权人。

如图4所示,是本发明实现深度学习模型的水印嵌入方法的电子设备的结构示意图。

所述电子设备1可以包括处理器10、存储器11和总线,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如深度学习模型的水印嵌入程序12。

其中,所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:sd或dx存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备1的内部存储单元,例如该电子设备1的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式移动硬盘、智能存储卡(smartmediacard,smc)、安全数字(securedigital,sd)卡、闪存卡(flashcard)等。进一步地,所述存储器11还可以既包括电子设备1的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备1的应用软件及各类数据,例如资源调度程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。

所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(centralprocessingunit,cpu)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备的控制核心(controlunit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如执行深度学习模型的水印嵌入等),以及调用存储在所述存储器11内的数据,以执行电子设备1的各种功能和处理数据。

所述总线可以是外设部件互连标准(peripheralcomponentinterconnect,简称pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,简称eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。

图4仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图4示出的结构并不构成对所述电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。

例如,尽管未示出,所述电子设备1还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备1还可以包括多种传感器、蓝牙模块、wi-fi模块等,在此不再赘述。

进一步地,所述电子设备1还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如wi-fi接口、蓝牙接口等),通常用于在该电子设备1与其他电子设备之间建立通信连接。

可选地,该电子设备1还可以包括用户接口,用户接口可以是显示器(display)、输入单元(比如键盘(keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organiclight-emittingdiode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。

应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。

所述电子设备1中的所述存储器11存储的深度学习模型的水印嵌入程序12是多个指令的组合,在所述处理器10中运行时,可以实现:

获取用户的水印签名及训练完成的深度学习模型,其中,所述水印签名包括二进制字符串,将所述水印签名输入至所述深度学习模型中进行训练,得到训练值;

计算所述训练值的损失函数值,将所述损失函数值与一个预设的阈值进行比较,根据比较的结果调整所述水印签名,直至所述损失函数值小于所述预设的阈值时,输出调整后的水印签名;

利用所述深度学习模型对所述调整后的水印签名进行编码操作,得到多个子水印签名,将所述子水印签名嵌入在所述深度学习模型的不同层中,并根据所述多个子水印签名生成所述水印签名的水印密钥。

具体地,所述处理器10对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。

进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)。

在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。

因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。

此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。

最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1