Page 208 - 《软件学报》2025年第9期
P. 208

王鑫澳 等: 基于联邦学习的       BERT  模型高效训练框架                                             4119


                    ● S5: 服务端使用聚合参数更新全局模型, 并基于第                3.2  节所述的浅层渐进式训练策略决定之后训练的

                 Transformer 层索引号  l.
                    ● S6: 如果联邦学习轮次还在继续, 则重复步骤            S1, 客户端下载新的参数, 更新本地参数池, 构建新的模型用
                 于训练, 否则结束流程.
                    FedBT  在进一步预训练场景下的算法如算法            1  所示.
                 算法  1. FedBT  进一步预训练算法.

                                                           0
                                                                            I
                 输入: 数据集   {D 1 ,...,D N }, 全局模型   M G , 初始参数为  W , 联邦学习迭代轮次  , 本地  MLM  训练轮次  e k , 当前训练
                                                           G
                 层编号  l;
                                           I
                 输出: 最终全局模型      M G  的参数  W .
                                          G
                 初始化: 每个客户端     C k  的本地参数池   P k ; 初始训练  Transformer 层编号  l = 0
                        I  轮联邦学习迭代
                 1. //执行
                 2. for  i = 0 to  I −1 do
                 3.  //各个客户端并行执行
                 4.  for each client  C k  do
                 5.    if  i > 0 then

                 6.      使用服务端的        W  (i−1)   更新   M k
                                        G
                 7.    end if
                                                 l 层  Transformer 层和输出层参数
                 8.    //在客户端使用本地模型训练第
                          i
                 9.      W ← MLM_Train(M k ,D k ,P k ,l,e k )
                          k
                            W  到服务端
                              i
                 10.     上传
                             k
                 11.  end for
                 12.  //服务端聚合客户端所上传参数
                                       i
                 13.   W ← Merge(W ,...,W )
                                 i
                       i
                       G
                                 1
                                       N
                 14.  //根据浅层渐进式训练策略决定接下来训练的 Transformer 层编号             l
                 15.  l ← Next(l, i, r, I)
                           i
                 16.  发送  W  到每个客户端
                           G
                 17. end for

                 3.2   训练策略的选择
                    联邦学习场景下, 本地客户端需要使用比服务端全局模型更小的模型, 并且在训练过程中需要更高效的更新
                 模型参数. 这要求客户端本地模型在使用隐私数据进行进一步预训练时, 需要选择对服务端全局模型更重要的部
                 分参数进行训练. 之前的工作         [35−38] 已经指出, 在  BERT  模型中, 浅层的  Transformer 模型会捕获语法层面的相关知
                 识, 这些参数在预训练环节会比深层的            Transformer 参数发挥更大的作用.
                    本文所提出的      FedBT  在使用客户端隐私数据进行进一步预训练时, 会更关注模型的浅层                     Transformer 参数,
                 并且只上传所更新的参数到服务端聚合. 具体来说, 在每一轮联邦学习的迭代过程中, FedBT                           只会训练并传输一
                 层  Transformer 参数和输出层参数, 其余层的参数则仅用于辅助计算, 保持不变. 受渐进式训练                    [39] 思想的启发, 在
                 进一步预训练阶段, FedBT      会从浅层的     Transformer 参数中逐层递增的选择参数用于训练, 由浅至深的逐步训练
                 Transformer 参数. 在训练过程中, 如何确定训练的        Transformer 层以及构建客户端的本地模型, 从而高效地完成模
                 型参数的更新, 变得至关重要.
                    因此, 在使用专业领域的隐私数据对模型进行进一步预训练时, 需要尽可能地将训练资源用于训练浅层的
   203   204   205   206   207   208   209   210   211   212   213