强化学习基础

article/2025/8/22 17:21:04

https://www.toutiao.com/a6641864763305361927/

 

2019-01-02 19:47:27

内容目录

一、强化学习的成功

二、概念和基础

2.1设计强化学习系统

2.2人工智能环境类型

三、问题公式化

3.1数学公式

3.2马尔可夫决策过程

3.3价值函数

四、RL训练术语

4.1基于模型与无模型

4.2On-policy与Off-policy

4.3策略梯度与价值函数

4.4强化学习算法

五、其他概念

5.1非稳定问题

5.2多臂强盗

5.3语境强盗

5.4探索与开发困境

5.5强盗策略

深度学习爱好者在处理许多概念时可能会遇到一些含糊不清的问题,而不会考虑他们的具体用例并将多个强化学习问题分开。

本文旨在降低强化学习的模糊性,并在不引入大量数学细节的情况下对其进行全面概述。

也是理解RL背后直观的指导原则,有助于将现实世界中的问题形式化为强化学习模型。

一、强化学习的成功:

强化学习是一种ML概念,它通过尝试和错误改进,学习agent在给定的情况下自动选择最优决策,从而获得最大的长期收益。

特别是,它在自动化游戏中取得了巨大成功; AlphaGo是一种深度强化学习算法,能够击败Go中的世界冠军。

AlphaGo在24小时内在国际象棋以及围棋比赛中取得超人的水平。

它通过基于国际象棋的手工特征提取规则增加了优势,并且跳过了监督学习步骤,通过与自己对弈来学习游戏,完全从随机游戏开始。

它用于自然语言处理,以执行翻译和总结任务(结合预训练的监督学习),在机器人技术中,机器人学会根据其传感器和摄像机的输入进行控制,自驾车也是强化学习最突出的挑战之一。

它被用于近似优化问题; 它是替代依赖于穷举搜索,且可能陷入局部极小值的的组合优化算法的合适选择。

RL可以帮助将搜索定向到给定问题输入的最优解决方案的方向,并且可以在很短有效时间内完成。

同样,它也可替代和改进某些监督学习任务(分类,翻译,总结)的性能。

二、概念和基础知识:

这一部分旨在定义与强化学习相关的基本关键概念,例如特定案例的一些数学结构。

通常,强化学习设置有两个组成部分; Agent与Environment(环境)。

agent从外部世界(环境)获取信息信号,以实现特定目标的最大化增益。

如果对环境的特定信息是在时刻t(或瞬时状态St),则agent在环境中完成一个操作 ,环境由下一个状态和执行的操作对给定状态作出响应并反馈相应奖励。

2.1设计强化学习系统

在设计RL系统时,必须首先定义环境类型,Agent类型,状态集,奖励机制。

S(states):状态集指的是特定信息(如:从不同传感器收集的信号,如摄像机,温度等,可以转换为更相关的信息,如障碍物,位置,速度,......,棋盘上的棋子位置)。相当于监督学习中的输入功能。

A(Action):定义了可能要执行的动作(如:在游戏中模仿玩家的动作:向上移动,向下移动,向后移动,向前移动等)。

动作和状态可以采用离散的连续值。

R(Rewards):得到的奖励,在执行任务过程中机器人达到所设计的目标位置时得到相应的的奖励,称之为奖励机制,(例如,如果机器人避开障碍物但没有接近目标,我们可以增加1点奖励,如果,避开障碍物并接近目标则增加10点奖励,如果没有避开障碍物则增加-10点奖励(也称为惩罚))

这种规则将帮助agent确定该路径是否为目标位置的最佳路径。

强化学习基础

 

在某些问题中,agent的目标是强制性的(例如,在机器人中我们可以训练agent如何达到特定目标,而在其他一些问题中又不是强制性的(如在吃豆游戏中agent旨在最大化他的奖励而并不需要指定特定的目标)。

2.2 人工智能环境类型:

①、 确定性和随机性:如果环境的下一个状态完全由当前状态和agent的动作决定,那么环境是确定性的。在agent可能会影响部分环境的情况下,它也可以是随机性的。

②、 完全可观察,部分可观察或未知情况:

在一些问题中,环境状态可以完全观察(国际象棋:我们可以观察所有动作)。部分可观察:可用的状态并未完全定义环境的行为(扑克游戏:只能知道当前的出牌情况,而未出的牌是无法观察的)。未知情况:信息发布与看到信息后是否做出行动,未未知情况(如用户与发布的广告交互)。

如果环境是确定性的=>完全可观察的(如P(st + 1 | at,st))已知,直观地应该知道s(t))

