Robot Learning – Telegram
Robot Learning
81 subscribers
2 photos
37 links
О робототехнике и AI в робототехнике
Download Telegram
На этой неделе побывал на одной из крупнейших конференций по робототехнике — IROS, которая в этом году впервые прошла на Ближнем Востоке, в Абу-Даби. Представлял свои работы: сначала выступил с трёхминутным тизером, а затем в течение двух часов стоял у постера, объясняя детали заинтересованным коллегам. Я всегда критично отношусь к своим результатам, поэтому не ожидал большого ажиотажа. В итоге нашлось около 15 человек, которым моя работа показалась интересной.

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

Тем не менее, я рад, что сьездил; удалось приятно пообщаться с интересными студентами из разных университетов, друзьями и бывшими коллегами.
👍12🔥8💯1
Трансформеры, без сомнения, одни из самых успешных моделей в машинном обучении. За ChatGPT и другими большими языковыми моделями стоит именно трансформер. На IROS, когда я пару раз спрашивал о том, как коллегам удалось добиться впечатляющих результатов, мне отвечали: "Просто накормили трансформеру данные — и вуа-ля, успех!"

Поскольку мне пора начинать искать работу, я решил разобраться в архитектуре трансформера. Вот лучшие ресурсы, которые мне удалось найти:

1️⃣ Визуальное объяснение от 3Blue1Brown — без сложной математики, но с красивыми иллюстрациями.

2️⃣ Известная статья The Illustrated Transformer от Jay Alamar. Даже многие университетские курсы ссылаются на эту статью.

3️⃣ Подробное объяснение с иллюстрациями и математикой от Елены Войты.

4️⃣ Статья от Гарварда The Annotated Transformer для тех, кто хочет реализовать трансформер на PyTorch.

5️⃣ Пояснения в книгах Understanding Deep Learning
и Deep Learning: Foundations and Concepts тоже показались мне доступными и полезными.
👍111🥰1
Forwarded from DeepSchool
🎞 Гессиан. Видео

Методы второго порядка используют вторые производные функции потерь. Важный элемент этих методов — гессиан. Он и является второй производной по параметрам модели.

Главная проблема гессиана — его долго считать. Учёные придумали различные методы для его аппроксимации, чтобы экономить вычисления. А недавно появились и алгоритмы оптимизации, которые используют эти аппроксимации.

О методах второго порядка мы и записали наше новое видео!

В нём Шамиль Мамедов, исследователь из Amazon Robotics, напоминает теорию численной оптимизации и рассказывает про методы приближения гессиана. А также проходится по Sophia — свежему оптимизатору, который использует методы второго порядка.

Смотрите новое видео на Youtube!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍42
Forwarded from DeepSchool
Почему RL — это сложно? И как Decision Transformer меняет правила игры

Обучение с подкреплением (RL) часто звучит как магия: агент учится решать задачи через взаимодействие с окружающей средой. Тыкнул сюда, получил минус балл, постараюсь больше так не делать. Тыкнул сюда, получил плюс балл — о, повторю!

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

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

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

Decision Transformer (DT) как раз призван решить эту проблему, генерируя на основе имеющихся данных новые стратегии. Он использует идеи RL и переформулирует проблему RL как задачу генерации последовательности.

Проще говоря, вместо «учимся через ошибки», DT говорит: «Вот данные о прошлом опыте, вот цель в виде суммы будущих наград — давайте сгенерируем траекторию, которая достигнет цель».

И это совершенно новый способ решения задач по управлению роботами. Подробнее о нём мы рассказали в новой статье: https://deepschool-pro.notion.site/Decision-Transformer-92feae6bd93d42da997cd44653f92a74?pvs=4
8🔥4
За последние пару недель произошло много интересного.

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

После её завершения я собрал вещи и вернулся в Бельгию. Сейчас живу как настоящий бродяга — то у одних друзей, то у других.

