1.一种基于动态层级调控的个性化联邦学习方法,其特征在于,包括:
S1:初始化服务器端全局模型参数,将初始化的全局模型参数下发至多个客户端的本地模型,得到相应的本地模型;
S2:使用每个客户端的本地数据训练相应的本地模型,更新本地模型参数;
S3:更新的本地模型参数上传至服务器端后,经加权平均处理,得到聚合后的本地模型参数;根据预设最小个性化率、预设最大个性化率、总迭代轮次和当前轮次,计算当前个性化率;聚合后的本地模型参数利用当前个性化率进行划分,得到当前全局模型参数;
S4:将S3中上传至服务器端的客户端中,最大的本地数据样本数量,记为目标数量;检测参与当前训练的客户端总数,若不存在新客户端,则执行S5,若存在新客户端,则将新客户端的本地数据样本数量,记为待检数量,比较待检数量与目标数量,如果待检数量不小于目标数量,则以利用预设最小个性化率进行划分得到的当前全局模型参数为新客户端的当前全局模型参数;如果待检数量小于目标数量,则以利用预设最大个性化率进行划分得到的当前全局模型参数为新客户端的当前全局模型参数;
S5:将当前全局模型参数下发至当前训练的相应客户端的本地模型,返回执行S2,直至达到预设条件,得到个性化联邦学习模型。
2.根据权利要求1所述的一种基于动态层级调控的个性化联邦学习方法,其特征在于,所述S3,根据预设最小个性化率、预设最大个性化率、总迭代轮次和当前轮次,计算当前个性化率,为由公式: ,实现;
式中,为当前个性化率, 为预设最小个性化率, 为预设最大个性化率, 为当前轮次, 为总迭代轮次。
3.根据权利要求1所述的一种基于动态层级调控的个性化联邦学习方法,其特征在于,所述S3,聚合后的本地模型参数利用当前个性化率进行划分,得到当前全局模型参数,为由公式: ,实现;
式中, 为当前全局模型参数, 为聚合后的本地模型参数,为当前个性化率。
4.根据权利要求1所述的一种基于动态层级调控的个性化联邦学习方法,其特征在于,所述S3,聚合后的本地模型参数利用当前个性化率进行划分,得到当前全局模型参数,具体为:获取服务器端的网络层数,当前个性化率与网络层数相乘,得到不下发层数,网络层数减去不下发层数后,得到下发层数,根据下发层数,从服务器端的网络层逆推相应层数得到的网络层,作为当前全局模型参数。
5.根据权利要求1所述的一种基于动态层级调控的个性化联邦学习方法,其特征在于,所述S3,更新的本地模型参数上传至服务器端后,经加权平均处理,得到聚合后的本地模型参数,为由公式: ,实现;
式中, 为聚合后的本地模型参数, 为第 个客户端更新的本地模型参数,为所有客户端的数据样本总数, 为第 个客户端的数据样本数,为参与当前训练的客户端总数。
6.根据权利要求1所述的一种基于动态层级调控的个性化联邦学习方法,其特征在于,所述S5得到个性化联邦学习模型后,还包括若检测存在新客户端加入,则执行S4。
7.根据权利要求1所述的一种基于动态层级调控的个性化联邦学习方法,其特征在于,所述S2,更新本地模型参数,为由公式: ,实现;
式中, 为更新的本地模型参数, 为第t轮的本地模型参数,为本地模型学习率,为偏执系数, 为损失函数。
8.一种基于动态层级调控的个性化联邦学习系统,其特征在于,包括:
初始化模块:用于初始化服务器端全局模型参数,将初始化的全局模型参数下发至多个客户端的本地模型,得到相应的本地模型;
预处理模块:用于使用每个客户端的本地数据训练相应的本地模型,更新本地模型参数;
划分模块:更新的本地模型参数上传至服务器端后,经加权平均处理,得到聚合后的本地模型参数;根据预设最小个性化率、预设最大个性化率、总迭代轮次和当前轮次,计算当前个性化率;聚合后的本地模型参数利用当前个性化率进行划分,得到当前全局模型参数;
新客户端检测模块:将划分模块中上传至服务器端的客户端所具有最大的本地数据样本数量,记为目标数量;检测参与当前训练的客户端总数,若不存在新客户端,则进入训练模块,若存在新客户端,则将新客户端的本地数据样本数量,记为待检数量,比较待检数量与目标数量,如果待检数量不小于目标数量,则以利用预设最小个性化率进行划分得到的当前全局模型参数为新客户端的当前全局模型参数;如果待检数量小于目标数量,则以利用预设最大个性化率进行划分得到的当前全局模型参数为新客户端的当前全局模型参数;
训练模块:将当前全局模型参数下发至当前训练的相应客户端的本地模型,返回进入预处理模块,直至达到预设条件,得到个性化联邦学习模型。