微软开源Malmo项目,使用Minecraft测试人工智能算法

微软创建的 Malmo 项目将 Minecraft 作为高级人工智能研究的测试平台,于昨日宣布了开源。

Katja Hofmann(左)和 Matthew Johnson(right)称 Malmo 项目可加速人工智能研究。

微软创建的 Malmo 项目将 Minecraft 作为高级人工智能研究的测试平台,现在在开源许可下开放给了 GitHub 上从新手到老手等所有程序员。Malmo 项目以前被称为 AIX 项目,该平台的研发目的是为创业公司提供廉价而有效的测试人工智能程序的途径,而无需创造机器人来测试对物理物体的命令和理解。

在此之前,这一系统只对很少的计算机科学家开放过私人预览,它被设计用于帮助研究者开发先进的、更为普遍能做像学习、对话、决策以及完成复杂任务等工作的人工智能。

这是创造能增强人类智能的系统的关键——最终将帮助我们做任何事情,从做饭到做家务,从开车到在手术室里执行生死攸关的任务。

微软英国剑桥研究实验室的研究者 Katja Hofmann 是 Malmo 项目开发的领导人,她说这一系统将会帮助研究者们开发用于强化学习的新技术和新方法。在这个人工智能领域,代理有大量的试错空间可以学习完成一项任务,每当它们做出正确决策时都会获得奖励。

Hofmann 说:「我们正在努力开发工具以使人们在那些确实确实很难的研究问题上取得进步。」

例如,计算机科学家们已经特别擅长创造能理解我们说的话的工具了——无论是当我们向设备问路的时候,还是引导自动客户线路的时候。

但当涉及到真正领悟这些声波的含义时——好吧,多数情况下一个小婴儿会做得更好。

「我们已经训练人工智能去识别口述的模式了,但是底层技术是不会理解这些话的意思的。」Hofmann说,「它们仅仅是数据模式,和任何经验毫无关联。」

从事 Malmo 项目的微软研究员包括 Fernando Diaz, Evelyne Viegas, David Bignell, Alekh Agarwal, Matthew Johnson, Akshay Krishnamurthy, Katja Hofmann 以及 Tim Hutton(从左上开始)。

从理解到领悟

高级人工智能研究的关键目标之一是教会人工智能代理理解人类,就像我们理解彼此一样。伴随着 Malmo 项目的公开推出,其团队还添加了一项功能,它能让计算机科学家能创造出互相交谈、也能和人类交谈的 Bot。

Malmo 项目还能被用于教会人工智能进行手工制作——使用工具和资源去建造像桌子或剑一样的东西,并且学习如何独立地自我行走,不在山上摔倒或掉进熔岩坑。它们还能学会搭积木、走迷宫,模仿我们可能想让人工智能有朝一日能在现实生活中做的任何事情。

参与了 Malmo 项目私人预览中的研究者说,Minecraft 有丰富的、高度仿真的世界,无穷的合作与探索的可能性,非常适合通用人工智能研究。

「Minecraft 在很多方面上与真实世界十分接近,」参与过私人预览的西班牙巴伦西亚科技大学教授 Jose Hernandez-Orallo 说,「在这里太多的可能性了。」

做这类研究需要大量的反复试错,伴随着少量的、渐进的成功。这就是为什么当 Malmo 项目公开推出之时,它也会有另一特点:超频(Overclocking),即比普通 Minecraft 速度快得多的运行实验的能力。

微软研究人工智能外展服务的负责人 Evelyne Viegas 说这会让研究者们更快得到结果,并做出调整。

她说:「这是在给那些实验加速。」

测量进程的标准

已经提前了解过 Malmo 项目的人工智能研究者们说,此系统的另一关键优势在于它能让研究者通过见证在同一环境下运行的不同理论,从而把自己的成果和其他人的做比较。

Hernandez-Orallo 说人工智能研究者常常为测试他们的理论和算法而开发自己的系统。这让他们能够解决孤立的问题,但却很难知道那些结果和其他人的结果比起来会怎么样,或者能不能作为它们的补充。

Hernandez-Orallo 说有了像 Malmo 这样的项目,研究者们可以在相同的 Minecraft 设定下测试他们的系统。他对人工智能评价特别感兴趣,还在微软英国实验室里待了一个夏天以便能和 Malmo 项目的研究者们面对面地工作。他说:使用相同测试场所的功能真是「甚合我意」。

开源环境也能让研究者们更加容易地合作,分享研究见解并且将研究所得聚合起来。

「毫无疑问这能大大加快研究进程,」Malmo 项目开发组长 Matthew Johnson 说,他也在微软英国剑桥实验室工作。

欢迎所有程序员

Hofmann 和她的团队创建 Malmo 项目是为了帮助富有经验的人工智能研究者进行研究。但是他们惊喜地发现:任何人,无论是初有编程热情的青少年,还是努力培养下一代人工智能研究者的教授,他们都想要和它一起工作。

Viegas 说越来越多的新手程序员可以体验这一系统。

她说:「你需要掌握如何编程,但不一定非要是一个高级程序员。」

Malmo 项目平台包括了一个 Java 版的 Mod,以及能够帮助人工智能代理在 Minecraft 环境中感知和执行动作的代码。这两部分可以运行在 Windows、Linux 或 Mac OS 上,程序员可以采用任何他们熟悉的编程语言。

该团队还收到几位教授的消息,说想要将 Malmo 项目加入到他们的课程计划中。

这合情合理。Hernandez-Orallo 说,他的学生们常常在空闲时间玩 Minecraft 游戏,用 Malmo 项目做任务要比使用从研究论文中找出的一般算法更令人兴奋。

他说:「这将对教育产生影响,至少在大学层面上。」

Johnson 说已经看到有人用 Malmo 项目做学术研究了,而这也是开发这样一个项目的关键原因。但他承认想象一下有更主流的受众群体想要测试它也是很有趣的一件事。

他说:「如果我偶然看到一些 YouTube 视频在炫耀由我们的 Mod 导致的什么激动人心的新功能,那会让我一天都快乐无比。」

本文选自:Microsoft Blog ,作者:Allison Linn,机器之心编译;

©机器之心,最专业的前沿科技媒体和产业服务平台,每日提供优质产业资讯与深度思考,欢迎关注微信公众号「机器之心」(almosthuman2014),或登录机器之心网站www.almosthuman.cn查看更多精彩内容。