1.一种联邦学习中数据操纵攻击的安全防御方法,其特征在于,包括以下几个步骤:
步骤1,中心服务器接收用户上传的本地模型参数,计算每个用户上传的本轮本地模型参数的相似程度及每个用户对应的融合系数;所述本地模型参数为用户采用私有训练数据训练一轮后的本地模型参数;
步骤2,中心服务器接收到本地用户一个训练周期的本地模型参数后,根据融合系数计算每个用户的本地模型参数的加权平均值得到全局模型参数,所述一个训练周期为预设的本地模型参数更新轮数;
步骤3,将全局模型参数下发至对应的用户,用户收到全局模型参数后更新本地模型参数。
2.根据权利要求1所述的联邦学习中数据操纵攻击的安全防御方法,其特征在于:所述步骤1中,中心服务器接收用户i上传的本地模型参数
3.根据权利要求1所述的联邦学习中数据操纵攻击的安全防御方法,其特征在于,所述步骤1具体包括:
步骤101,接收所述正常用户和恶意用户上传的本地模型参数
步骤102,选择每一个用户本地模型参数
步骤103,计算步骤102所得的所有用户的部分本地模型参数
步骤104,计算每一个用户的部分本地模型参数
步骤105,利用均值漂移算法计算步骤104所得的相似度的中心点
步骤106,计算步骤104所得的每个用户对应的相似度
步骤107,利用步骤106所得的聚集度
4.根据权利要求3所述的联邦学习中数据操纵攻击的安全防御方法,其特征在于,所述步骤2和步骤3分别为:
步骤2,判断t是否为τ的倍数,若是,转到步骤3;否则,转到步骤1;所述t为用户实际训练轮数,τ为一个训练周期内包含的本地模型参数训练轮数;;
步骤3,计算全局模型参数
5.根据权利要求2所述的联邦学习中数据操纵攻击的安全防御方法,其特征在于,在步骤1中,每一轮训练之后本地模型参数计算公式为
6.根据权利要求4所述的联邦学习中数据操纵攻击的安全防御方法,其特征在于,在步骤104中,采用余弦相似度计算部分本地模型参数
所述向量
7.根据权利要求6所述的联邦学习中数据操纵攻击的安全防御方法,其特征在于,在步骤105中,所述均值漂移算法的输入数据为步骤104所得的每一个用户的相似度
步骤1051,对于给定的每一个中心点ci,搜索其在指定半径r范围内的邻近点集合p,其中,半径r通常设置为一个较小的数值;
步骤1052,计算步骤1051所得的邻近点集合p的平均值
步骤1053,计算中心点ci与平均值
步骤1054,更新中心点
步骤1055,若步骤1053所得的差值小于设定的阈值,则算法终止,返回中心点ci;否则,转到步骤1051;
最终,以所得的中心点ci的众数作为最终的相似度的中心点
8.根据权利要求1所述的联邦学习中数据操纵攻击的安全防御方法,其特征在于,所述用户包括正常用户和恶意用户,所述正常用户持有若干正常训练数据用于训练正常的本地模型,所述恶意用户持有若干正常训练数据以及若干用于数据操纵攻击的恶意训练数据用于训练恶意的本地模型。