论文笔记4:Language Understanding for Text-based Games using Deep Reinforcement Learning
参考资料:Language Understanding for Text-based Games Using ...
同名知乎:uuummmmiiii
由于本文进行了LSTM与DQN结合,在结构上其实并没有很大的新结构创新,粗略看了一下,了解了一下大致思想。
为帮助跟我一样的小白,如果有大神看到错误,还请您指出,谢谢~
创新点:将DQN与LSTM结合去解决文字游戏(test-based game,如MUD)
改进:在CNN结构前面加了LSTM处理文本信息(相当于对输入进CNN网络的状态进行一个预处理)
改进原因:因为普通的bag-of-word,bag-of-bigrams(请百度:该模型忽略掉文本的语法和语序, 用一组无序的单词,以词典或其他形式来表达一段文字或一个文档)状态表示法忽略了单词之间的顺序性,无法区分句子或段落构成的细微差别
带来益处:这种新的结合方式使得在处理文字游戏上有很大的性能提升
Abstract
针对基于文本的游戏,我们将文本描述映射为向量,可以捕捉到游戏状态的语义信息。
最后我们进行评估发现我们的算法性能更好,并且证明出状态表示的重要性。
Introduction
基于文本的游戏(如MUD):玩家看到的是只是对当前状态和下一动作的文本描述,但是潜在的状态无法直接进行观察,这是对于AI的一个很有挑战的问题(以前是直接观察一帧帧的图像)
作者给出了一张Fantasty World的状态描述:就是我站在桥上,往东走就可以走到陆地上.....
玩家在选择动作时应该将上述文本描述考虑得更周全,而bag-of-words方法无法捕捉到单词之间的相关性,无法区分由于在句子、段落中不同的语法结构而产生含义的细微差别。所以我们选择另外一种方式:使用word embedding转换成向量形式。
(word embedding,词嵌入,见吴恩达大神神经网络讲义,这里简单介绍一下:
就是模型中假设已经学到 I want a glass of orange ___.空格处是juice,如果当我见到一个新的句子 I want a glass of apple ___ .用word embedding方式,就很容易学到apple 与orange 的关系,可以根据orange推算出apple后面也是juice。这里就是有个固定的特征数,对一大堆词进行向量化表示,而apple与orange在大部分特征上数值相似,除了一些颜色等特征可能不同,可以推断这两种东西相近)
本文提出的网络(LSTM-DQN)中有两个模块:
一个是将语义信息转换为向量的LSTM模块(representation generator)。
一个是当给定向量表示形式的时候,得出分数,即DQN模块(action generator)。
我们最后评估:游戏中的任务完成数,积累的分数。
发现LSTM-DQN网络完成96%的任务,bag-of-words模型能完成82%,random模型完成5%
Results
对比了四个模型:LSTM-DQN,Random,Bow-DQN,BI-DQN,在两种游戏环境下。