Open Source Robotics

Eine kuratierte Sammlung hochwertiger Open-Source-Robotikprojekte, Werkzeuge und Software für die Robotik-Community.

Robo-DM: Data Management For Large Robot Datasets

Autoren: Kaiyuan Chen, Letian Fu, David Huang, Yanxiang Zhang, Lawrence Yunliang Chen, Huang Huang, Kush Hari, Ashwin Balakrishna, Ted Xiao, Pannag R Sanketi, John Kubiatowicz, Ken Goldberg · ICRA 2025

Lizenzen

  • Open Access
  • Paper: CC BY 4.0

Alles Folgende stützt sich auf das vollständige Paper unter seiner Lizenz CC BY 4.0; die Abbildung wird mit Nennung der Autoren gezeigt.

Kurz gesagt

Robo-DM speichert die Video-, Sprach- und Aktionsströme jeder Roboterepisode in einer zeitgestempelten EBML-Datei, verringert die Größe gegenüber RLDS um bis zu 70x und lädt schneller als LeRobot.

Warum es wichtig ist

Die Größe eines Datensatzes bestimmt sowohl die Download-Rechnung des Anbieters als auch, wie lange ein Trainingsjob auf Daten wartet, daher senken kleinere, schnell ladende Dateien die Kosten für das Teilen und Nutzen großer Roboterdatensätze. In den Experimenten mit Octo und ICRT veränderte verlustbehaftete Videokompression bei diesen Raten den Validierungsverlust um 2,6 % und hinderte eine Policy nicht daran, alle 15 physischen Pick-and-Place-Versuche zu bewältigen.

Problem

Große teleoperierte Roboterdatensätze wie Open X-Embodiment sind teuer zu teilen und langsam zu laden: 8,9 TB in Google Cloud zu speichern, kostet 172 USD pro Monat, doch jeder vollständige Download kostet den Anbieter zwischen 172 und 1.540 USD. Bestehende Formate speichern Bilder entweder als Matrizen (RLDS, HDF5), was verlustfrei, aber nicht platzsparend ist, oder verteilen Ströme mit frameworkspezifischen Annahmen zur Ausrichtung auf mehrere Dateien (LeRobot), was das Laden verkompliziert und die Dekodierung verlangsamt.

Lösungsansatz

Robo-DM erweitert die Extensible Binary Meta Language (EBML), den Container hinter MKV-Video, um alle Bild-, Sprach- und Aktionsströme einer Episode in einer in sich geschlossenen Datei zu speichern, wobei jedes Paket mit einem Zeitstempel relativ zum Episodenbeginn versehen ist. Die Daten werden roh aufgezeichnet und nach der Erfassung mit verlustbehafteten (zum Beispiel AV1) oder verlustfreien (FFV1) Codecs transkodiert; zur Trainingszeit wählt ein Lastverteiler zwischen dem Dekodieren des Videos und dem Lesen speicherabgebildeter Caches dekodierter Frames. Es funktioniert mit ROS 2 (rosbag, rviz, Foxglove), TensorFlow und PyTorch und exportiert nach HDF5 und RLDS.

Wichtigste Erkenntnisse

  • Der größte Teil der Größenreduktion stammt, wie die Autoren angeben, aus der Videokompression der Kameraströme.
  • Alle Ströme in einem zeitgestempelten Container zu halten, macht Heuristiken überflüssig, um mit unterschiedlichen Raten aufgezeichnete Ströme auszurichten.
  • Die Kompression bis nach der Erfassung aufzuschieben, verhindert, dass das Transkodieren die Datenerfassung stört.
  • Kleine Episoden profitieren weniger: RT-1 hat in RLDS im Mittel 1,51 MB pro Trajektorie, und die Such- und Dekodiermetadaten von Robo-DM begrenzen die Reduktion auf 4,39x.

Hauptergebnisse

  • Verlustbehaftetes Robo-DM gegenüber den ursprünglichen RLDS-Dateien (Table I): Bridge 387,49 GB auf 5,31 GB (73x), Cable Routing 4,67 GB auf 0,26 GB (18x), Door Opening 7,12 GB auf 0,10 GB (71x), AutoLab UR5 76,39 GB auf 3,26 GB (23x). Der Text nennt diese als 18x, 73x, 23x und 73x; die Zusammenfassung nennt bis zu 70x verlustbehaftet und 3,5x verlustfrei.
  • Ladedurchsatz auf drei OXE-Datensätzen (Fig. 4): schneller als LeRobot um 33x, 20x und 5x, wobei die verlustfreie Version nahe an der verlustbehafteten lag; die Zusammenfassung nennt bis zu 50x schneller als LeRobot bei sequenzieller Dekodierung. HDF5 war schneller als Robo-DM, weil seine Daten unkomprimiert sind.
  • Feinabstimmung von Octo-small auf RT-1 (111,06 GB auf 36,50 GB, 4,39x): 0,02 s Datenladen und 0,10 s Training pro Iteration bei Batchgröße 64, genauso wie der TensorFlow-Loader; Validierungs-MSE 1,86 mit verlustfreien und 1,91 mit verlustbehafteten Daten, ein Anstieg um 2,6 %.
  • Die Einleitung berichtet, dass Robo-DM bei der Feinabstimmung von Octo bei kleiner Batchgröße 3,0x schneller lädt und bei großer Batchgröße keine Verlangsamung hinzufügt.
  • ICRT auf einem Franka-Arm, trainiert auf 335 Demonstrationen, gespeichert als 77 MB verlustbehaftet (75,3x aus 5,8 GB gzip-HDF5) oder 1,7 GB verlustfrei (3,41x): 15 von 15 Pick-and-Place-Versuchen gelangen mit dem auf verlustbehafteten Daten trainierten Modell.

