Page 152 - 《软件学报》2026年第7期
P. 152
周俊伟 等: PCLog: 近端策略优化与行为克隆自适应日志异常检测 2837
其中, δ t 表示时序差分 (temporal difference, TD) 误差:
δ t = r t +γV π (s t+1 )−V π (s t ) (6)
Q π (s t ,a t ), 从而有效降低了计算复杂度. 价值函数网络 (Critic) 的优化目
该方法避免了显式估计动作价值函数
标是最小化预测值与目标值之间的均方误差:
[ ]
( ) 2
target
min V ϕ L(V ϕ ) = E t V ϕ (s t )−V t (7)
其中, 目标值的定义如下:
target GAE
t
V t = A +V ϕ old (s t ) (8)
为了在联合训练策略网络和价值网络的同时增强探索能力, PPO 算法引入了熵正则项, 其完整优化目标函数为:
[ ]
PPO CLIP
L (θ,ϕ) = E t J (π θ )−c 1 L(V ϕ )+c 2 H(π θ (·|s t )) (9)
其中, H(π θ (·|s t )) 表示策略的熵, c 1 和 c 2 为调节系数, 通常设置为 c 1 = 1.0, c 2 = 0.01.
PCLog 模型采用经典的双网络架构设计, 包含策略网络与价值网络两个模块. 这两个网络采用完全相同的线
性层结构, 但各自维护独立的参数体系. 具体而言: 策略网络通过 Softmax 函数输出动作空间的概率分布, 其功能
是指导智能体基于当前日志状态特征 s t 选择最优事件动作 . 价值网络则输出标量估值 , 用于量化评估当前状
a t
V t
态的长期收益潜力.
θ ϕ 进行初始化建模. 系统将正常日志中的语义向量和
训练过程中, 策略函数 π θ 和价值函数 V ϕ 分别由参数 和
事件序列分别作为状态和动作输入, 其中每个序列以固定零向量 v start 作为初始状态, 并以固定事件 e end 作为终止动
作. 日志状态被依次输入策略函数后, 系统根据输出的动作概率分布进行随机采样, 若所选动作与序列中下一事件
匹配则给予 1 的奖励, 否则奖励为 0. 完成动作选择后系统将状态转移至下一日志状态, 直至序列结束. 每个长度
为 L 的日志序列对应 L+1 步的轨迹数据, 每一步生成形如 (s t , s t+1 ,r t ,a t ) 的训练样本, 其中 s t 和 s t+1 分别表示当前状
态和下一状态的语义向量, r t 为即时奖励值, a t 表示策略选择的动作. 每个序列产生的 L+1 个单步训练样本最终
被存储在经验回放缓冲区中.
当经验回放缓冲区的数据量达到预设批次大小时, 模型训练随即启动. 首先从缓冲区随机采样一个迷你批次
数据, 用于计算当前策略与初始策略的概率比; 接着采用广义优势估计 (GAE) 方法逐步骤计算优势函数和累计折
VF
扣回报; 随后分别计算裁剪目标函数 L CLIP (θ) 和价值函数损失 L (ϕ), 并基于这两个损失函数通过梯度下降法更新
策略网络与价值网络的参数. 经过多次迭代后, 将更新后的策略参数赋值给旧策略. 上述过程循环执行直至满足终
止条件, 具体算法流程参见算法 1.
算法 1. PCLog 算法.
K
输入: 初始策略参数 θ 0 , 价值函数参数 , 裁剪阈值 ε, 总迭代次数 , 日志向量序列 , 事件序列 , 学习率 α, 训
L s
L e
ϕ 0
练轮数 E;
输出: 优化后的策略参数 θ.
1. 初始化策略网络 π θ 0 和价值函数 V ϕ 0
2. for k = 1 to do
K
L s 、 ˆ A t 和折扣回报
3. 使用当前策略 π θ k 和序列 L e 收集轨迹 τ 计算优势估计 R t
4. for e = 1 to E do
5. 从 {τ} 中采样小批量 {(s t ,a t ,r t , s t+1 )}
6. 计算重要性采样比率:
π θ (a t |s t )
r t (θ) =
(a t |s t )
π θ 0
7. 计算裁剪替代目标函数:

