Open X-Embodiment: один формат для 22 роботов
RT-1 и RT-2 из уроков 3.1 и 3.3 обучены на одном роботе и одном парке данных: 130 тысяч демонстраций собирали 17 месяцев на 13 роботах Google. У большинства лабораторий такой возможности нет: свой робот, своя камера, несколько сотен или тысяч записей. В языке и зрении модель, обученная на разнородных данных, обгоняет узкие модели, и в 2023 году 21 институт проверил, работает ли это для роботов. Они свели 60 датасетов 22 роботов к одному формату и обучили на смеси те же архитектуры RT-1 и RT-2. RT-1, обученный на этой смеси, на роботах с небольшими датасетами оказался в среднем на 50% успешнее моделей, которые авторы этих датасетов учили на своих данных, а большая RT-2 после той же смеси втрое чаще справлялась с умениями, которых в данных её робота не было. В этом уроке — что именно выравнивали, что при этом потерялось и где перенос не сработал.
Один робот, один датасет, одна модель
В уроке 3.3 RT-2 обобщал на новые предметы и команды, но все его данные о движении пришли с одного робота: те же 130 тысяч демонстраций, что у RT-1 из урока 3.1, записанные за 17 месяцев на 13 роботах одной конструкции в офисных кухнях Google. У лаборатории с одним манипулятором и двумя аспирантами такого набора не будет никогда: в её распоряжении несколько сотен или тысяч записей со своей камерой и своим контроллером.
Авторы Open X-Embodiment описывают положение дел так: в робототехнике принято обучать отдельную модель для каждого приложения, каждого робота и даже каждого окружения. Каждый датасет узок хотя бы по одной оси: одно окружение, один набор предметов или один класс задач. Даже самые большие наборы данных о роботах — малая доля от наборов зрения на 5–18 млн картинок и языковых корпусов на 1,5–4,5 млрд примеров.
В зрении и языке урок давно усвоен: модель, обученная на большом разнородном корпусе, обгоняет узкие модели даже на их собственных задачах, и новую задачу решают дообучением общей модели, а не обучением с нуля. В части 1 обучение по демонстрациям каждый раз начиналось с нуля на данных одного робота, и в уроке 1.2 DAgger собирал поправки заново для каждой новой дороги. Перенос между задачами одного робота мы уже видели: RT-1 из урока 3.1 обучался на 700 командах сразу и выигрывал от общих данных. Но роботы разные: у одного семь суставов, у другого шесть, камера стоит над столом или на запястье, действие записано как скорость захвата, как изменение позы или как углы суставов, захват у одного «1 — закрыт», у другого «0 — закрыт».
Отсюда вопрос, который статья ставит прямо: если собрать данные многих роботов из многих лабораторий и обучить одну модель, получит ли каждый робот положительный перенос (positive transfer) — успех выше, чем у модели, обученной только на его собственных данных? Предыдущие работы вводили для этого особые механизмы: общее пространство действий, выученные представления, модули под конкретного робота. Здесь решили проверить самое простое: привести данные к грубо согласованному формату и обучить на них готовые архитектуры RT-1 и RT-2 без каких-либо приспособлений к разнице роботов. Что для этого пришлось собрать?
60 датасетов, 22 робота, 21 институт
Данных одного робота для такого вопроса мало по определению, а собирать новые с двадцати роботов слишком долго. Поэтому Open X-Embodiment (Open X-Embodiment Collaboration, 2023) не записывает новые демонстрации, а объединяет уже существующие: 60 датасетов из 34 лабораторий, собранных 21 институтом, более миллиона траекторий 22 роботов — от одиночных манипуляторов до двуруких роботов и четвероногих. Отсюда и название: embodiment, по-русски воплощение, — тело робота с его суставами, камерами и способом управления, а X читается как cross — «между разными телами». Траектория здесь — запись одного выполнения задачи от начала до конца: кадры, состояния робота и действия на каждом шаге; в уроке 3.1 то же называлось эпизодом. В них 527 навыков и 160 266 задач. Больше всего отдельных датасетов записано на Franka, а больше всего траекторий дали xArm и Google Robot за счёт нескольких очень больших наборов.
Навыки и предметы авторы извлекли из текстовых аннотаций языковой моделью PaLM. Большинство навыков — семейство «взять и положить», но в длинном хвосте есть «протереть» и «собрать», а предметы — от бытовой техники до еды и посуды. Все датасеты сохранены в формате RLDS: файлы tfrecord с эпизодами, который вмещает разные пространства действий и разные наборы наблюдений — от одной камеры до нескольких камер, глубины и облаков точек, — и загружается во все основные библиотеки глубокого обучения.
Единое хранилище ещё не делает данные совместимыми. У каждого робота свои наблюдения и свои единицы действий, и чтобы одна модель могла учиться на всех сразу, записи нужно привести к одному виду. Что именно считать общим форматом и чем за это платить?
Общий формат: один кадр и семь чисел
Пространства наблюдений и действий у роботов различаются сильно, и авторы называют это одной из трудностей X-embodiment-моделей. Выравнивание они делают грубое. Из каждого датасета берут одну каноническую камеру и приводят её кадры к общему разрешению; остальные камеры, глубина и облака точек в модель не попадают. Действие любого робота переписывают в 7-мерный вектор: положение захвата x, y, z, три угла поворота и раскрытие захвата — либо скорости этих же величин. Перед дискретизацией действия каждого датасета нормируют по его собственной статистике, а выход модели потом де-нормализуют — переводят обратно в единицы конкретного робота, у каждого по-своему. Так одна и та же модель выдаёт одну и ту же строку токенов, а каждый робот читает её в своих единицах.
скорость захвата · скорость поворота вокруг z · захват всегда закрытизменение положения · изменение поворота · захватизменение положения · без поворота · захватЧего не выравнивают, статья тоже перечисляет. Камеры стоят под разными углами и отличаются оптикой, и в кадрах это остаётся. Системы координат, в которых управляется захват, не совмещают, а значения действий оставляют такими, какими их записал контроллер робота: абсолютные позы, приращения или скорости. Авторы признают следствие: один и тот же вектор действия у разных роботов может вызвать очень разные движения. Модель должна догадаться по картинке, какому роботу она сейчас выдаёт команду.
Разложи записи из датасетов по тому, что с ними происходит при приведении к общему формату. Перетащи карточку или нажми на неё, а потом на колонку.
Формат получился грубым намеренно: авторы не хотели вводить приспособления к различиям роботов и проверяли, хватит ли готовым архитектурам данных как есть. Токенизация у обеих моделей одинакова — 256 корзин на каждое из восьми измерений: семь компонент движения захвата и признак конца эпизода. Это то же действие из восьми чисел, что у RT-2 в уроке 3.3. У RT-1 в уроке 3.1 чисел было 11: ещё три для движения базы, а вместо признака конца — режим «рука, база или конец эпизода»; в общем формате базы нет. Какие модели обучили на такой смеси и что они показали?
RT-1-X и RT-2-X: те же архитектуры на смеси данных
Чтобы разнородная смесь пошла впрок, модели нужна ёмкость, и авторы берут два уже знакомых трансформера, не меняя их устройства. RT-1-X — это RT-1 из урока 3.1: сеть на 35 млн параметров, которая получает историю из 15 кадров, кодирует их EfficientNet с предобучением на ImageNet, а команду — вектором Universal Sentence Encoder (USE), смешивает картинку и текст слоями FiLM в 81 токен на кадр и декодером-трансформером выдаёт дискретные действия. В уроке 3.1 история была из 6 кадров, а трансформер читал по 8 токенов на кадр: 81 токен — это выход EfficientNet с FiLM до сжатия, которое в RT-1 делал TokenLearner, а в коротком описании RT-1-X в статье Open X-Embodiment этот шаг не упомянут. Почему историю удлинили до 15 кадров, статья не объясняет. RT-2-X — это RT-2 из урока 3.3 в варианте PaLI-X на 55 млрд параметров: энкодер картинок ViT и языковая модель UL2, предобученные на веб-данных WebLI; действие записывается текстом, например «1 128 91 241 5 101 127». RT-1-X обучали только на робототехнической смеси, RT-2-X — совместным дообучением, где веб-данные и данные роботов идут примерно поровну.
Смесь для всех опытов меньше полного датасета: 9 манипуляторов из 12 наборов — RT-1, QT-Opt, Bridge, Task Agnostic Robot Play, Jaco Play, Cable Routing, RoboTurk, NYU VINN, Austin VIOLA, Berkeley Autolab UR5, TOTO и Language Table. Авторы объясняют разницу просто: датасет продолжал расти, и на момент опытов это были все данные. На роботе модели работают с частотой, которая ему нужна, от 3 до 10 Гц; RT-1-X считается локально, а RT-2-X стоит в облаке, и робот обращается к нему по сети.
Схема одна, а роботов много, и у каждого свой объём данных: от сотен эпизодов до сотен тысяч. Авторы задают три вопроса. Получает ли каждый робот положительный перенос, то есть успех выше, чем у модели только на его данных? Лучше ли смесь обобщает на новые задачи? И что из устройства модели — размер, история, веб-предобучение, состав данных — для этого важно? Ответы они дают в двух таблицах и одном рисунке по 3600 испытаниям на 6 роботах.
Таблицы статьи: где перенос есть, а где его нет
Перенос нельзя проверить одним числом: роботу с тремя сотнями эпизодов чужие данные нужны сильнее, чем роботу с сотнями тысяч. Поэтому авторы делят оценку по доменам — так называют робота вместе с его датасетом и местом проверки — на домены с малыми датасетами и с большими и везде сравнивают с двумя базовыми моделями. Original Method — модель авторов датасета, обученная только на нём: её настраивали под эти данные, и обойти её непросто. Вторая — RT-1, обученный только на этом датасете: так видно, что даёт именно смесь, а не архитектура.
В пяти малых доменах — Kitchen Manipulation на Jaco, Cable Routing, NYU Door Opening, AUTOLab UR5 и Robot Play — RT-1-X обошёл Original Method в четырёх из пяти, а средний успех у него на 50% выше, чем у Original Method и у RT-1 на своих данных (рис. 4 статьи; числа по отдельным доменам есть только на рисунке, поэтому здесь их нет). Таблица I — большие домены, таблица II — абляции RT-2-X. Числа в ячейках открываются по кнопке: сначала сделай ставку. Наведи на ячейку или нажми на строку, чтобы прочитать, что за ней стоит.
Под капотом: как устроены оценки и чего в таблицах нет
Все политики в этом разделе обучены на одной и той же смеси из 9 манипуляторов. Оценка — реальные испытания: всего 3600 попыток на 6 роботах в лабораториях авторов датасетов, и логотипы лабораторий на рис. 4 обозначают место, где робот работал. Для таблицы I Bridge оценивали на WidowX сразу в двух лабораториях, IRIS в Стэнфорде и RAIL в Беркли, и Original Method там — LCBC из статьи Bridge; шесть навыков из статьи RT-1 проверяли на Google Robot, у которого Original Method и есть RT-1.
Таблица II смотрит на два разных свойства. «Обобщение RT-2» — протокол из урока 3.3: новые предметы, фоны и окружения. Колонка «Умения из Bridge» в статье называется «возникающие умения» (emergent skills), но означает другое, чем в RT-2: это задачи с предметами и навыками, которых в данных Google Robot нет, но которые есть в датасете Bridge, записанном на WidowX; оценивают их на Google Robot. Так проверяют, перешло ли умение от одного робота к другому.
Чего в таблицах нет: модели не проверяли на роботах, которых не было в смеси; роботов с совсем другими сенсорами и приводами, например четвероногих из полного датасета, в опыты не включали; и статья не даёт критерия, по которому заранее видно, будет ли перенос положительным. Авторы называют всё это направлениями будущей работы.
Картина получается неоднородной. Малым доменам смесь помогает заметно, а в больших маленькая RT-1-X проигрывает RT-1 на его же данных: 35 млн параметров не вмещают девять роботов сразу, и авторы называют это недообучением. Большой RT-2-X в больших доменах не хуже, а на умениях из чужого датасета втрое лучше RT-2; без данных Bridge успех на этих умениях падает почти вдвое. Размер модели, история кадров и веб-предобучение важны все три. А совместное дообучение с веб-данными против дообучения только на данных роботов здесь почти ничего не меняет: 52% против 47% в обобщении и 44,4% против 48,7% на умениях из Bridge. В уроке 3.3 оно было ключевой деталью рецепта RT-2, и авторы сами отмечают, что их вывод с этим расходится. Их объяснение — данные: смесь девяти роботов гораздо разнообразнее данных одного робота, на которых учился RT-2. Есть и второе обстоятельство: эту абляцию сделали на модели в 5 млрд параметров, а у RT-2 на этом размере разрыв тоже был мал — 44% против 42%. Заметным, 63% против 52%, он был только на 55 млрд, а дообучение без веб-данных на модели такого размера в Open X-Embodiment не проверяли.
Но реальные роботы не дают заглянуть внутрь: нельзя убрать один датасет, поменять веса смеси и через минуту увидеть, что стало с каждым роботом. Можно ли собрать такой опыт на столе, где всё считается на глазах?
Смесь данных четырёх роботов на одном столе
В статье перенос измерен на шести настоящих роботах, и о том, что происходит внутри смеси, можно судить только по итоговым процентам. Соберём маленькое X-embodiment, где всё видно. Стол — из урока 2.1: кубики и миска, команда «возьми <цвет> кубик», и на этот раз над ним работают четыре робота Ады.
Ада — домашний гуманоидный робот на колёсной базе, на котором построены лабораторные работы курса. Подробнее о ней — в уроке 0.1.
Сцены у всех одни, а записи разные. У робота A камера видит весь стол, действие записано клеткой сетки 24 × 24, захват «1 — закрыт», в датасете 300 демонстраций. У робота B камера ближе и видит только середину стола, действие — клетка грубой сетки 12 × 12, захват «0 — закрыт», демонстраций 100. У робота C камера стоит с другой стороны стола, поэтому кадр зеркален, действие записано в миллиметрах в его базе, демонстраций 40. У робота D кадр чуть обрезан, действие — смещение от домашней точки в сантиметрах, причём ось x у него направлена к камере, то есть противоположно картинке; демонстраций 15.
Общий формат — как в статье, только меньше: кадр любой камеры приводится к сетке 12 × 12, действие — две нормированные координаты в кадре, дискретизованные в 24 корзины по каждой оси, и захват «1 — закрыть». Приведение — нормировка по рабочему полю робота; систему координат, как и в статье, не выравниваем. Политика у всех одна и та же маленькая сеть, обучается она здесь, в браузере; проверка — 60 новых сцен на каждом роботе, успех — захват опустился на нужный кубик. Сначала каждая политика учится только на своих данных.
Четыре кадра — один и тот же стол сверху, каким его видят камеры четырёх роботов: у A — весь стол, у B — середина крупнее, у C — зеркально, у D — с обрезанными краями. Кубики — цветные квадраты, миска — цветное кольцо. Под кадром — как робот записывает действие; полоски — доля попаданий на 60 новых сценах: синяя — своя политика, оранжевая — политика на смеси. До обучения пунктирное кольцо — где оператор взял кубик в первой демонстрации. После обучения на кадре проверочная сцена: чёрное кольцо — нужный кубик, синий крестик — куда опустила захват своя политика, оранжевая точка — политика на смеси, зелёным — попадание.
Легенда: значки на сцене
Под капотом: формат, политика, обучение и наши упрощения
Наблюдение робота — кадр его камеры , усреднённый по клеткам до сетки . Действие оператора — точка на столе; в общем формате это нормированные координаты в кадре и корзины:
— нормировка по рабочему полю: для клеток сетки это , для миллиметров — деление на ширину поля, для смещения от домашней точки — . Знак оси у робота D в по умолчанию не входит, поэтому его метки в общем формате зеркальны меткам остальных роботов при одинаковой картинке. Переключатель «выровнять» добавляет в и знак оси — это то выравнивание систем координат, которого в статье нет.
Политика: кадр и слово команды → сеть с одним скрытым слоем из 32 нейронов → две головы softmax по 24 корзинам, цель — перекрёстная энтропия по обеим головам, как у RT-1 с его 256 корзинами. Вместо обучаемого энкодера картинки — замороженный: карта сходства цвета каждой клетки с цветом слова команды, по роли как предобученные EfficientNet и USE в RT-1 и мини-CLIP в CLIPort из урока 2.1. Обучение — 500 шагов Adam пакетами по 16 примеров; пример для пакета сначала выбирает датасет с вероятностью, пропорциональной его весу в смеси, потом случайную демонстрацию из него. У политик на своих данных вес отличен от нуля только у одного датасета. Все случайности с зерном, поэтому числа повторяются от запуска к запуску.
Чего здесь нет: истории кадров, поворота и высоты захвата, нескольких шагов в эпизоде. Камеры роботов отличаются только обрезкой, масштабом и зеркалом, а предметы и стол одни и те же, поэтому перенос у нас даётся легче, чем между Franka в одной лаборатории и WidowX в другой. Числа лаборатории не имеют отношения к числам статьи.
Политика на своих данных у робота с 300 демонстрациями работала хорошо, у робота с 15 — почти никогда, и смесь это выровняла: малым датасетам она добавила десятки процентных пунктов, а большому почти ничего не изменила. В статье тот же рисунок на реальных роботах: малые домены выигрывают сильно, большие — только при достаточно большой модели. Но робот D поднялся лишь после того, как мы выровняли его ось: нормировка сама по себе не делает «вправо» одним и тем же словом для всех роботов, и в статье это оставлено модели — она должна узнать робота по картинке. У нас, где камеры почти одинаковы, узнать его не по чему. И веса смеси оказались не косметикой: убрать самый большой датасет — просядут все, поднять вес самого маленького — просядет самый большой.
Open X-Embodiment показал, что общий формат и смесь работают, и выложил датасет и модели. Что из этого выросло к 2026 году?
Что выросло из общего формата
Главный результат Open X-Embodiment — не модели, а привычка: данные роботов теперь принято выкладывать в общем формате и обучать на смесях. Открытые модели зрения, языка и действий следующего поколения, Octo и OpenVLA, обучены на смесях датасетов из Open X-Embodiment, и вопрос о весах смеси, который у нас решали ползунки, стал в них отдельным разделом статьи; о них — урок 3.5. Модели из уроков 3.6–3.8, от π0 до Gemini Robotics, тоже учатся на данных многих роботов сразу, и их авторы отдельно описывают, как смешивают данные разных конфигураций.
Изменился и способ собирать данные. Open X-Embodiment сводил чужие записи задним числом и потому мирился с разными камерами и системами координат. DROID, собранный в 2024 году, записан уже по единому протоколу на одинаковых установках Franka с одинаковыми камерами во многих лабораториях: выравнивать такие данные почти не нужно. Библиотека LeRobot от Hugging Face задала открытый формат датасетов, в который переведены и наборы из Open X-Embodiment, и записи с настольных рук за несколько сотен долларов, так что любая лаборатория или любитель добавляет свои эпизоды к общим.
Открытым остался вопрос, который статья назвала среди направлений будущей работы: критерия, когда перенос положительный, по-прежнему нет, и веса смеси подбирают вручную. И чем крупнее модели, тем заметнее, что миллиона траекторий мало: модели зрения и языка учатся на миллиардах примеров. Откуда брать данные для роботов — телеоперация, симуляция, видео людей — об этом часть 4.
Восемь вопросов о типичных заблуждениях
Итоги урока
- Open X-Embodiment не записывал новых демонстраций: 60 существующих датасетов 22 роботов из 21 института свели к одному формату RLDS — больше миллиона траекторий, 527 навыков.
- Общий формат груб намеренно: одна камера, кадр общего разрешения и 7-мерный вектор действия захвата, нормированный по датасету. Системы координат, частоты и смысл значений не выравнивают, и один вектор может означать разные движения у разных роботов.
- Модели те же, что раньше: RT-1-X на 35 млн параметров и RT-2-X на 55 млрд, обученные на смеси из 9 роботов без каких-либо приспособлений к разнице между ними. Положительный перенос получили сами данные.
- Малым доменам смесь помогает: RT-1-X обошёл методы авторов в 4 из 5 датасетов, в среднем на 50%. В больших доменах маленькая модель недообучается и проигрывает RT-1 на его данных, а большая RT-2-X — нет.
- Умения переходят между роботами: на задачах из Bridge, записанного на WidowX, RT-2-X на Google Robot даёт 75,8% против 27,3% у RT-2, а без Bridge в смеси — 42,8%. Нужны размер модели, история кадров и веб-предобучение.
- В лаборатории перенос воспроизвёлся на столе: малые датасеты выиграли десятки процентных пунктов, большой почти не изменился, а робот с невыровненной осью поднялся только после выравнивания. Веса смеси и состав данных меняют результат каждого робота.
Открытые вопросы
Как заранее понять, поможет ли смесь данному роботу или навредит?
Статья критерия не даёт и называет его будущей работой. Из опытов видны три условия: домен выигрывает тем больше, чем меньше у него своих данных; в богатых доменах нужна достаточно ёмкая модель; а несогласованный формат, как ось робота D в лаборатории, перенос ломает. Практический способ пока один — абляции: убрать датасет из смеси и измерить, что изменилось, как в строке 3 таблицы II. Дешевле было бы предсказывать перенос по близости наблюдений и действий между датасетами, но такой меры, проверенной на роботах, ещё нет.
Общий вектор описывает один захват. Как быть с двурукими роботами и четвероногими, которые есть в датасете, но не в опытах?
Авторы прямо исключили роботов с другими сенсорами и приводами из экспериментов. Варианты, которые появились позже: отдельные головы действий под каждую конфигурацию робота, маски для отсутствующих измерений, более длинные векторы с нулями в неиспользуемых компонентах. В уроке 3.5 Octo подключает новые головы действий при дообучении на новый робот, а в уроке 3.7 модели вроде GR00T N1 и Helix описывают действия гуманоида десятками чисел, а GR00T N1 учится ещё и на видео людей. Общий знаменатель всех решений — общими остаются кадр и язык, а действие подстраивают под робота.
Гид по статье
- Читать внимательноРаздел IV-A о приведении форматов: что выравнивают и что нет. Раздел V-A с рисунком 4 и таблицей I: малые и большие домены. Разделы V-B и V-C с таблицей II: откуда возникающие умения и что дают размер, история и веб-предобучение.
- Можно пропуститьДве страницы списка авторов и институтов, обзор смежных работ в разделе II и ссылки; подробности RT-1 и RT-2 в разделе IV-B — они разобраны в уроках 3.1 и 3.3.
- Вопрос по ходуRT-1-X видел в десятки раз больше данных, чем RT-1 на Bridge, и всё равно уступил ему. Что бы ты поменял первым — модель, веса смеси или формат, — и как бы проверил, что помогло именно это?
Материалы
- Open X-Embodiment и RT-XСтраница проекта: список всех 60 датасетов с описанием форматов, видео и веса RT-1-X
- Репозиторий open_x_embodimentКод загрузки датасетов в формате RLDS через TensorFlow Datasets, блокноты с примерами и инференсом RT-1-X
- RLDSФормат хранения эпизодов, в котором собран датасет
Дальше: 3.5 «Открытые VLA: Octo и OpenVLA». Модели RT-X выложены частично, а их обучение стоило как у большой языковой модели. В следующем уроке — открытые модели, обученные на смесях из Open X-Embodiment, и как дообучить их на своего робота через LoRA на одной видеокарте. Перейти к уроку 3.5 →