本发明涉及联邦学习,具体涉及一种基于双端安全防护的联邦学习方法及系统。
背景技术:
1、联邦学习作为一种前景广阔的分布式机器学习范式,可用于在服务器上基于多个客户端私有的分布数据集协同训练深度学习模型。与传统的分布式学习方法相比,联邦学习有以下几点优势:a)可以利用以往无法获取的海量设备上私有的数据和算力资源;b)客户端的私有数据集不会被共享和上传,因此可以保护数据隐私并节省通信带宽;c)可以众包潜在的无限设备资源。因此,联邦学习有望成为泛在智联的主要基础。
2、然而,联邦学习中训练数据的“可用但不可见”特性导致了安全风险。联邦学习任务通常要依赖大量客户端的支持,而一些不可靠的客户端尤其是众包而来的客户端,可能在联邦训练前被一些攻击者操纵或劫持,面临针对训练数据的数据中毒攻击。更具挑战的是由于数据隐私保护原则,服务器无法直接审查各客户端的私有数据集,而训练数据质量将决定模型训练质量。因此,对于服务器“不可见”的局部数据以及由此训练而来的局部模型的安全性无法保障,会对联邦学习主任务造成不良影响。
3、联邦学习作为一种分布式机器学习范式,保障其安全性与鲁棒性十分必要,而针对局部训练数据及训练过程的恶意攻击会间接损害联邦学习主任务的全局质量。但是,联邦学习本身并未提供相应的安全防护机制。
技术实现思路
1、本发明的目的在于提供一种基于双端安全防护的联邦学习方法及系统,以解决上述背景技术中存在的至少一项技术问题。
2、为了实现上述目的,本发明采取了如下技术方案:
3、第一方面,本发明提供一种基于双端安全防护的联邦学习方法,包括:
4、获取各个客户端训练完成的局部模型和局部数据描述;其中,利用数据筛选器对各客户端局部数据进行筛选被检测为正常的数据作为局部模型的训练数据;
5、服务器对获取的局部模型进行特征提取,保存客户端历史信息,得到各个客户端各自对应的局部历史模型信息集;
6、利用基于概率分布的模型筛选器对各个客户端局部模型差异进行衡量,计算各个客户端模型分布间的差异,根据各个客户端模型分布间的差异程度计算出各个客户端对应的局部模型异常程度;
7、根据局部数据描述以及各个客户端对应的局部模型异常程度,得到各个客户端的可信程度,根据可信程度得到联邦聚合时各局部模型的聚合权值。
8、进一步的,服务器利用针对数据和标签双重筛选的分类自编码器进行数据筛选器的训练,训练数据来自于服务器的主任务测试数据集;该分类自编码器用潜在表示z额外训练一个辅助分类器,用recae表示重构误差,lcae表示辅助分类器在表示层z上的损失;
9、最小化训练数据集上的组合损失为:
10、
11、在客户端,给定一个局部数据流,对于每个数据样本,分类自编码器使用重建误差和分类误差的组合损失作为异常数据的检测标准,同时检测特征空间和标签空间的偏差。
12、进一步的,利用基于概率分布的模型筛选器在服务器中将各个客户端的历史模型信息集拟合为特定的概率分布得到各客户端局部模型分布,结合数据筛选器上传的各客户端局部数据描述利用基于概率分布的方法计算各个客户端模型分布间的差异,根据所述差异程度计算出各个客户端对应的局部模型异常程度。
13、进一步的,服务器为每个客户端维护一个历史模型集,每轮次联邦聚合后将局部模型进行特征提取后存至对应客户端模型集中;经过一定训练轮次后,模型筛选器将每个客户端历史模型集中的特征分布拟合为某一特定概率分布;模型筛选器结合数据筛选器上传的各客户端局部数据描述中的信息设定基准客户端,利用基于概率分布的方法衡量基准客户端与其他客户端的模型分布差异;模型筛选器根据模型分布差异程度与对应局部数据描述指导后续联邦聚合的局部模型选择,优先聚合与基准差异度低的客户端局部模型,适当忽略与基准差异度高的客户端局部模型。
14、进一步的,模型筛选器将每个客户端的历史模型信息集中的特征信息利用最大似然估计拟合为高斯分布,并利用kl散度来度量每个客户端模型集分布间的差异。
15、进一步的,对局部模型进行特征提取,包括:θt,i代表第t训练轮次中客户端编号i所上传的原始高维局部模型,代表第t训练轮次中客户端编号i所上传的原始高维局部模型经降维提取特征后的低维模型
16、第二方面,本发明提供一种基于双端安全防护的联邦学习系统,包括:
17、获取模块,用于获取个客户端训练完成的局部模型和局部数据描述;其中,利用数据筛选器对局部数据进行筛选被检测为正常的数据作为局部模型的训练数据:
18、提取模块,用于对获取的局部模型进行特征提取,保存客户端历史信息,得到各个客户端各自对应的局部历史模型信息集;
19、筛选模块,用于利用基于概率分布的模型筛选器对各个客户端局部模型差异进行衡量,计算各个客户端模型分布间的差异,根据各个客户端模型分布间的差异程度计算出各个客户端对应的局部模型异常程度;
20、计算模块,用于根据局部数据描述以及各个客户端对应的局部模型异常程度,得到各个客户端的可信程度,根据可信程度得到联邦聚合时各局部模型的聚合权值。
21、第三方面,本发明提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质用于存储计算机指令,所述计算机指令被处理器执行时,实现如第一方面所述的联邦学习双端安全防护方法。
22、第四方面,本发明提供一种计算机设备,包括存储器和处理器,所述处理器和所述存储器相互通信,所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令执行如第一方面所述的联邦学习双端安全防护方法。
23、第五方面,本发明提供一种电子设备,包括:处理器、存储器以及计算机程序;其中,处理器与存储器连接,计算机程序被存储在存储器中,当电子设备运行时,所述处理器执行所述存储器存储的计算机程序,以使电子设备执行实现如第一方面所述的联邦学习双端安全防护方法的指令。
24、本发明有益效果:在客户端对局部数据集进行离线的自动审查,在服务器端对收集到的局部模型进行审查,在不违反联邦学习隐私保护原则的前提下能够对数据、模型安全进行全面防护,提高了联邦学习系统的鲁棒性与可信度。
25、本发明附加方面的优点,将在下述的描述部分中更加明显的给出,或通过本发明的实践了解到。
1.一种基于双端安全防护的联邦学习方法,其特征在于,包括:
2.根据权利要求1所述的基于双端安全防护的联邦学习方法,其特征在于,利用针对数据和标签双重筛选的分类自编码器进行数据筛选器的训练;该分类自编码器用潜在表示z额外训练一个辅助分类器,用recae表示重构误差,lcae表示辅助分类器在表示层z上的损失;
3.根据权利要求1所述的基于双端安全防护的联邦学习方法,其特征在于,利用基于概率分布的模型筛选器在服务器中将各个客户端的历史模型信息集拟合为特定的概率分布得到各客户端局部模型分布,结合数据筛选器上传的各客户端局部数据描述利用基于概率分布的方法计算各个客户端模型分布间的差异,根据所述差异程度计算出各个客户端对应的局部模型异常程度。
4.根据权利要求3所述的基于双端安全防护的联邦学习方法,其特征在于,服务器为每个客户端维护一个历史模型集,每轮次联邦聚合后将局部模型进行特征提取后存至对应客户端模型集中;经过一定训练轮次后,模型筛选器将每个客户端历史模型集中的特征分布拟合为某一特定概率分布;模型筛选器结合数据筛选器上传的各客户端局部数据描述中的信息设定基准客户端,利用基于概率分布的方法衡量基准客户端与其他客户端的模型分布差异;模型筛选器根据模型分布差异程度指导后续联邦聚合的局部模型选择,优先聚合与基准差异度低的客户端局部模型,适当忽略与基准差异度高的客户端局部模型。
5.根据权利要求1所述的基于双端安全防护的联邦学习方法,其特征在于,模型筛选器将每个客户端的历史模型信息集中的特征信息利用最大似然估计拟合为高斯分布,并利用kl散度来度量每个客户端模型集分布间的差异。
6.根据权利要求5所述的基于双端安全防护的联邦学习方法,其特征在于,对局部模型进行特征提取,包括:θt,i代表第t训练轮次中客户端编号i所上传的原始高维局部模型,代表第t训练轮次中客户端编号i所上传的原始高维局部模型降维后的低维模型,以pca降维方法将局部模型降至一维:
7.一种基于双端安全防护的联邦学习系统,其特征在于,包括:
8.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质用于存储计算机指令,所述计算机指令被处理器执行时,实现如权利要求1-6任一项所述的基于双端安全防护的联邦学习方法。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述处理器和所述存储器相互通信,所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令执行如权利要求1-6任一项所述的基于双端安全防护的联邦学习方法。
10.一种电子设备,其特征在于,包括:处理器、存储器以及计算机程序;其中,处理器与存储器连接,计算机程序被存储在存储器中,当电子设备运行时,所述处理器执行所述存储器存储的计算机程序,以使电子设备执行实现如权利要求1-6任一项所述的基于双端安全防护的联邦学习方法的指令。