微软研究院开源项目TextWorld:可用于强化学习训练的文本游戏

【导读】可以说,对话系统和自然语言处理(NLP)是现代人工智能(AI)中应用最广泛的部分。 尽管NLP研究不断取得进展,但和人相比,今天的大多数对话系统仍然相当原始。 大多数流行的人工智能语音助手,例如Alexa或Google智能助理,只能处理短的对话,但缺乏认知能力,如记忆,规划甚至常识。 我们如何建立一个可重复和可量化的机制,用于在复杂的会话功能中训练AI? 最近,微软研究院蒙特利尔实验室的研究人员发布了一个名为TextWorld的开源项目,该项目试图使用基于文本的游戏训练强化学习代理。


作者|Jesus Rodriguez

编译|专知    

整理|Yingying,李大囧


基于文本的游戏

在AI代理正在涉猎复杂的多人游戏(如Dota2或Quake III)的时代,谈论基于文本的游戏似乎并不常见。虽然多人游戏中的图形环境非常适合训练代理进行基于空间和时间的规划,但基于文本的游戏可以发挥类似的作用,开发高级会话技能,如可供性提取,记忆和规划,探索等等。


从概念上讲,基于文本的游戏是复杂的交互式模拟,其中文本描述游戏状态,而玩家输入文本命令来进行游戏。在每个命令之后,游戏通常提供一些反馈以通知玩家该命令如何改变游戏环境。典型的基于文本的游戏提供了一系列要解决的难题,如收集宝藏,到达某地等。以传说中的Zork游戏为例,如下图所示。游戏使用自然语言来描述世界状态,接受玩家的行为,并报告环境中的后续变化。



基于文本的游戏的丰富性和复杂性使其成为培养强化学习代理的理想环境。如果我们将基于文本的游戏推断到强化学习代理的上下文,文本既可以扮演行动角色,也可以扮演观察空间。在这两种情况下,空间的复杂性大大提高,这为强化学习代理带来了许多挑战。


基于文本的游戏中的强化学习挑战


基于文本的游戏唯一简单的事情是通过终端的输入/输出机制。除此之外,基于文本的游戏给强化学习代理带来了许多挑战:


部分可观察性:在强化学习的背景下,基于文本的游戏可被视为部分可观察的环境。在任何给定时间,仅向玩家呈现当前游戏环境的快照,甚至许多本地细节可能在观察中不明显。


探索与平衡:在整个游戏过程中,玩家需要进一步平衡探索环境的能力与利用即时奖励。


长期信用分配:稀疏奖励是基于文本的游戏所固有的,其中代理必须在观察环境状态的变化或获得奖励信号之前生成一系列动作。知道哪些行动产生了特定的奖励对强化学习代理人来说变得非常具有挑战性。


TextWorld简介


TextWorld的想法不是直接创建可以击败特定的基于文本的游戏的强化学习代理。这是以前做过的。 TextWorld做的是通过简单的配置,帮助开发者快速生成一个可用于强化学习的文本游戏。它改善了在高度控制的游戏空间中强化学习算法的评估和可解释性。


从功能的角度来看,TextWorld是一个Python框架,用于创建基于文本的游戏环境,可用于训练强化学习代理。该框架有两个主要组件:游戏生成器和游戏引擎。游戏生成器将高级游戏规范(例如房间数,对象数,游戏长度和获胜条件)转换为Inform 7语言的可执行游戏源代码。游戏引擎是一个简单的推理机器,通过使用简单的算法,如一步向前和向后链接,确保生成的游戏的每一步都是有效的。




使用TextWorld,可以基于一组特定参数生成基于文本的游戏的组合集。 TextWorld的游戏生成器将游戏的高级规范作为输入,并输出相应的可执行游戏,其中包含特定参数,例如房间数,对象数,任务长度,获胜条件以及文本选项生成选项。


强化学习模型可以使用一个简单的API与TextWorld交互,该API可以封装在几行Python代码中:

env = textworld.start("zork1.z5")
game_state = env.reset() # Reset/initialize the game.
reward, done = 0, False
while not done:
# Ask the agent for a command.
command = agent.act(game_state, reward, done)
# Send the command to the game and get the new state.
game_state, reward, done = env.step(command)


使用该模型,开发人员可以为强化学习代理创建丰富的自然语言训练环境,以帮助开发记忆,上下文分析或长期规划等技能。 TextWorld在Github上已经开源(https://github.com/microsoft/textworld),可与许多流行的深度学习框架互操作,如TensorFlow,PyTorch和微软新的强化学习武器:Bonsai。


TextWord 项目地址:

https://www.microsoft.com/en-us/research/project/textworld/


相关论文:TextWorld: A Learning Environment for Text-based Games

https://arxiv.org/abs/1806.11532


原文链接:

https://towardsdatascience.com/whats-new-in-deep-learning-research-microsoft-s-textworld-is-the-openai-gym-of-language-learning-e726d64eb8a3


-END-

专 · 知


人工智能领域主题知识资料查看与加入专知人工智能服务群

专知AI知识技术服务会员群加入人工智能领域26个主题知识资料全集获取欢迎微信扫一扫加入专知人工智能知识星球群,获取专业知识教程视频资料和与专家交流咨询


请PC登录www.zhuanzhi.ai或者点击阅读原文,注册登录专知,获取更多AI知识资料

请加专知小助手微信(扫一扫如下二维码添加),加入专知主题群(请备注主题类型:AI、NLP、CV、 KG等)交流~


 AI 项目技术 & 商务合作:bd@zhuanzhi.ai, 或扫描上面二维码联系!


关注专知公众号,获取人工智能的专业知识!

点击“阅读原文”,使用专知

展开全文
Top
微信扫码咨询专知VIP会员