Калибровка физики world model: один токен вместо дообучения
Непрозрачная бутылка выглядит одинаково, полная она или пустая. Толкните её с той же силой, и разница станет очевидной: одна поедет и остановится, вторая опрокинется. Для world model, которая предсказывает следующий кадр по текущему наблюдению и действию, это не курьёз, а структурная проблема. Кадр не содержит массы, трения и демпфирования, значит будущее недоопределено, и модель выдаёт нечто среднее по обучающей выборке.
Работа PhysiCalWorld из Мичиганского университета предлагает лечить это не дообучением и не аналитическими уравнениями, а коротким клипом взаимодействия с незнакомой сценой. Двенадцать кадров случайных толчков сжимаются в один вектор размерности 64, и дальше он подмешивается к предсказаниям как условие. Никаких градиентных шагов на тесте, никаких размеченных значений трения, никакого симулятора при обучении. arXiv 2610.30125, код и проект открыты.
Что такое калибровка физики world model
Калибровка физики world model это подстройка предсказаний модели под скрытые свойства конкретной сцены (распределение массы, трение, демпфирование суставов), которые нельзя прочитать по одному кадру, но можно восстановить по короткой последовательности наблюдений и действий в этой сцене.
Формулировка важна, потому что дальше всё держится на одном различении. Есть общая физика мира, которую модель выучила по интернет-видео: предметы падают, мячи отскакивают, жидкости разливаются. А есть физика экземпляра: насколько тяжёл именно этот блок, насколько скользкая именно эта поверхность, насколько тугие именно эти суставы. Вторая не выводится из первой и меняется от сцены к сцене.
Авторы приводят ту же бутылку как минимальный пример неоднозначности. Внешний вид не коррелирует с наполнением, значит переход из состояния в состояние зависит от переменной, которой нет во входе. Дальше в статье это превращается в аккуратную формулировку: функция переходов зависит не только от наблюдения и действия, но и от набора физических свойств (масса, трение, демпфирование), а без взаимодействия этот набор остаётся неизвестным.
Почему дообучение и уравнения не спасают
Классический ответ на такую неопределённость называется системной идентификацией. Строишь уравнения, подгоняешь параметры по данным взаимодействия, получаешь модель. Для маятника это работает блестяще. Для сцены, где одновременно сцеплены масса, трение и аэродинамическое сопротивление, выписывать уравнения становится отдельным исследованием на каждое развёртывание, и ошибка оценивания параметров копится каскадом.
Второй путь, которым пользуются на практике, это дообучение world model на небольшом наборе внутренних данных под новую площадку. Дорого, медленно и плохо переносится: робот приезжает на новую фабрику, и всё начинается заново.
Третий путь, самый наивный, это удлинить историю. Если модель видит не один кадр, а сотню, она теоретически может вывести динамику из наблюдений. На практике механизм внимания в трансформере растёт квадратично по длине последовательности, и таскать тысячи токенов на каждом шаге инференса никто не будет. К тому же физическая конфигурация описывается куда компактнее, чем сто кадров.
PhysiCalWorld занимает четвёртую позицию: извлекать физику из взаимодействия, но хранить её в одном токене.
Как устроен энкодер контекста
Схема простая по идее и аккуратная в деталях. Энкодер контекста g принимает клип из 12 пар «наблюдение, действие», прогоняет каждый кадр через лёгкий визуальный энкодер, склеивает визуальные признаки с эмбеддингами действий и складывает всё это в один классификаторный токен. На выходе получается z_phy, вектор размерности 64.
Этот вектор подставляется в предиктор мира на каждом шаге, вместе с обычными латентными токенами кадра и эмбеддингом действия. Никакой отдельной головы для оценки массы или трения нет. Обучение идёт сквозным образом по единственной функции потерь, ошибке предсказания следующего латента. Модель ни разу не видит, какая именно физика стоит за клипом, и всё равно вынуждена вытащить из него то, что помогает предсказывать будущее.
Отсюда следует приятное свойство: метод вставляется в разные архитектуры. Авторы проверяют его на двух латентных world models, DINO-WM и LeWM, и в обоих случаях получают прирост. Для сравнения они обучают ещё и TS-WM, а также три контрольных варианта: с длинной историей, с сырым префиксом контекста вместо токена и с оценкой физических параметров отдельной сетью (последнему для обучения нужны настоящие метки физики).
Четыре сцены, где картинка врёт
Экспериментальная часть построена вокруг одной мысли: физика меняется, а изображение нет. В Push-T робот толкает Т-образный блок, у которого случайно смещён центр масс. Смещение не влияет на внешний вид и полностью меняет то, как блок поворачивается и скользит под одним и тем же толчком. В Reacher двухзвенный манипулятор получает одинаковые моменты на суставы, но демпфирование суставов разное, поэтому рука приходит в разные точки. В BeerPong мяч должен отскочить от стола и попасть в стакан, а контактное демпфирование стола задаёт, сколько энергии потеряется при ударе. В FetchSlide одновременно варьируются три параметра: масса шайбы, трение стола и сопротивление воздуха. Для планирования это означает, что одна и та же заученная траектория упирается в разные исходы.
Обучение шло на 135 конфигурациях физики, проверка на 15 невиданных, по пять эпизодов на конфигурацию, итого 75 эпизодов на среду. Планирование оценивалось на 75 задачах в каждой среде, с бюджетами 25, 50 и 75 шагов управления. Метрики обычные для видео: PSNR, SSIM, LPIPS и IoU по маске объекта, плюс доля успешно выполненных задач.
Что показали замеры
В Push-T при бюджете 75 шагов базовая DINO-WM набирает 56,0% успеха, а с PhysiCalWorld те же веса дают 68,0%. Это не косметический прирост: разница в двенадцать процентных пунктов на задаче, где всё решает физика блока. На LeWM картина резче, потому что стартовая точка ниже: 49,3% превращаются в 62,7%, то есть плюс тринадцать с половиной пунктов.
| Метод | Push-T, 75 шагов | Reacher, 75 шагов |
|---|---|---|
| DINO-WM | 56,0 | 82,7 |
| + длинная история | 58,7 | 96,0 |
| + сырой префикс контекста | 60,0 | 92,0 |
| + оценка физики (с метками) | 65,3 | 90,7 |
| + истинные параметры (оракул) | 64,0 | 100,0 |
| + PhysiCalWorld | 68,0 | 93,3 |
Читать таблицу интереснее по строкам, чем по столбцам. На Push-T метод обгоняет даже оракула, которому на вход подаются настоящие параметры сцены. В Reacher оракул ожидаемо недосягаем, но примечательно другое: вариант с длинной историей на 75 шагах выходит вперёд, а на коротком бюджете в 25 шагов проседает до 56,0% против 61,3% у PhysiCalWorld. Планировщику с малым числом попыток важна не терпеливая модель, а сразу правильная.
Отдельно стоит строка с оценкой физики. Это честный сильный бейзлайн: отдельная сеть предсказывает параметры сцены по клипу, и её учат с учителем, на настоящих значениях. PhysiCalWorld обходит его по всем метрикам открытого роллаута в Push-T, не используя ни одной размеченной физической величины. На FetchSlide, где сцеплены три свойства сразу, картина та же: оракул впереди, оценщик параметров чуть лучше на части метрик, но требует меток, которых в реальности взять негде.
Где метод проигрывает
Честный разбор не был бы полным без BeerPong. Там PhysiCalWorld выигрывает по всем визуальным метрикам у варианта с сырым префиксом контекста, но немного уступает ему в доле успешных бросков. Авторы объясняют это разреженностью сигнала: физика проявляется только в момент контакта мяча со столом, до и после него клип выглядит почти одинаково. В такой ситуации полное внимание по сырым кадрам даёт модели больше шансов заметить сам удар, тогда как сжатый токен вынужден хранить информацию о событии, которого в большинстве кадров нет.
Это редкий и полезный тип ограничения, потому что он очерчивает границу применимости. Пока физическое свойство проявляется постоянно (тяжёлый блок, тугие суставы, вязкая поверхность), один токен работает. Когда оно вспыхивает на долю секунды, сжатие теряет то, что важнее всего.
Экстраполяция: оракул ломается, токен держится
Самая интересная часть работы начинается за пределами обучающего диапазона. В Reacher авторы прогоняют демпфирование плечевого сустава по шести значениям, из которых два выходят за границы обучения, и снимают PSNR открытого роллаута.
Внутри обучающего диапазона оракул с истинными параметрами ожидаемо точнее: 23,80 дБ против 22,48 у PhysiCalWorld. На последнем значении, вне диапазона, происходит обвал. Модель с привилегированными параметрами падает до 14,90 дБ, хуже, чем вообще некалиброванная DINO-WM с её 18,77. PhysiCalWorld выдаёт 21,21 дБ и остаётся в рабочем режиме.
Объяснение простое, и оно же самое ценное в статье. Оракул учился отображать число в динамику и за пределами знакомых чисел начинает интерполировать наугад: скаляр ушёл в невиданную зону, и отображение развалилось. Токен физики ничем не привязан к шкале параметра. Он учится по будущим латентам, то есть по тому, как сцена себя ведёт, а не по тому, какое число записано в конфиге. Поведение за пределами диапазона остаётся физически осмысленным, даже если таких чисел модель никогда не видела.
Латентное пространство оказалось физическим
Авторы не остановились на метриках и заглянули внутрь дескриптора. В Push-T они взяли десять клипов для каждой из восьми невиданных позиций центра масс, прогнали через энкодер и посчитали попарные косинусные близости между токенами.
Результат аккуратный: соседние положения центра масс дают сильную положительную корреляцию, далёкие уходят в минус. Никакой разметки физики при обучении не было, ни одного явного сигнала о том, где находится центр масс. Пространство дескрипторов само сложилось по физике сцены, потому что иначе предсказывать будущее не получалось.
Это тот тип результата, который важнее процентов успеха. Он говорит, что модель выучила именно то, что нужно для предсказания, а не подогнала под решение задачи произвольный набор чисел.
Сколько это стоит
Энкодер контекста добавляет около 11% к стоимости обучения по сравнению с ванильной DINO-WM на Push-T. При этом он всё равно учится быстрее вариантов с длинной историей и с сырым префиксом контекста, потому что не тащит квадратичное внимание по длинной последовательности.
На инференсе расход почти нулевой. Дескриптор извлекается один раз для сцены, а дальше переиспользуется во всех роллаутах и всех задачах планирования. Двенадцать кадров разведки, один проход энкодера, один вектор на 64 числа. Для сравнения: дообучение под новую сцену требует градиентных шагов и набора данных, а здесь не требуется ни того, ни другого.
Что это значит для роботов
Практическая ценность здесь не в конкретных процентах, а в смене процедуры развёртывания. Сейчас world model для новой площадки приходится либо дообучать, либо снабжать аналитической моделью физики, которую кто-то должен написать под каждый тип объекта. В обоих случаях между «привезли робота» и «робот работает» стоит инженерная неделя.
Схема PhysiCalWorld сокращает этот промежуток до нескольких секунд случайных или игровых действий. Робот толкнул предмет, посмотрел, как он поехал, и дальше планирует с учётом именно этой динамики. Авторы намеренно подчёркивают, что сгодятся даже случайные политики, а не специально спроектированные эксперименты. Это ровно тот сценарий, где активное исследование среды окупается, и он же объясняет, почему в статье фигурируют формулировки про «поиграть» вместо «провести идентификацию».
Есть и более широкий контекст. Блог уже разбирал бенчмарк, на котором восемь видеомоделей сдавали экзамен по физике и лучшая набрала 57,76 из 100. Тот результат измерял, насколько модели вообще понимают физику. PhysiCalWorld задаёт следующий вопрос: а что если общую физику оставить как есть, а не хватающее знание добрать из взаимодействия с конкретной сценой. Две работы хорошо стыкуются: одна показывает размер дырки, вторая предлагает, чем её закрывать.
Ограничения
Первое и самое существенное: при обучении траектории нужно группировать по физическим конфигурациям. Разбить данные по площадкам проще, чем выводить уравнения, но всё равно требует организации, а для видео из интернета такой группировки просто нет.
Второе: качество калибровки зависит от клипа разведки. Случайные действия часто достаточны, но не всегда: если толкать предмет строго по нормали к поверхности, трение проявится слабо. Активное исследование с любопытством напрашивается как следующее улучшение.
Третье: физика предполагается стационарной внутри эпизода. Сцены с меняющимся ветром или нагревающейся поверхностью потребуют обновлять дескриптор по ходу, и в статье этого нет.
И четвёртое, о котором авторы говорят прямо: все четыре среды симуляционные. Перенос на реального робота с шумом сенсоров, бликами и упругой деформацией объектов остаётся открытым.
Часто задаваемые вопросы
Чем это отличается от дообучения на новой сцене? Дообучение меняет веса модели и требует градиентных шагов на собранных данных. PhysiCalWorld веса не трогает: он извлекает один вектор из 12 кадров взаимодействия и подмешивает его к предсказаниям. Дескриптор считается один раз и переиспользуется во всех последующих роллаутах.
Нужны ли при обучении настоящие значения массы, трения и демпфирования? Нет. Модель учится только на ошибке предсказания следующего латента, без физических меток и без симулятора. Именно поэтому она обходит бейзлайн, который обучали с учителем на настоящих параметрах, и лучше него переносится за пределы обучающего диапазона.
Можно ли применить метод к готовой видеомодели вроде Cosmos или Wan? Архитектурно метод заявлен как подключаемый модуль, но проверен он на двух латентных world models для роботики, DINO-WM и LeWM. Для больших генеративных видеомоделей с другим латентным пространством перенос пока не показан.
Итог
PhysiCalWorld формулирует простую мысль: world model не обязана угадывать физику сцены по картинке, если её можно один раз измерить взаимодействием. Двенадцать кадров, один токен на 64 числа, ноль градиентных шагов на тесте, и прирост успеха планирования в Push-T с 56,0% до 68,0%. Калибровка физики world model превращается из инженерной процедуры в часть обычного инференса.
Главный вывод лежит не в процентах, а в поведении за границами обучающего диапазона: модель, которая учила физику через поведение, а не через числа, переживает выход за диапазон там, где модель с истинными параметрами падает с 23,80 до 14,90 дБ. Если вы строите симулятор для роботов, стоит проверить, не подставляете ли вы в него параметры, которых в реальной сцене никто не измерял.