强化学习



什么是强化学习?

强化学习是一种机器学习方法,其中代理(软件实体)通过执行动作并监控结果来训练以解释环境。对于每个好的动作,代理都会获得积极的反馈,对于每个坏的动作,代理都会获得消极的反馈。它受到动物从经验中学习的启发,根据其行为的后果做出决策。

下图显示了一个典型的强化学习模型 -

Reinforcement Machine Learning

在上图中,**代理**处于特定的**状态**。代理在**环境**中采取**行动**以完成特定任务。作为执行任务的结果,代理会收到**奖励**或惩罚作为反馈。

强化学习是如何工作的?

在强化学习中,会存在一个代理,我们希望在一段时间内对其进行训练,以便它可以与特定环境进行交互。代理将遵循一组与环境交互的策略,然后在观察环境后,将根据环境的当前状态采取行动。代理通过根据其行为获得奖励或惩罚来学习如何做出决策。

可以通过象棋大师的方法来理解强化学习的工作原理。

  • **探索** - 就像象棋棋手考虑各种可能的走法及其结果一样,代理也探索不同的行动以了解它们的影响,并学习哪些行动会导致更好的结果。
  • **利用** - 象棋棋手也根据过去的经验使用直觉来做出看起来正确的决定。类似地,代理使用从先前经验中获得的知识来做出最佳选择。

强化学习的关键要素

除了代理和环境之外,还可以识别强化学习系统的四个主要子要素 -

  • **策略** - 它定义了学习代理在给定时间时的行为方式。策略是从环境的感知状态到在这些状态下要采取的动作的映射。
  • **奖励信号** - 它定义了强化学习问题的目标。它是环境向代理发送的数值分数。此奖励信号定义了代理的良好和不良事件。
  • **价值函数** - 它指定从长远来看什么是好的。价值是代理从该状态开始可以预期在未来累积的奖励总量。
  • **模型** - 模型用于规划,这意味着在实际体验之前,通过考虑可能的未来情况来决定行动方案。

**马尔可夫决策过程 (MDP)** 为在具有状态、动作、奖励、概率的环境中建模决策制定提供了数学框架。强化学习使用 MDP 来理解代理应该如何行动以最大化奖励,并找到决策制定的最佳策略。

马尔可夫决策过程 (MDP)

强化学习使用马尔可夫决策过程 (MDP) 的数学框架来定义学习代理与环境之间的交互。MDP 的一些重要概念和组成部分是 -

  • **状态 (S)** - 表示代理可能发现自己的所有情况。
  • **动作 (A)** - 代理从给定状态中可用的选择。
  • **转移概率 (P)** - 由于特定动作导致从一个状态转移到另一个状态的可能性。
  • **奖励 (R)** - 由于某个动作而转移到新状态后收到的反馈,指示结果的合意性。
  • **策略 (π)** - 一种策略,定义了在每个状态中为获得奖励而采取的动作。

强化学习过程中的步骤

以下是强化学习方法中涉及的主要步骤 -

  • **步骤 1** - 首先,我们需要为代理准备一些初始策略集。

  • **步骤 2** - 然后观察环境及其当前状态。

  • **步骤 3** - 接下来,根据环境的当前状态选择最佳策略并执行重要操作。

  • **步骤 4** - 现在,代理可以根据其在上一步中采取的操作获得相应的奖励或惩罚。

  • **步骤 5** - 现在,如果需要,我们可以更新策略。

  • **步骤 6** - 最后,重复步骤 2-5,直到代理学会并采用最佳策略。

强化学习的类型

强化学习有两种类型

  • **正强化** - 当代理执行合意的操作或导致良好结果时,它会获得奖励,从而增加重复该操作的可能性。
  • **负强化** - 当代理执行操作以避免负面结果时,负面刺激会被移除。例如,如果机器人被编程为避开障碍物并成功地从障碍物中导航出来,则与该操作相关的威胁就会被移除。并且机器人更有可能在将来避免该操作。

强化学习算法的类型

强化学习中使用了各种算法,例如 Q 学习、策略梯度方法、蒙特卡罗方法等等。所有这些算法都可以分为两大类 -

  • **无模型强化学习** - 它是强化学习算法的一类,通过直接与环境交互来学习做出决策,而无需创建环境动态模型。代理多次执行不同的操作以学习结果,并创建优化其奖励点的策略(策略)。这非常适合变化、庞大或复杂的环境。
  • **基于模型的强化学习** - 强化学习算法的这一类涉及创建环境动态模型以做出决策和提高性能。当环境是静态的且定义明确时,此模型是理想的,在这些环境中,现实世界的环境测试很困难。

强化学习的优势

强化学习的一些优势包括 -

  • 强化学习不需要预定义的指令和人为干预。
  • 强化学习模型可以适应各种环境,包括静态和动态环境。
  • 强化学习可用于解决各种问题,包括决策制定、预测和优化。
  • 强化学习模型随着经验的积累和微调而变得更好。

强化学习的缺点

强化学习的一些缺点包括 -

  • 强化学习取决于奖励函数的质量,如果奖励函数设计不当,模型的性能永远无法得到提高。

  • 强化学习的设计和调优可能很复杂,需要专业知识。

强化学习的应用

强化学习在各个领域都有广泛的应用。一些主要的应用包括:

1. 机器人学

强化学习通常关注在不可预测的环境中进行决策。这是一种最常用的方法,尤其适用于复杂的任务,例如复制人类行为、操作、导航和运动。这种方法还允许机器人通过反复试验来适应新的环境。

2. 自然语言处理 (NLP)

自然语言处理 (NLP) 中,强化学习用于通过管理复杂的对话和改进用户交互来增强聊天机器人的性能。此外,这种学习方法也用于训练模型以执行诸如摘要之类的任务。

强化学习与监督学习

监督学习和强化学习是机器学习中的两种不同方法。在监督学习中,模型在包含输入及其对应输出的数据集上进行训练,用于预测分析。而在强化学习中,智能体与环境交互,通过接收奖励或惩罚的形式的反馈来学习做出决策,旨在最大化累积奖励。这两种方法之间的另一个区别在于它们最适合的任务。监督学习用于具有清晰、结构化输出的任务,而强化学习用于具有最优策略的复杂决策任务。

广告