如果环境不可观察或部分可观察,则必然不具有确定性(行动不会改变环境状态)

我们可以有一个可观察的环境但不具有确定性(国际象棋棋盘是可观察的,但是agent的行为无法被预测)

③、 稳定的,非稳定的:

如果当前状态和奖励仅依赖于其短期变化而非状态,则被认定为稳定的。

如果状态可能受其历史变化的影响,则认定为不稳定的。

④、良性与对抗性:

良性:无论对agent的奖励是积极的还是消极的都无法改变当前的环境(天气是一个良性环境)。

对抗性:agent试图最大化自己得到的奖励以减少另一方agent的奖励。(例如:国际象棋和围棋性游戏)。

对抗性环境是随机的。

三、问题公式化

在这里,我们考虑状态可用于agent的情况。

3.1 数学公式

设{(s0,a0,r0),(s1,a1,r1),(s2,a2,r2),...,(st,at,rt),...,(sTmax,aTmax,rTmax)}是元组(s,r,a)的一个序列:此序列称为数据集或路径。

我们将agent的回报定义为从时刻t开始的长期累积回报。

Tmax是指数据集的最大值(Tmax可能是无穷大)

一般而言,策略π是从状态到动作的概率分布的映射:

π:S→p(A = a | S)。

强化学习的目的是建立一个能够根据具体目标选择最佳行动的agent,以最大化长期回报:

强化学习基础

 

在数学上,找到一个策略π*,它实现了所有状态的最大预期回报:

强化学习基础

π*称为最优策略。

γ是[0,1]中的折现系数,它是为了惩罚对于未来回报没有得到最直接的好处。(例如我们可以在20步内就达到最大化收益而并非50步)。

另外;它保证了无穷集情况下返回值的收敛性。

3.2 马尔可夫决策过程(MDP)

考虑一个固定的,可观察的环境; 我们通常用二阶Markov Decision Processes来描述这种类型,而当前状态仅取决于先前的状态,state-action。

转换函数P记录在获得奖励r的同时采取行动之后从状态s转换到s'的概率:

强化学习基础

 

鉴于该概率,我们可以完全定义有限的MDP特征,因为我们可以推导出该概率函数的表达式。

将t时刻的状态-动作对映射到t + 1时刻的状态分布的状态转移概率定义为:

强化学习基础

 

状态 - 动作对的预期回报作为 two-argument函数r:

强化学习基础

 

状态 - 动作-下一状态的预期回报作为 tree-argument函数r:

强化学习基础

 

3.2 价值函数:

通过采用策略π将状态值函数V定义为从状态s开始的预期回报:

强化学习基础

 

根据定义,最优策略是最大化预期回报的策略。因此,求最优P就是求最优V:

强化学习基础

 

类似地,我们定义状态 - 动作值或质量函数Q(s,a),其定义为从给定状态开始并在策略π下执行动作a的预期返回。

强化学习基础

 

对于每个状态s,我们贪婪地更新动作a:

强化学习基础

 

另外,我们还有:

强化学习基础

 

最后,我们将状态 - 动作对的优势函数定义为质量值和状态值之间的差异。

Aπ(S,A)=Qπ(S,A)-Vπ(S)

四、RL训练术语:

训练术语可以根据几个标准进行分类:

4.1、基于模型与无模型

基于模型的算法依赖于用经验估计每个元组(s',a,s)的转移概率P(s'| s,a)的值,因为它可以充分定义马尔可夫过程,使得解析方程式以找到最优行为。

特别是动作集和状态增长时,存储所有值会导致内存不足甚至出现其他问题。

或者,采用无模型算法,使用反复训练来更新其学习集的值。

4.2、策略与无策略

关键是要明确更新规则的动态。

使用当前策略生成的样本的策略上的学习值。

与此同时,off-policy通过贪婪地搜索给定的状态来探索环境,从而最大限度地提高结果。

4.3、 策略梯度和值函数算法:

我们可以将RL算法分成两个主类:基于价值的算法,旨在通过寻找最优值函数来寻找最优策略。

当状态和动作的数量是有限的时,它们可以很好地工作。

但当状态或动作空间连续时,就会变得不足。

因此,一些基于值的算法特别是Deep Q-Learning算法试图在引入网络参数θ的同时用神经网络接近Q-values。

因此,基于策略方法的目的在于通过引入可训练参数π(a | s;θ)来训练策略函数,并且使用关于策略熵的最大化的策略梯度来更新θ参数。

近似值函数的主要缺点是缺乏通用性,但是不适用于不可见状态

Actor Critic是一个RL变体,它将策略梯度与值函数近似相结合;

