方案方案

机器人训练数据平台怎么规划?视频、状态数据与Episode存储指南

机器人训练数据平台需要同时管理多路视频、状态、动作、任务描述和Episode元数据。本文提供容量估算、文件组织、热数据与归档分层、训练读取、网络吞吐及数据治理方法。

机器人训练数据平台Episode存储机器人视频数据LeRobotDatasetMCAP训练数据存储对象存储NVMe缓存
Slug
robot-training-data-platform
更新
2026-08-20
来源
5
关系
4
直接结论

机器人训练数据平台不能只按总容量规划。多路视频决定大部分容量,状态、动作、时间戳和任务描述决定样本是否可对齐、可检索、可复现;训练阶段还会反复读取、解码和抽样。平台应同时规划采集写入、活跃训练、共享数据、长期归档和备份,并通过真实Episode测试持续吞吐与并发读取。

概述

一个机器人Episode可能包含多路RGB或深度视频、关节状态、末端位姿、力/力矩、动作指令、语言任务、事件标记和时间戳。数据不仅要“存下来”,还要能够按照任务、机器人、版本和时间范围准确找到,并被训练进程持续读取。

很多数据平台在早期只按硬盘容量建设,进入训练阶段后才发现小文件过多、视频解码慢、Episode边界不清、数据版本无法追溯,或者多台训练服务器同时读取时网络和共享存储成为瓶颈。

一、Episode是样本组织单位,不等于一个文件

Episode通常代表一次任务轨迹或一段连续交互,但实际存储时可以是一Episode一组文件,也可以把多个Episode写入较大的Parquet、MP4或其他容器,并通过元数据记录边界。

LeRobotDataset v3采用“多个Episode共享Parquet/MP4文件”的方式,并通过关系化元数据解析Episode边界和查询,目的是减少文件数量和文件系统压力。这个设计说明:训练数据的逻辑样本单位与物理文件单位可以分离。

数据组成常见内容需要保留的上下文
视频RGB、深度、分割或其他视觉输出相机标识、分辨率、帧率、编码、时间戳和标定版本
机器人状态关节位置/速度、末端位姿、力/力矩、传感器状态单位、坐标系、频率、机器人和固件版本
动作关节命令、末端增量、夹爪或底盘控制动作空间、控制频率、延迟和执行结果
任务信息语言指令、任务类别、对象、场景和成功标记标注规范、版本、人员和审核状态
Episode元数据开始结束时间、长度、数据位置、校验值和质量状态数据版本、处理链路和可追溯关系

二、容量应该怎样估算

视频主体容量

单路平均码率 × 相机路数 × 每日有效采集时长 × 采集天数。码率必须使用真实编码、分辨率、帧率和场景样本测量,不能只按原始像素或厂商标称值推算。

状态与动作容量

每帧字段字节数 × 采样频率 × 有效时长,再叠加时间戳、索引、Episode元数据和序列化开销。通常容量小于视频,但对同步、检索和训练正确性更重要。

总平台容量还应包含原始数据、清洗后数据、训练格式、缓存、检查点、版本副本、质量抽检和备份。不同项目的数据保留策略差异很大,不建议使用固定倍数替代实际生命周期规划。

三、把数据分成四个层次

数据层主要内容存储重点典型访问
采集与暂存刚产生的原始视频、状态、动作和日志持续写入、断点保护、本地或近端NVMe连续写、快速校验和上传
标准化数据时间对齐、清洗、切分并带元数据的Episode一致格式、索引、版本与校验批量处理、抽检和检索
活跃训练当前训练集、缓存、采样索引和派生特征高吞吐读取、并发、低抖动随机抽样、顺序视频读取和多Worker加载
归档与备份历史版本、原始数据、已完成项目和审计副本容量、完整性、冗余、恢复和成本低频访问、批量恢复和生命周期迁移

采集盘不应长期承担唯一数据副本,归档存储也不一定适合直接供多GPU训练。合理做法是让活跃数据靠近计算节点,并将长期数据放在更适合容量和保护的层次,通过明确的数据迁移和版本规则衔接。

四、视频、表格与原始消息怎样组织

文件格式应由数据来源、训练框架和检索方式共同决定,而不是全平台只保留一种格式。

  • MP4等视频容器:适合压缩保存连续图像,容量和解码效率取决于编码设置,也要保留时间戳与相机映射。
  • Parquet等列式数据:适合状态、动作和Episode元数据的批量读取与筛选,但视频通常单独保存并通过索引关联。
  • ROS 2 bag/MCAP:适合保留多Topic原始消息。MCAP支持分块、索引、校验和可选压缩,可按时间和Channel定位消息。
  • 训练专用格式:可以从原始数据生成,但应保留转换版本、脚本和来源关系,避免训练数据无法追溯。

容器和压缩参数需要在写入速度、随机读取、解码负载和恢复成本之间权衡。对原始数据做不可逆转换前,应先明确是否仍需回放、重标注或重新生成训练格式。

五、训练读取性能怎样估算

采集写入基线

各视频与传感器实际码率之和 + 状态和动作数据 + 索引及协议开销。持续写入测试应覆盖目标采集时长,并记录队列积压、丢帧、写入时延和磁盘余量。

