用Deep Recurrent Q Network解决部分观测问题!

一年一度的毕业季,在文章的开篇,我们先祝各位毕业生们前程似锦!

好了,回到正题!我们都知道,深度Q网络(Deep-Q-Network)最初是应用在让机器人打游戏,状态的输入常常是前几个画面的截图,但是有时候仅仅靠前面画面的图片是无法描述整个状态的,这就导致饿了部分观测的马尔可夫决策过程(Partially-Observable Markov Decision Process,POMDP)的情况出现。不过我们不慌,学者们将循环神经网络和DQN融合,提出了Deep Recurrent Q Network(DRQN),来解决部分可观测的问题。本文,我们来一探DRQN的究竟。

1、Partially-Observable Markov Decision Process

什么是部分可观测的马尔可夫决策过程?举个例子:

假设我们要训练一个agent来打上图中的游戏,如果只给当前的一幅图片作为state,是远远不够的。比如对于Pong这个游戏来说,agent仅仅观测到了一幅图,可以知道白色的小球的位置,但是其速度,方向是完全无法观测到的。而速度、方向这些信息是非常重要的,因为这将会决定最优的踏板的位置。这样,MDP问题就变成了POMDP问题。

形式上来说,POMDP 可以表达为 6个变量:(S, A, P, R, X, O). 假设这几个变量分别为:状态,动作,转移函数,奖励,X 表示真实的环境,但是agent 只能感知其部分信息 o

2、DRQN细节

2.1 DRQN网络结构

DRQN作为DQN的一种变体,其拥有的特性和DQN都是一样的,比如:双网络结构和经验回放。只是网络结构作了一定的调整。因此,我们先来回顾一下2015年的论文中提出的DQN的结构,然后通过对比来看一下DRQN的结构。

DQN

DQN的结构如上图所示,state定义为前四帧画面,通过卷积层和全链接层来得到每一个动作的Q值。

DRQN

DRQN的结构如下图所示,DRQN中将DQN中的一个全链接层替换为了LSTM结构,每一次的输入由四帧画面变味了仅仅一张画面。LSTM的输出经过一个全链接层之后变为每个动作的Q值。

2.2 DRQN训练

我们都知道,LSTM可以对历史情况进行记忆,但是我们要怎么来训练LSTM中的参数呢?有两种解决方案:序列化更新(Bootstrapped Sequential Updates)和随机更新(Bootstrapped Random Updates)

序列化更新 从经验池中获取完整的序列,然后从序列的开始进行训练和更新,直到序列结束。 这种方式的优势是能够更好的训练RNN的参数(因为是完整的序列,可以使得LSTM有更好的记忆性),但是这种方法违背了DQN的随机采样原则(为什么要随机采样,保证数据的独立)。

随机更新 从经验池中采样完整的序列,然后随机选择一个时间点和后面的部分step(原文是 unroll itera- tions timesteps ),来训练和更新网络参数。对于每次训练来说,LSTM的初始state都是zero-state。 这种方式训练符合DQN的随机采样原则,但相对的,每次训练LSTM的state必须从zero-state开始,而且只能观测部分的timestamp,因此LSTM对于长时间的记忆效果不能保证。

经过试验表明,两种更新方式的效果是差不多的。文章中所做的实验是基于随机更新的策略。

3、实验效果

文中介绍了一种名为Flickering Pong的游戏,在这个游戏中,游戏的画面在50%的情况下是完整可观测的,在50%的情况下是模糊的。通过这种方法,文中就模拟了一个部分可观测的马尔可夫环境。

3.1 对比试验

文中对比了三种不同的网络:基于前4帧的DQN,基于前10帧的DQN以及DRQN。实验结果如下:

对于左图,文中对比了三种试验随着训练的深入,agent所能获得的分数的高低,可以看到,当我们提供给agent的帧数增加时,DQN的效果是可以得到提升的。但是DRQN的效果远好于DQN。

对于右图,我们对比了模糊比例不同时三种模型的泛化效果,可以看到,DRQN体现了极强的泛化性能。同时DQN随着可观测比例的提升(模糊比例的下降),效果呈现先上升后下降的趋势。

