在强化学习中,优势函数(Advantage Function)是评估在特定状态下采取某个动作比遵循当前策略(Policy)更好或更差的程度的关键概念。在结合人类反馈的强化学习(RLHF)中,优势函数同样扮演着重要角色,帮助模型明确地了解哪些动作(哪个Token)在当前状态(已生成的token)下是有利的。
优势函数A(s_t,a_t)表示在状态s_t时采取动作a_t相比于同一状态下所有动作的平均质量来说是否会更好。其公式为:
[ A(s_t,a_t) = Q(s_t,a_t) - V(s_t) ]
其中:
优势函数的计算通常涉及以下步骤:
计算状态价值:使用价值函数估计来估计未来(时间步t之后)的return,即Temporal Difference (TD)方法。
计算动作价值:使用实际的reward和估计的return来估计Q函数,即蒙特卡洛采样的return。
计算优势函数:通过计算动作价值与状态价值的差值来得到优势函数。
在RLHF中,优势函数用于指导策略更新,使得模型能够更准确地学习到哪些动作是更有价值的。具体来说,优势函数在策略梯度估计中起到关键作用,它帮助模型在决策时能够更清晰地识别出哪些动作是更好的选择。
在PPO算法中,优势函数的计算公式如下:
[ \hat{A}t = \sum{l=0}^{\infty}(\g