除了无监督机器学习和监督学习之外,人工智能创造的另一种常见形式是强化学习。除了常规的强化学习之外, 深度强化学习 由于它结合了深度学习和强化学习的最佳方面,因此可以带来令人惊讶的令人印象深刻的结果。让我们具体看看深度强化学习是如何运作的。
在我们深入研究深度强化学习之前,最好先回顾一下如何定期进行强化学习。 强化学习作品。 在强化学习中,面向目标的算法是通过反复试验的过程来设计的,优化导致最佳结果的行动/获得最多"奖励"的行动。 当强化学习算法被训练时,它们会受到"奖励"或"惩罚",这些"奖励"或"惩罚"会影响它们未来采取的行动。 算法试图找到一组能为系统提供最大奖励的行动,平衡当前和未来的奖励。
强化学习算法非常强大,因为它们几乎可以应用于任何任务,能够灵活、动态地从环境中学习并发现可能的动作。
深度强化学习概述
当谈到深度强化学习时,环境通常用图像来表示。 图像是特定时间点环境的捕捉。 代理必须分析图像并从中提取相关信息,使用这些信息来告知他们应该采取哪些行动。 深度强化学习通常使用两种不同技术之一进行:基于价值的学习和基于策略的学习。
基于价值的学习技术利用卷积神经网络等算法和架构 深Q网络。 这些算法通过将图像转换为灰度并裁剪掉图像中不必要的部分来进行操作。 然后,图像经过各种卷积和池化操作,提取图像中最相关的部分。 然后使用图像的重要部分来计算代理可以采取的不同操作的 Q 值。 Q 值用于确定代理的最佳行动方案。 计算出初始 Q 值后,将进行反向传播,以便确定最准确的 Q 值。
当代理可以采取的可能操作数量非常多时(这通常是现实场景中的情况),则使用基于策略的方法。 此类情况需要不同的方法,因为计算所有单独操作的 Q 值并不实用。 基于策略的方法无需计算单个操作的函数值即可运行。 相反,他们通常通过称为策略梯度的技术直接学习策略来采用策略。
策略梯度通过接收状态并根据代理的先前经验计算操作概率来进行操作。 然后选择最可能的动作。 重复这个过程直到评估期结束并向代理给予奖励。 在代理处理完奖励后,网络参数将通过反向传播进行更新。
什么是 Q 学习?
计划 Q学习 是深度强化学习过程中如此重要的一部分,让我们花一些时间来真正了解 Q-learning 系统的工作原理。
马尔可夫决策过程
为了让人工智能代理执行一系列任务并达到目标,代理必须能够处理一系列状态和事件。 代理将从一个状态开始,必须采取一系列操作才能达到最终状态,并且开始状态和最终状态之间可能存在大量状态。 存储有关每个状态的信息是不切实际或不可能的,因此系统必须找到一种方法来仅保留最相关的状态信息。 这是通过使用 马尔可夫决策过程,它仅保留有关当前状态和先前状态的信息。 每个状态都遵循马尔可夫属性,该属性跟踪代理如何从先前状态更改为当前状态。
深度 Q 学习
一旦模型能够访问有关学习环境状态的信息,就可以计算 Q 值。 Q 值是在一系列操作结束时给予代理的总奖励。
Q 值是通过一系列奖励来计算的。 有一个即时奖励,根据当前状态并根据当前操作进行计算。 还计算后续状态的 Q 值以及之后状态的 Q 值,依此类推,直到计算出不同状态的所有 Q 值。 还有一个 Gamma 参数,用于控制未来奖励对代理行为的权重。 策略通常是通过随机初始化 Q 值并让模型在训练过程中收敛到最佳 Q 值来计算的。
深度 Q 网络
涉及的基本问题之一是 Q-学习的使用 对于强化学习来说,存储数据所需的内存量随着状态数量的增加而迅速扩大。 深度 Q 网络通过将神经网络模型与 Q 值相结合来解决这个问题,使代理能够从经验中学习并对要采取的最佳行动做出合理的猜测。 通过深度 Q 学习,Q 值函数通过神经网络进行估计。 神经网络将状态作为输入数据,网络输出代理可能采取的所有不同可能动作的 Q 值。
深度 Q 学习是通过将所有过去的经验存储在内存中,计算 Q 网络的最大输出,然后使用损失函数计算当前值与理论最高可能值之间的差异来完成的。
深度强化学习与深度学习
深度强化学习和常规深度学习之间的一个重要区别是,前者的输入不断变化,而传统深度学习则不然。 学习模型如何解释不断变化的输入和输出?
本质上,为了解释预测值和目标值之间的差异,可以使用两个神经网络而不是一个。 一个网络估计目标值,而另一个网络负责预测。 经过选定次数的训练迭代后,目标网络的参数会随着模型的学习而更新。 然后将各个网络的输出连接在一起以确定差异。
基于政策的学习
基于政策的学习 方法的运作方式与基于 Q 值的方法不同。 虽然 Q 值方法创建了一个预测状态和操作奖励的价值函数,但基于策略的方法确定了将状态映射到操作的策略。 换句话说,选择动作的策略函数是直接优化的,而不考虑价值函数。
政策梯度
深度强化学习的策略属于两类之一:随机或确定性。 确定性策略是将状态映射到操作的策略,这意味着当向策略提供有关状态的信息时,将返回操作。 同时,随机策略返回操作的概率分布,而不是单个离散操作。
当可以采取的行动的结果不存在不确定性时,使用确定性策略。 换句话说,当环境本身是确定性的时。 相反,随机政策输出适用于行动结果不确定的环境。 通常,强化学习场景涉及一定程度的不确定性,因此使用随机策略。
与 Q 学习方法相比,策略梯度方法有一些优点,但也有一些缺点。 就优点而言,基于策略的方法更快、更可靠地收敛于最优参数。 可以遵循策略梯度,直到确定最佳参数为止,而使用基于值的方法,估计动作值的微小变化可能会导致动作及其相关参数的巨大变化。
策略梯度对于高维行动空间也更有效。 当需要采取的可能动作数量非常多时,深度 Q 学习就变得不切实际,因为它必须为所有时间步长的每个可能动作分配分数,而这在计算上可能是不可能的。 然而,使用基于策略的方法,参数会随着时间的推移而调整,并且随着模型收敛,可能的最佳参数的数量会迅速减少。
与基于价值的政策不同,政策梯度还能够实施随机政策。 由于随机策略产生概率分布,因此不需要实现探索/利用权衡。
就缺点而言,策略梯度的主要缺点是它们在搜索最优参数时可能会陷入困境,只关注一组狭窄的局部最优值,而不是全局最优值。
政策评分函数
用于优化模型性能目标的策略 最大化得分函数 -- J(θ)。 如果 J(θ)是衡量我们的政策对于实现预期目标有多好的指标,我们可以找到"θ"这给了我们最好的政策。 首先,我们需要计算预期的政策奖励。 我们估算政策奖励,以便我们有一个目标,可以优化的目标。 策略评分函数是我们计算预期策略奖励的方式,常用的策略评分函数有多种,例如:情景环境的起始值、连续环境的平均值以及每个时间步的平均奖励。
政策梯度上升
梯度上升的目的是移动参数,直到它们处于得分最高的位置。 照片:公共领域(https://commons.wikimedia.org/wiki/File:Gradient_ascent_(surface).png)
使用所需的策略评分函数并计算出预期的策略奖励后,我们可以找到参数"θ"最大化得分函数。 为了最大化得分函数 J(θ),一种称为"梯度上升" 用来。梯度上升在概念上与深度学习中的梯度下降类似,但我们正在针对最陡的增加而不是减少进行优化。这是因为我们的分数不是"错误",就像许多深度学习问题一样。我们的分数是我们想要最大化的。称为策略梯度定理的表达式用于估计策略的梯度"θ"。
深度强化学习总结
总之,深度强化学习结合了强化学习和深度神经网络的各个方面。 深度强化学习是通过两种不同的技术完成的:深度 Q 学习和策略梯度。
深度 Q 学习方法旨在预测在给定状态下采取的某些行动将带来哪些奖励,而策略梯度方法旨在优化行动空间,预测行动本身。 基于策略的深度强化学习方法本质上要么是确定性的,要么是随机性的。 确定性策略将状态直接映射到操作,而随机策略则生成操作的概率分布。