• ppo-clip的本质以及它为什么是另一种ppo-KL-penalty


    显然,clip在优势函数A>0且重采样比例过大时截断了上限,在优势函数A<0且重采样比例过小时也截断了负值的上限。
    我以第一种情况解释clip的作用。

    首先,所有选择的action都是RL中你希望增大概率的action。
    当A>0时,说明这个action本来就很好,不需要我们调,SFT model大概率已经给了它高概率,因此我们甚至容许它概率缩小一点,使得最终重采样比例>1,如果一切如我们所愿,则重采样比例应该<1。然而训练时出现了>1+ε的情况,这就缩得离谱了,说明RL训练出了错误。怎么办呢?clip选择截断到1+ε,这等于是人为地增大了RL训练后的策略选中该action的概率(这就是说它等于KL散度的原因),也等于减小了目标函数R的值,反向凸显了其他采样里导致负A的action,彼消,此就涨,就能让RL后的策略选择正确action的概率回上来。
    当A<0时,说明action在原本SFT里不好,SFT肯定给了这个action一个小概率值。可是我们RL喂的数据肯定是我们希望生成的,所以还是希望它尽量能概率大点。假设SFT给action的概率是0.1,你这边RL稍微训练一下就变成0.2了,只增加了0.1,但是倍率上可是2倍。这肯定不合理,不能因为你要求这样生成,就把原本合理的生成概率给破坏了。于是希望你增加,但是别太狠,就给你增加的量上设个限制,最多上涨一点,就有了负A时重采样比例<1-ε的说法,这样就能继续让这个action提供大比例的负A,打压目标函数R,R就会持续地缩小该action的概率。

    这时候一定有问题:A>0为什么不设下限?A<0为什么不设上限?不是说好了KL散度吗,怎么只堵一边?另一边不管了?
    对,还真就不管了。想一下,对于A>0且重采样比例<1-ε,说明什么?说明目的达成了呀,action的概率真的被提高了。对于A<0且重采样比例>1+ε呢?本来没调RL的时候概率就没多少(只要SFT没毛病,肯定是这样),RL后概率就算再小能小到哪去,真训不大就算了,不纠结那个,不如大过头了有危害。

  • 相关阅读:
    操作Python日期的常见用法
    论文学习——水文时间序列相似性查询的分析与研究
    Linux基础命令大全
    Rhino是强大的专业3D造型软件
    机器学习(三十四):可视化决策树的四个方法
    elasticsearch三节点集群,关闭master服务,集群状态改变为yellow后,重新自动选举产生新的master节点,集群恢复。
    JS 错误捕获
    淘宝MySQL数据库高可用实现方案
    5 步教你将 MRS 数据导入 DWS
    课程设计:班级通讯录管理系统(Java+MySQL)
  • 原文地址:https://blog.csdn.net/qq_39006282/article/details/139398574