Политика распространения обучения роботов: что это такое и как ее использовать

Политика распространения, представленная Chi et al. в 2023 году принес революцию генеративного моделирования в управление роботами. Рассматривая генерацию действий как проблему шумоподавления, он справляется с мультимодальной, многомерной природой манипуляционного поведения способами, которые не могут сделать более простые алгоритмы поведенческого клонирования. Вот что вам нужно знать, чтобы применить это в своем собственном проекте по робототехнике.

Что такое политика распространения?

Политика распространения — это класс политик управления роботами, основанный на вероятностных моделях диффузии шумоподавления (DDPM) — той же математической структуре, которая лежит в основе моделей преобразования текста в изображение, таких как Stable Diffusion. В контексте робота создаваемое «изображение» представляет собой последовательность действий робота (траекторию). Начиная с чистого гауссовского шума в пространстве действий, модель итеративно удаляет шум в зависимости от текущего визуального наблюдения и состояния робота, создавая последовательную, высококачественную последовательность действий после 10–100 шагов шумоподавления.

Ключевой вывод заключается в том, что диффузионные модели изучают полное распределение вероятностей действий, а не предсказывают одно лучшее действие. Для робототехники это критично. Человеческие демонстрации одной и той же задачи, естественно, мультимодальны: человек может взять чашку с левой или с правой стороны в зависимости от тонких контекстуальных сигналов. Модель, которая должна свести это распределение к единому прогнозу, либо будет придерживаться одного режима и потерпит неудачу в другой половине времени, либо усреднит режимы и создаст причудливую промежуточную траекторию, которая всегда терпит неудачу. Политика распространения позволяет избежать этого, явно моделируя распределение и производя выборку из него во время вывода.

Почему политика распространения превосходит стандартное поведенческое клонирование

Стандартное поведенческое клонирование (BC) обучает политику как задачу контролируемой регрессии: учитывая наблюдение, предскажите действие. Это работает, когда отображение наблюдений в действия является детерминированным и унимодальным. На практике задачи манипулирования встречаются редко. Даже «простые» задачи, такие как взятие блока со стола, требуют нескольких допустимых углов подхода, поз захвата и конфигураций предварительного захвата. Naive BC создает политики, которые колеблются в точках принятия решений, делают компромиссный выбор движения или полностью терпят неудачу, когда распределение тестов немного отличается от обучения.

Diffusion Policy неизменно превосходит базовые показатели BC по эталонным пакетам манипуляций. В оригинальной статье он достиг самых современных результатов в 11 из 12 задач в тесте Robomimic, с особенно большим отрывом от задач с высокой мультимодальностью действий. При реальных оценках робота политика диффузии продемонстрировала более устойчивое поведение при восстановлении — когда робот достиг слегка неправильного промежуточного состояния, политика могла восстановиться, поскольку она производила выборку из широкого распределения, а не следовала детерминированному пути.

По сравнению с ACT (разбиение действий на блоки с помощью преобразователей), политика распространения обычно лучше работает с задачами с сильной мультимодальностью и хуже — с задачами с долгосрочными зависимостями, где прогнозирование фрагментов ACT лучше. На практике оба алгоритма достаточно конкурентоспособны, поэтому качество и количество наборов данных имеют большее значение, чем выбор политической архитектуры. Если вы не уверены, какой вариант использовать, сначала попробуйте ACT для повышения скорости итерации, а затем — Diffusion Policy, если вы наблюдаете сбои при усреднении режима.

Требования к данным для политики распространения

Политика распространения выигрывает от большего количества данных, чем ACT, в первую очередь потому, что сеть шумоподавления имеет больше параметров и более обширную цель моделирования. Практический минимум — 100–200 демонстраций одной задачи в контролируемых условиях. Чтобы добиться надежной производительности развертывания — обработки изменений положения объекта, изменений освещения и случайного шума датчиков — запланируйте 300–500 демонстраций на каждую задачу. В отличие от ACT, политика распространения имеет тенденцию продолжать улучшаться за счет дополнительных данных вплоть до довольно больших размеров наборов данных, что делает ее лучшим выбором, если вы планируете инвестировать в крупномасштабный сбор данных.

