Page 234 - 《软件学报》2026年第7期
P. 234

刘子扬 等: 基于个性化联邦学习的跨项目软件缺陷预测方法                                                    2919


                 正则化实现全局知识共享与个性化适应的平衡. 算法的核心思想是为每个客户端维护两套参数: 全局参数和个性
                 化参数. 全局参数通过联邦聚合机制在所有客户端间共享, 捕获跨项目的通用知识; 个性化参数则根据本地数据特
                 征进行调整, 适应特定项目的数据分布特性. 在每个客户端的本地训练过程中, 参数更新遵循:

                                                         t
                                                 t
                                                                 t
                                                                            2
                                                                     ∗
                                           w t+1  = w −η∇F k (w ;D k )+β(w −w )+N(0,σ )               (8)
                                            k    k       k       k   k
                 其中,  w  为个性化参数,    η 为学习率, β  为正则化系数,     N(0,σ ) 为差分隐私噪声. 个性化参数的更新过程结合了梯
                                                               2
                       ∗
                       k
                 度下降和正则化约束. 具体而言, 个性化参数通过如下公式进行更新:

                                                 t
                                                         t
                                                                           t
                                          w ∗,t+1  = w −η∇F k (w ;D k )+Personalization(w ,D k )      (9)
                                           k     k       k                 k
                 其中, 个性化函数根据本地数据特征和模型性能动态调整参数. 这种设计使得模型既能从全局知识中受益, 又能适
                 应本地数据的特殊性质. 服务器端的全局模型聚合采用加权平均策略, 权重根据各客户端的数据量确定. 然而, 简
                 单的数据量加权可能导致数据质量较差的客户端对全局模型产生负面影响. 因此, 本文引入了基于模型性能的贡
                 献度评估机制, 贡献度综合考虑性能得分和更新幅度两个因素, 其中性能得分基于验证集准确率计算, 更新幅度通
                 过参数变化量度量. 为优化通信效率和模型质量, 本文设计了动态客户端选择策略. 在每个通信轮次中, 服务器根
                 据客户端的贡献度和数据质量计算选择概率, 优先选择高质量的客户端参与训练. 同时, 本文引入多样性约束, 确
                 保选中的客户端具有足够的数据分布多样性, 避免模型偏向特定类型的项目.
                  3.5   差分隐私保护机制
                    隐私保护是     PRIDE-SDP  框架的重要特性, 本文采用差分隐私技术为联邦学习过程提供严格的数学隐私保障.
                 差分隐私通过在模型参数或梯度中添加校准噪声来保护个体数据的隐私, 即使攻击者获得了模型参数, 也无法
                 推断出训练数据中任何个体的具体信息. 本框架在梯度级别实施差分隐私保护. 在每个客户端完成本地训练后,
                 对梯度信息进行处理再发送给服务器. 首先执行梯度裁剪操作, 将单个样本梯度的                          L2 范数限制在预设阈值内, 即:

                                                              (    )
                                                                 C
                                                     ˜ g i = g i ·min 1,                             (10)
                                                                |g i | 2
                 其中,  C  为裁剪阈值,  g i  为第   个样本的梯度. 梯度裁剪不仅有助于保护隐私, 还能提升训练稳定性, 防止异常样本
                                       i
                 对模型产生过大影响, 在梯度裁剪的基础上, 向聚合梯度中添加高斯噪声, 即:

                                                                     
                                                      1 ∑            
                                                                  2
                                                  ˆ g =       ˜ g i + N(0,σ C I)              (11)
                                                                    2 
                                                     |B|             
                                                         i∈B
                 其中,                      σ 根据隐私预算     ε 和失败概率    δ 计算, 具体公式为:
                     B 为训练批次. 噪声标准差
                                                          √
                                                        C 2ln(1.25/δ)
                                                     σ =                                             (12)
                                                              ε
                    该设计确保了差分隐私的严格数学保证. 为平衡隐私保护强度与模型性能, 本文设计了自适应隐私预算分配
                 策略. 在训练初期, 模型参数变化较大, 可以承受较强的噪声; 而在训练后期, 模型接近收敛, 需要较小的噪声以保
                 持性能. 因此, 隐私预算按照如下公式进行分配:

                                                              (     )
                                                                   t
                                                     ε t = ε total ·exp −λ·                          (13)
                                                                  T
                 其中,  t 为当前轮次,  T  为总训练轮次,    λ 为衰减系数.
                    此外, 本文引入了收敛感知的隐私预算调整策略: 当检测到模型接近收敛时, 适当增加噪声注入以提升最终性
                 能. 为了在多轮训练中精确量化隐私保护强度, 框架采用了基于高级组合定理的隐私预算消耗追踪机制. 该机制将
                 每轮训练视为一次满足        (ε t , δ t )-差分隐私的查询, 并利用高级组合定理计算       T  轮后的累积隐私损失      ε tota 和失败概
                                                                                                l
                 率     δ total . 本文采用以下公式对累积隐私损失进行估算:
                                                      √
                                                                    σ
                                                 ε total =  2kln(1/δ)σ+kσ(e −1)                      (14)
                 其中,  k 为当前已执行的训练轮数,       σ 为每轮添加的高斯噪声标准差. 框架在每轮训练结束后计算                   ε total , 并将其与预
                 设的全局隐私预算       ε 进行比较. 一旦   ε tota 接近或超过  ε, 系统将自动调整后续轮次的噪声规模或提前终止训练, 从
                                                l
   229   230   231   232   233   234   235   236   237   238   239