用强化学习玩文本游戏

导语 随着 DeepMind 成功地使用卷积神经网络(CNN)和强化学习来玩 Atari 游戏,AlphaGo 击败围棋职业选手李世石,强化学习已经成为了机器学习的一个重要研究方向。除此之外,随着人工智能的兴起,自然语言处理在聊天机器人和智能问答客服上也有着广泛的应用。之前在一篇博客里面曾经介绍了强化学习的基本概念,今天要介绍的是强化学习在文本领域的应用,也就是如何使用强化学习来玩文本游戏。要分享的 Paper 是 Deep Reinforcement Learning with a Natural Language Action Space,作者是 Microsoft 的 Ji He 与他的合作者们。

随着 DeepMind 成功地使用卷积神经网络(CNN)和强化学习来玩 Atari 游戏,AlphaGo 击败围棋职业选手李世石,强化学习已经成为了机器学习的一个重要研究方向。除此之外,随着人工智能的兴起,自然语言处理在聊天机器人和智能问答客服上也有着广泛的应用。之前在一篇博客里面曾经介绍了强化学习的基本概念,今天要介绍的是强化学习在文本领域的应用,也就是如何使用强化学习来玩文本游戏。要分享的 Paper 是 Deep Reinforcement Learning with a Natural Language Action Space,作者是 Microsoft 的 Ji He 与他的合作者们。

对于强化学习而言,那就不得不提到 Markov 决策过程(Markov Decision Process)。它是由状态(State),动作(Action),状态转移概率(State Transition Probability),折扣因子(Discount Factor),奖励函数(Reward Function)五个部分构成。强化学习做的事情就是该 agent 在某一个时刻处于某个状态 s,然后执行了某个动作 a,从整个环境中获得了奖励 r,根据状态 s 和奖励 r 来继续选择下一个动作 a,目标是让获得的奖励值最大。整个过程其实是一个不断地从环境中执行动作和获得奖励的过程,通过引入动作值函数 Q(s,a) 的概念,介绍了 Q-learning 这个基本算法。通过 Q-learning 来让 agent 获得最大的奖励。

在实际的生产环境中,状态空间 S 很可能是十分巨大的,如果对于 Atari 游戏的话,动作空间 A 是有限的(例如上下左右移动,攻击,躲避等)。因此 DeepMind 在处理这个问题的时候,创新性地使用了卷积神经网络(CNN)和强化学习(RL)两者结合的解决方案。通过 CNN 来读取游戏图像,然后神经网络输出的是动作值函数 Q(s,a),其中 a 就是游戏手柄上的几个动作按钮。然后使用周围环境的反馈和强化学习方法来获得相应的样本,从而训练整个 CNN 神经网络。

下面来介绍本文的正式内容。首先文本游戏和视觉游戏有一定的差别,视觉游戏的状态就是当前的屏幕图像,文本游戏的状态是一段文本描述,然后玩家来给出一个合适的动作进入下一个状态。例如:白色的文字描述就是当前的状态,蓝色的文字就是玩家要选择的动作。

当玩家选择了其中一个状态(例如选择了第一个 A Lister sandwich)之后,就会进入下一个状态,如图所示。

注:关于文本游戏 Machine of Death 的代码和基本信息,可以参见 https://github.com/jvking/text-games.

综上所述,DRRN 的伪代码如下:

DRRN 相比另外两个模型其创新点在于分别使用了两个网络来映射状态文本和动作文本,因为如果将长文本和短文本直接拼接输入单个神经网络结构的时候,可能会降低 Q 值的质量,所以把 state-text 和 action-text 分别放入不同的网络结构进行学习,最后使用内积合并的方式获得 Q 值的方法会更加优秀。

参考文献:

Deep Reinforcement Learning with a Natural Language Action Space

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

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

【深度】Peacock:大规模主题模型及其在腾讯业务中的应用

如果用户最近搜索了“红酒木瓜汤”,那么应该展示什么样的广告呢?从字面上理解,可能应该返回酒水或者水果类广告。可是你知道吗?“红酒木瓜汤”其实是一个民间丰胸秘方。...

5945
来自专栏数据派THU

独家 | 从零开始用python搭建推荐引擎(附代码)

当今社会的每个人都面临着各种各样的选择。例如,如果我漫无目的想找一本书读,那么关于我如何搜索就会出现很多可能。这样一来,我可能会浪费很多时间在网上浏览,并且在各...

1054
来自专栏量子位

破解AI大脑黑盒迈出新一步!谷歌现在更懂机器,还开源了研究工具

? “还认为神经网络是黑盒子?再想想吧 :)” 几个小时前,谷歌AI领域的高级研究科学家Greg Corrado在推特上发出这样一句话。随后,谷歌传奇人物Je...

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

tensorflow高质量资料汇总

tensorflow高质量资料,让您又快又好地学习和应用tensorflow。 本文汇总tensorflow的高质量资料,包括:文档、论文、书籍、课程和案例。 ...

3395
来自专栏机器之心

学界 | 价值传播网络,在更复杂的动态环境中进行规划的方法

规划是许多领域人工智能体的关键组成部分。然而,经典规划算法的局限性在于,对于每种可能的规划实例,人们都需要知道如何为其搜索最优(或至少合理的)方案。环境动态和状...

561
来自专栏AI科技大本营的专栏

周志华团队和蚂蚁金服合作:用分布式深度森林算法检测套现欺诈

【AI科技大本营导读】互联网公司每天都面临着处理大规模机器学习应用程序的问题,因此我们需要一个可以处理这种超大规模的日常任务的分布式系统。最近,以集成树为构建模...

1312
来自专栏AI科技评论

动态 | Google 开源 AdaNet:快速灵活的轻量级 AutoML 框架

AI 科技评论编者按:近期,Google 开源了轻量级 AutoML 框架—— AdaNet,该框架基于 TensorFlow,只需要少量的专家干预便能自动学习...

522
来自专栏腾讯技术工程官方号的专栏

腾讯AI Lab开源世界首款自动化模型压缩框架PocketFlow:将深度学习装进口袋

? 导语:腾讯AI Lab机器学习中心今日宣布成功研发出世界上首款自动化深度学习模型压缩框架——PocketFlow,并即将在近期发布开源代码。这是一款面向移...

8.3K1
来自专栏新智元

【重磅】谷歌第二代深度学习系统TensorFlow首次解密(70PDF下载)

Google资深系统专家Jeff Dean在最近的湾区机器学习大会做了 Large-Scale Deep Learning for Inelligent Com...

2425
来自专栏数据派THU

收藏 | 27个机器学习小抄(附学习资源)

1644

扫码关注云+社区