З поєднанням GPT-4 та навчання з підкріпленням, як виглядатиме майбутнє робототехніки?
Коли справа доходить до навчання, GPT-4 є грізним учнем. Переваривши велику кількість людських даних, він освоїв різні знання, і навіть надихнув математика Тао Чжесюаня на чат.
При цьому він став прекрасним педагогом, і не тільки вчить книжковим знанням, а й вчить роботів крутити ручки.
Робот на ім'я Eureka був досліджений Nvidia, Університетом Пенсільванії, Каліфорнійським технологічним інститутом і Техаським університетом в Остіні. Це дослідження поєднує в собі результати великих мовних моделей і навчання з підкріпленням: GPT-4 використовується для уточнення функції винагороди, а навчання з підкріпленням використовується для навчання робота-контролера.
Завдяки здатності GPT-4 писати код, Eureka має чудові можливості дизайну функцій винагороди, а її власноруч згенеровані винагороди перевершують винагороди експертів-людей у 83% завдань. Ця здатність дозволяє роботу виконувати багато завдань, які раніше було непросто виконувати, такі як поворот ручок, відкривання ящиків і шаф, кидання м'ячів для лову та ведення, робота з ножицями тощо. Але поки що все це робиться у віртуальному середовищі.
Крім того, Eureka впровадила новий тип RLHF у контексті, який включає зворотний зв'язок природною мовою від людей-операторів для керівництва та узгодження функцій винагороди. Він може надати інженерам-робототехнікам потужні допоміжні функції, які допоможуть інженерам проектувати складну поведінку руху. Джим Фан, старший науковий співробітник ШІ в NVIDIA та один з авторів статті, порівняв дослідження з «Вояджером у просторі API фізичного симулятора».
Варто згадати, що дане дослідження є повністю відкритим, а адреса з відкритим вихідним кодом виглядає наступним чином:
Посилання на папір:
Посилання на проект:
Посилання на код:
Огляд статті
Великі мовні моделі (LLM) чудово справляються з високорівневим семантичним плануванням роботизованих завдань (таких як SayCan, RT-2 від Google), але чи можуть вони бути використані для вивчення складних, низькорівневих операційних завдань, таких як поворот пера, залишається відкритим питанням. Існуючі спроби вимагають великих знань у цій галузі для створення підказок із завданнями або освоєння лише простих навичок, далеких від гнучкості людського рівня.
Робот RT-2 від Google
Навчання з підкріпленням (RL), з іншого боку, досягло вражаючих результатів у гнучкості та багатьох інших аспектах (наприклад, маніпулятор OpenAI, який грає в кубик Рубіка), але воно вимагає від людей-дизайнерів ретельної побудови функцій винагороди, які точно кодифікують і надають навчальні сигнали для бажаної поведінки. Оскільки багато реальних завдань з навчання з підкріпленням забезпечують лише мізерні винагороди, які важко використовувати для навчання, формування винагороди необхідне на практиці, щоб забезпечити прогресивні сигнали навчання. Незважаючи на те, що функція винагороди дуже важлива, вона, як відомо, складна в проектуванні. Нещодавнє опитування показало, що 92% опитаних дослідників і практиків навчання з підкріпленням заявили, що вони робили проби та помилки на людях при розробці винагород, а 89% сказали, що вони розробляли винагороди, які були неоптимальними та призводили б до несподіваної поведінки.
Враховуючи, що дизайн винагороди настільки важливий, ми не можемо не запитати, чи можна розробити універсальний алгоритм програмування винагороди, використовуючи найсучасніші кодувальні LLM, такі як GPT-4? Ці LLM досягають успіху в кодуванні, генерації нульових пострілів і контекстному навчанні, а також значно покращили продуктивність програмних агентів. В ідеалі цей алгоритм розробки винагород повинен мати можливості генерування винагород на рівні людини, які можуть масштабуватися до широкого кола завдань, автоматизувати виснажливі процеси проб і помилок без нагляду людини та бути сумісним із наглядом людини для забезпечення безпеки та послідовності.
У цій статті запропоновано алгоритм проектування винагороди на основі LLM, EUREKA (Evolution-driven Universal REward Kit for Agent). Алгоритм досягає наступного:
Продуктивність дизайну винагороди досягає людського рівня в 29 різних середовищах RL з відкритим вихідним кодом, які включають 10 різних форм роботів (чотириногий, квадрокоптер, двоногий, маніпулятор і кілька спритних рук, див. Малюнок 1). Без будь-яких підказок для конкретних завдань або шаблонів винагород, самостійно створені винагороди EUREKA перевершили винагороди експертів-людей у 83% завдань і досягли середнього покращення нормалізації на 52%.
2. Розв'язувати спритні операційні завдання, яких раніше не вдавалося досягти за допомогою ручного інжинірингу. Візьмемо, наприклад, проблему повороту ручки, при якій руці лише з п'ятьма пальцями потрібно швидко повернути перо відповідно до попередньо встановленої конфігурації обертання та обертати якомога більше циклів. Поєднавши EUREKA з курсовою роботою, дослідники вперше продемонстрували роботу швидкого повороту пера на змодельованій антропоморфній «Тіньовій руці» (див. внизу рисунка 1).
У цій статті представлено новий метод контекстного навчання без градієнта для навчання з підкріпленням на основі людського зворотного зв'язку (RLHF), який може генерувати більш ефективні та узгоджені з людиною функції винагороди на основі різних форм людського внеску. У статті показано, що EUREKA може отримати вигоду та покращити існуючі функції винагороди людини. Подібним чином дослідники продемонстрували здатність EUREKA використовувати людський текстовий зворотний зв'язок, щоб допомогти в розробці функцій винагороди, які допомагають фіксувати тонкі людські переваги.
На відміну від попередньої роботи L2R, в якій використовувався дизайн винагороди за допомогою LLM, EUREKA не має підказок для конкретних завдань, шаблонів винагород і кількох прикладів. В експерименті EUREKA показала значно кращі результати, ніж L2R, завдяки своїй здатності генерувати та вдосконалювати програми винагороди у вільній формі.
Універсальність EUREKA зумовлена трьома ключовими варіантами розробки алгоритмів: контекст як контекст, еволюційний пошук та рефлексія винагороди.
По-перше, використовуючи вихідний код середовища як контекст, EUREKA може генерувати виконувані функції винагороди з нульових вибірок у магістральному кодуванні LLM (GPT-4). Потім EUREKA значно покращує якість винагород, виконуючи еволюційний пошук, ітеративно пропонуючи партії кандидатів на винагороди та уточнюючи найбільш перспективні винагороди у контекстному вікні LLM. Це покращення контексту досягається за допомогою рефлексії винагороди, яка є текстовим резюме якості винагороди, заснованим на статистиці стратегічного навчання, що дозволяє автоматично та цілеспрямовано редагувати винагороду.
3 ПОКАЗАНИЙ ПРИКЛАД ВИНАГОРОДИ EUREKA ZERO-SAMPLE І ПОЛІПШЕНЬ, НАКОПИЧЕНИХ В ХОДІ ОПТИМІЗАЦІЇ. Щоб гарантувати, що EUREKA може масштабувати свій пошук винагород до максимального потенціалу, EUREKA використовує прискорене GPU розподілене навчання з підкріпленням на IsaacGym для оцінки проміжних винагород, що забезпечує до трьох порядків підвищення швидкості навчання політиці, що робить EUREKA широким алгоритмом, який природним чином масштабується зі збільшенням обсягу обчислень.
Це показано на малюнку 2. Дослідники прагнуть відкрити джерело всіх порад, середовищ і згенерованих функцій винагороди, щоб полегшити подальші дослідження дизайну винагороди на основі LLM.
Ознайомлення з методом
EUREKA може написати алгоритм винагороди автономно, як він реалізується, давайте розглянемо далі.
EUREKA складається з трьох алгоритмічних компонентів: 1) використання середовища як контексту, таким чином підтримуючи генерацію виконуваних винагород з нульовим пострілом; 2) еволюційний пошук, ітеративне пропонування та уточнення кандидатів на винагороду; 3) Винагороджуйте рефлексію та підтримуйте точне покращення винагороди.
Середовище як контекст
У цій статті рекомендовано вказувати початковий код середовища безпосередньо як контекст. Маючи лише мінімальні інструкції, EUREKA може генерувати винагороди в різних середовищах з нульовими зразками. Приклад виходу EUREKA показаний на рисунку 3. EUREKA вміло поєднує існуючі змінні спостереження (наприклад, положення кінчиків пальців) у наданому коді середовища та створює дійсний код винагороди – і все це без будь-яких специфічних для навколишнього середовища шаблонів підказок чи винагороди.
Однак з першої спроби отримана винагорода не завжди може бути виконаною, а навіть якщо і є, то неоптимальною. У зв'язку з цим виникає питання про те, як ефективно подолати неоптимальність генерації винагороди за однією вибіркою?
Еволюційний пошук
Далі в статті описується, як еволюційний пошук вирішує проблеми субоптимальних рішень, згаданих вище. Вони допрацьовані таким чином, що в кожній ітерації EUREKA вибірка має кілька незалежних виходів LLM (рядок 5 в алгоритмі 1). Оскільки кожна ітерація є незалежною та однорідною, ймовірність помилок у всіх функціях винагороди в ітерації зменшується експоненціально зі збільшенням розміру вибірки.
Рефлексія винагороди
Щоб забезпечити більш складний і цілеспрямований аналіз винагороди, у цій статті пропонується створити автоматизований зворотний зв'язок, щоб узагальнити динаміку навчання політиці в тексті. Зокрема, враховуючи, що функція винагороди EUREKA вимагає окремих компонентів у програмі винагороди (таких як компонент винагороди на рисунку 3), у цій статті відстежуються скалярні значення всіх компонентів винагороди в проміжних контрольних точках політики протягом усього процесу навчання.
Побудова цього процесу відображення винагороди проста, але він важливий через залежність алгоритму оптимізації винагороди. Тобто, на те, дійсна функція винагороди чи ні, впливає конкретний вибір алгоритму RL, і одна і та ж винагорода може поводитися дуже по-різному навіть при одному і тому ж оптимізаторі для заданої різниці гіперпараметрів. Деталізуючи, як алгоритм RL оптимізує окремі компоненти винагороди, відображення винагороди дозволяє EUREKA виробляти більш цілеспрямовані редагування винагороди та синтезувати функції винагороди для кращої роботи з фіксованим алгоритмом RL.
Експеримент
Експериментальна частина забезпечує комплексну оцінку Еврики, включаючи здатність генерувати функції винагороди, здатність вирішувати нові завдання та здатність інтегрувати різні людські внески.
Експериментальне середовище включає в себе 10 різних роботів і 29 завдань, 29 з яких реалізовані симулятором IsaacGym. В експерименті використовується 9 примітивних середовищ від IsaacGym (Ісаак), що охоплюють різноманітні форми роботів від чотириногого, двоногого, квадрокоптера, маніпулятора до роботизованої спритної руки. Крім того, ця стаття забезпечує глибину оцінювання, включаючи 20 завдань з бенчмарку «Спритність».
Еврика може виробляти функцію винагороди надлюдського рівня. З 29 завдань функція винагороди, надана Eureka, показала кращі результати, ніж написані експертами винагороди на 83% завдань, покращившись в середньому на 52%. Зокрема, «Еврика» досягла більших переваг у високовимірному еталонному середовищі Dexterity.
Eureka здатна розвивати пошук винагород таким чином, щоб винагороди покращувалися з часом. Eureka поступово приносить кращі винагороди, поєднуючи великомасштабний пошук винагород і детальний зворотний зв'язок про винагороду, в кінцевому підсумку перевершуючи людські рівні.
«Еврика» також може генерувати нові винагороди. У цій статті оцінено новизну винагород Еврики, розраховуючи кореляцію між винагородами Еврики та винагородами для людей у всіх завданнях Айзека. Як показано на малюнку, Еврика в основному генерує слабо корельовані функції винагороди, які перевершують функції винагороди людини. Крім того, в роботі також зазначається, що чим складніше завдання, тим менш актуальною є винагорода «Еврика». У деяких випадках винагороди Eureka навіть негативно корелюють з винагородами людей, але працюють значно краще, ніж винагороди людей.
想要实现机器人的灵巧手能够不停的转笔,需要操作程序有尽可能多的循环。本文通过以下方式解决此任务:(1) Доручіть Eureka згенерувати функцію винагороди, яка перенаправляє ручки у випадкову цільову конфігурацію, а потім (2) відкоригуйте цю попередньо навчену стратегію за допомогою Eureka Rewards, щоб досягти бажаної конфігурації послідовності пера-обертання. Як було показано, Eureka тонко налаштована швидко адаптувалася до стратегії, успішно обертаючи багато циклів поспіль. На противагу цьому, ні попередньо навчені, ні вивчені з нуля стратегії не можуть завершити обертання за один цикл.
У цій статті також розглядається, чи корисний початок з ініціалізації функції винагороди людини для Еврики. Як було показано, «Еврика» вдосконалюється і отримує вигоду від людських винагород, незалежно від якості людських винагород.
Eureka також впровадила RLHF, яка може модифікувати винагороди на основі відгуків людей, щоб крок за кроком направляти агентів через більш безпечну та схожу на людську поведінку. У прикладі показано, як «Еврика» вчить робота-гуманоїда бігати вертикально за допомогою людського зворотного зв'язку, який замінює попереднє автоматичне відображення винагороди.
Людиноподібний робот вивчає ходьбу під час бігу з Еврикою
Для отримання додаткової інформації, будь ласка, зверніться до оригінальної статті.
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
За допомогою GPT-4 робот навчився крутити ручку та пластини волоських горіхів
Оригінальне серце машини
Редактор: Чжан Цянь, Чень Пін
З поєднанням GPT-4 та навчання з підкріпленням, як виглядатиме майбутнє робототехніки?
Коли справа доходить до навчання, GPT-4 є грізним учнем. Переваривши велику кількість людських даних, він освоїв різні знання, і навіть надихнув математика Тао Чжесюаня на чат.
При цьому він став прекрасним педагогом, і не тільки вчить книжковим знанням, а й вчить роботів крутити ручки.
Завдяки здатності GPT-4 писати код, Eureka має чудові можливості дизайну функцій винагороди, а її власноруч згенеровані винагороди перевершують винагороди експертів-людей у 83% завдань. Ця здатність дозволяє роботу виконувати багато завдань, які раніше було непросто виконувати, такі як поворот ручок, відкривання ящиків і шаф, кидання м'ячів для лову та ведення, робота з ножицями тощо. Але поки що все це робиться у віртуальному середовищі.
Посилання на проект:
Посилання на код:
Огляд статті
Великі мовні моделі (LLM) чудово справляються з високорівневим семантичним плануванням роботизованих завдань (таких як SayCan, RT-2 від Google), але чи можуть вони бути використані для вивчення складних, низькорівневих операційних завдань, таких як поворот пера, залишається відкритим питанням. Існуючі спроби вимагають великих знань у цій галузі для створення підказок із завданнями або освоєння лише простих навичок, далеких від гнучкості людського рівня.
Навчання з підкріпленням (RL), з іншого боку, досягло вражаючих результатів у гнучкості та багатьох інших аспектах (наприклад, маніпулятор OpenAI, який грає в кубик Рубіка), але воно вимагає від людей-дизайнерів ретельної побудови функцій винагороди, які точно кодифікують і надають навчальні сигнали для бажаної поведінки. Оскільки багато реальних завдань з навчання з підкріпленням забезпечують лише мізерні винагороди, які важко використовувати для навчання, формування винагороди необхідне на практиці, щоб забезпечити прогресивні сигнали навчання. Незважаючи на те, що функція винагороди дуже важлива, вона, як відомо, складна в проектуванні. Нещодавнє опитування показало, що 92% опитаних дослідників і практиків навчання з підкріпленням заявили, що вони робили проби та помилки на людях при розробці винагород, а 89% сказали, що вони розробляли винагороди, які були неоптимальними та призводили б до несподіваної поведінки.
Враховуючи, що дизайн винагороди настільки важливий, ми не можемо не запитати, чи можна розробити універсальний алгоритм програмування винагороди, використовуючи найсучасніші кодувальні LLM, такі як GPT-4? Ці LLM досягають успіху в кодуванні, генерації нульових пострілів і контекстному навчанні, а також значно покращили продуктивність програмних агентів. В ідеалі цей алгоритм розробки винагород повинен мати можливості генерування винагород на рівні людини, які можуть масштабуватися до широкого кола завдань, автоматизувати виснажливі процеси проб і помилок без нагляду людини та бути сумісним із наглядом людини для забезпечення безпеки та послідовності.
У цій статті запропоновано алгоритм проектування винагороди на основі LLM, EUREKA (Evolution-driven Universal REward Kit for Agent). Алгоритм досягає наступного:
Продуктивність дизайну винагороди досягає людського рівня в 29 різних середовищах RL з відкритим вихідним кодом, які включають 10 різних форм роботів (чотириногий, квадрокоптер, двоногий, маніпулятор і кілька спритних рук, див. Малюнок 1). Без будь-яких підказок для конкретних завдань або шаблонів винагород, самостійно створені винагороди EUREKA перевершили винагороди експертів-людей у 83% завдань і досягли середнього покращення нормалізації на 52%.
На відміну від попередньої роботи L2R, в якій використовувався дизайн винагороди за допомогою LLM, EUREKA не має підказок для конкретних завдань, шаблонів винагород і кількох прикладів. В експерименті EUREKA показала значно кращі результати, ніж L2R, завдяки своїй здатності генерувати та вдосконалювати програми винагороди у вільній формі.
Універсальність EUREKA зумовлена трьома ключовими варіантами розробки алгоритмів: контекст як контекст, еволюційний пошук та рефлексія винагороди.
По-перше, використовуючи вихідний код середовища як контекст, EUREKA може генерувати виконувані функції винагороди з нульових вибірок у магістральному кодуванні LLM (GPT-4). Потім EUREKA значно покращує якість винагород, виконуючи еволюційний пошук, ітеративно пропонуючи партії кандидатів на винагороди та уточнюючи найбільш перспективні винагороди у контекстному вікні LLM. Це покращення контексту досягається за допомогою рефлексії винагороди, яка є текстовим резюме якості винагороди, заснованим на статистиці стратегічного навчання, що дозволяє автоматично та цілеспрямовано редагувати винагороду.
3 ПОКАЗАНИЙ ПРИКЛАД ВИНАГОРОДИ EUREKA ZERO-SAMPLE І ПОЛІПШЕНЬ, НАКОПИЧЕНИХ В ХОДІ ОПТИМІЗАЦІЇ. Щоб гарантувати, що EUREKA може масштабувати свій пошук винагород до максимального потенціалу, EUREKA використовує прискорене GPU розподілене навчання з підкріпленням на IsaacGym для оцінки проміжних винагород, що забезпечує до трьох порядків підвищення швидкості навчання політиці, що робить EUREKA широким алгоритмом, який природним чином масштабується зі збільшенням обсягу обчислень.
EUREKA може написати алгоритм винагороди автономно, як він реалізується, давайте розглянемо далі.
EUREKA складається з трьох алгоритмічних компонентів: 1) використання середовища як контексту, таким чином підтримуючи генерацію виконуваних винагород з нульовим пострілом; 2) еволюційний пошук, ітеративне пропонування та уточнення кандидатів на винагороду; 3) Винагороджуйте рефлексію та підтримуйте точне покращення винагороди.
Середовище як контекст
У цій статті рекомендовано вказувати початковий код середовища безпосередньо як контекст. Маючи лише мінімальні інструкції, EUREKA може генерувати винагороди в різних середовищах з нульовими зразками. Приклад виходу EUREKA показаний на рисунку 3. EUREKA вміло поєднує існуючі змінні спостереження (наприклад, положення кінчиків пальців) у наданому коді середовища та створює дійсний код винагороди – і все це без будь-яких специфічних для навколишнього середовища шаблонів підказок чи винагороди.
Однак з першої спроби отримана винагорода не завжди може бути виконаною, а навіть якщо і є, то неоптимальною. У зв'язку з цим виникає питання про те, як ефективно подолати неоптимальність генерації винагороди за однією вибіркою?
Далі в статті описується, як еволюційний пошук вирішує проблеми субоптимальних рішень, згаданих вище. Вони допрацьовані таким чином, що в кожній ітерації EUREKA вибірка має кілька незалежних виходів LLM (рядок 5 в алгоритмі 1). Оскільки кожна ітерація є незалежною та однорідною, ймовірність помилок у всіх функціях винагороди в ітерації зменшується експоненціально зі збільшенням розміру вибірки.
Щоб забезпечити більш складний і цілеспрямований аналіз винагороди, у цій статті пропонується створити автоматизований зворотний зв'язок, щоб узагальнити динаміку навчання політиці в тексті. Зокрема, враховуючи, що функція винагороди EUREKA вимагає окремих компонентів у програмі винагороди (таких як компонент винагороди на рисунку 3), у цій статті відстежуються скалярні значення всіх компонентів винагороди в проміжних контрольних точках політики протягом усього процесу навчання.
Побудова цього процесу відображення винагороди проста, але він важливий через залежність алгоритму оптимізації винагороди. Тобто, на те, дійсна функція винагороди чи ні, впливає конкретний вибір алгоритму RL, і одна і та ж винагорода може поводитися дуже по-різному навіть при одному і тому ж оптимізаторі для заданої різниці гіперпараметрів. Деталізуючи, як алгоритм RL оптимізує окремі компоненти винагороди, відображення винагороди дозволяє EUREKA виробляти більш цілеспрямовані редагування винагороди та синтезувати функції винагороди для кращої роботи з фіксованим алгоритмом RL.
Експериментальна частина забезпечує комплексну оцінку Еврики, включаючи здатність генерувати функції винагороди, здатність вирішувати нові завдання та здатність інтегрувати різні людські внески.
Експериментальне середовище включає в себе 10 різних роботів і 29 завдань, 29 з яких реалізовані симулятором IsaacGym. В експерименті використовується 9 примітивних середовищ від IsaacGym (Ісаак), що охоплюють різноманітні форми роботів від чотириногого, двоногого, квадрокоптера, маніпулятора до роботизованої спритної руки. Крім того, ця стаття забезпечує глибину оцінювання, включаючи 20 завдань з бенчмарку «Спритність».
Для отримання додаткової інформації, будь ласка, зверніться до оригінальної статті.