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

一种基于改进PATE的图像识别方法和系统与流程

2022-02-24 16:41:51 来源:中国专利 TAG:

一种基于改进pate的图像识别方法和系统
技术领域
1.本发明涉及数据隐私技术领域,特别是涉及一种基于改进pate的图像识别方法和系统。


背景技术:

2.图像识别,是指对图像数据分析,识别出可能存在于图像中的一个或多个特征,将其预测为对应的分类;然而没有隐私保护的图像识别的模型容易遭到攻击,导致图像的隐私信息泄露;对此,有不少研究者提出了解决方案,其中papernot等人提出了教师模型隐私聚合算法(private aggregation of teacher ensembles,pate)。先从不相交的子集中训练出多个教师模型,然后在一个公共数据集上进行噪声预测;最后使用标记过的公共数据集训练一个学生模型;在pate中,通过训练出学生模型来固定隐私预算。
3.但实验表明,在pate算法中,为了使模型具有鲁棒性及泛化效果通常需要数百个教师模型,而由于训练数百个教师模型需要将训练集拆分为数百个不相交的样本,因此在传统的pate算法中,存在一个难以兼顾的问题,即当教师模型数量足以对注入的噪声具有鲁棒性时,由于训练数据有限,单个教师模型的预测精度较差;而如果希望每个教师模型的预测精度都高,那么教师模型的数量将很少,聚合的输出就容易受到注入噪声的影响。
4.因此,针对上述利用pate进行图像识别时整体鲁棒性和单模型精度二者难以兼顾的问题,本发明提出了一种基于改进pate的图像识别方法和系统来进行图像分类识别。


技术实现要素:

