用游戏测试人工智能,盘点三大开源3D测试环境

简介:

《我的世界》对于José Hernández-Orallo而言并不陌生,他是一名计算机科学家,正在使用这款游戏进行自己的研究。他在瓦伦西亚理工大学的研究团队设计了一种测试机器智能性能的基准,这种方法的设计灵感来源于他看到自己的孩子在3D虚拟世界中游戏的情形。在《我的世界》中,玩家通常需要通过互动解决问题,而不是射杀怪物。

用游戏测试人工智能,盘点三大开源3D测试环境《我的世界》是一款风靡全球的游戏,现在科研人员们正在使用它来测试人工智能

2014年,微软购买了《我的世界》的所有权,这家科技巨头的研究机构——微软研究院随后在此之上设计了一个用于科研的新版本,让计算机程序和科学家们可以探索和自定义游戏中的3D环境。随后,微软邀请了包括Hernández-Orallo在内的一些外部研究人员下载了这个机器友好版本的《我的世界》。从2015年7月起,微软将其完全开放,现在任何人都可以免费使用它,微软希望以此加快人工智能领域的研究速度。

人工智能在各种游戏中的研究最近变得非常火爆,很多公司正像微软一样在游戏中投入研究力量。12月3日,DeepMind开放了自己的3D虚拟世界程序DeepMind Lab,供所有开发人员下载和自定义使用。这家谷歌下属公司设计的虚拟环境一开始被用于训练自己的人工智能程序。仅仅两天以后,OpenAI发布了一个「元平台」允许人工智能程序在其中与最初为人类玩家设计的十几款3D游戏互动,另外,这个环境还包含了一些网络浏览器与手机app。

这三个工具让研究人员与软件开发者们可以轻松地开展自己的实验,测试程序在遇到前所未见的问题时如何进行解决,同时可以帮助程序在类似真实场景的环境中进行自我训练。「这样的虚拟环境将会为人工智能的发展奠定基础,」西雅图华盛顿大学的机器学习研究者Pedro Domingos说道。

DeepMind Lab,一开始被用于训练谷歌自己的人工智能程序,现在已经向所有开发者开放

Atari算法

人工智能是各种视频游戏的老玩家,但在早期,每个用于通关的算法都是特殊定制的。近年来,人们的研究重点开始转向于使用机器学习让程序自我积累经验。在2015年上半年,DeepMind推出的算法在Atari游戏中拥有了超越人类玩家的水平,算法通过不断试错来获得游戏高分,设计者并没有告诉程序每个游戏的目标是什么。

Atari游戏仅仅是2D世界而已。像《我的世界》这样的「第一人称」3D 视频游戏可以让玩家置身于一个充满立体感的环境中,相比前者更接近于真实世界,因此吸引了更多研究者的目光。

在《我的世界》中,玩家可以和虚拟世界中的砖块互动,使用它们盖房子,同时也可以探索路线,和游戏世界中的其他内容展开交互。面向开发者的版本被称为Malmo,允许机器算法像人类玩家一样在游戏中进行探索。Hernández-Orallo 正在使用Malmo 来探究虚拟环境是否可用于创建机器智能的基准。不同算法可以相互竞争,看看哪一个可以将砖块搭建成某个物体的形状,或者比较它们在同一个迷宫中寻路所需的时间,这种测试的涵盖面相比图灵测试——机器智能最有名的测试方式——要广泛的多。

让《我的世界》吸引人工智能学者们的另一个原因是,在游戏中玩家们可以打字互相交流。「这可以帮助专家们研究人工智能在现实世界中与人类互动的情况,」微软研究院的科学家Katja Hofmann 说道,她在英国剑桥领导着开发Malmo 的团队。

目前约有100个研究机构正在使用Malmo 3D 世界,它由微软研究院开发,用于人工智能研究

训练机器人

「虚拟世界的人工智能训练对于机器人的发展大有益处,」Hofmann 说道。「因为虚拟环境的定制成本很低,定制速度和安全性也有保障。虚拟环境也可以让机器人研究者们专注于解决机器人的智能问题——机械的问题有时的确令人分心。」

