Что добавляет временная и пространственная согласованность?
Видео добавляет время, 3D — точку обзора, world model — действие и
последствия. Хороший отдельный кадр больше не достаточен: объект должен
сохранять идентичность, камера — геометрию, а будущее — реагировать на
вмешательство. Каждое из трёх требований превращается в измеримую невязку, и
именно эти невязки, а не ощущение реализма, мы будем считать.
Мяч обязан продолжить траекторию
Пусть кадры x1,…,xT. Генератор может создать каждый кадр реалистично
и всё же заставить мяч телепортироваться, тень перескочить или человека сменить
одежду. Нужна временная согласованность — свойство, которого нет ни у одного
отдельного кадра, потому что оно живёт в отношениях между кадрами.
Простейшая модель прогнозирует
p(xt+1∣x≤t).
Pixel loss
∥xt+1−xt+1∥2
на неопределённом будущем усредняет варианты и размывает движение. Поэтому
используют latent dynamics, perceptual loss, diffusion и adversarial
компоненты.
Оптический поток Ft→t+1 связывает пиксели:
xt(p)≈xt+1(p+F(p)).
Нарушение warping consistency обнаруживает скачки, но не работает идеально на
окклюзиях и новых областях: там пикселю-предшественнику просто неоткуда
взяться.
Одношаговая ошибка и ошибка цепочки
Возьмём честный временной ряд: ежедневное число поездок в метро Нью-Йорка,
1776 суток открытых данных MTA, в среднем 2,54 млн поездок в день.
Обучим самую скромную «модель мира» — линейную авторегрессию по семи
предыдущим дням,
yt+1=k=1∑7wkyt+1−k+w0,
на первых 1200 днях и посмотрим, что она умеет дальше.
Если каждый раз подставлять в модель настоящие семь дней (teacher forcing),
RMSE прогноза на сутки равен 0,43 млн поездок — около 13,2% от
среднего уровня на отложенном участке. Теперь запустим ту же модель в
свободный rollout: она получает только первые семь дней, а затем кормит себя
собственными предсказаниями,
yt+h=k=1∑7wkyt+h−k+w0.
RMSE на седьмом шаге 0,45, на тридцатом — 0,67 млн, то есть в 1,56
раза больше одношаговой и уже 20,7% от уровня. Важнее числа его характер:
среднее отклонение на первом шаге −0,04 млн, а на тридцатом −0,22 млн.
Ошибка перестала быть случайной и стала систематическим сдвигом — модель тянет
прогноз вниз, потому что каждый шаг слегка недооценивает восстановление
пассажиропотока, и эти недооценки складываются.
Рис. 88.1. Метрика одного шага не измеряет качество долгого прогноза
Реальные данные MTA. Слева видно, что свободный rollout (красный) сохраняет
недельный узор, но уезжает вниз. Справа — RMSE как функция горизонта: она
стартует ниже одношаговой линии (первые дни предсказуемее среднего) и
монотонно уходит вверх, до 0,67 млн на тридцатом шаге. Один и тот же набор
весов, две совершенно разные оценки качества.
Лоренц спрашивал про истинную систему, у нас речь о модели, но механизм
родственный: маленькое расхождение, повторённое много раз, перестаёт быть
маленьким. Отсюда практическое правило — любую генеративную модель динамики
оценивайте на том горизонте, на котором собираетесь ею пользоваться.
Почему MSE размывает будущее
Пешеход подходит к развилке и с равной вероятностью уходит влево или вправо.
Смоделируем это честно, с фиксированным зерном: 20000 синтетических
траекторий, угол ±28∘ с разбросом 2,5∘. Это модельный пример,
а не измерение; он нужен, чтобы числа можно было проверить до последнего знака.
Через T кадров координаты образуют два чётких сгустка с центрами
x=±0,469.
Прогноз, минимизирующий средний квадрат ошибки, — это условное среднее:
xMSE=E[xt+1∣x≤t].
Оно равно x=0,001, то есть ровно посередине, между ветвями. Доля настоящих
исходов, попавших в круг радиуса 0,10 вокруг этой точки, равна 0,0%:
модель уверенно указывает туда, где не бывает ничего. И при этом она честно
выигрывает по метрике — её MSE равен 0,222 против 0,441 у прогноза,
выбравшего одну конкретную ветвь, ровно вдвое меньше.
Рис. 88.2. Усреднение по будущему минимизирует MSE и при этом невозможно физически
Слева: две одинаково правдоподобные ветви и прогноз MSE между ними. В центре:
плотность координаты через T кадров двугорбая, среднее x=0,001 лежит в
провале. Справа: тот же ответ в пиксельном пространстве — вместо одного мяча
два полупрозрачных призрака. Знакомое «размытие видео» есть не лень
генератора, а точное решение поставленной задачи.
Отсюда три выхода, и все три используются на практике. Первый — предсказывать
распределение, а не точку: смесь мод, diffusion, стохастический латент.
Второй — менять loss на такой, чей оптимум есть типичный образец, а не среднее
(adversarial и perceptual слагаемые). Третий — принять размытие как честное
выражение незнания, но тогда не выдавать его за видео.
Модель времени
Video transformer превращает пространство-время в токены: patches каждого кадра
плюс temporal position. Полное внимание по THW токенам стоит
O((THW)2),
поэтому внимание разделяют на пространственное и временное или работают в
сжатом латенте, где HW уменьшено в десятки раз.
Рекуррентная модель состояния устроена иначе:
ht+1=fθ(ht,at,εt),xt=gθ(ht).
Без действий at это video predictor. С действиями — кандидат на world model.
Шум εt хранит неопределённость будущего: без него модель обязана
быть детерминированной и снова скатится к усреднению. Скрытое состояние здесь
играет ту же роль, что и в рекуррентной памяти — переносит то,
чего в текущем кадре не видно.
Долгий rollout страдает compounding error: модель обучалась на настоящих
состояниях, а затем получает собственные слегка ошибочные предсказания.
Формально её вход уходит из распределения обучения,
qh(x)=p(x),
и с каждым шагом расхождение растёт. Scheduled sampling (постепенная подмена
настоящего входа собственным) и регуляризация латента помогают, но не заменяют
многошаговую оценку.
Лаборатория: как накапливается дрейф
Teacher forcing против свободного rollout
График шире экрана — листайте по горизонтали →
Загружается живая иллюстрация…
Модель мира в лаборатории ошибается ровно в одном: её гравитация отличается от
истинной на несколько процентов. Поставьте ошибку 4% и посмотрите на
одношаговые крестики — они лежат на истинной траектории (в среднем мимо на
0,0004 м), и любая покадровая проверка признает модель отличной. Теперь
смотрите на красную линию: свободный rollout уходит от истины на 0,2 м к
94-му шагу, то есть за 3,1 секунды, а вблизи отскока расхождение растёт
скачком — ошибка положения превращается в ошибку момента удара.
Затем включите наблюдения. Коррекция каждые двадцать шагов делает график ошибки
пилой: дрейф успевает накопиться и обнуляется. Это и есть ответ на вопрос,
зачем автономной системе датчики, если у неё уже есть отличная модель, — модель
хороша ровно на длину интервала между наблюдениями.
Камера задаёт проектирование
В pinhole model 3D-точка X=(X,Y,Z) переходит в пиксель
uv1∼K[R∣t]XYZ1,K=fx000fy0cxcy1.
В простейшем случае R=I, t=0 это просто
u=fxZX+cx,v=fyZY+cy.
При fx=fy=800 и центре (320,240) точка (1,0,5) уходит в пиксель
(480,240), точка (0,1,10) — в (320,320), а точка (−2,−1,4) — в
(−80,40), то есть вообще за пределы кадра. Удвоим глубину первой точки:
(1,0,10) даёт (400,240) — смещение от центра сократилось ровно вдвое, с
160 до 80 пикселей.
Один пиксель задаёт луч, а не точку: вся полупрямая λK−1u
проецируется в один и тот же пиксель. Глубина теряется — и её приходится
возвращать из второго ракурса, из движения или из выученных априорных знаний о
мире.
Две камеры и эпиполярная проверка
Сдвинем камеру на базу B=0,6 м вдоль оси x. Точка на глубине Z даёт в
двух кадрах диспаритет
d=u1−u2=ZfxB,Z=dfxB.
Для точки на глубине 4 м получаем d=120 пикселей, и обратная формула
возвращает ровно Z=4,00 м. Главное следствие: соответствие во втором кадре
нельзя искать по всей картинке. Оно обязано лежать на эпиполярной линии,
задаваемой фундаментальной матрицей:
u2⊤Fu1=0.
Это скалярное уравнение — готовый детектор вранья. Если генератор поставил
соответствующую точку на 26 пикселей выше линии, никакая единая 3D-сцена
такой пары кадров не объясняет, как бы правдоподобно ни выглядел каждый кадр по
отдельности.
Рис. 88.3. Геометрия даёт измеримый инвариант новому ракурсу
Слева: два луча пересекаются в одной 3D-точке, база 0,6 м, диспаритет 120
пикселей даёт глубину 4,00 м. Справа: во втором кадре верное соответствие
обязано лежать на зелёной линии; красный крест отстоит от неё на 26
пикселей — измеримая, а не вкусовая ошибка.
NeRF: цвет и плотность вдоль луча
Neural Radiance Field задаёт
Fθ(x,d)=(σ,c),
где x — 3D-точка, d — направление взгляда, σ — плотность, c —
цвет. Пиксель получается объёмным рендерингом:
Посчитаем модельный луч: туман плотности 0,02 и поверхность плотности 60
на отрезке от 1,5 до 1,7 м, шаг Δ=0,05. На поверхности
α=0,950, вес её первого отсчёта w=0,922 при t=1,52 м, сумма
всех весов 1,000, итоговый цвет C=0,863, а пропускание за поверхностью
падает до 5,8⋅10−6.
Рис. 88.4. Луч возвращает цвет 0,863: почти весь вес забирает первая непрозрачность
Плотность, пропускание и вес вдоль одного луча. Веса wi неотрицательны и
вместе с остаточным пропусканием дают единицу — это распределение по глубине, а
не произвольные коэффициенты. Вся масса сосредоточена на первой непрозрачной
поверхности.
Отсюда важное ограничение. Учетверим плотность поверхности с 60 до 240:
цвет пикселя изменится на 5⋅10−6 — меньше, чем один уровень 8-битного
канала. Значит, по фотографиям невозможно определить плотность за первой
непрозрачной поверхностью: она не влияет на наблюдения. Красивая внутренность
объекта в NeRF — не знание, а произвол регуляризации.
3D Gaussian Splatting заменяет неявное поле явными гауссовыми примитивами и
рендерит на порядок быстрее, но математика весов та же, и то же ограничение
наблюдаемости остаётся.
World model и действие
Для управления латентная модель учит
pθ(zt+1,rt+1∣zt,at),
где encoder переводит наблюдение xt в zt. Агент планирует во внутреннем
rollout, выбирая последовательность действий по предсказанным наградам:
a1H⋆=arga1HmaxEθ[h=1∑Hγh−1rt+h].
Связь с MDP прямая: world model приближает переходы P и награду
R. В отличие от пассивного видео, данные зависят от поведения: неисследованные
действия остаются неизвестными, и никакое количество кадров этого не исправит.
Формулировка Крейка старше вычислительной техники, но она и сегодня остаётся
лучшим определением world model: модель полезна не тем, что красиво рисует, а
тем, что позволяет перепробовать варианты дешевле, чем это делает реальность.
Планировщик находит дыры в модели
Главная опасность — model exploitation. Смоделируем её честно. Истинная награда
за поворот руля — парабола с максимумом при a=0,15; данные поведения
собраны только в диапазоне a∈[−0,3;0,3]; модель — ансамбль из
двенадцати полиномов пятой степени, обученных на бутстрэп-выборках. Внутри
диапазона все двенадцать кривых совпадают с истиной. Планировщику разрешаем
искать максимум по a∈[−1;1].
Он выбирает a=1,00 — самый край. Модель обещает там награду 5,81, а
истинная равна −0,59: разрыв 6,40 при том, что весь полезный сигнал не
превышает единицы. Планировщик не сломался — он добросовестно решил
поставленную задачу и нашёл дыру в модели.
Лечение — пессимизм. Если штрафовать награду разбросом ансамбля,
r=r−λStdmr(m),
то при λ=1 выбор возвращается к a=0,145 с истинной наградой
1,00 — практически оптимум. Причина проста: в точке a=1 разброс ансамбля
равен 8,11, он и съедает фальшивое обещание.
Рис. 88.5. Модель мира отвечает на действие — и ошибается вне опоры данных
Слева: один и тот же префикс наблюдений, три вмешательства; концы крайних веток
расходятся на 3,33 м, а разброс внутри одной ветки — 0,33 м, то есть
эффект действия в десять раз больше собственного шума модели. Справа: серая
полоса — диапазон собранных данных. Красная кривая уходит вверх ровно там, где
её никто не проверял; зелёная (пессимистичная) возвращает планировщика внутрь
опоры.
Это в точности проблема опоры данных из offline RL, но в
model-based форме, и оговорка та же: пессимизм уменьшает эксплуатацию модели,
но может отвергнуть полезное новое действие. Расширять опору умеет только
эксперимент.
Причинность требует вмешательства
Наблюдение «руль повернулся, машина пошла вправо» может быть корреляцией с
дорогой: водитель поворачивает руль именно на изгибе. Чтобы оценить действие,
нужны разнообразные вмешательства или симулятор.
Контрфактический тест устроен так: из одного состояния подать разные a и
проверить правдоподобное расхождение,
Δ(a,a′)=Eθ[zt+H∣zt,a]−Eθ[zt+H∣zt,a′].
Если Δ близко к нулю, модель игнорирует действие и является просто
видеогенератором. Если Δ велико, но меняется весь фон, действие
запутано с посторонними факторами данных. В нашем примере Δ=3,33 м при
внутреннем разбросе 0,33 м — здоровое соотношение десять к одному.
Физика как измеримый инвариант
«Физичность» — не единая оценка, а набор законов с областью применимости.
Разложим её. Столкновение двух тел: m1=1 кг со скоростью 3 м/с и m2=2
кг со скоростью −1 м/с. Импульс
p=m1v1+m2v2=1кг⋅м/с
сохраняется всегда, при любом коэффициенте восстановления e. Кинетическая
энергия до удара 5,5 Дж; при e=0,6 скорости становятся −1,27 и
1,13 м/с, энергия — 2,09 Дж, потеряно 3,41 Дж, то есть 62,1%.
Значит, штрафовать генератор за нарушение сохранения энергии наравне с
импульсом — ошибка: неупругий удар физически допустим и обязан терять энергию.
Правильный набор невязок такой:
Рис. 88.6. Физику проверяют законами сохранения, а не ощущением реализма
Слева: импульс сохраняется во всех трёх режимах (невязка ровно ноль), а энергия
теряется тем сильнее, чем меньше e. Справа: коэффициент восстановления,
оценённый по трём кадрам до и после удара при шуме положения 4 мм, даёт
0,78±0,03 — измеримая величина, которую можно сравнить у генерации и у
симулятора.
Оценка e по видео получается так: из положений вычитается известный вклад
силы тяжести, по трём кадрам с каждой стороны линейной подгонкой
восстанавливается скорость у момента удара, и
e=vдоvпосле.
При идеальных данных метод возвращает истинное 0,780 ровно; при шуме 4 мм
среднее равно 0,781 со стандартным разбросом 0,026. Отсюда практическое
правило: заявляя, что генерация «нарушает физику», указывайте точность своего
измерителя. Разница 0,78 против 0,80 на трёх кадрах не значит ничего.
Моисеев: модель мира, в которую нельзя сыграть по-настоящему
Самый известный в отечественной науке эксперимент с моделью мира не имел
отношения к видео. В 1983 году в Вычислительном центре Академии наук СССР под
руководством Никиты Николаевича Моисеева группа, где ключевую роль играли
Владимир Валентинович Александров и Георгий Львович Стенчиков, посчитала на
модели общей циркуляции атмосферы «Гея» климатические последствия обмена
ядерными ударами. Модель получила вмешательство — вброс сажи и пыли в
атмосферу — и вернула ответ: резкое падение температуры, многомесячная тьма,
разрушение биосферы. Так появился расчёт «ядерной зимы», выполненный независимо
и почти одновременно с работой группы Карла Сагана.
Это ровно та конструкция, о которой урок. Эксперимент поставить нельзя;
корреляций в наблюдениях нет, потому что события не было; единственный способ
узнать последствия действия — построить модель мира и подать в неё
вмешательство. И одновременно это лучший пример осторожности: Моисеев
настаивал, что ценность результата не в конкретной цифре градусов, а в
качественном выводе, устойчивом при разных параметрах модели. Проверка
чувствительности была для него частью самого результата — то же самое мы делали
с разбросом ансамбля и с точностью измерения e.
Обратное, увы, неверно: то, что модель сумела создать правдоподобную картинку,
ещё не значит, что она поняла мир. Именно поэтому мы весь урок переводим
«понимание» в проверяемые величины — невязку потока, эпиполярную невязку,
разброс ансамбля, невязку сохранения.
Что измерять у траекторий
Waymo Open Dataset и Argoverse содержат последовательности камер и лидара, 3D
боксы и данные о движении. Объём велик; школьный проект берёт опубликованный
subset. Разбиение по сегментам, а не по кадрам, предотвращает утечку соседних
кадров — тот же принцип, что в train/val/test, только единицей
разбиения служит эпизод.
Средний displacement error не наказывает одинаково пропущенный поворот и
небольшой сдвиг на прямой. Поэтому ошибку раскладывают относительно истинной
касательной:
e∥=(r−r)⋅v^,e⊥=(r−r)⋅v^⊥.
Продольная ошибка означает опережение или отставание, поперечная — уход с пути.
Для мультимодального предсказателя добавляют покрытие (попала ли истина хотя бы
в одну из K гипотез) и калибровку вероятностей мод:
minADE=k≤KminH1h=1∑Hrh(k)−rh.
Мини-исследования
Раскладываем ошибку траектории. Для каждой предсказанной траектории
постройте e∥ и e⊥ как функции горизонта, а не одно число ADE.
На повороте базис меняется во времени — пересчитывайте его на каждом шаге. Для
мультимодального предсказателя оцените покрытие и калибровку, добавьте попарное
расстояние концов и занятость полосы.
Обнаружить эксплуатацию world model. Обучите модель на действиях в
диапазоне [−0,3;0,3], а планировщику разрешите [−1;1]. Нанесите
выбранные действия на гистограмму данных поведения. Затем добавьте штраф за
разброс ансамбля и постройте зависимость истинной награды от λ: она
почти всегда имеет максимум внутри, потому что при λ=0 побеждает
эксплуатация, а при большом λ агент боится любого нового действия.
3D-согласованность через замкнутый маршрут. Рендерите сцену по камерам,
образующим круг, и сравните первый и последний вид. Геометрия обязана
вернуться, хотя стохастическая текстура может слегка отличаться. Отслеживайте
ориентиры и порядок глубин, стройте эпиполярные невязки между промежуточными
ракурсами. Затем измените intrinsics вне обучающего диапазона: если сцена
распадается, публикуйте границы применимости вместе с красивым видео нового
ракурса. Геометрический тест продолжает компьютерное зрение и
проекции.
Окклюзия как проверка памяти объекта. Пусть машина на десять кадров
скрывается за автобусом и появляется снова. Сравните эмбеддинг до и после,
неопределённость положения и число подмен идентичности. Удлиняйте окклюзию:
разброс обязан расти, уверенная точка при трёх возможных выходах
некалибрована.
Невязка сохранения. В синтетической сцене без внешних сил считайте импульс
и энергию до и после взаимодействия, отдельно ρp и ρE. Малый pixel
loss не гарантирует малую невязку: скорости — это разности положений, они
чувствительнее самих положений. Помечайте только контролируемые эпизоды: в
сцене с неизвестными внешними силами закон сохранения выполняться не обязан, и
штраф превратится в требование неправильной физики.
Мир проверяется временем и действием
Видео требует согласованности во времени, 3D — согласованности между ракурсами,
world model — правильной реакции на действия. Реализм одного шага не проверяет
rollout: линейная модель метро ошибалась на 13,2% за сутки и на 20,7%
за месяц, причём во втором случае — систематически. Геометрия и физика полезны
не как украшение, а как источник инвариантов: диспаритет fxB/Z, эпиполярное
уравнение u2⊤Fu1=0, сумма весов вдоль луча, сохранение импульса. Всё
это можно измерить и опубликовать вместе с числом, а не посмотреть и
восхититься.
И последнее, самое важное: у каждой такой проверки есть область применимости.
Парабола не описывает мяч с отскоком, сохранение энергии не обязано выполняться
в неупругом ударе, плотность за поверхностью не наблюдаема в принципе. Модель
мира честна ровно настолько, насколько честно очерчены границы, внутри которых
её ответам можно верить.