首页 / 一种基于维纳反卷积与对角费歇尔剪枝的联邦学习方法

一种基于维纳反卷积与对角费歇尔剪枝的联邦学习方法实质审查 发明

技术领域

[0001] 本发明涉及一种基于维纳反卷积与对角费歇尔剪枝的联邦学习方法,属于联邦学习技术领域。

相关背景技术

[0002] 近年来,随着人工智能技术的快速发展,金融业、制造业、服务业等各领域数据被广泛用于人工智能模型训练。传统的人工智能模型需要将数据集中到服务器端进行学习训练,容易导致用户隐私泄露。为了解决这一问题,Google于2016年提出了联邦学习(Federated Learning, FL)的概念,数据持有者在本地进行模型训练,然后将模型训练参数上传至服务器进行聚合更新,从而避免了隐私数据的泄露。然而,相关研究表明,通过分析用户上传的中间参数仍然有可能还原部分用户原始数据或者判断特定用户的相关属性特征。因此,即使采用联邦学习机制,仍然需要相应的隐私保护技术进一步防止用户隐私的泄露。
[0003] 目前,联邦学习的隐私保护技术主要包括同态加密、多方安全计算以及差分隐私等。与其他技术相比,同态加密能够提供更为可靠的隐私保护服务。目前的联邦学习模型,大多采用第二代同态加密方案,其与第一代方案相比在性能、效率和实用性等方面均有较大提升,并且支持任意布尔电路的计算。然而,第二代同态加密方案虽然引入了模交换技术来控制密文的膨胀,但并不能完全消除噪声积累对模型精度的影响,而且没有利用信号的统计特性来增强信号。
[0004] 此外,联邦学习过程中,用户端与服务器需要频繁的进行参数与梯度交换,通信开销巨大。目前,降低联邦学习通信开销的策略可以分为模型压缩和蒸馏算法两种。模型压缩策略会降低模型的精度,并且不能处理异质数据;蒸馏算法虽然能够在数据异质时保持良好的性能,但其通信开销并没有得到有效的降低。近年来,研究人员提出采用剪枝机制降低联邦学习模型的通信开销,例如Federated Dropout(FedDropout)等。然而,采用剪枝机制的联邦学习模型需要在用户端进行大量运算,在降低通信开销的同时也增加了运算开销。

具体实施方式

[0012] 为了加深对本发明的理解,下面结合附图对本实施例做详细的说明。
[0013] 实施例:参见图1‑图3,一种基于维纳反卷积与对角费歇尔剪枝的联邦学习方法,包括以下步骤:假设一个视频推荐系统中有一个服务端和n个用户端,用户端1、用户端2与用户端
3为与服务端连接并可以进行通信的任意3个用户端,用户端与该服务端协同训练模型。本实施例以用户端1、用户端2、用户端3以及服务端为例对训练过程给出详细说明,其整个联邦学习架构如图1所示,主要包括Diag‑Fisher剪枝与维纳反卷积去噪两个过程。
[0014] 步骤1,视频推荐系统各用户端从服务器端接收初始全局模型,并基于本地视频浏览数据进行训练,步骤2,各用户端基于本地数据集,对接收的全局模型进行本地训练,得到本地模型,
步骤3,视频推荐系统各用户端采用Diag‑Fisher剪枝机制对本地模型的梯度进行剪枝,如图2所示,其过程如下:
3.1初始化本地模型对应的对角Fisher信息矩阵,其计算表达式为: ,
3.2对于每个批次数据 ,前向传播计算损失 ,
其中, 为客户端 的本地模型梯度,为其数据集 的一批数据,
3.3对于每个批次数据 ,根据损失反向传播计算梯度 ,
其中, 为客户端 的本地模型梯度, 为其数据集 的一批数据,
表示其前向传播计算得到的损失,
3.4对于每个批次数据 ,累加得到本地模型的对角Fisher信息矩阵
,其中, 为其反向传播计算得到的梯度,
3.5根据表示当前客户端用于更新模型的批次数据集 的大小,归一化对角Fisher信息矩阵 ,其中, 表示当前客户端用于更新模型的批次数据
集 的大小,
3.6根据设置好的剪枝率以及计算得到的对角Fisher信息矩阵,计算剪枝阈值,
其中, 为计算完成的对角Fisher信息矩阵, 为事先设置好的剪枝率, 是经过计算得到剪枝阈值,
3.7将对角Fisher信息矩阵中的Fisher信息值与剪枝阈值进行比对,生成掩码,
3.8应用掩码对本地模型参数进行剪枝: ,其中, 是经过计算得到剪
枝阈值, 为计算得到的掩码,最后应用掩码得到了剪枝后的新的梯度 ,步骤4,对剪枝后本地模型使用自然梯度优化,其过程如下:参见图2,
4.1对于每个批次数据 ,前向传播计算损失 ,
4.2对于每个批次数据 ,根据损失反向传播计算梯度
 ,
4.3根据对角Fisher信息矩阵以及梯度计算得到自然梯度 ,
其中, 为客户端 经过剪枝的本地模型梯度,是一个小的正值,为平滑项,用于防止分母为零,确保数值稳定性, 为计算得到的自然梯度,
4.4根据计算得到的自然梯度更新本地模型参数: ,
其中,是学习率, 为采用自然梯度更新之后的本地模型梯度,
客户端对剪枝后本地模型使用自然梯度优化,对剪枝后的梯度进行优化修正,确保梯度更新方向符合参数空间的几何结构,从而提升模型的收敛速度和精度,步骤5,各用户端将剪枝后的模型参数和经过优化的梯度通过同态加密上传至服务端,
步骤6,使用基于维纳反卷积的联邦机制对加密梯度进行去噪处理,其过程如下:
参见图3,
6.1对初始化维纳反卷积需要用到的参数进行傅里叶变换 ,
其中, 为服务器端聚合之后得到的同态加密模型梯度,为系统响应, 与为其进行傅里叶变换之后得到的参数;
6.2根据傅里叶变换后的参数计算信号的功率谱密度: ,
6.3根据功率谱密度以及其他参数计算初始维纳反卷积 ,
其中, 为 的共轭复数, 是噪声的功率谱密度,
6.4根据维纳反卷积对模型参数进行初次滤波 ,
6.5根据上一轮迭代中的功率谱计算得到修正功率谱

6.6根据修正功率谱和上一轮的滤波结果更新得到功率谱

6.7根据新的功率谱更新维纳反卷积 ,
6.8应用新的维纳反卷积进行滤波直到结果收敛,其计算公式为: ,
6.9对滤波之后得到的结果进行傅里叶逆变换 。
[0015] 其中,为经过傅里叶逆变换最终得到的同态加密的模型参数,服务端得到之后将其下发至视频推荐系统的各用户端,各用户端使用自己的同态加密私钥进行解密,然后用于下一轮次的本地模型训练。
[0016] 需要说明的是上述实施例,并非用来限定本发明的保护范围,在上述技术方案的基础上所作出的等同变换或替代均落入本发明权利要求所保护的范围。

当前第1页 第1页 第2页 第3页