NVIDIA人工智能研究人员发布了NitroGen:一款适用于通用游戏代理的开放视觉动作基础模型。
NVIDIA 研究团队发布了 NitroGen,这是一个用于通用游戏代理的开放视觉动作基础模型,它可以通过 Play动pİebolt感じ到的副農官府动作从像素和学习在线游戏。NitroGen 在 40,000 小时的游戏体验中进行了训练,涵盖 1,000 多款游戏,并附带一个开放数据集、一个通用模拟器和预先训练的策略。

https://nitrogen.minedojo.org/assets/documents/nitrogen.pdf
互联网规模的视频动作数据集
NitroGen 管道从公开可用的游戏视频开始,这些视频包括输入蒙版,例如流媒体屏幕角落的游戏手柄可视化。研究团队收集了包含这种蒙版的 71,000 小时的原始视频,然后根据动作密度应用质量过滤,最终留下大约 40,000 小时,涵盖 1,000 多款游戏。
精心制作的数据库包含来自 818 位创作者的 38,739 条视频。分布覆盖了广泛的标题。有 846 款游戏的视频数据超过 1 小时,91 款游戏的数据超过 100 小时,15 款游戏的数据超过 1,000 小时。动作角色扮演游戏占比 34.9%,平台游戏占比 18.4%,动作冒险游戏占比 9.2%,其余的分布在运动、roguelike、赛车和其他类别中。
从手柄蒙版提取动作
为了从原始流中恢复帧级动作,NitroGen 使用了一个三阶段动作提取管道。首先,一个模板匹配模块使用大约 300 个控制器模板定位控制器蒙版。对于每个视频,系统采样 25 帧,并在每帧和模板之间匹配 SIFT 和 XFeat 特征,然后在至少 20 个内点支持匹配时估计仿射变换。这为所有帧提供了控制器区域的裁剪。
其次,一个基于 SegFormer 的混合分类分割模型解析控制器裁剪。该模型采用在空间上连接的两个连续帧,并在 11×11 网格上输出摇杆位置,以及二进制按钮状态。它在 8百万张使用不同控制器模板、不透明度、大小和压缩设置渲染的合成图像上使用 AdamW(学习率为 0.0001,权重衰减为 0.1,批量大小为 256)进行训练。
第三,管道细化摇杆位置并过滤低活动段。摇杆坐标使用绝对 x 和 y 值的第 99 个百分位数进行归一化,范围从 -1.0 到 1.0,以减少异常值。在时间步内只有不到 50% 的动作不为零的块被移除,这避免了在策略训练过程中过度预测缺失动作。
与ground truth 控制器日志的独立基准测试表明,摇杆预测的平均 R² 为 0.84,按钮帧精确度达到 0.96,这证明了自动标注对于大规模行为克隆足够准确。
通用模拟器和多游戏基准测试
NitroGen 包含一个通用模拟器,该模拟器将商业 Windows 游戏 包装在 Gymnasium 兼容的界面中。包装器拦截游戏引擎系统时钟以控制模拟时间,并支持逐帧交互,无需修改游戏代码,任何使用系统时钟进行物理和交互的主题。
在这个基准测试中,观察值为单个 RGB 帧。动作被定义为统一的控制器空间,其中摇杆按钮有 16 维的二进制向量,四个方向按钮,四个面部按钮,两个肩膀,两个扳机,两个摇杆拇指按钮,开始和后退,以及一个 4 维的连续向量用于摇杆位置,左右 x 和 y。这种统一的布局允许直接将一个策略转移到许多游戏中。
评估套件涵盖了 10 款商业游戏和 30 个任务。有 5 款二维游戏,3 款横版游戏和 2 款俯视角 Roguelike,还有 5 款三维游戏,其中 2 款是开放世界游戏,2 款是战斗导向的动作角色扮演游戏,和 1 款体育游戏。任务分为 11 个战斗任务,10 个导航任务,以及 9 个与游戏有关的任务,其中有自定义目标。
NitroGen 模型架构
NitroGen 基础策略遵循 GR00T N1 架构模式。它丢弃了语言和状态编码器,保留了一个视觉编码器加一个单独的动作头。输入为一个 256×256 分辨率的 RGB 帧。SigLIP 2 视觉转换器将该帧编码为 256 个图像标记。
扩散转换器 DiT 生成 16 步的未来动作块。在训练过程中,噪声动作块由多层感知器嵌入到动作标记中,由堆叠的 DiT 块处理,这些块对视觉标记使用自关注和交叉关注,然后将这些块解码回连续的动作向量。训练目标是条件流匹配,在每 16 个动作块上有 16 个去噪步骤。
发布的是具有 4.93 × 10^8 个参数的检查点。模型卡将输出描述为 21×16 的张量,其中 17 个维度对应于二元按钮状态,4 个维度存储 16 步未来时间步内的两个二维摇杆向量。这种表示与统一动作空间兼容,直到对摇杆组件进行重塑。
训练成果和迁移收益
NitroGen 仅通过在互联网游戏视频数据集上进行大规模行为克隆进行训练。基模型中没有强化学习,也没有奖励设计。图像增广包括随机亮度、对比度、饱和度、色调、小旋转和随机裁剪。训练使用 AdamW(权重衰减为 0.001),具有恒定阶段的预热稳定衰减学习率计划以及权重指数移动平均(衰减为 0.9999)。
在在完整数据集上进行预训练后,NitroGen 500M 在所有基准测试游戏的零拍评估中已经取得了非微不足道的任务完成率。平均完成率在 45% 到 60% 之间,涵盖了战斗、导航和游戏相关任务,以及二维和三维游戏,尽管在线监督中的噪声。
对于迁移到未见过的游戏,研究团队会预留一个标题,在剩余数据上进行预训练,然后以固定数据和计算资源预算在预留的游戏上进行微调。在一个等距的 Roguelike 游戏中,从 NitroGen 进行微调与从头开始训练相比,平均相对提高了大约 10%。在 3D 动作角色扮演游戏中,平均收益约为 25%,在一些数据量较少的战斗任务中,30小时,相对改进高达 52%。
关键收获
- NitroGen 是一个用于游戏的通用视觉动作基础模型:它将 256×256 的 RGB 帧直接映射到标准化的游戏手柄动作,并通过互联网游戏行为进行了纯行为克隆训练,没有任何强化学习。
- 数据集规模大,并可自动从控制器蒙版中进行标注:NitroGen 使用了 38,739 条视频中的 40,000 小时经过过滤的游戏体验,这些视频来自 1,000 多款游戏,其中帧级动作通过使用基于 SegFormer 的解析管道从视觉控制器蒙版中提取而来。
- 统一控制器动作空间实现了跨游戏迁移:动作在每个时间步有大约 20 维的共享空间,包括二元摇杆按钮和连续摇杆向量,允许单一策略使用通用 Gymnasium 样式模拟器部署到许多商业 Windows 游戏中。
- 条件流程匹配的扩散变换器策略:具有 4.93 × 10^8 个参数的模型使用了 SigLIP 2 视觉编码器加上基于 DiT 的动作头,在 16 步动作块上使用条件流程匹配进行训练,从噪声的 Web 规模数据中实现了鲁棒的操控。
- 在 NitroGen 上预训练改善了下游游戏性能:当在预留的标题上以相同的数据和计算预算进行微调时,基于 NitroGen 的初始化产生了一致的相对收益,平均约为 10% 到 25%,在一些低数据量的战斗任务中,相对于从头开始训练,相对改进达到 52%。