强化学习 (RL) 是一种机器学习过程,其核心在于智能体通过与环境交互来学习决策机制。
自主代理是任何能够独立于人类用户的直接指令做出决策并根据其环境采取行动的系统。机器人和自动驾驶汽车就是自主代理的例子。
在强化学习中,自主代理会在没有任何人类用户指导的情况下通过反复试验来学习执行任务。1强化学习特别适用于解决不确定环境中的顺序决策问题,并在人工智能开发中显示出良好的前景。
文献经常将强化学习与监督学习和无监督学习进行对比。监督学习 会使用手动标记的数据来生成预测或分类。无监督学习 旨在从未标记的数据中发现和学习隐藏的模式。与监督学习不同,强化学习不使用正确或错误行为的标记示例。但强化学习也不同于无监督学习,因为强化学习是通过反复试验和奖励函数来学习,而不是通过提取隐藏模式的信息来学习。2
监督学习和无监督学习方法假设输入数据的每条记录独立于数据集中的其他记录,但每条记录都实现了一个通用的底层数据分布模型。这些方法通过预测准确性的最大化来衡量模型性能,进而学习进行预测。
相比之下,强化学习会将学习转化为行动。强化学习假设输入数据是相互依赖的元组(即,一个有序数据序列),并以“状态-动作-奖励”的形式组织这些数据。强化学习算法的很多应用均旨在通过正强化来模仿现实的生物学习方法。
请注意,尽管文献中很少将两者进行比较,但强化学习也不同于自监督学习。自监督学习是一种无监督学习形式,它使用从未标记的训练数据中得出的伪标签作为基本事实来衡量模型的准确性。然而,强化学习不会产生伪标签或根据基本事实进行测量,它不是一种分类方法,而是一种行动学习方法。然而,这两者结合起来却带来了令人鼓舞的结果。3
强化学习主要由代理、环境和目标之间的关系组成。许多文献都用马尔可夫决策过程 (MDP) 来表述这种关系。
强化学习智能体通过与其环境进行交互来了解某一问题。环境可提供有关其当前状态的信息。然后,强化学习智能体会使用该信息来确定要执行的动作。如果此动作从周围环境获得了奖励信号,则会鼓励强化学习智能体在未来处于类似状态时再次执行该动作。此后每出现一个新状态,均会重复此流程。随着时间的推移,强化学习智能体会从奖励和惩罚中学习,以便在环境中采取能达成指定目标的行动。4
在马尔可夫决策过程中,状态空间指的是环境状态提供的所有信息。操作空间表示强化学习代理在状态中可以执行的所有可能操作。5
由于强化学习代理没有手动标记的输入数据来指导其行为,因此强化学习代理必须探索其环境,尝试新的操作来发现那些可以获得奖励的操作。通过这些奖励信号,强化学习代理可以学习选择那些能得到奖励的行为,从而实现收益最大化。但强化学习代理也必须继续探索新的状态和操作。这样,强化学习代理就可以利用这些经验改进决策。
因此,强化学习算法要求强化学习智能体既要利用先前所奖励的“状态-动作”的知识,又要探索其他“状态-动作”。强化学习智能体无法单独进行探索或开发。强化学习智能体必须不断尝试新的动作,同时也更偏爱能产生最大累积奖励的单个(或一系列)动作。6
除了“主体-环境-目标”三要素之外,强化学习问题还有四个主要的子要素。
- 强化学习策略。这通过将感知到的环境状态映射到代理在这些状态下必须采取的特定操作来定义 强化学习代理的行为。它可以采用基本函数的形式,也可以采用更复杂的计算过程的形式。例如,指导自动驾驶车辆的策略可能会将行人检测映射到停车操作。
- 强化学习奖励信号。这指定了强化学习问题的目标。强化学习代理的每一个操作要么从环境中获得奖励,要么没有奖励。强化学习代理的唯一目标是最大化其从环境中获得的累积奖励。对于自动驾驶汽车,奖励信号可以是减少行驶时间、减少碰撞、保持在道路上和正确的车道上、避免极端减速或加速等。此示例表明强化学习可以包含多个奖励信号来指导代理。
- 强化学习价值函数。强化学习奖励信号与强化学习价值函数的不同之处在于,前者表示即时利益,而后者指长期利益。强化学习价值指的是一个状态的可取性,考虑到所有可能跟随其后的状态(及其相应的奖励)。自动驾驶汽车也许能够通过离开车道、在人行道上行驶和快速加速来减少行驶时间,但这后三种操作可能会减少其整体价值函数。因此,作为强化学习代理的汽车可能会选择稍微延长行驶时间,以增加在后三个领域的奖励。
- 模型。强化学习模型是强化学习系统的一个可选子元素。模型允许代理预测环境行为,以便执行可能的动作。然后,代理会使用模型预测并根据潜在结果来确定可能的动作方案。这可以是一个指导自动驾驶汽车的模型,帮助它预测最佳路线、根据周围车辆的位置和速度做出预期,等等。7基于模型的某些方法会在初始学习中使用直接人类反馈,然后再转为自主学习。
代理为学习策略而收集数据的方法一般有两种:
- 在线学习。在此方面,强化学习代理会直接通过与周围环境的交互来收集数据。当强化学习代理继续与环境互动时,便会反复处理并收集这些数据。
-离线学习。当智能体无法直接进入环境时,它可以通过记录的环境数据进行学习。这就是离线学习。鉴于通过与环境直接交互来训练模型存在实际困难,大量研究转向离线学习。8
强化学习是一个充满活力、持续发展的研究领域,因此,开发人员已经提出了无数种强化学习方法。然而,有三种基础的强化学习方法得到了广泛讨论:动态规划、蒙特卡罗和时序差分学习。
动态规划可将较大的任务分解为若干较小的任务。因此,它可将问题建模为在离散时间步长下做出的顺序决策的工作流。每个决策都是根据生成的下一潜在状态来做出的。代理对给定动作的奖励 (r) 会定义为该操作 (a)、当前环境状态 (s) 和下一潜在状态 (s’) 所组成的一个函数:
此奖励函数可以用作管理代理操作的策略(的一部分)。确定代理行为的最佳策略是强化学习的动态规划方法的主要组成部分。输入贝尔曼方程。
贝尔曼方程为:
简而言之,该方程将 vt(s) 定义为从时间 t 开始直到决策工作流程结束的总预期奖励。它假设代理在时间 t 开始占据状态 s。该方程最终将时间 t 的奖励分为即时奖励 rt(s,a)(即奖励公式)和代理的总预期奖励。因此,代理通过始终选择在每个状态中接收奖励信号的操作来最大化其价值函数(即贝尔曼方程的总值)。9
动态规划是基于模型的,这意味着它会构建其环境的模型来感知奖励、识别模式和导航环境。然而,蒙特卡洛假设了一个黑匣子环境,因此它不需要模型。
虽然动态规划可以在决策过程中预测潜在的未来状态和奖励信号,但蒙特卡罗方法完全基于经验,这意味着它们仅通过与环境的交互来来对状态、操作和奖励序列进行采样。因此,蒙特卡罗方法是通过试错而不是概率分布来学习的。
在价值函数的确定方面,蒙特卡洛与动态规划有进一步的不同。动态规划通过在连续状态下持续选择有奖励的操作来寻求最大的累积奖励。相比之下,蒙特卡洛对每个状态-操作对的回报进行平均。这反过来意味着蒙特卡洛方法必须等到给定事件(或计划范围)中的所有操作都完成后,才能计算其价值函数,然后更新其策略。10
很多文献将时序差分 (TD) 学习描述为动态规划和蒙特卡洛的结合。与前者一样,TD 会在每一步之后更新其策略,并据此估计未来状态,而无需等待最终值。与蒙特卡洛方法类似,TD 学习通过与环境的原始交互,而不是使用其模型。11
顾名思义,TD 学习智能体会根据每个状态中预测和实际收到的奖励之间的差异来修订其策略。也就是说,虽然动态规划和蒙特卡罗方法仅考虑获得的奖励,但 TD 进一步权衡了其预期和实际收到的奖励之间的差异。利用这个差异,智能体在等待整个事件规划范围结束前可以更新其对下一步的估计,这与蒙特卡罗方法相反。12
TD 有多种变体。两个突出的变体是“状态–操作–奖励–状态–操作” (SARSA) 和 Q 学习。SARSA 是一种基于策略的 TD 方法,这意味着它会评估并尝试改进其决策控制策略。Q 学习是一种离策略方法。离策略方法是指使用两种策略的方法:一种用于利用(目标策略),一种用于探索以生成行为(行为策略)。13
还有无数其他的强化学习方法。动态规划是一种基于价值的方法,这意味着它会遵循旨在最大化其价值函数的策略,根据其估计值选择操作。相比之下,策略梯度方法学习一种参数化策略,该策略可以在不参考价值函数的情况下选择操作。这些方法被称为基于策略的方法,并且被认为在高维环境中更有效。14
“演员-评判家”方法会同时使用基于价值与基于策略的方法。所谓的“演员”是指用于决定采取哪些动作的策略梯度,而“评判家”则是用于评估动作的价值函数。“演员-评判家”方法本质上是一种 TD。更具体而言,“演员-评判家”不仅会根据其自身的奖励、还会根据后续状态的可能值来评估给定动作的值,并将其添加到此动作的奖励中。“演员-评判家”的优势在于:由于它在决策中会实施价值函数和策略,因而它实际所需的环境交互较少。15
鉴于强化学习主要关注不可预测环境中的决策问题,因此它一直是机器人技术的核心关注领域。为了完成简单和重复的任务 ,决策可能非常简单。但对于更复杂的任务(例如,尝试模拟人类行为或自动驾驶),则涉及与高度可变和易变的现实环境进行交互。研究表明,使用深度 Neural Networks 进行深度强化学习有助于完成此类任务,尤其是在概化和将高维感官输入映射到控制系统输出方面。 16 研究表明,机器人深度强化学习在很大程度上依赖于收集的数据集,因此最近的工作探索了收集现实世界数据 17 和重新利用先前数据 18 来改进强化学习系统的途径。
最近的研究表明,利用自然语言处理技术和工具,例如,大型语言模型 (LLM) 可以通过现实世界环境的文本表示来提高强化学习系统的泛化性。19许多研究表明,在指导学习智能体执行连续的决策任务时,交互式文本环境可以比三维环境提供更具成本效益的选择。20深度强化学习还支持聊天机器人中的文本决策。事实上,强化学习在改善聊天机器人对话响应方面优于其他方法。21
使用面向 AI 构建器的新一代企业级开发平台 IBM watsonx.ai,可以训练、验证、调整和部署生成式 AI、基础模型和机器学习功能。使用一小部分数据,即可在很短的时间内构建 AI 应用程序。
借助 IBM 业界领先的人工智能专业知识和解决方案组合,让人工智能在您的业务中发挥作用。
通过增加 AI 重塑关键工作流程和运营,最大限度提升体验、实时决策和商业价值。