Разнообразие данных так же важно, как и объем. Демонстрации должны охватывать диапазон положений, ориентаций и конфигураций объектов, которые вы ожидаете при развертывании. Плотное скопление демонстраций с объектами, всегда находящимися в одном и том же месте, создаст политику, которая потерпит неудачу в тот момент, когда объект переместится на несколько сантиметров. SVRC служба управляемого сбора данных следует протоколам структурированных вариаций — систематически рандомизируя положения объектов, условия освещения и стили захвата оператора — чтобы обеспечить наборы данных, которые создают обобщаемые политики.

Представление наблюдения также имеет большое значение. Политика распространения со сквозным обучением кодировщика изображений ResNet обычно превосходит политики, использующие замороженные предварительно обученные кодировщики для узких распределений задач, но предварительно обученные кодировщики (R3M, MVP, DINO) обеспечивают лучшее обобщение, когда условия тестирования отличаются от условий обучения. Для большинства практических проектов начните с предварительно обученного кодировщика, чтобы максимизировать ценность вашего набора данных, и переходите на сквозное обучение, только если у вас есть более 500 демонстраций и стабильная среда.

Настройка обучения и требования к вычислительным ресурсам

Эталонная реализация политики распространения (доступна в GitHub Columbia Robotics Lab) обучается либо с помощью магистральной сети UNet (более быстрый вывод, меньшая емкость), либо с магистральной сетью Transformer (более медленный вывод, более высокая емкость). Для большинства однозадачных проектов вариант UNet является подходящей отправной точкой. Обучение на одном RTX 3090 или 4090 занимает 4–12 часов для набора данных из 200 эпизодов, в зависимости от разрешения наблюдения и длины горизонта действия.

Ключевые гиперпараметры, которые нужно установить правильно: горизонт действия (сколько будущих шагов предсказать — обычно 16–32 для настольных задач), количество шагов распространения (100 для DDPM, 10–25 для DDIM с минимальной потерей качества) и окно наблюдения (сколько прошлых кадров включить — обычно 2). Не меняйте все три сразу; исправьте остальные при настройке одного. Наиболее эффективным изменением для повышения эффективности политики обычно является увеличение размера набора данных, а не настройка гиперпараметров архитектуры.

Для вывода о реальном роботе DDPM со 100 шагами обычно слишком медленный для высокочастотного управления. Используйте планировщик DDIM с 10–25 шагами, который работает на частоте ~ 20 Гц на RTX 3090, что достаточно для управления частотой 10 Гц с буфером. В качестве альтернативы, фильтрация политики согласованности может обеспечить вывод в 1–3 шага с минимальным снижением производительности для более простых задач.

Использование служб данных SVRC для политики распространения

SVRC конвейер сервисов передачи данных создает наборы данных, отформатированные для прямого использования с эталонной реализацией Diffusion Policy и платформой HuggingFace LeRobot. Эпизоды хранятся в виде архивов ZARR с синхронизированными потоками изображений, проприоцептивным состоянием и действиями с частотой 50 Гц. Фильтрация качества удаляет эпизоды, в которых задача не была успешно выполнена, робот столкнулся с окружающей средой или колебания оператора привели к нерепрезентативным траекториям.

Наша служба по сбору платежей использует Платформа телеопераций SVRC с возможностью управления ведущим и ведомым с помощью двух рук, камерами на запястье и сверху, а также дополнительной системой регистрации крутящего момента. Для многозадачного обучения политике распространения — когда одна политика изучает несколько задач в зависимости от идентификатора задачи или языка — мы можем собирать данные по вариантам задач в рамках одной кампании и предоставлять унифицированный набор данных. Команды, работающие с аппаратными платформами OpenArm или ALOHA, получают встроенную аппаратную поддержку; индивидуальная аппаратная интеграция доступна по запросу. Свяжитесь с нашей командой чтобы обсудить ваши требования к данным и сроки.

Связанный: Имитационное обучение для роботов · Объяснение моделей VLA · Что такое данные обучения роботов? · Службы передачи данных · Тесты