А сегодня состоялась моя предзащита диссертации! Всё прошло хорошо, сложных вопросов было немного. Публичная защита запланирована на 23 января, и после неё мне вручат сертификат. Тогда я смогу добавить к своему имени в LinkedIn заветное "PhD"😄.

До этого мне нужно успеть внести все правки, предложенные членами жюри, и подготовить презентацию высокого уровня для широкой публики. Думал, что смогу отдохнуть после предзащиты, но не тут-то было.
11👍7🍾2🫡2😎2
Уже сегодня, 23 января, в 10:00 CET состоится защита моей PhD диссертации. Если интересно, можете присоединиться к стриму по этой ссылке (PIN: 294891).

Защита пройдет на английском языке и займет не более двух часов. Первые ~40 минут я буду представлять свою работу, а затем члены экзаменационной комиссии зададут свои вопросы.
🔥133🏆3🫡1
Искусственный интеллект наконец-то достиг того уровня, где может решать действительно сложные задачи
😎5🥴1😭1
Друзья, хочу поделиться с вами карьерным апдейтом.

После четырёх месяцев активного поиска я присоединился к Сбер Автотех (Navio) в Москве на позицию Deep Learning Engineer, Motion Planning. Изначально я планировал остаться в области манипуляции роботами, но выяснилось, что и в манипуляции, и в автономном вождении активно применяются методы обучения по демонстрациям и обучения с подкреплением для планирования движения. В новой роли я буду заниматься улучшением модели планирования траектории для автономного автомобиля.

Я переехал в Москву вместе с семьёй и буду рад встретиться.
🔥26😎3
Всем привет! Сколько лет, сколько зим.

У ребят из @deep_school есть классный проект: они зовут обычных роботяг вести канал @deepschool_underthehood и рассказать про работу и жизнь вне ее. На этой неделе там буду я — расскажу про ML в автономном вождении, карьеру в робототехнике и немного про личное.

Залетайте в канал, читайте и задавайте вопросы! Ну и тут репосты тоже будут.
👍9🔥6💯3
Forwarded from DeepSchool / underthehood (Shamil Mamedov)
Про работу

Я занимаюсь планированием траекторий для автономных машин. Проще говоря: моя задача — на основе дорожной обстановки и маршрута предложить траекторию на несколько секунд вперёд.

На первый взгляд — задача плоская: никакого 3D, как у дронов, и не такие сложные движения, как у робо-рук. Но на практике — одна из самых сложных областей, потому что нужно учитывать взаимодействие с другими машинами и при этом обеспечивать безопасность.

Раньше траектории строили классическими методами поиска и эвристиками. Но со временем стало ясно: невозможно прописать правила для всех дорожных ситуаций. Поэтому сегодня почти все крупные компании делают ставку на ML — легче «научить» модель на данных, чем изобретать новые костыли-эвристики.

В отличие от многих областей, где инженеры уже опираются на foundation-модели, в автономном вождении модели всё ещё учат с нуля. Почти всегда это архитектура «энкодер-декодер»: энкодер (почти всегда трансформер) кодирует дорожную сцену; декодер (трансформер или диффузия) предсказывает траекторию.

Ключевая проблема не в моделях, а в их оценке. Нельзя просто сравнить предсказанную траекторию с реальной (экспертной) — такая метрика игнорирует накопление ошибок. В реальной езде маленькие ошибки могут накапливаться и приводить к опасным ситуациям (out-of-distribution). Поэтому используют симуляторы или — в идеале — реальные тесты на дорогах.

Если интересно глубже погрузиться в тему планирования в автономном вождении — вот мой пост блоге deep-school. Если есть вопросы про работу в автономном вождении, спрашивайте в комментариях🙂
👍6
Принёс вам хорошую обзорную статью про VLA.

Но сначала — коротко о том, что это такое. Всё началось с больших языковых моделей (LLM), с которыми сегодня знакомы почти все. Позже им «дали глаза» — так появились vision-language models (VLM), которые принимают на вход изображение и текст и умеют отвечать на вопросы и рассуждать о картинках.

