强化学习-大模型-决策树(RL-LLM-DT)

我最近带着师弟们做了一个非常微小的工作,用来解决两人零和博弈任务中的策略求解问题。对,你没看错,方法名字就叫强化学习-大模型-决策树(ReinforcementLearning-LargeLanguageModel-DecisionTree, RL-LLM-DT)。为啥起了这么一个有(nao)趣(can)的名字呢,当然是因为整个方法框架里面既有强化学习,又有大语言模型,还有决策树(废话!!!)。那让我们开始进入正题。

论文题目:RL-LLM-DT: An Automatic Decision Tree Generation Method Based on Rl Evaluation and LLM Enhancement

论文链接:RL-LLM-DT: An Automatic Decision Tree Generation Method Based on RL Evaluation and LLM Enhancement

论文代码:GitHub - Linjunjie99/RL-LLM-DT(一作readme还偷懒没写)

问题背景:

经常做两人零和博弈的同学其实知道,用强化学习做这类任务的AI是非常麻烦的,尤其是策略传递性很差的游戏。

(策略传递性解释:若策略A可以打败策略B,策略B可以打败策略C,那么策略A就可以打败策略C,这种游戏称之为策略传递性非常好的游戏,剪刀石头布就是策略传递性非常差的游戏)

这类任务最正规的做法,就是建立一个对手池,通过博弈论类的算法,例如PSRO等,结合强化学习求解。但超参稍有控制不好,立马策略就是收敛到一个局部最优解。这时你把这个策略提交上去打比赛,往往会经历到打巅峰对手55开,但是打简单对手狂输的情况(可视化出来的结果就是少考虑某种情况)。

所以我打比赛往往会采用一个小心思,就是主策略采用决策树来写。然后固定住,另一方用强化学习来找针对这个决策树策略的策略,最后根据可视化分析,人为修改那颗决策树。

这种做法有几个好处:

  • 主策略是决策树,可解释性非常强,非常适合融入人类先验知识;虐菜非常稳定
  • 强化学习训练纳什策略不容易,但找个针对的策略那可太容易
  • 可以通过强化学习找针对策略的耗时,来量化评价目前这棵决策树策略有多强

我用这种方法拿下过不少冠军,最典型RLchina2022年的春季赛。当时的赛题是冰壶游戏,我们最后从67个队伍中获得了第一名,后来我们还写了一个论文,并投稿于COG2023。

论文链接:Mastering Curling with RL-revised Decision Tree

灵感来源:

经常关注我的朋友知道,我最近发现了大模型可以用来写决策树代码,而且写的还相当不错。
 

那我就想能否用大模型来代替掉上面方法中人为的那一步,实现完全自动化的决策树生成呢,答案是完全可以的。

方法介绍:

方法其实非常简单,一共就两步。算法前提是你需要写一棵初始的决策树(用大模型生成或者人写都可以),然后:

  • 固定这颗决策树,用强化学习找针对这个决策树策略的策略(这步跟背景里做法是一样的)
  • 将找到的录像对局转换成文字,然后连同游戏规则和你的决策树一起,问大模型怎么改进这棵决策树,并让他生成新的决策树代码

不断重复这两个步骤,直到出现两种情况,循环截止。

  1. 强化学习再也找不到针对性策略(恭喜你,得到了一个近似的纳什均衡策略)
  2. 大模型生成不了新的决策树代码了(大模型的知识被你榨干了)

非常简单吧,那让我们进入实战!

实验介绍:

我们这里仍然采用冰壶游戏举例,冰壶游戏有个很适合的点,在于他一局游戏只有8个step(红方扔4个壶,蓝方扔4个壶),所以录像非常好描述,就把整个轨迹描述一遍就行了。我们采用的仍然是deepseek的coding大模型。

首先我们用大模型生成一棵初始的决策树:

大模型给我输出了一个决策树函数:

然后我用RL去找这棵决策树的漏洞,这里整个算法迭代了三次,可以看到RL是越来越难找针对策略的。

于是我把输掉的对局描述了一下,问大模型该怎么进行改进:

大模型给了我修改意见:

我紧接着让他根据修改意见,把新的决策树生成出来。

整个过程迭代了三轮,直到RL非常难找到这个策略的漏洞了,我们把生成的决策树1,2,3以及我们当时夺冠的策略(Human Design)都提交到了官方赛事平台-jidi,得到了相对的score和排名。

总结和展望:

我觉得整体是一个非常微小的idea,并且还有挺多可以改进的地方。

  1. 这个方法适合比较好描述录像的任务,我不知道结合VLM,是不是也可以把这步实现自动化。
  2. 大模型可能对复杂任务的决策树没有这么好写,需要任务简单,或者有充足的决策树代码语料,这块是否可以微调进行创新。
  3. 强化学习找到的针对性策略,是靠运气赢的,还是靠实力赢得,需要判别。也可能可以多放几局失败录像描述上去。

总而言之,我还是挺喜欢这个工作的,欢迎大家follow和改进。

(接下来年前会发布一个我认为比较重量级的工作,大家尽情期待!!!我既要替RL想怎么赚钱,偶尔还要想想这种小玩意,更新慢一点,大家肯定不会有啥意见的哈!)

 

 如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。


👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。


1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值