生物智能的产生,一直以来被定义为「奇迹」和「谜团」。
从宇宙的一片尘埃开始,人类的演化花费了数十亿年的时间。很难想象,你我均起源于出现在地球上的单细胞生物。
时至今日,人类凭借自身的智慧,创造了地球上最繁荣的文明。同时,这一演化仍在继续,远没有走到尽头。
但演化的方向已经悄然改变:下一代文明的方向,将由人类亲手创造的「智能体」来试探。
由此引出一个课题:人类智能与人工智能,谁的上限将会更高?
过去数十年,研讨者夙兴夜寐,将无数人类智慧灌注其中,不断将「人工智能」的能力上限抬高。一个刚刚诞生的智能体,就像一个初来世间的婴孩,即使懵懂,却蕴藏着无限潜力。在永不停歇的演变之后,人们普遍认为,智能体终将超越人类。
这种演化规律,在 OpenDILab 平台的开源历程中体现得淋漓尽致。它的源起,是几位算法研讨员的一次跨界设想,是面向最复杂的竞技游玩的一场挑战。仅仅过了两年多时间,今天的 OpenDILab 从已演化为覆盖最全学术界算法和工业级规模的国产决议智能开源平台。它为整个决议智能范围开辟了一个全新的开源社区,这个社区正在以惊人的速度生长。
项目地址:https://github.com/opendilab
2022 年 6 月 12 日,《星际争霸 II》前中国冠军——IG 战队的 iA ,又一次登陆了斗鱼直播间。这么久不见,人们发现,iA 竟然开始讲 PPT 了。
两年之前,iA 低调退役。两年之后,电竞少年归来,已是 AI 研讨员,还带来了目前已开源项目中实力最强的《星际争霸 II》 AI——DI-star。
直播录像:https://www.bilibili.com/video/BV15T411G7xD?spm_id_from=333.999.0.0
一个多小时的直播里,iA 演示了多场对局。在所有演示中,DI-star 均表现出人类最高段位——Grandmaster 分段的竞技水平。
惊喜的是,DI-star 的决议能力相当灵活,屡次在复杂对局中快速找到最优策略。比如与前世界冠军 Scarlett 对战时,DI-star 使用了 「女王前压」 这种不常见于人类的战术,出奇制胜:
此时,距离 DI-star 及其背后的决议智能平台 OpenDILab 开源已经有一年了。
2022 年 9 月,OpenDILab 正式升级为 1.0 版本,幕后团队两年多来的心血,全部凝聚于此。
白手起家
所有的故事都从 2020 年的第一个月开始。一群来自中国的算法研讨员和工程师,在人脸识别的数据海中摸爬滚打多年之后,决定跳出舒适区,做一点试探未来的事。
比如,从零开始打造一个星际争霸 AI。
在当时的 AI 学界眼中,决议 AI 是不同于计算机视觉等感知型 AI 的另一道难关,而《星际争霸 II》一直被看作检验 AI 决议能力的绝佳舞台,也是 AI 争相挑战的「珠峰」。
星际争霸系列游玩能保持 20 多年长盛不衰,一部分原因就在于其丰富的多层次游玩机制。《星际争霸 II》的空间复杂度高达 10 的 1685 次方,远超围棋 10 的 170 次方复杂度。对于 AI 来说,这是一个非常接近现实世界的虚拟情况。
开源社区是助力 AI 发展的重要因素之一,而在项目的开始阶段,DI-star 的开发者们准备好了充足的算力和资源,却发现星际争霸 AI 的开源生态基本是一片空白,只能找到 DeepMind 公开的原版论文,非常多的技能细节都有待考证。就好比老师教了你九九乘法表,却突然让你做一道微积分的作业题。
DI-star 的开发者们首先调研了各种已有的加强进修开源平台,但发现开源的算法、工具等基本都是围绕「小而精」的学术研讨,压根没有星际争霸这种大规模情况的开源项目。
「没有轮子,就立马动手造一个,这才是极客精神!」
于是乎,DI-star 的开发者们拿着之前自己在计算机视觉任务上积累的经验,想要一定程度的知识复用。但很快他们就发现,这不只是个脱离舒适区的课题,这简直是一脚踏入深水区,每天都会诞生新的灵魂拷问:
原本规规整整的张量图片,却变成了高度结构化且动态变化的游玩信息;
原本直筒式简简单单搭积木的神经网络计划,却变成了复杂多样的「毛线团网络」计划比赛;
原本轻易扩展的分布式训练架构,却变成了多种硬件和计算模式混合的大杂烩零碎……
在不断以「一日速成法」了解各类游玩 AI 计划和分布式零碎计划知识后,团队总算是搭出了第一版能正常运行的分布式训练零碎,这也是之后 OpenDILab 的最初原型。
只不过还有一件事让人犯愁:到底怎么让 AI 进修打星际的技巧呢?这需要集深度进修、加强进修、游玩 AI 三方面的技能和力量。
技能可以后天努力进修,游玩天赋可真是命中注定,于是,他们找到了中国星际的传奇人物:iA 周航。于是,几个基本对决议 AI 零基础的人,构成了 DI-star 项目的最初班底。
「最初几乎训练不出来任何哪怕有正常操作的 AI」。DI-star 团队一度很头疼。没办法,前半年只能一点一点解 bug,慢慢地教。发现一个不合理的 AI 行为,就从游玩录像中开始分析,对应到具体的游玩操作,解析游玩引擎内存中的数据片段,再一步步追根溯源,最终分析到神经网络里具体某个神经元的激活输出,从而定位到代码实现和算法计划的相关课题。
「程序是不会骗你的,只要你用心去凝视它。」像上面这样一环扣一环,非常需要高度集中心力的细节分析,在 DI-star 的前期阶段,几乎是天天都有。
终于,经历了半年的艰苦奋斗, 2020 年 6 月,DI-star 已经能够击败简单的电脑。2020 年 7 月,团队进行了 DI-star 第一次人机内测,AI 战胜了一位刚刚入门《星际争霸 II》的研讨员。
步入正轨之后,就要去试探 AI 的上限究竟在哪里。DI-star 团队希望在整个零碎的各个环节中都做到极致:不仅仅是复现最强的决议 AI 课题,而是尽其所能去尝试每种可能性。有人从神经网络角度,计划更稳定的大批量样本优化技能和高效处理动态决议空间的网络层,有人从加强进修优化方向,精心调控试探和利用的多方面平衡,有人从游玩 AI 范围,融合即时战略类游玩的百家之长,将 AI 的微操优势培养到新的境界,有人从零碎效率出发,做各种资源的权衡,存储 / 网络 / 计算,一切能想到的办法都用来优化训练效率。
在集合整个团队的技能积累之后,历经人类录像模仿进修和自我博弈加强进修两个阶段,总计一亿局星际对局,五周的最终训练时间,2021 年 6 月,DI-star 终于战胜了 DI-star 的创造者之一——周航本人。之后,周航又拉来一些职业电竞时期的老朋友跟 DI-star 打,包括 MMR6000 分的中国最强虫族选手 Rex。
好消息是,DI-star 都赢了,没辜负一年多来的苦练。
从星际 AI 到开源平台
路行至此,接下来又该怎么走?极客试探归试探,但想把技能做长久做出影响力,复盘是必不可少的。而在当时的马拉松复盘会中,研发团队一致的观点是:必须积累足够扎实的技能工具链。DI-star 中的小农式精耕细作太难复制也太难推广了,需要能有让决议AI技能真正大放光彩的基建工作。那么自然的,做一个决议智能开源平台和生态,就成了大家新的目标。更具体一点,在算法方面,哪些技能适合在前期试探智能体策略的多样性和潜力,哪些方法适合作为最终超大规模加强进修训练的核心模块;在零碎方面,哪些零碎计划既能提高采样效率又能对大规模加强进修的优化效率带来帮助,什么样的计划可以易用快速的算法迭代和想法验证。所有上述这些积累的经验和知识,都是有价值被沉淀下来的东西。光是教会AI玩《星际争霸 II》并不是最终目标,试探决议AI的能力边界,学会面对更加复杂的真实世界,才是在青春年月值得去拼搏的事。基于这样的初心,后续成立的 OpenDILab 团队以 DI-star 为起点,开始进一步试探如何做开源。当时决议智能范围的开源生态,比起 CV、NLP 这些成熟的研讨范围,的确差了不是一点半点。
不过对于整个决议智能范围来说,开发者最需要的不只是某一套代码,也不仅是某一个工具包。这个范围,正需要一个功能全面、便捷易用的开源平台。
但如何计划一个能满足广大研讨者需求的平台,是需要认真考虑的课题。
这时,更多学术界、产业界的决议智能研讨痛点进入了团队成员们的视野:
与感知智能不同,决议类课题通常涉及处理诸如图像、语音、结构化数据等多种复杂模态的数据类型。此外,单机单卡与多机多卡甚至跨集群计算的决议 AI 计算逻辑也完全不同。不同任务间的最优算法配置也差别较大。对于决议智能,这些课题很难标准化。
还有一个客观现象:关于决议智能的课题定义和研讨视角,学术界和工业界之间的差距是很大的。很多前沿的理论算法缺少情况和计算 pipeline 上的通用性,只能局限于 toy model 级别的实验情况,无法迁移到真正的工业场景中。
因此,团队最终对开源平台的期望是:既要在学术算法层面做到最全最广的覆盖和统一,又要将这些算法真正发挥到相应的实际场景中去,解决各个其他范围的工业级运用课题。当然,想要兼顾两者是一件极为困难的事,零碎和平台计划本身就是在做各种各样的权衡,而开源社区正是帮助平台成长和不断进化的重要力量。
这将是一项产生长期价值的工程,力求将技能的广度和深度都推到极致,将成千上万开发者的智慧与努力集合起来,在各行各业中演化出无限可能。
人人可用的开源决议智能平台
2021 年 7 月,DI-star 及其衍生出的决议智能平台 OpenDILab 在 GitHub 正式开源了。
在最初发布的 OpenDILab beta 版本中,自上而下覆盖了运用生态层、算法抽象层、分布式管理层和分布式执行层,还支持从单机到上万级别 CPU/GPU 联合训练的全尺度调度零碎优化,将 OpenDILab 团队自 DI-star 项目以来积累的各方面技能和知识完全开源开放出来。然而开源社区的构建是需要不断打磨的,beta 版本在各种各样的权衡中遗留了一些上手难度课题,而在这一年多开发者与开源社区的共同努力下,OpenDILab 1.0版本在易用性、效率、多元化等方面都展现出了新的思考和理解。
项目地址:https://github.com/opendilab/
其中,OpenDILab 推出了一系列面向不同目标的开源库:
最底层的 DI-engine 及相关零碎支持库致力于解决决议AI在情况,算法,计算尺度三个方面的标准化课题,它首先提供了在 40+ 不同类型决议情况上的最佳实践,可作为不同范围研讨者运用加强进修技能的最佳模板,还汇聚了 8 大研讨子方向的 60+ 决议智能算法,将深度加强进修,多智能体博弈,离线加强进修和模仿进修等范围一网打尽,而上述这些情况和算法,都可以在统一的零碎执行计划下高效实现,并根据任务特性自适应地调整资源利用的最佳方案。
中层的算法与模型抽象层 DI-zoo 整合了 OpenDILab 在各个范围运用决议AI算法的相关经验,将算法理论,代码实现,运用范围知识一一对应在一起,并在AutoML工具的支持下,帮助开发者构建统一且标准的基准方案,也很大程度上降低了初学者的入门门槛。
在运用生态层,既有 DI-star 这样面向于虚拟世界即时战略类游玩的大规模加强进修训练方案,包含完整的训练、测试和运用原型代码细节,还开源了包含感知决议全流程的主动驾驭平台 DI-drive,朝着决议 AI 落地运用的方向前进。
自开源以来,OpenDILab 已经收获了 4500 多个 GitHub star。DI-star 也被列入 Github Trending Python 语言优质开源项目。
多智能体决议智能范围的「ImageNet」
决议智能的落地通常会受到训练平台、仿真情况两方面的挑战。OpenDILab 是好用的,但它暂时只解决了训练平台层面的一部分课题。
那么,仿真情况的课题怎么解决呢?
为了让更多人参与到决议智能的试探中来,OpenDILab 搞了一场 Go-Bigger 挑战赛。通俗地讲,这其实是一场决议 AI 版的「大球吃小球」挑战赛。
在 Go-Bigger 挑战赛里,每局时长十分钟,大球吃掉小球会获得更大重量和体积,但同时需要避免被更大的球吃掉。球的类型包括分身球、孢子球、食物球、荆棘球,这四种球的决议路径是不同的。
每个队伍都需和其他队伍对抗,总重量更大的团队获胜。
这个游玩情况看起来简单,但其实非常考验多智能体之间的配合和对抗,包括权衡同一团队中的个体行动与合作行动、不同团队间的合作与竞争、表征和交换与其它智能体的情况信息等,体现了很高的决议复杂度。
有意思的是,Go-Bigger 游玩计划了球球对抗时间、成长加速度、分裂、消失、衰亡等约束条件,这种情况其实广泛存在于现实世界,比如在人的生命周期中,我们都需要在不同的人生阶段,在各种约束条件下进行协作、对抗,做出最利于自身的决议。球球和人类之间,由此产生了一种微妙的关联。
在 AI 范围,很多研讨课题的真正被定义和解决,都经历了从「球球」到「真实世界」的模拟过程。
比如计算机视觉范围的经典之作 ImageNet。上海人工智能实验室青年科学家、商汤科技高级研讨总监、OpenDILab 项目发起人刘宇表示,在 ImageNet 比赛之前,数据集都非常小,学术界很难定义产业界真正需要的算法课题。但 ImageNet 提出了全新的挑战,在海量数据上定义的研讨课题与真实世界中真正应该被解决的课题更加贴近了,加上算力条件的提升,成就了后来计算机视觉的蓬勃发展。
对于今天的多智能体决议智能范围来说,学术界和产业界都在等待着像「ImageNet」这样具备「公认的课题定义能力」的项目出现,而 OpenDILab 希望 Go-Bigger 能担起这一重担。
有人可能会问,既然开源了 DI-star,为什么不直接办一场星际争霸 AI 挑战赛?
这也是从现实因素出发来考虑的,毕竟训练一个星际争霸 AI 需要太多的算力消耗,对于一般参赛者来说实在不友好。
Go-Bigger 的定位是人人可以参加的中型游玩 AI 竞技情况。相比学术界常用的 Atari、MuJoCo、SMAC,Go-Bigger 的情况规模更大,但又可以在小型的实验室中完成,用一台机器、一块 GPU 就能训练起来。这样一来,参赛者就能把更多精力聚焦到试探多智能体协作能力的算法上。
即使如此,从零开始实现比赛要用的算法和训练流程还是很复杂的,而 OpenDILab 平台提供的决议 AI 框架 DI-engine 正好帮助开发者简化了这一过程。
开发者们基于DI-engine为Go-Bigger计划实现了多种类型的基准算法,包含多智能体协作,稀疏奖励引导,记忆化试探和计算效率提升等多个方面。
走进现实世界
在工业运用这块,OpenDILab 也没松懈,推出了主动驾驭范围内第一个支持多种仿真器和多种决议智能算法的开源研讨平台——DI-drive。
之所以选择主动驾驭范围做开源,OpenDILab 有自己的思考:
第三次发展浪潮之后,AI 技能已经进入从感知智能到决议智能演变的关键节点,决议 AI 技能的突破也到了在实际场景部署和运用的阶段。任何前沿的学术理论,都要走到现实世界当中去,才能产生更多的价值。
可以说,决议 AI 技能运用的成功与否,直接决定了这一技能在产业界的认可程度,反过来,运用范围的难题也可以指导决议 AI 理论的演进。
另一方面,生态构建的成功与否体现了决议 AI 技能的运用门槛、其通用能力和泛化能力以及对不同任务的适应能力。运用生态也可以更加广泛地拓展决议 AI 的运用范围,打通不同运用范围所面临的课题和挑战。
主动驾驭是当前人工智能的热门研讨方向。决议、规划与控制是主动驾驭任务的大脑,一向被各大公司视作高度保密技能。如果是一位普通开发者,就算想深入了解也难。
所以,OpenDILab 综合了大量主动驾驭决议 AI 的方法,抽象出基本涵盖现有主动驾驭方法的一套流程,做出了主动驾驭范围第一个开源的、人人可以参与的研讨平台 DI-drive。
目前,DI-drive 已在主动驾驭端到端仿真任务上取得若干算法突破。对于一系列核心技能突破,OpenDILab 不作保留,全部开源。
比如主动驾驭策略 InterFuser,该策略基于 Transformer 进行多传感器融合,并使用了可解释性特征来增加主动驾驭的安全性。
我们都知道,在高交通密度的场景中,会有大量的障碍物和动态物体参与决议。在这些情况下,一些部署的主动驾驭零碎可能表现出不正确或意外的行为,导致灾难性的事故。
比如行人突然从路边出现、通过路口时遭遇意外车流(闯红灯等),这需要更好地理解多模态多视角传感器输入下的场景。另外,如何验证决议过程也是个课题,换句话说,识别零碎的功能 / 故障情况以及故障原因,这需要决议零碎的可解释性。
OpenDILab 模拟了大部分情况,基于主动驾驭研讨的开源模拟器 CARLA 进行了测评,InterFuser 显示出良好的课题处理能力:
等红灯
转弯
在最新的 CARLA Leaderboard 排行榜中,OpenDILab 提出的主动驾驭策略 InterFuser 取得了 Top 1 的成绩。
InterFuser 在 CARLA Leaderboard 上的排名
InterFuser arXiv 论文地址: https://arxiv.org/abs/2207.14024
InterFuser Github 项目地址: https://github.com/opendilab/InterFuser
此外,OpenDILab 还针对主动驾驭开发了一套贴近真实的驾驭场景 Casezoo,所涉及的驾驭场景均由实车数据和路测案例转化而来。他们在多种贴近真实的驾驭情况中训练和测试了决议模型,有效促进主动驾驭范围仿真研讨在实车情况中的推广和运用。
图注:Casezoo 为主动驾驭模拟提供更接近真实的驾驭场景
与此同时,OpenDILab 也在试探新的决议智能运用范围和方法,如金融范围的反欺诈和交易,电网、港口等场景的资源调度和优化,生物范围的合成搜索和预测等。一系列重磅成果,均在酝酿之中。
不断进化的 OpenDILab
一年时间过得很快。Beta 版本开源之后,OpenDILab 团队一直在根据开发者社区的反馈改进。
经过多次完善后,近日的 WAIC 2022 大会上,OpenDILab 1.0 版本正式问世。
OpenDILab 框架图
项目地址:https://github.com/opendilab
整体来看,OpenDILab 1.0 有三大升级特点:
1. 易用高效的大规模决议智能训练零碎:具备插件化的扩展能力和友好的分布式能力
2. 当前世界上最全面的标准化决议 AI 平台:一个平台整合所有 RL 研讨范围,一套框架服务多种决议 AI 课题,最全最强算法集(1 个架构,8 大研讨方向,40 + 情况,60 + 算法,70 + 专利)
3. 到手即用的工业运用生态:决议 AI+X 的最佳实践,助力各行各业实现关键的技能和运用突破。
「在计算机视觉范围,标准化做得很好,比如所有数据模态都可以用非常规整的 Tensor 来表示,所有任务都可以在 batch 维度同步 forward 和 bp(Back Propagation)的神经网络来处理,比如 PyTorch 和 TensorFlow。而在数据模态高度结构化,训练过程高度异步化的决议智能范围,我们希望做的也是这样一件事。」刘宇表示。
硬核升级之外,OpenDILab 也更加注重易用性和便捷性,为社区内的开发者提供了更加详尽的上手教程。值得一提的是,OpenDILab 将于今年 10 月推出从运用场景出发的 「PPO x Famliy 入门公开课」,课程内容主要从一个 PPO 解决绝大多数的常规决议课题,根据算法原理,代码实现,实际运用三者的一一对应来计划,即使你只是一枚想入门决议 AI 的萌新,或者只是一位想用决议 AI 技能解决某个实际课题的非内行工程师,都可以通过该课程和 OpenDILab 平台获得在算法、零碎、工程等经验和工具支持。
我们也了解到,同在 WAIC2022 发布的 SenseMAP 商汤多智能体平台,在搭建过程中也用到了 OpenDILab 开源的多项前沿技能。
在 WAIC 2022 的企业论坛中,刘宇介绍:「我们利用 OpenDILab 作为基建之一构建了商汤多智能体游玩 AI 平台 SenseMAP,同时 OpenDILab 也支持了我们在游玩、电力调度、主动驾驭和货运调度等范围的业务运用。」
刘宇认为,只有一项技能的门槛明显降低,更多人才有机会入局。
纵观人类技能发展历史,真正带动整个社会往前走的机会,未必出现在某种技能诞生的那一刻,更多是这项技能能够得到普及之后。这正是 OpenDILab 的开源初衷。
原创文章,作者:机器之心,如若转载,请注明出处:https://www.iaiol.com/news/32959