Einschränkungen

  • RAM als Dekodier-Cache zu nutzen, erhöht den Speicherbedarf und kann den Durchsatz senken, wenn die Daten pro Episode groß sind; bei Bridge sank der Durchsatz mit wachsender Batchgröße, und das Sampeln eines einzelnen Frames pro Episode kann langsamer sein (von den Autoren angegeben).
  • Die Dekodierung nutzte PyAV auf der CPU ohne GPU-Beschleunigung; die Autoren nennen Decord und NVIDIA NVDEC als schnellere Optionen für künftige Arbeit.
  • Kleine Episoden werden wegen der Such- und Dekodiermetadaten pro Datei weniger stark komprimiert (4,39x bei RT-1).
  • Die physische Prüfung ist eine Pick-and-Place-Aufgabe mit 15 Versuchen eines auf verlustbehafteten Daten trainierten Modells, ohne passendes, auf unkomprimierten Daten trainiertes Modell.
  • Die Konvertierung von LeRobot verwirft den Tiefenstrom und einige Aktionsströme, daher gibt es für AutoLab UR5 keine LeRobot-Größenangabe.

Wirkung auf das Fachgebiet

Gewann den IEEE ICRA 2025 Best Paper Award on Robot Learning; 5 Zitierungen. Die Autoren veröffentlichen Robo-DM als Open Source, mit Code und Evaluationsskripten unter github.com/BerkeleyAutomation/fog_x.

Zusammenfassung

Jüngste Ergebnisse deuten darauf hin, dass sehr große Datensätze teleoperierter Roboterdemonstrationen genutzt werden können, um Transformer-basierte Modelle zu trainieren, die das Potenzial haben, auf neue Szenen, Roboter und Aufgaben zu generalisieren. Das Kuratieren, Verteilen und Laden großer Datensätze von Robotertrajektorien, die typischerweise aus Video-, Text- und numerischen Modalitäten bestehen – einschließlich Strömen von mehreren Kameras –, bleibt jedoch eine Herausforderung. Wir schlagen Robo-DM vor, ein effizientes, quelloffenes, cloudbasiertes Toolkit zur Datenverwaltung für das Sammeln und Teilen von Roboterdaten und das Lernen damit. Mit Robo-DM werden Roboterdatensätze in einem in sich geschlossenen Format mit Extensible Binary Meta Language (EBML) gespeichert. Robo-DM kann die Größe von Robotertrajektoriendaten, die Übertragungskosten und die Ladezeit der Daten während des Trainings deutlich verringern. Im Vergleich zum RLDS-Format, das in den OXE-Datensätzen verwendet wird, spart die Kompression von Robo-DM bis zu 70x (verlustbehaftet) bzw. 3,5x (verlustfrei) an Speicherplatz. Robo-DM beschleunigt außerdem den Datenabruf, indem es die Videodekodierung mithilfe speicherabgebildeter Dekodier-Caches lastverteilt. Im Vergleich zu LeRobot, einem Framework, das ebenfalls verlustbehaftete Videokompression nutzt, ist Robo-DM bei sequenzieller Dekodierung bis zu 50x schneller. Wir evaluieren physisch ein mit Robo-DM bei verlustbehafteter Kompression trainiertes Modell, eine Pick-and-Place-Aufgabe und In-Context Robot Transformer. Robo-DM nutzt eine 75x-Kompression des ursprünglichen Datensatzes und erleidet keine Einbuße an Genauigkeit in der nachgelagerten Aufgabe. Code und Evaluationsskripte finden sich auf der Website https://github.com/BerkeleyAutomation/fog_x.

Links

  • arXiv 2505.15558: https://arxiv.org/abs/2505.15558
  • DOI 10.1109/ICRA55743.2025.11128693: https://doi.org/10.1109/ICRA55743.2025.11128693
  • PDF: https://arxiv.org/pdf/2505.15558v1
  • Code: https://github.com/BerkeleyAutomation/fog_x

Diese Website benötigt JavaScript. Bitte aktivieren Sie JavaScript, um unsere Open-Source-Robotikprojekte zu erkunden.