训练读取基线

单训练任务持续读取吞吐 × 并发训练任务数,再考虑视频解码、随机抽样、本地缓存和预取。理论文件带宽不能直接替代DataLoader和真实训练Step的测量。

现象可能原因验证方式
GPU周期性等待视频解码、随机读取、Worker不足或缓存失效对比缓存命中、不同Worker数和关闭增强后的时间线
单任务正常,多任务明显变慢共享存储或网络总吞吐不足逐步增加并发任务,记录每任务和总吞吐
目录扫描和启动很慢小文件过多、索引不足或远端元数据访问比较文件聚合、索引和本地元数据缓存
压缩后存储下降但训练变慢CPU/GPU解码成为新瓶颈比较不同编码或压缩参数下的端到端训练吞吐

六、小文件、分块与索引怎么处理

一Episode一文件容易理解,但在Episode数量很大、每条轨迹较短时,会增加目录遍历、元数据操作和对象请求数量。将多个Episode聚合到较大的数据文件,并通过索引记录边界,通常更利于规模化读取。

文件也不能无限放大。分块大小应结合顺序读取、随机跳转、失败重试和远程访问确定。MCAP的Chunk Index和Message Index用于按时间和Channel定位消息;LeRobotDataset v3则通过元数据解析Episode边界。具体实现应以目标训练框架的读取方式测试。

七、共享存储与网络怎么规划

网络需求来自采集上传、数据处理、训练读取、检查点写入和备份迁移。单个训练节点读取不高,不代表多节点并发后仍有余量。

  1. 测出单节点真实训练时的持续读取和峰值,而不是只做顺序拷贝。
  2. 逐步增加训练节点和DataLoader并发,观察总吞吐、单任务波动和错误重试。
  3. 确认客户端网卡、交换机上联、存储端口和后端磁盘是否形成共同瓶颈。
  4. 对象存储、并行文件系统和NAS的访问特征不同,应使用实际客户端和数据格式PoC。

对象存储通常可通过多连接和并发请求提高聚合吞吐,但具体性能与实现、对象大小、网络和客户端有关,不能把公有云服务的性能数字直接套用到本地平台。

八、数据治理至少包含哪些内容

  • 统一标识:机器人、任务、场景、采集批次、Episode和数据版本使用稳定ID。
  • 时间同步:记录各传感器时间源、偏差、丢帧和重采样方式。
  • Schema版本:状态、动作、坐标系、单位和字段变化可追溯。
  • 质量状态:区分原始、待审核、通过、拒绝和可训练数据。
  • 完整性:使用校验值、写入完成标记和定期抽检发现损坏或缺失。
  • 权限与审计:按项目和角色控制读取、修改、导出和删除。
  • 生命周期:明确活跃、冷却、归档和删除条件,并验证恢复流程。

RAID可以降低部分磁盘故障带来的中断风险,但不能替代备份、版本和异地恢复。误删除、软件错误和权限问题仍需要独立的数据保护机制。

九、数据平台PoC检查清单

测试项建议内容验收关注
持续采集按真实相机和传感器运行目标时长无丢帧、队列失控或空间异常
Episode生成时间对齐、切分、索引和质量标记边界正确、字段完整、可追溯
训练读取真实DataLoader、Batch、Worker和增强GPU等待、吞吐和缓存效果
并发访问多训练节点、处理任务和检查点同时运行总吞吐、单任务波动和隔离
故障恢复中断写入、节点重启、文件损坏和版本恢复数据完整性、恢复时间和日志

十、赋创如何协助规划机器人训练数据平台

赋创可基于客户提供的传感器规格、采集时长、Episode结构、数据格式、训练读取方式和保留周期,协助估算容量与吞吐,规划本地NVMe、共享存储、对象存储、网络及训练缓存,并通过代表数据验证采集写入和多节点读取。

数据采集方案、标注规范、机器人状态定义和训练数据质量由项目团队或相应专业方负责。赋创重点解决存储、网络和计算平台能否稳定承载数据流转与训练读取。

FAQ:机器人训练数据平台常见问题

1. 是否应该一个Episode保存一个文件?

不一定。小规模项目便于管理,大规模数据则可能出现小文件和元数据压力。可以将多个Episode聚合并通过索引记录边界。

2. 视频容量能否按分辨率直接计算?

不能只看分辨率。编码、帧率、画面复杂度、码率控制和传感器数量都会影响容量,应使用真实样本测量平均与峰值码率。

3. 对象存储能否直接供GPU训练?

可以作为数据平台的一部分,但训练吞吐取决于对象大小、客户端、并发、缓存和网络。应使用真实DataLoader验证是否需要本地缓存或热数据层。

4. 做了RAID是否还需要备份?

需要。RAID主要处理部分磁盘故障,不能替代版本、误删除保护、离线副本和异地恢复。

5. 哪些数据应该放在NVMe热数据层?

当前训练集、频繁访问的视频片段、采样索引、缓存和检查点更适合放在高性能层。历史原始数据可按恢复和生命周期要求进入容量或归档层。

方案咨询

需要把方案落到实际配置?

联系赋创获取算力、软件栈和交付路径建议。

咨询方案浏览指南