
从公式来看,损失函数的核心逻辑:
之所以叫 Group,在于先用旧策略 pi_old 生成 G 个 o_i,也就是多种可能的回答。分子 pi(o_i|q) 是新策略基于问题 q 给出回答 o_i 的概率,二者的比值相当于求个权重。A_i 是强化学习中 的优势 advantage 概念,简单理解就是一种价值函数(两种价值函数之差),衡量当前答案 o_i 相对平均表现的好坏,决定应该被强化还是削弱,也就是打个分。优势权重 A_i 高, 说明这个答案好,模型应该奖励,否则惩罚。先别看后面这些零件。对 G 组答案取均值, 相当于计算期望的离散近似。简单说,就是生成多个答案,打分,加权平均算均值。
后面这一坨,包括 min、clip 还有 KL 散度,都源于近端策略优化(PPO,Proximal Policy Optimization)算法,改进版。
这就类似高速上开车,没有 clip,你可以猛踩油门加减速,但可能会失控撞车(训练崩溃);clip 是个限速器,保证稳定驾驶。
近端也就是 proximal 的意思就是用后面的 KL 项进行 约束,起到一种正则化的作用,限制策略的变化幅度,防止训练时漂移得太远,导致不稳定。 Beta 是个经验系数,用来实现动态惩罚,相当于可以调整的阀门。