Open X-Embodiment: что это такое и почему это важно для обучения роботов
Open X-Embodiment (OXE) — это крупнейший из существующих наборов данных для открытого совместного обучения роботов. Выпущенный консорциумом из более чем 30 исследовательских институтов, он представляет собой первую серьезную попытку создать базовый набор данных для общей политики в отношении роботов — робототехнический эквивалент ImageNet или The Pile.
Что такое открытый X-вариант?
Open X-Embodiment — это единый набор данных о демонстрациях манипуляций роботами, собранных в более чем 22 различных вариантах роботов — включая руки от Franka, WidowX, UR5, Kuka и других — и в десятках исследовательских лабораторий по всему миру. Набор данных насчитывает более миллиона эпизодов, охватывающих сотни различных манипуляционных задач: сбор, размещение, открытие ящиков, разливание жидкостей, протирание поверхностей и многое другое.
Буква «X» в названии означает «перекрестное воплощение»: определяющей целью OXE является обучение политикам, которые передают знания между телами роботов. Политика, предварительно обученная на полном наборе данных OXE, учитывает манипуляционное поведение в широком диапазоне геометрий рук, типов захватов, конфигураций камер и областей задач, что дает ей богатый априорный опыт, который можно точно настроить для нового робота с гораздо меньшим количеством демонстраций, чем обучение с нуля.
Участвующие учреждения и состав набора данных
В число учреждений, внесших вклад, входят Стэнфорд, Калифорнийский университет в Беркли, Google DeepMind, Карнеги-Меллон, Массачусетский технологический институт, ETH Zurich и многие другие. Каждая лаборатория предоставила свои существующие наборы демонстрационных данных в стандартизированном формате. Набор данных размещен в Google Cloud Storage и доступен для исследовательских целей бесплатно. Поднаборы данных значительно различаются по размеру: некоторые лаборатории предоставили десятки тысяч эпизодов, другие — несколько сотен. Распределение задач смещено в сторону настольного выбора и размещения, что отражает наиболее распространенную экспериментальную установку, но разнообразие объектов, условий освещения и конфигураций рук действительно велико.
Robotics Transformer 2 (RT-2) и последующие модели от Google были обучены на данных OXE и продемонстрировали, что предварительное обучение перекрестным воплощениям дает стратегии со значительно лучшим обобщением с нулевым выстрелом, чем обучение одного робота. Этот результат подтвердил основную гипотезу OXE и ускорил внедрение наборов данных для разных вариантов реализации в этой области.
Формат набора данных и RLDS
OXE использует формат RLDS (Спецификация набора данных обучения роботов), схему на основе наборов данных TensorFlow для хранения траекторий робота. Каждый эпизод в RLDS представляет собой последовательность шагов, где каждый шаг содержит словарь наблюдений (изображения, состояния суставов, состояние захвата), вектор действия, сигнал вознаграждения и языковую аннотацию, описывающую задачу. Схема является достаточно гибкой, чтобы приспособить различные способы наблюдения и пространства действий в разных вариантах осуществления.
Для работы с RLDS требуется TensorFlow или библиотека rlds_creator. LeRobot от Hugging Face предоставляет утилиты преобразования для преобразования данных OXE в собственный формат, что делает их доступными для исследователей, предпочитающих PyTorch. SVRC платформа данных экспортирует наборы данных в формате, совместимом как с RLDS, так и с LeRobot, что позволяет напрямую вносить вклад в будущие выпуски OXE.
Как внести свой вклад в OXE
Для добавления набора данных в OXE необходимо форматировать демонстрации в RLDS, добавлять языковые аннотации для каждого шага и отправлять запрос на включение в репозиторий OXE GitHub вместе с документацией по набору данных. Процесс подачи включает проверку качества данных и соответствия формата. Если ваши демонстрации были собраны с помощью служб данных SVRC, платформа может генерировать экспорт, совместимый с RLDS, со стандартизированными метаданными, что значительно упрощает процесс добавления. Свяжитесь с Команда СВРК для получения рекомендаций по подготовке ваших данных для подачи в OXE.
Использование OXE для предварительной тренировки
Наиболее ценное с практической точки зрения использование OXE — в качестве набора данных для предварительного обучения. Загрузите подмножество OXE, соответствующее вашей области задач и роботу, обучите общую основу политики, а затем настройте свои собственные демонстрации для конкретных задач. Этот подход постоянно требует меньше демонстраций конкретных задач, чем обучение с нуля — часто в 5–10 раз меньше — при достижении более высоких конечных результатов.
Предварительное обучение в OXE наиболее полезно, когда ваши данные для точной настройки ограничены (менее 100 эпизодов), когда ваши задачи концептуально аналогичны задачам в OXE и когда вы используете архитектуру, предназначенную для переноса между воплощениями, например Octo, OpenVLA или RT-2-X. Точная настройка с нуля под конкретные задачи остается конкурентоспособной, если у вас есть множество высококачественных демонстраций, собранных в условиях развертывания.
Совместимость SVRC и наша помощь
Стандарт сбора данных SVRC с самого начала спроектирован так, чтобы быть OXE-совместимым: стандартизированное размещение камеры, согласованная схема аннотаций, маркировка успеха с контролем качества и экспорт с поддержкой RLDS. Данные, собранные через SVRC услуги передачи данных может использоваться непосредственно для тонкой настройки OXE или участвовать в будущих выпусках наборов данных. Для команд, которые хотят использовать предварительно обученные модели OXE на своем конкретном оборудовании, SVRC предлагает инженерную поддержку для настройки конвейера тонкой настройки и оценки политик, готовых к развертыванию.