Логичный следующий шаг: если VLM понимают изображения и язык, почему бы не научить их генерировать действия? Так появились VLA — модели, которые уже показывают неплохие результаты и становятся важным шагом к роботам общего назначения. Но впереди ещё много работы, прежде чем мы приблизимся к 99.9% успеха.

В этой обзорной статье отлично разбираются современные подходы к VLA. Рекомендую!
🔥95❤‍🔥3
На прошлой неделе Hugging Face порадовал сразу двумя релизами для всех, кто интересуется робототехникой


1️⃣ Обзорная статья по Robot Learning

Отличный разбор всех современных подходов: обучение с подкреплением, с демонстраций и фундаментальные модели для робототехники (aka VLA — Vision-Language-Action модели).


2️⃣ Полноценный курс по Robot Learning

Подходит даже для абсолютных новичков. Авторы начинают с основ классической робототехники и плавно переходят к фундаментальным моделям.


Если давно хотели разобраться, сейчас идеальный момент — всё собрано в одном месте.
👍10🔥63
Написали с Антоном небольшую статью про VLA для DeepSchool. Если интересно, заходите читать
❤‍🔥4🔥3👍2
Forwarded from DeepSchool
Vision-Language-Action (VLA) Models: от токенов к действиям

Современные мультимодальные модели умеют работать с визуальными данными и текстом. Следующий шаг их развития — взаимодействие с физическим миром. Для управления роботами создаются Vision-Language-Action (VLA) модели, которые переводят визуальные данные и текстовые инструкции прямо в моторные команды робота. О том, как устроены такие модели, рассказываем в новой статье. 🤖

Из неё вы узнаете:
• как устроены VLA-модели — от визуального энкодера до генератора действий
• какие архитектуры используются для предсказания движений — от дискретных токенов до диффузий и Flow Matching'а
• какие существуют подходы к дообучению систем — от полного fine-tuning'а до PEFT-методов, таких как LoRA
• с какими проблемами сталкиваются VLA в реальном мире: задержки, накопление ошибок и безопасность

Читайте новую статью по ссылке! 🚀

🪔 DeepSchool
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤‍🔥5👍4🐳1
Что такое action chunk и зачем он нужен


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

На следующем шаге контроллер получал новые наблюдения (изображения с камер и состояние робота) и предсказывал следующее действие. Такой подход позволял роботу быстро реагировать на изменения в окружении.

Сегодня большинство vision-language-action (VLA) и других visuomotor-моделей используют action chunk — проще говоря, генерацию последовательности действий, а не одного действия. Есть несколько причин, почему этот подход работает лучше.


1️⃣ Генерация высокочастотных (быстрых) траекторий

VLA-контроллеры обычно работают на низкой частоте, например ~10 Гц. Это означает, что максимальная частота движения не превышает 5 Гц, что недостаточно для быстрых и точных манёвров.

При использовании action chunk модель может сгенерировать последовательность действий с любой частотой и передать её низкоуровневому контроллеру. В результате становится возможна более динамическая и плавная манипуляция.


2️⃣ Ансамблирование действий

Если в момент времени t_1 мы предсказываем действия (a_1, a_2, a_3, a_4), а в момент t_3 — (a_3, a_4, a_5, a_6), то пересекающиеся действия (a_3, a_4) можно усреднить.

Эмпирически такое ансамблирование повышает стабильность и качество поведения модели.


3️⃣ Компенсация задержек (latency)

Пока в момент t_1 контроллер генерирует действия на основе наблюдений o_1, робот уже успевает сместиться. В результате предсказанное действие соответствует прошлому состоянию сцены.

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

В другой раз расскажу как лучше можно решить проблему с запаздыванием.
8🔥5👍3
Друзья, поздравляю всех с наступившим Новым годом!

Надеюсь, что 2025 год был для вас полон побед — маленьких и больших, а следующий станет ещё лучше🦾

