尽管人工智能取得了巨大的进步,但在许多方面仍然存在局限。例如,在电脑游戏中,如果AI智能体未预先编程游戏规则,则必须尝试数百万次才能确定正确的选择。人类可以在更短的时间内完成相同的壮举,因为我们擅长通过使用语言将过去的知识转移到新的任务中。
在一个屠龙游戏中,AI智能体需要尝试许多其他的动作(对着墙或是花丛喷火),才能理解它必须杀死龙。然而,如果AI智能体理解语言,人类可以简单地使用语言来指示它:“杀死龙才能使游戏获胜”。
在人类如何概括技能并将其应用于新任务方面上,基于视觉的语言发挥着重要作用,这对于机器仍然是一个重大挑战。开发复杂的语言系统对于机器变得真正智能,并获得像人类一样学习的能力至关重要。
作为实现这一目标的第一步,百度IDL实验室开发了一个使用监督学习和强化学习的组合系统,允许虚拟教师向虚拟AI智能体教授语言,通过将语言与感知和动作连接起来,就像父母教他们的宝宝一样。
IDL实验室的结果表明,在训练结束后,AI智能体能够以自然的语言正确地解读老师的指令,并采取相应的行动。更重要的是,AI智能体开发了“zero-shot学习能力”,这意味着智能体能够理解潜在的语句,研究院发现,“这项研究使我们向教机器像人类一样学习迈进一步。”
论文链接:http://arxiv.org/abs/1703.09831
学习概况
该研究在称为XWORLD的2D迷宫般的环境中进行,百度的虚拟智能体需要根据虚拟教师发出的自然语言命令进行导航。一开始,智能体对这种语言一无所知,每一个字都同等的没有任何意义。 然而,当它探索环境时,如果执行命令成功(或失败),老师会给出积极的(或消极的)回应。
为了帮助智能体学习得更快,老师还会在智能体导航时询问有关环境的简单问题。智能体需要正确的回答问题。通过鼓励正确的行动/答案,惩罚不正确的行动/回答,经过多次试验和错误,老师得以训练智能体去了解自然语言。
一些示例命令包括:
- 请移动到苹果处。
- 你可以移动到苹果和香蕉之间的网格吗?
- 你能移动到红苹果处吗?
一些Q&A的例子:
- 问:北方的物体是什么?答:一根香蕉。
- 问:香蕉在哪里?答:北边。
- 问:苹果西边物体的颜色是多少? 答:黄色
结果
最后,智能体能够正确地解释教师的命令并导航到正确的地方。更重要的是,智能体开发了研究团队的所谓的“zero-shot learning ability”,这意味着即使是以前没有看到的全新命令,如果有足够的以前看过的相似形式的句子,仍然能够正确的执行任务。换句话说,智能体能够以已知的方式(语法)理解用已知单词组合的新句子。
例如,一个学习如何用刀切一个苹果的人将会知道如何用刀切火龙果。将过去的知识应用于新任务对于人来说非常容易,但是对于目前的端到端学习机器来说仍然是困难的。
虽然机器可能知道“火龙果”的样子,但是除非它已经使用包含该命令的数据集进行了明确的训练,否则它无法执行“用刀切割火龙果”的任务。相比之下,我们的智能体表现出能够转移它所知道的关于火龙果的视觉外观,以及“用刀切”的任务,即使没有经过确切的的训练,仍然可以成功进行用“用刀切割龙果”的任务 。
下图展现了我们的智能体成功执行导航任务测试。
导航语句
- 请移动到卷心菜的西边。
- 请移动到无花果的东边。
识别语句
- Q:东南边是什么?
- A:西瓜。
导航测试
- 请移动到无花果的西边。
导航语句
- 你可以移动到椰子处吗?
- 你可以移动到苹果处吗?
导航测试
- 你可以移动到西瓜处吗?
百度研究院的后续研究有两个方向:
- 一个是在当前2D环境中用自然语言命令教授智能体更多的能力,
- 另一个是将其迁移到虚拟3D环境。虚拟3D环境带来更多的挑战,而且更像是我们现实生活的环境。
而百度的最终目标,是让人类在现实环境中,采用自然语言来训练一个真正意义上的机器人。