GenEM — генерация выразительного поведения роботов с помощью LLM


Generative Expressive Motion (GenEM) — Генеративное выразительное поведение — новый метод от Google DeepMind по созданию выразительного поведения роботов с помощью больших языковых моделей (БЯМ, LLM).

Традиционно, для создания выразительного поведения роботов использовались системы, основанные на правилах или шаблонах. Разработчик робота, занимающийся программированием поведения,  заранее составлял формализованный набор условий и соответствующего им поведения робота (пример — Творческий путь построения робота). Основная проблема подобных систем — это потребность вручную формировать необходимые модели поведения для каждого типа робота. Адаптация робота к новым ситуациям и предпочтениям пользователей требует перепрограммирования, так как изначально система имеет жёстко заданные шаблоны поведения.

Совсем недавно для создания выразительного поведения, исследователи экспериментировали с подходами, основанными на машинном обучении, что позволяет сделать поведение роботов более гибкими. Но и у этого подхода есть недостаток — необходимость формирования специализированных наборов данных для каждого типа роботов и видов социального взаимодействия, в которых используется определённое поведение.

Основная идея методики GenEM — использовать знания, заложенные в LLM, для динамического создания выразительного поведения. Таким образом, использование LLM позволяет обойтись без создания длинного списка правил и дополнительного обучения специализированных моделей машинного обучения.


«GenEM может создавать мультимодальное поведение, которое использует доступные возможности робота (речь, движения тела и другие визуальные функции, (световые полосы)) для эффективного выражения намерений робота».
«Одним из ключевых преимуществ GenEM является то, что он реагирует на живую обратную связь от человека, адаптируясь и генерируя новые выразительные модели поведения, комбинируя существующие».

В основе GenEM лежат на инструкции, написанные на естественном языке. Входными данными может быть выразительное поведение: «Кивни головой», или описание социального контекста, в котором робот должен следовать социальным нормам. Далее, несколько LLM-агентов используются для автономной генерации выразительного поведения робота на основе инструкций на естественном языке. Каждый агент играет определенную роль в анализе социального контекста и сопоставлении желаемого выразительного поведения с вызовами API для робота:
1. Первый LLM-агент использует цепочку мыслей (chain-of-thought reasoning), чтобы описать, как человек будет реагировать в такой ситуации.
2. Другой агент LLM переводит выразительные движения человека в пошаговую процедуру, основанную на функциях робота. Например, он может приказать роботу кивнуть, используя возможности наклона головы, или имитировать улыбку, отображая на дисплее робота заранее запрограммированный световой узор.
3. Третий LLM-агент отображает пошаговую процедуру выразительного движения робота в исполняемый код на основе команд API робота.
В качестве дополнительного шага GenEM может учесть отзывы людей и использовать LLM для обновления сгенерированного экспрессивного поведения.

Что важно — ни один из этих шагов не требует специального обучения LLM, которую необходимо лишь адаптировать к возможностям и спецификациям API робота.

В своей работе, в качестве LLM для анализа контекста и создания выразительного поведения исследователи использовали GPT-4 от OpenAI (gpt-4-0613, параметр temperature=0).

Для проверки работы GenEM, исследователи сравнили поведение, созданное на мобильном роботе с использованием двух вариантов GenEM — с обратной связью от пользователя и без нее, с набором сценариев поведения, разработанных профессиональным аниматором персонажей.
Опросы десятков пользователей показали, что, в целом, пользователи находят поведение, созданное GenEM, столь же понятным, как и поведение, тщательно прописанное профессиональным аниматором.
Так же исследователи обнаружили, что модульный и многоэтапный подход (LLM-агенты), используемый в GenEM, намного лучше, чем использование только одной LLM для прямой трансляции инструкций в поведение робота.

А что еще более важно, благодаря своей структуре, GenEM не зависит от типа робота, к которому он применяется и может использовать способности LLM к рассуждению, чтобы использовать простой набор роботизированных действий для создания сложного выразительного поведения.

Таким образом, ключевая идея проекта GenEM — использовать богатый социальный контекст, доступный LLM, для создания адаптируемого и компонуемого выразительного поведения роботов.

Данный подход с использованием больших языковых моделей позволяет создавать адаптируемые и компонуемые выразительные движения роботов, но нужно дальнейшее изучение как будет работать данный метод с увеличением пространства действий робота и как можно  отрабатывать индивидуальные предпочтения пользователей, относительно ожидаемого поведения робота в разных ситуациях.

Статьи

  1. Mahadevan K. et al. Generative Expressive Robot Behaviors using Large Language Models //arXiv preprint arXiv:2401.14673. – 2024.

Ссылки

По теме


Добавить комментарий

Arduino

Что такое Arduino?
Зачем мне Arduino?
Начало работы с Arduino
Для начинающих ардуинщиков
Радиодетали (точка входа для начинающих ардуинщиков)
Первые шаги с Arduino

Разделы

  1. Преимуществ нет, за исключением читабельности: тип bool обычно имеет размер 1 байт, как и uint8_t. Думаю, компилятор в обоих случаях…

  2. Добрый день! Я недавно начал изучать программирование под STM32 и ваши уроки просто бесценны! Хотел узнать зачем использовать переменную типа…

3D-печать AI Android Arduino Bluetooth CraftDuino DIY IDE iRobot Kinect LEGO OpenCV Open Source Python Raspberry Pi RoboCraft ROS swarm ИК автоматизация андроид балансировать бионика версия видео военный датчик дрон интерфейс камера кибервесна манипулятор машинное обучение наше нейронная сеть подводный пылесос работа распознавание робот робототехника светодиод сервомашинка собака управление ходить шаг за шагом шаговый двигатель шилд юмор

OpenCV
Робототехника
Будущее за бионическими роботами?
Нейронная сеть - введение