5.本发明的目的是提供一种基于改进pate的图像识别方法和系统,解决使用传统的pate进行图像识别的过程中,鲁棒性和模型精度难以兼顾的问题。
6.为实现上述目的,本发明提供了一种基于改进pate的图像识别方法,包括以下步骤:
7.基于联邦学习算法,各客户端采用各自对应的本地图像数据集对各自对应的教师模型进行参数训练,中央服务器在所述训练的每次迭代中对各教师模型的所述参数进行聚合更新;
8.获取无标签图像数据集;
9.利用训练好的各教师模型,结合聚合机制,对所述无标签图像数据集进行预测,得到带标签图像数据集;
10.利用所述带标签训练图像数据集训练学生模型;
11.利用所述学生模型对待识别图像数据进行图像识别。
12.可选的,基于联邦学习算法,各客户端采用各自对应的本地图像数据集对各自对应的教师模型进行参数训练,中央服务器在所述训练的每次迭代中对各教师模型的所述参数进行聚合更新,具体包括:
13.初始化教师模型聚合参数,并将初始化后的所述教师模型聚合参数传递给各个客
户端;
14.根据对应的本地图像数据集和所述教师模型聚合参数在客户端进行训练;
15.将各客户端训练后的本地教师模型的参数进行聚合,更新所述教师模型聚合参数;
16.判断所述教师模型聚合参数是否最优,若否,则将更新后的所述教师模型聚合参数发送给各客户端,根据所述教师模型聚合参数继续在各客户端上进行训练;若是,则根据对应的本地图像数据集和最优的教师模型聚合参数在各客户端上进行最后一轮训练,得到训练好的各教师模型。
17.可选的,在对各客户端本地教师模型的参数进行聚合时,采用高斯噪声进行扰动。
18.可选的,所述利用训练好的各教师模型,结合聚合机制,对所述无标签图像数据集进行预测具体包括:
19.利用训练好的各教师模型对所述无标签图像数据集进行预测,得到各无标签图像数据集的预测标签;
20.对预测标签进行统计,选取票数最高的预测标签作为无标签训练图像数据的标签,得到带标签训练图像数据。
21.可选的,所述教师模型和学生模型均为机器学习模型或深度学习模型。
22.可选的,所述教师模型和学生模型均为神经网络模型。
23.可选的,所述神经网络模型包括两个卷积层、两个池化层和一个全连接层。
24.另一方面,对应于上述的一种基于改进pate的图像识别方法,本发明还提供了一种基于改进pate的图像识别系统,包括:
25.教师模型训练模块,用于基于联邦学习算法,各客户端采用各自对应的本地图像数据集对各自对应的教师模型进行参数训练,中央服务器在所述训练的每次迭代中对各教师模型的所述参数进行聚合更新;
26.图像数据集获取模块,用于获取无标签图像数据集;
27.知识迁移模块,用于利用训练好的各教师模型,结合聚合机制,对所述无标签图像数据集进行预测,得到带标签图像数据集;
28.学生模型训练模块,用于利用所述带标签训练图像数据集训练学生模型;
29.图像识别模块,用于利用所述学生模型对待识别图像数据进行图像识别。
30.根据本发明提供的具体发明内容,本发明公开了以下技术效果:
31.本发明提供的一种基于改进pate的图像识别方法和系统,采用联邦学习算法训练得到多个用于图像识别的教师模型;利用训练好的各教师模型,结合聚合机制,对无标签图像数据集进行打上标签,得到带标签图像数据集;然后利用带标签训练图像数据集训练学生模型;得到可以用于图像识别的学生模型,利用学生模型对待识别图像数据进行识别。本发明利用联邦学习使用各客户端本地的图像数据集联合训练教师模型,在这过程中,虽然每个客户端的训练数据较少,利用联邦学习对模型参数共享的思想,其他客户端基于共享参数训练模型,这样既保护了客户端的数据隐私,也使得教师模型性能更优,解决了传统的pate进行图像识别的过程中,训练样本有限且教师模型数量足够多时引起单个教师模型预测精度较差的问题,最终实现由教师模型向学生模型知识迁移后,能够提高学生模型的预测精度。
附图说明
32.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
33.图1为本发明实施例1提供的一种基于改进pate的图像识别方法的流程图;
34.图2为本发明实施例1提供的方法步骤s1的流程图;
35.图3为本发明实施例1提供的图像识别方法的总体框架图;
36.图4为本发明实施例1提供的图像识别方法的带差分隐私的联邦学习算法框架图。
具体实施方式
37.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
38.本发明的目的是提供一种基于改进pate的图像识别方法和系统,解决使用传统的pate进行图像识别的过程中,鲁棒性和模型精度难以兼顾的问题。
39.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
40.实施例1:
41.如图1-4所示,本发明提供了一种基于改进pate的图像识别方法,包括以下步骤:
42.s1、基于联邦学习算法,各客户端采用各自对应的本地图像数据集对各自对应的教师模型进行参数训练,中央服务器在训练的每次迭代中对各教师模型的参数进行聚合;
43.在本实施例中,步骤s1具体包括:
44.本实施例使用的mnist数据集中一共有70000条数据,其中有60000条训练数据,10000条测试数据,此处将mnist中60000条训练数据划分为250个不相交的数据子集,以此模拟250个客户端的本地数据集,利用联邦学习训练250个教师模型。
45.s11、初始化教师模型聚合参数,并将初始化后的所述教师模型聚合参数传递给各个客户端;中央服务器先维护一个教师模型g,初始参数为w0,并将w0发送给m个客户端。假设要训练m个教师模型,即客户端数量为m,z为客户端集合,设e为每轮中客户端在本地数据集上训练的次数,b为客户端更新时使用的mini-batch大小,每个客户端有nk个数据点。
46.s12、根据对应的本地图像数据集和所述教师模型聚合参数在客户端进行训练;每个客户端k,k∈z,接收初始参数w
t
,基于局部目标函数fk的最小化,使用带有局部学习的小批量随机梯度下降(mini-batchsgd)对其本地数据的小批量b执行训练步骤,本地学习率为η(由初始化得出)并且epochs的数量为e(由初始化得出)。客户端通过最小化分类的分类交叉熵损失来优化模型;局部目标函数fk为:
[0047][0048]
其中,nk表示客户端k的数据量,l(xi,yi,w
t
)表示在给定模型参数w
t
上对样本(xi,
yi)上进行预测所得到的损失结果。
[0049]
s13、将各客户端训练后的本地教师模型的参数进行聚合,更新所述教师模型聚合参数;m个客户端分别将他们的模型更新为优化后的局部模型与中心模型之间的差异称为客户端k的更新所有客户端将发送回服务器;
[0050]
服务器接收所有参与客户端的更新,为了防止梯度爆炸,本文使用了梯度裁剪方法,裁剪后的更新为
[0051][0052]
其中,s为敏感度大小,在每轮中,计算所有未裁剪的更新的中位数范数作为s的值,高斯机制将高斯噪声(按敏感度s调整)添加到裁剪后更新的总和中。将高斯机制的输出除以客户端数m,得到所有客户端更新的真实平均值的近似值,防止泄露有关客户端的重要信息。根据等式(3)计算一个平均模型参数w
t 1
来更新全局模型g的模型:
[0053][0054]
其中,表示添加的高斯噪声,w
t 1
表示第t 1轮的更新参数,是客户端k在第t 1轮发送给服务器的本地教师模型参数;对于一个有nk个本地数据点的参与方,每一轮进行的本地更新次数可以表示为
[0055]
s14、判断所述教师模型聚合参数是否最优,若否,则将更新后的所述教师模型聚合参数发送给各客户端,执行步骤s12根据对应的本地图像数据集和所述教师模型聚合参数在客户端进行训练;若是,则执行s15;
[0056]
s15、根据对应的本地图像数据集和最优的教师模型聚合参数在各客户端上进行最后一轮训练,得到训练好的各教师模型。
[0057]
为了减小被攻击的风险,在对各客户端本地教师模型的参数进行聚合时,采用高斯噪声进行扰动。
[0058]
s2、获取无标签图像数据集;将mnist中10000测试数据中的5000条数据用于训练学生模型,另外5000条数据用于测试学生模型的预测精度。
[0059]
s3、利用训练好的各教师模型,结合聚合机制,对所述无标签图像数据集进行预测,得到带标签图像数据集;
[0060]
步骤s3具体包括:
[0061]
s31、利用训练好的各教师模型对所述无标签图像数据集进行预测,得到各无标签图像数据集的预测标签;选择mnist测试数据集中5000条特征数据输入到250个教师模型中进行预测;
[0062]
给定样本x和类别1到m,设fj(x)∈[m]表示第j个教师对输入x的预测结果,ni(x)是
类别i的投票数,有ni(x)=|{j:fj(x)=i,j∈[1,m]}|。则聚合机制得输出为:
[0063][0064]
f(x)表示票数最高的标签,是ni(x)最大时i的值;假设当i=2时,ni(x)最大,则f(x)=2。
[0065]
s32、对预测标签进行统计,选取票数最高的预测标签作为无标签训练图像数据的标签,得到带标签训练图像数据;在250个教师模型给出的预测标签中选取票数最高的预测标签,给这5000条无标签的图像数据打上各自的标签。
[0066]
s4、利用所述带标签训练图像数据集训练学生模型;利用s3中得到的5000条带标签的图像数据训练学生模型,并利用剩余5000条测试数据测试学生模型的预测精度。
[0067]
s5、利用所述学生模型对待识别图像数据进行图像识别。
[0068]
在本实施例中,所述教师模型和学生模型均为卷积神经网络模型,包括两个卷积层、两个池化层和一个全连接层。本实施例中在训练教师模型和学生模型时,也可以将卷积神经网络模型替换为其它机器学习或深度学习的模型。
[0069]
本实施例中提出的一种基于改进pate的图像识别方法,采用联邦学习算法在训练得到多个用于进行图像识别的教师模型;利用训练好的各教师模型,结合聚合机制,对无标签图像数据集进行打上标签,得到带标签图像数据集;然后利用带标签训练图像数据集训练学生模型;得到可以用于图像识别的学生模型,利用学生模型对待识别图像数据进行识别;解决了传统的pate进行图像识别的过程中,训练样本有限且教师模型数量足够多时引起单个教师模型预测精度较差的问题,最终实现由教师模型向学生模型知识迁移后,能够提高学生模型的预测精度;另外,在基于联邦学习训练教师模型时,已加入了差分隐私进行扰动,训练出的教师模型已具有隐私保护的效果,如果在聚合过程中再次加入差分隐私,则会降低学生模型的预测精度,因此在对训练结果进行投票的过程中直接进行聚合而不再加入差分隐私。
[0070]
实施例2:
[0071]
对应于实施例1的一种基于改进pate的图像识别方法,本发明还提供了一种基于改进pate的图像识别系统,包括:
[0072]
教师模型训练模块,用于基于联邦学习算法,各客户端采用各自对应的本地图像数据集对各自对应的教师模型进行参数训练,中央服务器在所述训练的每次迭代中对各教师模型的所述参数进行聚合更新;
[0073]
图像数据集获取模块,用于获取无标签图像数据集;
[0074]
知识迁移模块,用于利用训练好的各教师模型,结合聚合机制,对所述无标签图像数据集进行预测,得到带标签图像数据集;
[0075]
学生模型训练模块,用于利用所述带标签训练图像数据集训练学生模型;
[0076]
图像识别模块,用于利用所述学生模型对待识别图像数据进行图像识别。
[0077]
技术中的程序部分可以被认为是以可执行的代码和/或相关数据的形式而存在的“产品”或“制品”,通过计算机可读的介质所参与或实现的。有形的、永久的储存介质可以包括任何计算机、处理器、或类似设备或相关的模块所用到的内存或存储器。例如,各种半导体存储器、磁带驱动器、磁盘驱动器或者类似任何能够为软件提供存储功能的设备。
[0078]
所有软件或其中的一部分有时可能会通过网络进行通信,如互联网或其他通信网络。此类通信可以将软件从一个计算机设备或处理器加载到另一个。例如:从视频目标检测设备的一个服务器或主机计算机加载至一个计算机环境的硬件平台,或其他实现系统的计算机环境,或与提供目标检测所需要的信息相关的类似功能的系统。因此,另一种能够传递软件元素的介质也可以被用作局部设备之间的物理连接,例如光波、电波、电磁波等,通过电缆、光缆或者空气等实现传播。用来载波的物理介质如电缆、无线连接或光缆等类似设备,也可以被认为是承载软件的介质。在这里的用法除非限制了有形的“储存”介质,其他表示计算机或机器“可读介质”的术语都表示在处理器执行任何指令的过程中参与的介质。
[0079]
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;本领域的技术人员应该理解,上述本发明的各模块或各步骤可以用通用的计算机装置来实现,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。本发明不限制于任何特定的硬件和软件的结合。
[0080]
同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
再多了解一些

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

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

相关文献