我目前正在寻找强化学习算法的概述,也许还有它们的分类。但是在 Sarsa 和 Q-Learning + Deep Q-Learning 旁边,我真的找不到任何流行的算法。
Wikipedia为我提供了不同一般强化学习方法的概述,但没有提及实现此方法的不同算法。
但也许我混淆了一般方法和算法,基本上在这个领域没有真正的分类,就像在机器学习的其他领域一样。有人可以给我一个简短的介绍或只是一个参考,我可以开始阅读不同的方法,它们之间的差异以及实现这种方法的示例算法吗?
我目前正在寻找强化学习算法的概述,也许还有它们的分类。但是在 Sarsa 和 Q-Learning + Deep Q-Learning 旁边,我真的找不到任何流行的算法。
Wikipedia为我提供了不同一般强化学习方法的概述,但没有提及实现此方法的不同算法。
但也许我混淆了一般方法和算法,基本上在这个领域没有真正的分类,就像在机器学习的其他领域一样。有人可以给我一个简短的介绍或只是一个参考,我可以开始阅读不同的方法,它们之间的差异以及实现这种方法的示例算法吗?
这里有一份很好的调查报告。
简单总结一下,除了 Q-learning 方法之外,还有一类基于策略的方法,您可以直接学习最佳策略,而不是学习 Q 函数使用。
这些方法包括流行的 REINFORCE 算法,这是一种策略梯度算法。TRPO 和 GAE 是类似的策略梯度算法。
策略梯度还有很多其他变体,可以与 actor-critic 框架中的 Q-learning 相结合。A3C 算法——异步优势actor-critic——就是这样一种actor-critic 算法,也是强化学习中非常强大的基线。
您还可以搜索最佳政策通过模仿最优控制算法的输出,这被称为引导策略搜索。
除了在无模型设置中应用的 Q-learning 和策略梯度(两种算法都没有维护世界模型),还有基于模型的方法可以估计世界的状态。这些模型很有价值,因为它们可以大大提高样本效率。
基于模型的算法并不排斥策略梯度或 Q 学习。一种常见的方法是执行状态估计/学习动态模型,然后在估计的状态之上训练策略。
因此,对于分类,一个细分是
基于策略的方法可以进一步细分为
一般介绍(包括算法)的最佳起点是Reinforcement Learning: An Introduction by Sutton & Barto。另一个很好的,更多地关注算法的是Szepesva的强化学习算法。两者均以 PDF 格式免费在线提供,请参阅链接。