-
Notifications
You must be signed in to change notification settings - Fork 11.8k
Description
目前 LLM 的强化训练,在提升其最终结果正确率的同时,也带来了一个问题:策略坍塌。随着强化学习训练,LLM 找到不同正确解法数量会更少。
反观 AlphaGo,同样是通过强化学习,同样是重点奖励最终结果,并没有多目标或多样性奖励,AlphaGo 不但没有出现 LLM 强化学习的策略坍塌,还走出了神之一手。
表面上看似类似的奖励模式,存在关键性区别。
认真对比分析 AlphaGo 的最终结果强化训练,和目前 LLM 的最终结果强化训练,我们不难发现:AlphaGo 的最终结果强化训练看似是一种静态奖励,实则是一种动态奖励。
这种单目标、单一性的动态奖励,使得 AlphaGo 并没有策略坍塌,甚至于走出了神之一手,达到了多目标、多样性的效果。
在 AlphaGo 强化学习重点奖励最终结果的体系之下,当 AlphaGo 找到一个方法,可以取得最终胜利从而获得奖励时,刚开始的确可以获得奖励,但是随着强化学习的进行,这种原本可以取胜的方法,必然会被对手破解,从而导致原本可以取得最终胜利的方法变得失败,原本可以获得奖励变得无法获得。
在这个过程当中,看似一直都是在奖励最终结果没有变化。但实际上,原本可以获得奖励的方法,变得无法获得奖励,这是一个动态奖励的变化。正是这种动态奖励的变化,使得单目标、单一性的奖励,并没有策略坍塌。
目前 LLM 的强化学习奖励模式则并不存在这个过程,一个方法只要原本可以获得奖励,那么这个方法就可以一直获得奖励。
通过对比我们很容易想到一直改进方法:让 LLM 强化学习原本的静态奖励模式变为动态奖励模式。同一正确方法的奖励持续一段时间后,减少该正确方法的奖励,甚至于完全不奖励这一种正确方法,迫使 LLM 寻找其他不同的正确解法,从而避免策略坍塌。
例如,我们可以将数学解题训练过程,变成两个模型竞技过程,竞技规则如下:
1、两个模型的解答区域,分为己方区域和对方区域。
2、两个模型双方先在己方区域各自写下一个步骤,接着都在对方区域各自写下一个步骤,再回到己方区域各自写下一个步骤,然后都在对方区域各自写下一个步骤,后面以此类推。
3、在己方区域内书写的步骤,是为了完成己方的数学解答。在对方区域内书写的步骤,是为了阻止对方的数学解答。
4、在己方区域内,对方写的步骤,已被对方占位,己方无法使用。故而对方相对于此区域是占位方。
5、在对方区域内,占位方不仅可以书写步骤占位,而且可以直接引用,无论是由谁书写的,该区域内已经存在的步骤,用于占位方在该区域内构建占位方的正确完整解答过程,并且占位方引用已经存在的步骤,不消耗占位方自己书写的步骤的次数。
6、不考虑完成时间先后,只看最终结果。
7、在己方区域内,己方最终结果正确完整解答,则己方得 1 分;
在己方区域内,己方最终未结果正确完整解答,则己方扣 1 分;
在对方区域内,占位方成功阻止对方正确解答,并且占位方自己在此区域内构建占位方的正确完整解答,则占位方得 1 分;
在对方区域内,占位方未成功阻止对方正确解答,或者是,占位方虽成功阻止对方正确解答,但占位方自己在此区域内未构建占位方的正确完整解答,占位方扣 1 分。
当然以上举例的方案并不完善,还有很多值得商榷的地方,如:占位方引用已经存在的步骤,完全不消耗占位方自己书写的占位步骤次数是否合适?占位方构建自己的正确完整解答过程,是否需要自己书写的步骤在整个正确完整解答过程当中,达到一定比例之上?
但设计方案的总体思路依然是:
1、将原本的静态奖励通过设计的方案变为动态奖励。
2、动态奖励并不是通过最终奖励本身变化来实现,而是通过获得奖励的难度动态变化来实现。例如:对手/环境必须不断进化、策略价值必须随时间/频率衰减。
3、并且这种动态奖励最好是通过与之对称的镜像的模型实现,而不是通过非对称非镜像的方式实现动态奖励。