Этот пост — небольшая рефлексия по итогам 2025 года и одновременно вопрос к вам о том, что вам было бы интересно читать в этом канале.

Для меня 2025 год выдался очень насыщенным. В январе я защитился в KU (запись защиты) Leuven и спустя почти 4 года стал PhD.

Сразу после этого мы с женой и нашей трёхмесячной дочкой переехали в Баку, Азербайджан — чтобы спокойно искать работу в США, UK и России. После стажировки в Amazon и окончания PhD я, честно говоря, ожидал больше приглашений на интервью, чем получил.

Прошёл 8 кругов ада этапов интервью в Яндекс Humanoid и в итоге получил отказ; дошёл до финала в Humanoids. Офферы же получил от Центра робототехники Сбера и Navio.

Хотя автономное вождение изначально не было для меня приоритетом, по совокупности интереса и компенсации этот вариант оказался лучшим. Уже в конце апреля я переехал в Москву и начал работать.

В Navio сначала занимался обучением из демонстраций в рамках модульного подхода, а затем — vision-language-action моделями. За эти 9 месяцев я очень многому научился и совершенно не жалею, что пошёл в автономное вождение.

Помимо основной работы, я писал статьи в DeepSchool (раз, два) и старался писать здесь. Было забавно, когда несколько человек на работе узнали меня именно по статьям в DeepSchool.

В новом году хочу писать здесь больше, а также попробовать себя в менторстве. Поэтому хочу спросить вас: о чём вам было бы интереснее читать? Например: обзоры статей, стартапов, рост в IT, больше личных постов — или что-то ещё. Буду очень благодарен, если напишете в комментариях.
👏12🎄94
Please open Telegram to view this post
VIEW IN TELEGRAM
Год назад я собеседовался в Яндекс Humanoid, прошел через 7 раундов интервью и получил отказ. Рассказываю, как это было.


После предзащиты PhD я начал активно искать работу в робототехнике. Откликнулся на позицию контрол-инженера в Яндекс Humanoid, но в процессе собеседований фокус проекта менялся — под конец меня рассматривали уже на роль инженера по манипуляции.

Первое интервью было с лидом (на тот момент), где меня спрашивали всё про контрол: передаточные функции, модели пространства состояний, стабильность систем, MPC, LQR, наблюдатели. Для подготовки я использовал курс Automatic Control от Alberto Bemporad.

Второе интервью было на профильное программирование, в моем случае на контрол. Дали нестабильную систему с двумя состояниями, и попросили спроектировать контроллер и наблюдатель. Я реализовал LQR для стабилизации и LQE для оценки состояний. Использовал Python-библиотеку control и scipy.signal.

Третье интервью было на динамику робототехнических систем. Дали двойной маятник на платформе и попросили вывести уравнения динамики. Можно было использовать что угодно, даже симуляторы типа Mujoco. Но я решил вывести уравнения символьно, используя CasADi для вычисления производных Лагранжиана. Спрашивали про свойства матриц инерции и кориолисовых сил. Хорошим источником для подготовки к такому интервью курс Underactuated Robotics от Russ Tedrake.

Четвертое интервью было про robotics system design. Попросили спроектировать автономную машину. Надо было рассказать, какие есть модули (карты, восприятие, планирование…) и как они между собой взаимодействуют. Интервьюер порой задавал очень низкоуровневые вопросы, типа какие протоколы лучше использовать для обмена данными между модулями. Для подготовки сложно было найти какие-либо материалы. В отдельном посте расскажу, как бы я сейчас готовился к такому интервью.

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

Седьмое интервью было с HR-бизнес-партнером. Про такую позицию я узнал впервые в жизни. Я понятия не имел, как готовиться к этому интервью. В итоге мы просто общались про мой опыт и мотивацию.

В конце мне неофициально дали отказ. Главная причина отсутствие коммерческого опыта в ML. Было обидно, но потом я узнал, что часто после PhD требуют год или более опыта.

Рассказывайте в комментариях про свой опыт интервью в робототехнике.
🔥51