Key Symbols

$o_t$ :回答序列o的第t个token;在语言模型中,回答o的token数就是传统RL问题中时间序列的长度

$\pi_{\theta}(o_t|q)$ : 一个特定的概率,即输入问题q,模型theta生成第t个token为o_t的概率;

$\pi_{\theta}(o|q)$: 即输入问题q,模型theta生成序列o的概率;

$\pi_{\theta}(\cdot|q)$ : 一个分布,即输入问题q,模型theta输出的概率分布;

LLM中,输出的概率就是logits softmax后的结果

KL散度的含义

数学上,KL散度定义为:

$$ D_{KL}(P||Q)=\sum_{x}P(x)\log\frac{P(x)}{Q(x)} $$

其中,P和Q是两个概率分布,x是所有可能的事件或状态。KL散度的值总是非负的,当且仅当P和Q在所有事件上完全相同时,KL散度为零。

为什么KL散度不是对称的

KL散度不是对称的,这意味着 DKL(P∣∣Q))通常不等于 DKL(Q∣∣P)。这是因为KL散度是基于一个假设,即我们正在用 Q来近似 P,并且我们关心的是当我们使用 Q代替 P 时会丢失多少信息。 信息论的角度来看,DKL(P∣∣Q)测量的是使用 Q来编码 P中的信息所需的额外比特数。

PG(Policy Gradient, 策略梯度):

$$ L^{PG}=\mathbb{E}{q\thicksim P(Q), o\thicksim \pi{\theta}(\cdot|q)}\frac{1}{|o|}\sum_{t=1}^{|o|}[log\pi_{\theta}(o_t|q)\hat{A}_t] $$

TRPO(Trust Region Policy Optimization, 可信域策略优化):

1)penalty term:

$$ \mathcal{L}{TRPO}=\mathbb{E}{q\thicksim P(Q), o\thicksim \pi_{old}(\cdot|q)}\frac{1}{|o|}\sum_{t=1}^{|o|}[\frac{\pi_{\theta}(o_t|q)}{\pi_{old}(o_t|q)}\hat{A}t-\beta {KL}(\pi{old}(\cdot, q),\pi_{\theta}(\cdot, q))] $$

2)hard consistent:

$$ \mathcal{L}{TRPO}=\mathbb{E}{q\thicksim P(Q), o\thicksim \pi_{old}(\cdot|q)}\frac{1}{|o|}\sum_{t=1}^{|o|}[\frac{\pi_{\theta}(o_t|q)}{\pi_{old}(o_t|q)}\hat{A}t], \\s.t. \quad \mathbb{E}[{KL}(\pi{old}(\cdot, q),\pi_{\theta}(\cdot, q))]\leq \delta $$

PPO (Proximal Policy Optimization, 近端策略优化):

https://stackoverflow.com/questions/46422845/what-is-the-way-to-understand-proximal-policy-optimization-algorithm-in-rl

Actor-Critic Style

Actor-Critic Style

1)clip策略优化的程度