【技术实现步骤摘要】
一种基于联邦学习的用户分组方法及系统
[0001]本专利技术涉及联邦学习
,尤其涉及一种基于联邦学习的用户分组方法及系统。
技术介绍
[0002]目前人工智能技术快速发展,这些人工智能技术以数据作为驱动,联邦学习模型是一种分布式学习框架;在联邦学习过程中,由中心服务器广播一个全局模型,之后用户端的模型在本地数据集上进行训练,并将训练更新过的模型参数回传给服务器,最后由服务器聚合,并反复执行这个过程直到模型收敛;联邦学习的一个主要挑战是用户数据的非独立同分布问题,数据非独立同分布问题是指不同的用户设备所拥有的数据的在统计分布上不一致,在一些数据非独立同分布场景中单一的全局模型无法在所有的数据分布上达到最优性能,因此分组联邦学习应运而生,分组联邦学习首先将所有参与联邦学习的用户按照不同的数据分布划分为若干个组,每个组再分别训练组内的模型,从而达到利用不同的模型学习不同的数据分布的目的,然而现有的针对分组联邦学习模型的分组算法中,或是要预设用户组的数量,或是不能用于一轮只能调度一部分用户的实际场景,或是基于二分的收敛较慢的方 ...
【技术保护点】
【技术特征摘要】
1.一种基于联邦学习的用户分组方法,其特征在于,包括以下步骤:初始化联邦学习模型与明确参与调度的用户数量;将参与调度的用户输入至联邦学习模型进行训练,并根据训练结果计算用户的余弦相似度矩阵;根据余弦相似度矩阵计算用户的分组结果。2.根据权利要求1所述一种基于联邦学习的用户分组方法,其特征在于,所述初始化联邦学习模型具体为,设定随机产生符合正态分布的模型参数,所述模型参数具体包括参与联邦学习的用户总数量、模型优化器的学习率、模型优化器的动量、训练集的批大小、训练集的遍历次数、余弦相似度矩阵值、用户组数量、指示矩阵和预设分组结果。3.根据权利要求2所述一种基于联邦学习的用户分组方法,其特征在于,所述明确参与调度的用户这一步骤,其具体包括:输入需要参与调度训练的用户数量;计算每个用户组被调度的概率,得到原有概率;根据用户数量与用户组数量进行判断;判断到用户数量小于或等于用户组数量,以原有概率在预设分组结果中随机选择与用户数量个数一致的用户组,再从每个被选择的用户组中按照规则选择一个用户进行调度;判断到用户数量大于用户组数量,在每个用户组中按照规则选择一个用户进行调度,然后再在未被调度的所有用户中随机选取用户数量与用户组数量的差值个用户进行调度。4.根据权利要求3所述一种基于联邦学习的用户分组方法,其特征在于,所述根据用户数量计算每个用户组被调度的概率,得到原有概率这一步骤,其具体包括:确定用户数量,计算余弦相似度矩阵的指示矩阵值;根据余弦相似度矩阵的指示矩阵值,计算“用户组
‑
用户组”的指示矩阵值;根据“用户组
‑
用户组”的指示矩阵值,进行加权计算用户组的被调度的概率,得到原有概率。5.根据权利要求4所述一种基于联邦学习的用户分组方法,其特征在于,所述将参与调度的用户输入至联邦学习模型进行训练,并根据训练结果计算用户的余弦相似度矩阵这一步骤,其具体包括:将参与调度的用户输入至联邦学习模型进行训练,并计算训练前后联邦学习...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。