强化学习基础教程

一、博客资料

这里主要参考的 刘建平Pinard 老师的博客,地址:https://www.cnblogs.com/pinard

在此表示感谢!

强化学习(一)模型基础

1. 强化学习在机器学习中的位置

强化学习的学习思路和人比较类似,是在实践中学习,比如学习走路,如果摔倒了,那么我们大脑后面会给一个负面的奖励值,说明走的姿势不好。然后我们从摔倒状态中爬起来,如果后面正常走了一步,那么大脑会给一个正面的奖励值,我们会知道这是一个好的走路姿势。那么这个过程和之前讲的机器学习方法有什么区别呢?

强化学习是和监督学习,无监督学习并列的第三种机器学习方法,从下图我们可以看出来。

  • 强化学习与监督学习的区别:强化学习没有监督学习已经准备好的训练数据输出值。 强化学习只有奖励值,但是这个奖励值和监督学习的输出值不一样,它不是事先给出的,而是延后给出的,比如上面的例子里走路摔倒了才得到大脑的奖励值。同时,强化学习的每一步与时间顺序前后关系紧密。而监督学习的训练数据之间一般都是独立的,没有这种前后的依赖关系。

  • 强化学习与无监督学习的区别:也还是在奖励值这个地方。无监督学习是没有输出值也没有奖励值的,它只有数据特征。 同时和监督学习一样,数据之间也都是独立的,没有强化学习这样的前后依赖关系。

2. 强化学习的建模

我们现在来看看强化学习这样的问题我们怎么来建模,简单的来说,是下图这样的:

上面的大脑代表我们的算法执行个体,我们可以操作个体来做决策,即选择一个合适的动作(Action) A t A_t At。下面的地球代表我们要研究的环境,它有自己的状态模型,我们选择了动作 A t A_t At后,环境的状态(State)会变,我们会发现环境状态已经变为 S t + 1 S_{t+1} St+1,同时我们得到了我们采取动作 A t A_t At的延时奖励(Reward) R t + 1 R_{t+1} Rt+1。然后个体可以继续选择下一个合适的动作,然后环境的状态又会变,又有新的奖励值。。。这就是强化学习的思路。

3 强化学习要素

那么我们可以整理下这个思路里面出现的强化学习要素:

1. 环境的状态 S S S t t t时刻环境的状态 S t S_t St是它的环境状态集中某一个状态。
2. 个体的动作 A A A t时刻个体采取的动作 A t A_t At是它的动作集中某一个动作。
3. 环境的奖励 R R R t时刻个体在状态 S t S_t St采取的动作 A t A_t At对应的奖励 R t + 1 R_{t+1} Rt+1会在t+1时刻得到。

下面是稍复杂一些的模型要素:

4. 个体的策略(policy)π: 它代表个体采取动作的依据,即个体会依据策略π来选择动作。
最常见的策略表达方式是一个条件概率分布 π ( a ∣ s ) π(a|s) π(as), 即在状态 s 时采取动作 a 的概率。即 π ( a ∣ s ) = P ( A t = a ∣ S t = s ) π(a|s)=P(A_t=a|S_t=s) π(as)=P(At=aSt=s)。此时概率大的动作被个体选择的概率较高。
5. 价值(value): 个体在策略 π π π 和状态 s s s时,采取行动后的价值(value),一般用 v π ( s ) v_π(s) vπ(s)表示。
这个价值一般是一个期望函数。虽然当前动作会给一个延时奖励 R t + 1 R_{t+1} Rt+1, 但是光看这个延时奖励是不行的,因为当前的延时奖励高,不代表到了 t + 1 , t + 2 , . . . t+1,t+2,... t+1,t+2,...时刻的后续奖励也高。比如下象棋,我们可以某个动作可以吃掉对方的车,这个延时奖励是很高,但是接着后面我们输棋了。此时吃车的动作奖励值高但是价值并不高。因此我们的价值要综合考虑当前的延时奖励和后续的延时奖励。价值函数 v π ( s ) v_π(s) vπ(s)一般可以表示为下式:
在这里插入图片描述
6. 奖励衰减因子: 上式中的 γ γ γ即奖励衰减因子,在[0,1]之间。
如果为0,则是贪婪法,即价值只由当前延时奖励决定。如果是1,则所有的后续状态奖励和当前奖励一视同仁。大多数时候,我们会取一个0到1之间的数字,即当前延时奖励的权重比后续奖励的权重大。
7. 环境的状态转化模型 :可以理解为一个概率状态机,它可以表示为一个概率模型,即在状态 s s s下采取动作 a a a,转到下一个状态 s ′ s' s的概率,表示为 P s s ′ a P^a_{ss'} Pssa
8. 探索率 ϵ ϵ ϵ 这个比率主要用在强化学习训练迭代过程中,由于我们一般会选择使当前轮迭代价值最大的动作,但是这会导致一些较好的但我们没有执行过的动作被错过。因此我们在训练选择最优动作时,会有一定的概率 ϵ ϵ ϵ不选择使当前轮迭代价值最大的动作,而选择其他的动作。

以上8个就是强化学习模型的基本要素了。当然,在不同的强化学习模型中,会考虑一些其他的模型要素,或者不考虑上述要素的某几个,但是这8个是大多数强化学习模型的基本要素。

强化学习(二)马尔科夫决策过程(MDP)

https://www.cnblogs.com/pinard/p/9426283.html

强化学习(六)时序差分在线控制算法SARSA

https://www.cnblogs.com/pinard/p/9614290.html

强化学习(十三) 策略梯度(Policy Gradient)

https://www.cnblogs.com/pinard/p/10137696.html

强化学习(十四) Actor-Critic

https://www.cnblogs.com/pinard/p/10272023.html

强化学习(十五) A3C

https://www.cnblogs.com/pinard/p/10334127.html

强化学习(十六) 深度确定性策略梯度(DDPG)

https://www.cnblogs.com/pinard/p/10345762.html

二、视频资料

这里主要推荐 周沫凡老师 的视频教程,有【莫烦Python】网站及B站两种访问方式:

课程内容简介

1.1 什么是强化学习
1.2 强化学习方法汇总
1.3 为什么用强化学习 Why?
1.4 课程要求

Q-learning

2.1 什么是 Q Leaning
2.2 小例子
2.3 Q-learning 算法更新
2.4 Q-learning 思维决策

Sarsa

3.1 什么是 Sarsa
3.2 Sarsa 算法更新
3.3 Sarsa 思维决策
3.4 什么是 Sarsa(lambda)
3.5 Sarsa-lambda

Deep Q Network

4.1 什么是 DQN
4.2 DQN 算法更新
4.3 DQN 神经网络
4.4 DQN 思维决策
4.5 OpenAI gym 环境库
4.6 Double DQN
4.7 Prioritized Experience Replay (DQN)
4.8 Dueling DQN

Policy Gradient

5.1 什么是 Policy Gradients
5.2 Policy Gradients 算法更新
5.3 Policy Gradients 思维决策

Actor Critic

6.1 什么是 Actor Critic
6.2 Actor Critic
6.3 什么是 DDPG
6.4 Deep Deterministic Policy Gradient (DDPG)
6.5 什么是 Asynchronous Advantage Actor-Critic (A3C)
6.6 Asynchronous Advantage Actor-Critic (A3C)
6.7 Distributed Proximal Policy Optimization (DPPO)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值