1.一种基于联邦学习的联邦预测方法,其特征是,包括步骤如下:
步骤1、服务器初始化神经网络模型的参数,并发送给所有的参与方;所有参与方将初始化神经网络模型的参数作为本地神经网络模型的第0轮模型参数;
步骤2、满足条件的参与方向服务器提出参与第t轮训练的请求,服务器从中选择cK个参与方作为训练参与方参与到第t轮训练中;
步骤3、第t轮训练的每个训练参与方利用本地训练数据集Dk对本地神经网络模型进行训练,在训练过程中运用随机梯度下降法并通过梯度单位向量去更新本地神经网络模型的第t-1轮模型参数 得到本地神经网络模型的第t轮上传模型参数步骤4、第t轮训练的所有训练参与方将其本地神经网络模型的第t轮上传模型参数上传给服务器;
步骤5、服务器基于k-means聚类算法对第t轮上传模型参数 进行聚合,得到离散簇的第t轮离散簇最终模型参数 和每个聚类簇的第t轮聚类簇最终模型参数步骤6、服务器将每个聚类簇的第t轮聚类簇最终模型参数 分别发送给相应聚类簇的第t轮聚类点模型参数所对应的训练参与方,并将离散簇的第t轮离散簇最终模型参数发送给离散簇的第t轮离散点模型参数所对应的训练参与方和未参与第t轮的其他参与方;
步骤7、判断所有参与方的本地神经网络模型是否已经收敛或达到预定的训练次数:如果是,则转至步骤8;否则,令训练轮数t加1,并返回步骤2;
步骤8、各参与方将本地测试数据送入到本地神经网络模型中,利用本地神经网络模型完成对本地测试数据的预测;
上述k∈cK,cK为训练参与方的个数;t为训练轮数。
2.根据权利要求1所述的一种基于联邦学习的联邦预测方法,其特征是,步骤3的具体过程如下:步骤3.1、训练参与方k利用本地训练数据集Dk对当前本地神经网络模型进行训练,在训练过程中运用随机梯度下降法并通过梯度单位向量去更新本地神经网络模型的第t-1轮模型参数 得到本地神经网络模型的第t轮第一模型参数步骤3.2、训练参与方k先从本地训练数据集Dk选出一部分数据形成部分本地训练数据集Bk,再利用部分本地训练数据集Bk对当前本地神经网络模型进行训练,在训练过程中运用随机梯度下降法并通过梯度单位向量去更新本地神经网络模型的第t轮第一模型参数得到本地神经网络模型的第t轮第二模型参数步骤3.3、训练参与方k利用本地训练数据集Dk对当前本地神经网络模型进行训练,在训练过程中运用随机梯度下降法并通过梯度单位向量去更新本地神经网络模型的第t轮第二模型参数 得到本地神经网络模型的第t轮上传模型参数上述k∈cK,cK为训练参与方的个数;t为训练轮数。
3.根据权利要求2所述的一种基于联邦学习的联邦预测方法,其特征是,步骤3.1中,利用本地训练数据集Dk对本地神经网络模型进行一次训练;步骤3.2中,利用本地训练数据集Bk对本地神经网络模型进行多次训练;步骤3.3中,利用本地训练数据集Dk对本地神经网络模型进行一次训练;
上述k∈cK,cK为训练参与方的个数。
4.根据权利要求1所述的一种基于联邦学习的联邦预测方法,其特征是,步骤5的具体过程如下:步骤5.1、服务器利用k-means聚类算法将所有的第t轮上传模型参数 聚类为M个聚类簇,并计算每个聚类簇的簇心坐标;
步骤5.2、服务器从每个聚类簇的第t轮上传模型参数 中挑选出与其聚类簇的簇心坐标之间的距离在预设范围之外的第t轮上传模型参数 作为第t轮离散点模型参数,并将所有聚类簇所选出的第t轮离散点模型参数形成一个新的离散簇;此时,每个聚类簇剩下的第t轮上传模型参数 作为第t轮聚类点模型参数;
步骤5.3、服务器从离散簇的所有第t轮离散点模型参数中选出一定数量的第t轮离散点模型参数进行平均,得到离散簇的第t轮离散簇中间模型参数 同时,服务器从每个聚类簇的所有第t轮聚类点模型参数中第t轮聚类点模型参数进行平均,得到每个聚类簇的第t轮聚类簇中间模型参数步骤5.4、服务器计算离散簇的第t轮离散簇最终模型参数 和每个聚类簇的第t轮聚类簇最终模型参数 其中:上述α为当前聚类簇i的权重,β为其他聚类簇j的权重,γ为离散簇的权重,α+β+γ=1且α>β>γ; 为当前聚类簇i的簇心坐标与其他聚类簇j的簇心坐标的欧式距离;i∈M,j∈M,j≠i,M为聚类簇的个数;k∈cK,cK为训练参与方的个数;t为训练轮数。
5.根据权利要求1所述的一种基于联邦学习的联邦预测方法,其特征是,步骤7中,参与方的本地神经网络模型收敛是指本地神经网络模型的损失函数值不再变化或变化量小于设定的变化阈值。