- 授权协议: BSD
- 开发语言: Python
- 操作系统: 跨平台
- 软件首页: https://github.com/facebookresearch/CommAI-env
- 软件文档: https://github.com/facebookresearch/CommAI-env/blob/master/README.md
- 官方下载: https://github.com/facebookresearch/CommAI-env/archive/master.zip
软件介绍
CommAI-env(基于通信的人工智能环境(Environment for Communication-based AI))是一个用于训练和评估人工智能的平台。其使用了一个基于通信(communication)的设置,其中它可以通过一个 bit 层面的接口与 Environment(环境)进行交互。该 Environment 会要求 Learner 去解决一些基于通信的 Task(任务),并为其已经成功完成的每一个任务实例分配一个 Reward(奖励)。
以下是 CommAI-env 有别于其它目前用于训练和测试人工智能系统的环境和数据集(比如,OpenAI Gym、Allen AI Science Challenge、MazeBase 或 bAbI)的一些基本特征,这些特征被设计出来的目的是为了鼓励开发者开发快速的、通用的、基于通信的 Learner。
CommAI-env 的关注重点完全是基于通信的任务,其中所有的通信都是通过 Learner 和 Environment 之间的一个共同的 bit 层面的接口实现的。
在单个 CommAI-env 会话(session)中,Learner 会被暴露在许多种任务中,所以它必须学会识别不同的任务,并将不同的技能合适地应用到这些任务上。
许多任务都是渐进的,在这个意义上,解决其中一个或多个任务应该能让其它任务的解决更简单,只要 Learner 有对数据和算法的长期记忆(例如,一旦一个 Learner 解决了基本的计数任务以及如何将物体和属性关联起来,那么计数一个物体的属性就会更容易)。
训练和测试阶段并没有明显的区分:
一方面,Learner 应该不只是记忆一个固定任务集合的解决方案,而且还要学习如何将其泛化到其所遇到的新任务上。
另一方面,就和人类一样,Learner 应该只需要少数几次遭遇后就能解决基本的问题:因此,学习的速度应该被考虑在评估之中。
我们计划当该平台足够成熟时开展一个基于 CommAI-env 的比赛。为此,CommAI-env 的评估配置的任务集合将不同于开发版本中所包含的任务。这些任务不同的方面可能包括:它们可能基于不同的(自然和人工)语言、它们可以需要学习 Learner 周围的新物体和新位置、它们可能需要重新组合在开发过程中所学到的技能、等等。