引入价值函数估计已经表明它们能够稳定策略熵估计,这使得大多数策略梯度算法使用了这个概念。

因此,在一些研究论文中将其视为策略梯度类的子变量。

由于基于价值的解决方案更加稳定,因此,Actor Critic增加了Q值的估计,以便稳定策略近似。

4.4、 强化学习算法:

直观的强化学习算法是基于模型的动态规划算法,包括通过一系列政策评估和贪婪改进(政策改进)来解决MDP

蒙特卡罗和时间差分方法:

蒙特卡罗方法包括根据经验估计从状态s开始的预期收益。

预期收益的估计是在数据集结束后进行的

时间差异也类似于MC,唯一的区别在于它从经验中学习并且更新函数值只需要获得即时奖励。

TD控制算法实际上有两种变体(Q-Learning:Off-Policy TD控制和SARSA:On-Policy TD控制)

强化学习基础

 

强化学习基础

 

五,其他概念

5.1、非稳定问题:

然而,在一些现实世界中的问题中,该假设可能由于丢失关于历史行为的信息而导致性能下降。

或者,为了“模拟长期非平稳”,我们训练具有记忆的agent或用递归神经网络编码状态序列。

5.2,多臂匪徒:

多臂强盗(Multi-armed Bandits)问题旨在处理未知环境,其中奖励仅取决于行动。它通常在我们对环境没有任何先验知识并且想要探索环境响应时使用。

(在内容推荐中:在不知道来自新访问者偏好的任何信息的情况下发布的页面内容:如果访问者交互建议的内容,则获得奖励)

5.3、Contextual bandits:在其他问题中,我们谈论语境强盗(Contextual bandits) - 当某种信号可以与正确的行动相关联时。对于广告推荐,了解一些用户历史偏好,我们可以调整操作(要发布的内容)。值得注意的是,动作对下一个状态将会产生什么影响。语境强盗有状态,行动和奖励,但没有过渡规则,它们可以被视为一组完全独立的事件。

5.4、探索与开发困境

几种强化学习训练算法的平衡与探索。

探索是指利用当前策略在训练期间生成agent的下一个动作。

而探索旨在通过改变给定状态的行动来探索环境反馈。

贪婪行为的产生过程称为强盗策略。

5.5,强盗策略:

Common Exploration bandit ε-greedy exploration增加策略参数进行获取的。

我们可以通过构建最大化奖励的策略,以更智能的方式生成该邻域行动。

UCB1是ε-greedy的改进版本,Bandit策略取得了巨大成功。


http://chatgpt.dhexx.cn/article/2t0I79wC.shtml

相关文章

强化学习基础05——gym

OpenAI gym OpenAI gym是强化学习最常用的标准库,如果研究强化学习,肯定会用到gym。 gym有几大类控制问题,第一种是经典控制问题,比如cart pole和pendulum。 Cart pole要求给小车一个左右的力,移动小车,让他们的杆子…

联邦强化学习

本博客地址:https://security.blog.csdn.net/article/details/123710121 一、联邦强化学习介绍 强化学习(RL)是机器学习的一个分支,主要研究序列决策问题,强化学习系统通常由一个动态环境和与环境进行交互的一个或多…

初探强化学习(7)基于模型的强化学习的应用综述

