强化学习(reinforcement learning)笔记

强化学习是一类算法, 是让计算机从零开始,通过不断地尝试, 从错误中学习, 最后找到规律, 从而达到目的的方法。用特定名词来说,就是agent会根据environment的变化采取相应的action,当结果符合我们的期望时就会得到一个正的reward,反之会得到负的reward。为了使期望reward最大化,agent会不断调整action,这就是学习的过程。
在这里插入图片描述

和监督学习的区别

强化学习通过reward调整action这点很容易让联人想到监督学习中的损失函数。两者的区别是监督学习是有标签的而强化学习无标签。
在这里插入图片描述
以下棋为例,监督学习方法是有棋谱(标签)的,机器根据棋谱调整走法。这种方法的缺陷是人类智慧有限,棋谱的方法不一定是最优的。而强化学习是从经验中学习,没有棋谱,没有人告诉机器下一步应该怎么走,完全是自发的行为,只是赢了会得到positive reward,输了会得到negtive reward。这样下很多盘棋后机器会有超出人的表现。在实际训练中,我们会训练两个agent,让它们互相下。著名的Alpha Go的训练方式是监督学习和强化学习的结合。前期用棋谱训练,等机器的技术水平到一定程度后再用强化学习的方式训练。

强化学习的难点

  1. reward delay
    仍然以下棋为例,在实际中并不是每走一步就能看到效果,有时候为了长远考虑会有短期的牺牲。
  2. Agent’s actions affect the subsequent data it receives
    比如在space invader游戏中,agent开始只会向左或向右移,我们要让它知道开火能获得reward。如何让机器探索未做过的action也是强化学习的重要任务。

强化学习算法分类

在这里插入图片描述
强化学习算法分为两类,Policy-based和Value-based。Policy-based算法会训练一个Actor,Value-based算法会训练一个Critic。两种算法可以结合起来。

Policy-based 算法

  1. 将神经网络作为actor,输入是机器对environment的observation(矩阵或向量表示),输出是不同的action(每一个action对应一个神经元)
  2. actor 的衡量标准:平均期望reward。
  3. 梯度上升算法,使reward最大化。

Value-based 算法

训练一个critic,作为衡量actor好坏的标准。

https://www.bilibili.com/video/BV1eE411T7BS?p=90.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值