3.2 Atari游戏中的效果对比

在不同的Atari游戏中,DRQN的性能远好于标准的DQN:

同时,对于标准的Atari游戏增加50%的画面模糊比例,类似于刚才的试验,DRQN的效果也是远好于DQN的:

参考文献

1、https://www.cnblogs.com/wangxiaocvpr/p/5929638.html 2、https://arxiv.org/abs/1507.06527

推荐阅读:强化学习系列

实战深度强化学习DQN-理论和实践

DQN三大改进(一)-Double DQN

DQN三大改进(二)-Prioritised replay

DQN三大改进(三)-Dueling Network

深度强化学习-Policy Gradient基本实现

深度强化学习-Actor-Critic算法原理和实现

深度强化学习-DDPG算法原理和实现

对抗思想与强化学习的碰撞-SeqGAN模型原理和代码解析

有关作者:

石晓文,中国人民大学信息学院在读研究生,美团外卖算法实习生

简书ID:石晓文的学习日记(https://www.jianshu.com/u/c5df9e229a67)

天善社区:https://www.hellobi.com/u/58654/articles

腾讯云:https://cloud.tencent.com/developer/user/1622140

原文发布于微信公众号 - 小小挖掘机(wAIsjwj)

原文发表时间:2018-07-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器之心

教程 | 用于金融时序预测的神经网络:可改善移动平均线经典策略

3328
来自专栏媒矿工厂

视频编码性能提升新途径——面向编码的动态预/后处理技术

2017年9月17日至20日,IEEE国际图像处理会议(ICIP 2017)在北京国家会议中心举办,国内外许多学术界以及工业界的专家学者们都与会进行交流与讨论。...

4765
来自专栏大数据挖掘DT机器学习

文本特征提取方法研究

一、课题背景概述 文本挖掘是一门交叉性学科,涉及数据挖掘、机器学习、模式识别、人工智能、统计学、计算机语言学、计算机网络技术、信息学等多个领域。文本挖掘就是从大...

1.1K13
来自专栏PPV课数据科学社区

一个小例子完美解释Naive Bayes(朴素贝叶斯)分类器

摘要: Naive Bayes分类器的解释有很多,但是基于一个小例子来解释的不多,本文就是基于一个简单通俗易懂的小例子来解释Naive Bayes分类器。 最简...

3444
来自专栏数据科学与人工智能

【陆勤学习】文本特征提取方法研究

一、课题背景概述 文本挖掘是一门交叉性学科,涉及数据挖掘、机器学习、模式识别、人工智能、统计学、计算机语言学、计算机网络技术、信息学等多个领域。文本挖掘就是从大...

2839
来自专栏新智元

【重磅】谷歌大脑:缩放 CNN 消除“棋盘效应”, 提升神经网络图像生成质量(代码)

【新智元导读】谷歌研究院官方博客几小时前更新文章,介绍了一种名为“缩放卷积神经网络”的新方法,能够解决在使用反卷积神经网络生成图像时,图片中尤其是深色部分常出现...

9228
来自专栏企鹅号快讯

PyMC3和Theano代码构建贝叶斯深度网络,61页PPT探索贝叶斯深度学习以及实现

【导读】近日,Novartis的数据科学家Eric J. Ma进行了一次关于贝叶斯深度学习理论和实现的演讲,演讲题目是《An Attempt At Demyst...

3177
来自专栏算法channel

2000字详解:极大似然估计, 最大后验概率估计

统计学中,似然函数是一种关于统计模型参数的函数。给定输出x时,关于参数θ的似然函数为L(θ|x),似然函数在数值上等价与给定θ后的

2080
来自专栏机器之心

资源 | 你是合格的数据科学家吗?30道题测试你的NLP水平

选自Analyticsvidhya 作者:Shivam Bansal 机器之心编译 参与:黄小天、李亚洲、Smith 近日,analyticsvidhya 上出...

4018
来自专栏机器之心

ICLR 2018论文评审结果出炉:一文概览论文 TOP 5

3655

扫码关注云+社区

领取腾讯云代金券