本文是直接翻译一篇文章的,我先把原文地址放在这里。 原文名字为:Survey of Model-Based Reinforcement Learning: Applications on Robotics 这是一个2017年的论文 1. Introduction 强化学习(Regulation Learning,RL&#xff0…

强化学习常见案例

文章目录 1. 有趣的强化学习视频1.1 小红小蓝捉迷藏1.2 红球绿球1.3 OpenAI机器人跑步1.4 OpenAI赛艇游戏(CoastRunners) 2.可以交互操作的游戏2.1 GridWorld2.2 Puck world 入门强化学习的时候,看到许多教程都给了很多强化学习的例子&#x…

多任务深度强化学习入门

理论概述 多任务深度强化学习,英文Multi-Task Deep Reinforcement Learning ,简称MTDRL或MTRL。于MARL不同,它可以是单智能体多任务的情况,也可以是多智能体多任务的情况。 现在的深度强化学习领域虽然在很多特定任务上有着超越…

初探强化学习(11)Dyna类型的强化学习

为什么研究Dyna类型的强化学习呢? 主要是因为这个类型的强化学习是融合了model-based和model free两个类型的强化学习。 主要参考的博客是这个。说实话,我也是时隔三天后,第三次看了这个博客才彻底明白的。至于为什么名师,是因为我…

强化学习笔记:强化学习的约束

1 所需的样本数量过大 深度强化学习一个严重的问题在于需要巨大的样本量。举个例子,玩Atari游戏 图 19.17 中纵轴是算法的分数与 人类分数的比值, 100% 表示达到人类玩家的水准。 图中横轴是收集到的游戏帧数,即样本数量。 Rainbow DQN 需…

强化学习的模型

文章目录 前言一、强化学习是什么?二、基本模型1.基本框架2.学习过程 三.马尔科夫决策过程(Markov Decision Process. MDP)1.马尔科夫性质2.MDP的基本组成部分3.MDP的基本流程 四、基于模型和免模型的强化学习1.模型2.基于模型的强化学习&…

深度强化学习调研

深度强化学习(DRL) (一)强化学习 强化学习(Reinforcement Learning,简称RL)是机器学习领域的一个研究热点,当前已经广泛应用于工业制造、仿真模拟、机器人控制、优化与调度、游戏博…

强化学习总结

强化学习 一、强化学习概述 1.强化学习简介 强化学习最早可以追溯到早期控制论以及统计、心理学、神经科学、计算机科学等学科的一些研究。在最近的五到十年中,强化学习在机器学习和人工智能研究者中得到了大量的关注,它描绘了一种在不进行具体指导的情…

强化学习介绍

文章目录 1 什么是强化学习?2 强化学习的特征与特点3 强化学习的要素与框架3.1 Policy3.2 Reward3.3 Value3.4 model3.5 Return(cumulative future reward) 回报|未来累积回报3.6 Discounted return 折扣回报 4 强化学习流程5 例子 马里奥 (一定要看&…

强化学习(Q-learning)

强化学习RF简介 强化学习是机器学习中的一种重要类型,一个其中特工通过 执行操作并查看查询查询结果来学习如何在环境中表现行为。 机器学习算法可以分为3种:有监督学习(Supervised Learning)、无监督学习(Unsupervi…

强化学习简介

强化学习简介 强化学习(Reinforcement Learning,RL)是机器学习中的一个领域,是学习做什么(即如何把当前的情景映射成动作)才能使得数值化的收益最大化,学习者不会被告知应该采取什么动作,而是必须自己通过尝试去发现哪…

强化学习(一):简介——什么是强化学习?

本文将介绍强化学习的基本含义,了解什么是强化学习、强化学习的概念与基本框架以及强化学习中常见的问题类型。 什么是强化学习? 强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习&#xff0c…

机器学习算法(三十):强化学习(Reinforcement Learning)

目录 1 简介 1.1 什么是强化学习 1.2 强化学习的主要特点 1.3 强化学习的组成部分 2 强化学习训练过程 3 强化学习算法归类 3.1 Value Based 3.2 Policy Based 3.3 Actor-Critic 3.4 其他分类 4 EE(Explore & Exploit)探索与利用 5 强化…

强化学习入门这一篇就够了!!!万字长文

强化学习 强化学习入门这一篇就够了万字长文带你明明白白学习强化学习... 强化学习入门这一篇就够了 强化学习前言一、概率统计知识回顾1.1 随机变量和观测值1.2 概率密度函数1.3 期望1.4 随机抽样 二、强化学习的专业术语2.1 State and action2.2 policy-策略2.3 reward2.4 状…

关于gensim的一些使用记录

NLP神器 Gensim是一款开源的第三方Python工具包,用于从原始的非结构化的文本中,无监督地学习到文本隐层的主题向量表达。 支持包括TF-IDF,潜在语义分析(Latent Semantic Analysis,LSA),潜狄利克…

gensim官方文档实践笔记

中文文档比机翻还颠三倒四, 所以还是自己记录一下, 顺便加一些注解. 目录 文档document 语料库Corpus 语料库作用 语料库预处理 词汇编号 向量Vector 方法1: 特征向量(vector of features) 方法2: doc2bow 模型Model 语料库和向量空间 字符串转向量 语料库流Corpu…

gensim安装

输入以下命令即可: pip install gensim -i http://pypi.douban.com/simple --trusted-host pypi.douban.com以下是过程: 尝试1:直接在anaconda3上面搜索出来安装 速度太慢,失败 尝试2:更换pip源,如下所示…

Gensim:一款进行文本主题识别的 Python 工具库

从大量文本中自动提取人们谈论的主题(主题识别)是自然语言处理的基本应用之一。大型文本示例包括社交媒体订阅、消费者对酒店、电影和其他业务的评价、用户评论、新闻和客户发来的邮件。 在本中,将使用LDA 从 20Newsgroup 数据集 中提取主题的实战案例。欢迎深入探…