除了Hernández-Orallo 以外,微软研究院还与不少其他研究机构合作开展了一系列Malmo 项目。Hofmann 认为真实的用户数量不止于此,也许有100家。

Malmo 平台包括Java 版本的模块,以及帮助智能体在 Minecraft 环境中感知和操作的代码。这两个组件可以在 Windows,Linux 或 Mac OS 上运行。

DeepMind Lab 和 Malmo 类似,也允许研究者创建迷宫,让不同算法学习如何寻路,获得奖励。DeepMind 正在尝试将「更自然的元素」(如起伏的地形和植物)整加入到这个虚拟世界中。目前这个3D 环境已经开源,DeepMind 希望在其他研究者的帮助下,这个平台能够更加复杂,从而训练更聪明的训练算法。「通过开源,我们可以让所有人参与进来,不断改进这个项目,」DeepMind 的一位发言人说道。

OpenAI 的元平台,Universe,相比前两个3D 世界则更进一步。通过为同一个人工智能程序提供多种不同类型的环境,这一平台或许可以解决领域内最棘手的问题:如何创建一个可以解决任何新问题的算法。目前的深度神经网络——通过模仿脑细胞和视觉皮质层的结构创建的计算机系统——可以快速学会在3D 迷宫中寻路,但同样一个系统却无法将自己学会的方法用于在其他迷宫中导航。「你仅仅改变一下迷宫的颜色,系统就会迷失其中了,」Hernández-Orallo 说道。「这就是目前最先进的技术,令人哭笑不得。」

看来,人工智能的发展还有很长的路要走。目前微软现在正努力让 Malmo 可以在 Universe 中使用。「拥有一个社区平台将使所有人从中受益,」OpenAI 的共同创始人,首席技术官 Greg Brockman 说道。


作者:机器之心

来源:51CTO

