强化学习是否需要其他学习算法的帮助?

数据挖掘 机器学习 强化学习 算法
2021-09-22 13:33:42

如果没有 SVM 和 MLP 反向传播等其他学习算法的帮助,就不能使用强化学习吗?我查阅了两篇论文:

  1. 论文 1
  2. 论文 2

两者都在内循环中使用了其他机器学习方法。

4个回答

您不需要额外的学习算法来在可以探索所有状态的简单系统中执行强化学习。对于那些,简单的迭代Q-learning可以做得很好——以及各种类似的技术,例如 Temporal Difference、SARSA。所有这些都可以在没有神经网络的情况下使用,前提是您的问题不是太大(通常在几百万个状态/动作对以下)。

Q-learning 最简单的形式只是存储和更新一个<state, action> => <estimated reward>配对表。里面没有更深层次的统计模型。Q-learning 依赖于该表中的奖励估计来采取行动,然后在每次行动后用更精确的估计更新它。

Q-learning 和相关技术(例如 Temporal Difference)有时被称为无模型然而,这并不是指没有诸如神经网络之类的统计模型。相反,这意味着您不需要拥有正在学习优化的系统模型,例如了解游戏中行为的所有结果概率和后果。在无模型 RL 中,所有学习都可以通过将系统作为代理来简单地完成(如果您确实有模型,那么它仍可能用于模拟或规划)。在考虑是否需要神经网络时,术语表格用于为每个可能的状态或状态/动作对使用显式值估计的系统。和术语函数逼近 用于描述如何在 RL 的上下文中使用神经网络。

对于大而复杂的问题,甚至可能有无限可能的状态,使用表格方法是不可行的,您需要基于状态的某些函数进行良好的广义值估计。在这些情况下,您可以使用神经网络创建一个函数逼近器,它可以估计从相似状态到已经看到的状态的奖励。神经网络替代了表格 Q-Learning 中简单表格的功能。但是,神经网络(或其他有监督的 ML 算法)本身并不执行学习过程,您仍然需要一个“外部”RL 方法来探索状态和动作,以便为 NN 提供学习数据。

“强化学习”是指学习算法的结果是一种策略;一个函数,它接受一组输入并返回一个决策。相反,“监督学习”学习一个返回预测的函数。它们是不同类型的任务。
多层感知器和支持向量机是架构,即在任何一种情况下学习功能的形式。
没有理由不在不同的任务上尝试不同的架构。

虽然不是必需的,但一旦开始处理更大的问题,使用一些近似方案是非常常见的。

如果您正在考虑基于价值的无模型强化学习,一个典型的问题是状态空间很大。如果您可以概括和利用数据中的某些结构,则使用一些近似方案不仅对于存储而且很有用。那么任何函数逼近方法(回归、神经网络等)都可能是有益的。

对于基于模型的方法,会发生一些不同的事情。你需要建立一个基于数据的环境模型。使用采样数据,您尝试近似您的转换和奖励函数,以便您以后可以使用计划方法。同样,监督学习是适用的。

我认为您不需要像 SVM 和 MLP 这样的先验知识。事实上,强化是除了监督学习(包括 SVM)和无监督学习(包括 MLP)之外的另一种机器学习。强化学习实际上与后两者有很大不同,因为它是为交互而学习(代理-环境交互)。探索和利用之间的权衡是关键。

马尔可夫决策过程是强化学习的基本框架,与其他两种学习有很大不同。我强烈推荐 Richard S. Sutton 和 Andrew G. Barto 的教科书《Reinforcement Learning: An Introduction》。这就是我现在正在阅读的书。语言非常容易理解,内容也很全面。