Page 93 - 《软件学报》2026年第2期
P. 93

572                                                        软件学报  2026  年第  37  卷第  2  期


                 被突出, 降低了对预测模型的要求. 因此, 本文选择双层               MLP  作为特征预测模型. MLP      在此类特征明显的序列上
                 可以取得较高预测准确度, 同时其结构轻量, 能有效减少集成模型的资源开销. 这种设计不仅保证了预测的准确
                 性, 还兼顾了模型的计算效率, 适合目标场景.
                  3.2.3    多视角预测模型集成
                    不同的多视角预测模型侧重于不同维度的特征信息, 因而各模型能准确预测的区间存在差异. 为使集成模型
                 取得预期的效果, 需要正确融合多视角预测值. 本文采用加权的方式融合多视角预测值, 基于该设计, 可选择平均、
                 线性层、自注意力和强化学习进行集成.
                    平均是最简单的集成方法, 该方法不需要训练, 且在各模型性能差异较小的情况下能取得一定效果. 但当特征
                 预测值在部分步长上预测误差过大, 或者需要动态调整模型权重时, 该方法会明显欠拟合, 集成效果不稳定. 线性
                 层结构简单, 训练快速, 可以在一定程度上学习多视角预测值到最终预测值之间的非线性关系. 但线性层输出的权
                 重系数难以灵活变化, 导致在动态权重分配任务中表现欠佳.
                    自注意力能够捕捉不同特征信息之间的关联, 在建模长距离依赖关系时表现出色. 但在目标场景下, 自注意力
                 会试图从多条预测值序列中找出关键信息, 并将其用于生成最终预测结果. 该操作类似于基于多视角预测值进行
                 二次预测而非集成, 因此易受多视角预测值中误差较大项的干扰, 集成效果较差. 后续的消融实验将进一步证明自
                 注意力并不适合目标场景, 且相较于其他集成方法, 自注意力的训练时间和推理时间更长.
                    相比之下, 强化学习在集成效果和时间开销上能取得更好的平衡. 与平均和线性层相比, 强化学习并不假设所
                 有场景下各模型的权重是固定的, 而是能通过观察环境中的真实工作负载、预测模型误差和预测值等信息来灵活
                 输出组合权重. 与自注意力相比, 强化学习的时间开销更低, 且会严格遵照任务设定, 在每一个预测步长上选择组
                 合多视角预测值的最优权重, 而非进行二次预测.
                    强化学习可通过在线交互动态优化权重输出策略, 然而其在云负载预测场景中面临两大问题: 1) 高维连续动
                 作空间的探索效率低下, 多步预测需为每个时间步独立分配权重, 容易因维度爆炸导致难以收敛. 2) 历史数据规模
                 较小, 而策略梯度方法       (如  PPO) 需大量交互数据才能稳定训练. 在此背景下, SAC            算法凭借其最大熵优化框架与
                 离线策略训练机制成为理想选择. 首先, SAC            通过引入熵正则化项在策略优化中平衡探索与利用, 避免模型过早
                 收敛至局部最优, 这对负载模式多变场景至关重要. 其次, 其离线策略特性允许从历史交互数据中随机采样进行训

                 练, 能有效提升数据利用效率, 适合目标场景下的小规模数据集. 此外, SAC                   的平滑动作分布使其易于处理具有细
                 微差异的动作选择问题, 能减少集成结果突变引起的不稳定. 相较于确定性策略                         (如  DDPG), 这一设计在高维动作
                 空间中展现出更强的稳定性.
                    与一般的强化学习任务类似, 本文通过马尔可夫决策过程来描述多视角预测模型集成任务.
                  3.2.3.1    动 作
                    动作空间的设计需兼顾两个需求: 1) 为不同预测步长分配独立权重以适配负载序列的动态特性; 2) 支持动态
                 增减特征预测模型数量. 在        SAC-MWF  中, 动作被定义为每个预测步长上各模型的权重分数, 即未经过                   Softmax 处
                 理的权重系数. 设特征预测模型数量为            N mv , 预测窗口大小为   H, 则  t 时刻的动作  a t 对应一个  (N mv +1)×H  维的连续
                 向量:

                                                     1,1  1,2  i,j  (N mv +1),H
                                                a t = {a ,a ,...,a t ,...,a t  }                     (24)
                                                     t  t
                      i, j
                 其中,  a t ∈ R 表示  t 时刻第  i 个模型在第  j 个预测步长上的权重分数. 通过       Softmax 层对每个预测步长的权重分数
                 进行归一化, 生成权重系数        ω:

                                                                i,j
                                                            exp(a t )
                                                       i,j
                                                      ω t =                                          (25)
                                                          N mv +1
                                                          ∑
                                                                 k,j
                                                             exp(a t )
                                                           k=1
                                                         N mv +1
                                                         ∑
                                                             i,j     i,j
                    该操作确保同一预测步长的所有权重系数满足                    ω t = 1 且  ω t ⩾ 0.
                                                         i=1
   88   89   90   91   92   93   94   95   96   97   98