相关文章
|
1月前
|
机器学习/深度学习 人工智能 分布式计算
人工智能,应该如何测试?(六)推荐系统拆解
该文介绍了推荐系统的基本概念和实现思路。推荐系统通过预处理筛选候选集合,然后利用二分类模型预测用户对内容的喜好概率,再按概率排序选择Top N内容推荐给用户。文中提供了一个使用Spark ML库的简单模型训练DEMO,涉及数据预处理、特征工程和逻辑回归模型。此外,还提及了词向量在处理文本特征中的重要性,它能捕捉词与词之间的关联性。推荐系统的实际应用远比示例复杂,但这个例子有助于理解其核心流程。
23 0
|
5月前
|
Web App开发 人工智能 测试技术
软件测试/人工智能|一文教你配置selenium环境
软件测试/人工智能|一文教你配置selenium环境
42 0
|
9天前
|
人工智能 测试技术
测试数据不再难,人工智能批量生成给你用!
本文介绍了如何利用ChatGPT生成测试数据。测试数据是验证功能和触发异常场景的关键,设计时需全面考虑等价类、边界值和正交法。实践中,先明确数据类型、格式和需求,然后向ChatGPT提供相关信息。例如,对于只能输入中国手机号的输入框,初始提示可能只包含正常手机号,但应进一步补充异常场景,如非数字、长度错误、非中国号码、特殊字符、空输入等。此外,可通过指定yaml格式来满足代码使用需求。总结来说,生成测试数据需清晰定义需求,拆分任务,并系统测试各种变化。
20 2
|
16天前
|
人工智能 测试技术
探索人工智能在测试领域的新纪元:AI编写测试用例的前景
本文介绍了测试用例的重要性及其基本组成元素,如模块、标题、前置条件等。通过实践演练展示了如何利用ChatGPT自动生成测试用例,包括关键词精确匹配、模糊匹配、异常输入和搜索结果为空的场景。通过向ChatGPT提供详细需求和格式规范,可以得到Markdown格式的测试用例,然后导入Excel进行归档。关键在于清晰阐述需求、逐步细化任务,并对ChatGPT的回复进行调整优化。
30 3
|
28天前
|
人工智能 数据可视化 测试技术
精准高效测试计划,人工智能帮你制定
测试计划文档包括测试范围、方法、资源和进度,涉及测试项、特性、任务、执行者和风险控制。测试经理需制定文档大纲,细化测试任务,如用例编写、执行、资源分配及风险管理。2周测试周期内,5名测试人员将进行单元、集成、功能、性能和安全测试,以及缺陷验证和总结报告。在实际操作中,需注意人员匹配、任务平衡和沟通协调。由于ChatGPT输出的甘特图有误,需手动修正,最终完成测试计划的可视化表示。实践中,明确需求、拆分任务和校验输出是关键。
18 0
|
1月前
|
人工智能 自然语言处理 搜索推荐
人工智能,应该如何测试?(八)企业级智能客服测试大模型 RAG
大模型如GPT虽表现出众,但在特定领域和实时信息方面表现不足,易产生“幻觉”即编造答案。其能力受限于训练数据,无法提供超出数据范围的专业知识。为解决此问题,采用意图识别模型预判问题归属,结合检索增强生成(RAG)技术,通过检索相关信息注入大模型以提升回答质量。测试人员利用RAG评估模型效果,有时借助GPT进行自动化评分,尤其是在非专业领域,但GPT评分的准确性仍有限,人工评估更为可靠。
21 0
|
1月前
|
人工智能 搜索推荐 算法
人工智能,应该如何测试?(七)大模型客服系统测试
这篇文稿讨论了企业级对话机器人的知识引擎构建,强调了仅靠大模型如 GPT 是不够的,需要专业领域的知识库。知识引擎的构建涉及文档上传、解析、拆分和特征向量等步骤。文档解析是难点,因文档格式多样,需将内容自动提取。文档拆分按语义切片,以便针对性地回答用户问题。词向量用于表示词的关联性,帮助模型理解词义关系。知识引擎构建完成后,通过语义检索模型或问答模型检索答案。测试环节涵盖文档解析的准确性、问答模型的正确率及意图识别模型的性能。整个过程包含大量模型组合和手动工作,远非简单的自动化任务。
51 0
|
1月前
|
人工智能 自然语言处理 算法
人工智能,应该如何测试?(五)ASR 效果测试介绍
ASR是自动语音识别技术,将语音转化为文本,涉及多学科知识。数据收集是关键,包括特定人/非特定人、词汇量大小、发音方式、方言和情感等多种类别,高质量数据成本高。ASR流程包括数据收集、标注、输入算法得到文本输出并评估。常用评估指标有字错率(WER)、字正确率及插入/删除/替换率。数据标注需严格遵循规范,工作量大,而Levenshtein库可用于自动化效果评测。在AI领域,大部分时间投入在数据处理上。
33 0
|
1月前
|
机器学习/深度学习 数据采集 人工智能
人工智能,应该如何测试?(四)模型全生命周期流程与测试图
本文补充了完整的业务和测试流程,包括生命周期流程图,强调测试人员在模型测试中的角色。主要测试活动有:1) 离线模型测试,使用训练集、验证集和测试集评估模型;2) 线上线下一致性测试,确保特征工程的一致性;3) A/B Test,逐步替换新旧模型以观察效果;4) 线上模型监控,实时跟踪用户行为变化;5) 数据质量测试,验证新数据质量以防影响模型效果。
19 0
|
1月前
|
人工智能 分布式计算 Kubernetes
人工智能,应该如何测试?(三)数据构造与性能测试篇
本文探讨了人工智能场景中的性能测试,区别于传统互联网测试,其复杂性更高。主要关注点包括两类AI产品——业务类和平台类,后者涉及AI全生命周期,测试难度更大。测试重点是模型训练的性能,特别是数据模拟。需要构造大量结构化数据,如不同规模、分布、分片和特征规模的数据,以评估算法效率。此外,还涉及模拟设备规模(如视频流)和节点规模(边缘计算),以测试在大规模负载下的系统性能。文中提到了使用工具如Spark、ffmpeg、流媒体服务器和Kubernetes(K8S)的扩展项目,如Kubemark,来模拟大规模环境。最后,文章介绍了使用Golang进行异步IO操作以构建海量小文件,优化IO性能。
55 0