Notes On Models

Step-by-step guide to lead your way to AI projects

强化学习

English 简体中文

强化学习是机器学习的一种方式,智能体通过与环境交互,根据获得的奖励信号来学习最优策略,目标是最大化累积奖励。强化学习的关键在于智能体需要在探索未知动作和利用已知最优动作之间找到平衡。这里举一个具体的例子来讲解,就是DeepMind公司提出的MuZero模型。

在MuZero之前,就已经有通过强化学习训练出的针对围棋的模型AlphaGo,在与世界冠军李世石的比赛中,一战成名,下出了人类棋手不会下的一步棋,事后经过分析,这步棋是非常高明的策略,而这种下法从未出现在围棋历史上,是AlphaGo自己预测出来的。

那么MuZero的特别之处在于,不使用人类玩游戏的数据,而是模型自己生成游戏数据,根据相应的环境反馈,在不知道游戏规则的前提下,也能学会像高手一样玩某个游戏,github上有一个仓库提供了该模型训练的具体实现,抛开技术细节,其实现原理如下:

The Farama foundation提供了一个可以帮助强化学习的环境, Gymnasium, 不用从头建立自己的环境,直接引用就可以调试你的训练,当然,为了特定的任务,编写自己的环境也是很重要的。

强化学习在很多领域是很有帮助的,比如在自动驾驶领域,我们不可能让车子在马路上横冲直撞来学习哪些驾驶行为是有效的,哪些是有害的,所以建立虚拟的驾驶环境,让算法在环境反馈中学会处理各种信号就是一种建议的做法。当然,模型在训练过后也要测试,看看是否对环境过拟合,不能在环境外通用。