强化学习
文章平均质量分 76
Alice熹爱学习
做个终身学习者,持续迭代;公众号-极客X养成计划;简书-不会停的蜗牛
展开
-
什么是 Q-learning
我们以一个迷宫寻宝的游戏为例来看什么是 Q-learning。在这个游戏中,agent 从一个给定的位置开始,即起始状态。 在不穿越迷宫墙壁的前提下,在每个状态时,都可以选择上下左右四个方向走一步,或者原地不动, 上下左右这四个动作的每一个都会将 agent 带到网格的一个新的单元格,即新的状态, 在迷宫中有一个网格处有宝箱,这个网格就是目标状态, 此外,在某些网格处还有一些炸弹, ...原创 2018-09-15 01:35:58 · 2443 阅读 · 0 评论 -
强化学习第7课:交叉熵方法的一些局限性
上次介绍的交叉熵方法,交叉熵方法虽然非常有效,但是也有一些缺点。例如,如果你只尝试100次的话,那么可能会有一些稀少的情况,在这100次中只出现那么一两次。这样的话,会得到一个非常奇怪的概率分布,可能会一直重复某一个行动。也许你可以通过增加实验的次数来改进这个问题,比如说100次增加到10000次,但是如果骑自行车摔倒1万次的话,那会非常疼。这时可以用 smoothing要做的就是在正规化之...原创 2018-11-23 20:59:25 · 1101 阅读 · 0 评论 -
强化学习第6课:什么是 Crossentropy 方法
上次讲了马尔科夫决策过程,今天让我们来看看要如何求解这个过程?求解方法不止有一个,有一种思路是,我们有一个 policy,即有了行为和状态的概率分布。对其进行初始化,可以是随机的,也可以根据具体问题用一些先验知识初始化。然后想要改进这个 policy,可以通过获得数据,玩几次游戏,不断重复,policy 会随着这个过程调整变得越来越好。符合这个思想的有一个算法叫做: crossentro...原创 2018-11-23 20:56:53 · 509 阅读 · 0 评论 -
强化学习第5课:什么是马尔科夫决策过程
在强化学习中,有一个非常常见的决策过程叫马尔克夫决策过程。它和我们前面讲的决策过程是有一样的结构,只不过它会有更多限制。这里同样也有 agent 和环境,只不过还就多了一个状态,用 s 来表示。状态 state 是 agent 可以在环境中所观察到的东西, 然后 agent 可以选择一个行为,并从环境中获得反馈。所有的行为用 a 表示,所有的状态用 s 表示。r 代表 agent 可以获得的...原创 2018-11-23 20:55:42 · 626 阅读 · 0 评论 -
强化学习第4课:这些都可以抽象为一个决策过程
上图是一个一般的决策过程,里面包括代理和环境。这个过程有两步,首先你的代理会观察环境的一些特质,有时是传感器感知到的,有些是输入的用户特征。然后代理会选择一个行为,将这个行为反馈给环境。之后代理不仅仅会收到在这个行为下的环境的反馈,同时还以某些方式,影响着环境改变着环境。例如,你不仅收到了用户是否点击了你的横幅广告的反馈,还影响着你的用户基础。图中这条线下面一般我们是没有办法控制的,环...原创 2018-11-23 20:54:56 · 337 阅读 · 0 评论 -
强化学习第3课:有些问题就像个赌局
在横幅广告这个任务中,网站就是它的 agent ,是可以采取一些行动的。这个网站可以观察到用户们所浏览的网页,并且能够采取一个行动。它的 action 就是,挑选一个横幅,然后运行网页时就展示这个横幅广告。最后代理会拿到 feedback,就是这个用户是否点击了这个横幅广告。其他的例子,例如药物治疗方面。病人去看医生,医生就是这个 agent,医生观察一些症状,并给出一个治疗方案,然后...原创 2018-11-23 20:54:17 · 285 阅读 · 0 评论 -
强化学习第2课:强化学习,监督式学习,非监督式学习的区别
图片来源现在让我们看一下强化学习和其他机器学习方法的对比。在监督式学习中,我们有数据集,还有数据对应的标签。主要的任务是要让预测值尽量接近于这些标签。监督学习还有一个很重要的特点,就是它的数据要满足独立性。这对于使用SGD等算法,需要对数据进行采样时非常重要。而在强化学习中却没有这些假设条件:我们没有数据集,但是我们有一个系统,可以从中取样数据。我们也没有想要得到的结果标签,因为没...原创 2018-11-23 20:52:44 · 2509 阅读 · 1 评论 -
强化学习第1课:像学自行车一样的强化学习
机器学习算法主要可以分为监督式,非监督式,强化学习三类。在监督式学习中,我们有数据 x 和标签 y。我们想要找到一个函数来连接 x 和 y。可以选择决策树,线性回归等模型,然后训练这些模型使损失函数达到最小。例如我们有一个横幅广告预测点击率的问题:横幅的特征可以是,主题,想要推广的内容,挂在哪个页面,会浏览这个页面的用户的特征。想要预测的变量只有一个,就是用户是否会点击这个横幅广告。这...原创 2018-11-23 20:52:03 · 397 阅读 · 0 评论 -
用一个小游戏入门深度强化学习
今天我们来用深度强化学习算法 deep Q-learning 玩 CartPole 游戏。强化学习是机器学习的一个重要分支,通过强化学习我们可以创建一个 agent,让它与环境不断地互动,不断试错,自主地从中学习到知识,进而做出决策。如图所示,agent 收到环境的状态 state,做出行动 action,行动后会得到一个反馈,反馈包括奖励 reward 和环境的下一个状态 next_stat...原创 2018-10-05 03:16:07 · 931 阅读 · 0 评论 -
强化学习 8: approximate reinforcement learning
上次提到一个问题,就是如何有效的将交叉熵算法用于很大的数据量的问题上。前面说过,对于骑自行车这种可能只有十个 state,四个 aciton 的小问题上面,交叉熵可以解决,但如果在自动驾驶,或者打游戏上面,它却不行,因为这时我们没有办法再存储一个表格来记录所有可能状态的所有可能行为的概率,因为这可能有几十亿的状态,或者是一个连续空间,是没有办法做记录的。存储这样的表格不仅是不可能的,也是没有效...原创 2018-11-23 21:00:27 · 867 阅读 · 0 评论