Full transcript
0:00А меня зовут Качаев Никита. Я
0:04научный сотрудник АЭРИ. Сегодня буду
0:07рассказывать про видеоэкшн модели. А
0:10вообще я постарался сделать лекцию, с
0:14одной стороны понятной для тех, кто
0:16впервые может там слышит пробокс, про
0:19вело модели, а с другой стороны,
0:22всё-таки интересный и э добавить что-то
0:25новое для тех, кто уже знает что-то
0:27проботикс. Ну, посмотрим, как сегодня
0:29получится. Это, аа, значит, я буду
0:32рассказывать про видеоэкшн-модели.
0:36Давайте начнём с такого вступления, да,
0:38вот первая часть, а,
0:43про вообще идею, ой, про идею general
0:46моделей. А если смотреть на протяжении
0:51там 5 лет, как работник развивался, то я
0:54бы сказал, что за последние 4 года люди
0:58начали стремительно, ну, во-первых,
1:01возрос очень сильный интерес к работек
1:03СУ. А появилась куча стартапов,
1:06появилась куча лабораторий, которые
1:09делают resarch, делают какие-то
1:10продукты. И вопрос,
1:14почему так? Вот. Аа я бы дал ответ на
1:18это следующий. А на самом делекс
1:22раньше тоже существовал. А были
1:25лаборатории, например, Boston Dynamics,
1:28который очень долго занимался, например,
1:30рлем, а, и роботами. Вот. Но в какой-то
1:34момент
1:37случился переход, я бы сказал, от того,
1:40что люди учат маленькие специфичные
1:44модели для управлением или решения одной
1:47какой-то задачи, например, схватить
1:49какой-то объект определённой формы,
1:52может даже определённого цвета. Вот к
1:55тому, чтобы решать более, я бы сказал,
2:00разнообразные задачи к, соответственно,
2:03foundation моделями. А то, что
2:05происходило в языковом моделировании в
2:10области LLM, когда сначала появился GPT
2:14там первый и второй Берт, а потом уже
2:18появились там GPT четвёртый и куча
2:20просто схожих моделей, мм, которые были
2:23притренированы на большом количестве
2:24данных и могли делать трансфер с одного
2:28домена на другой, а впоследствии и в
2:30Zрошотot решать различные задачи. Вот,
2:33соответственно, мы в работе сейчас, на
2:34самом деле, к чему-то похожему пытаемся
2:36идти. А, ну здесь я привёл просто
2:39картиночку. А здесь вот Атари, если
2:43кто-то знает, а, и симулятор маджок с
2:46задачами разными. Вот классические
2:48рельные такие игрульки, а, которые
2:53давно когда-то решали. Сейчас уже все
2:55более серьёзные штуки пытаются решать.
2:58Вот. И, ну, тут пример картинки уже
3:00первой такой работы как раз VI 2022
3:03года, где предложили такую
3:05мультимодальную архитектуру, которая уже
3:07способна была воспринимать визуальный
3:10промт, а, визуа текстовые инструкции, а
3:13не просто решать конкретную определённую
3:15задачу. Вот. И, наверное, с этого вот
3:17всё началось. А, да, давайте я расскажу,
3:21что такое вообще
3:22ну, лекция про видео экшн-модели, экшн
3:25модели. А я начинаю как бы рассказывать
3:29и весь бэкграунд про спасибо про Vision
3:35Language Action модели, потому что а
3:37последние 2 года вот эта штука была
3:39суперпопулярна и в принципе она никуда
3:42не делась. Люди пытаются просто
3:44усовершенствовать то, что есть сейчас. А
3:47значит, vision language action модели. А
3:50суперпопулярные такие ранние работы,
3:52это, наверное, РТ, РТ1, RT2 от Google. А
3:57в чём идея Vision Language моделей?
3:59Vision Language Action моделей. А
4:01поднимите руку, кто знает, что такое
4:03VLM.
4:06Прекрасно. А, ну на всякий случай
4:09напомню. А значит, VLM - это что такое?
4:12Ну, по-разному можно строить, да, но по
4:14сути это языковая модель, которой
4:17добавили там Vision Transformer, Vision
4:19Encoder какой-то. Вот, соответственно,
4:21она способна принимать на вход э
4:23текстовые токены и там почьи бейдинги
4:26изображений или токен изображений. Вот.
4:28И выдаёт нам она текст. Аэ, значит, чего
4:32хорошего в VLM есть? А они, ну,
4:36относительно
4:37неплохо понимают текст э картинки.
4:42Они были предобучены на всём большом
4:43интернете.
4:46Я скажу вот сейчас одну важную штуку, и
4:48в целом она будет такой вот нитью идти
4:49через всю лекцию. В работе у нас как бы
4:52нет интернета в чём-то. А если говорить
4:55про сетап, когда у нас стоит робот, а у
4:57него пишут действия с него, координаты,
5:00ну, положение гриппера и так далее. У
5:03нас такого нет. И рободанные очень
5:05дорогие. А в пространстве картинок и
5:07текстов, а у нас есть весь интернет.
5:11Вот. И возникла идея, почему бы это не
5:13использовать? Потому что в Работиксе нам
5:16полезно понимать, а, текстовые
5:17инструкции, нам полезно понимать
5:19картинки. Дальше осталось только научить
5:22модель мм генерировать действия. Вот. И,
5:26соответственно, здесь вот как раз такая
5:27гифочка и картинка. А, буквально вот у
5:29них была, а, сейчас покажется, я не
5:33помню, какая конкретная там велома у них
5:34была. Но не суть. Вот VLМ предобучилась
5:37на всём всём интернете, потом случилось
5:40слияние и получилось каким-то образом
5:41экшн-модель. Прекрасно.
5:45Вопрос следующий, который возникает,
5:47самый первый. Как мы там, что мы делаем
5:50дальше? Ну, в смысле, давайте так. Берём
5:52VLM, дальше обучаем на рободанных её.
5:56Вопрос, что значит обучаем на
5:58рободанных, тоже вкратце расскажу. А
6:01давайте будем называть рободанными. э
6:04следующую историю. У у нас есть любой
6:06робот, манипулятор или какой-то
6:08мобильный робот. А каждый момент времени
6:11мы пишем, а, кадры, у нас есть
6:12инструкция для него языковая. А,
6:15соответственно, в момент времени мы
6:17пишем кадры с всех камер, которые есть.
6:20Это может быть на голове, на руках, на
6:21гриппере.
6:24Вот. Помимо этого мы записываем
6:26состояние робота в сочленениях,
6:29джоинтах.
6:31Также мы можем записывать данные с любых
6:34других датчиков. У нас может быть лир и
6:36так далее. Ну вот по классике давайте
6:37считать, что мы пишем картинки текстовую
6:40инструкцию исходную и те действия,
6:43которые он совершил. Действия в плане,
6:46ну, допустим, как он менял свои менял
6:51положение джоинтов. Я так назову это.
6:53Вот. И вопрос следующий:
6:56а как из VLM действия предсказывать?
6:58Можно это по-разному делать. А-а, можно.
7:01Ну, действие у нас в данном случае тогда
7:04будет просто вектор, который
7:06представляет Ну, я далеко, на самом
7:08деле, запихнул этот слайд с картинкой,
7:11которая там немножко поясняет. А, ну не
7:13суть. Пока что я скажу, что действие
7:16робота - это
7:19атомарные какие-то изменения его
7:20положения. Вот, э, можно делать разный
7:24контрол. Можно, ну, допустим, если мы
7:25представим, что у нас манипулятор, а
7:28можно предсказывать следующую точку,
7:31просто ke point, и до этой точки, э, уже
7:34рука будет доезжать
7:36более низкоуровневыми алгоритмы. Вот
7:38давайте представим пока что так, что мы
7:40предсказываем следующую точку- это X, Y,
7:42Z и три угла и состояние гриппера. Он
7:45открыт или закрыт. Всё это определяет
7:47нам доезд какую-то точку определённую.
7:50Вот. И у нас есть, ну, там частота
7:51какая-то, с которой мы эти точки
7:52предсказываем. Вот. Соответственно, что
7:54делают? Можно, например, чтобы VLM
7:57научить здесь предсказывать. Вот у нас
7:58есть детасет, мм, с картинками,
8:01инструкции и вот векторами. По сути, я
8:03же только что сказал, да? X Y, Z, три
8:06угла и ещё координаты, отвечающие за
8:09положение игрека. О, положение гриппера
8:11- это ноль либо один. Соответственно,
8:14это семимерный вектор. Просто у нас
8:16набор, ну, наше действие, пространство
8:17действий - это набор семимерных векторов
8:20непрерывных. О'кей. А что можно сделать?
8:23можно дискретизовать и токинизировать
8:27всё, потому что трансформеры с
8:28дискретными штуками прекрасно работают,
8:30lm тоже. Дальше что делаем? Э, добавляем
8:33в словарь новые токены, либо просто
8:36берём самые неиспользуемые токены,
8:38которые были, и говорим теперь, э,
8:41какой-то символ или значок, который
8:43очень редко использовался в нашем
8:45словаре, будет отвечать за такое-то
8:47действие, которое мы, ну, как после
8:50дискретизации получили набор каких-то
8:51дискретных действий. Вот. А, значит, это
8:54было введение немножко, просто бэкграунд
8:56для тех, кто может не знал там в
9:00подробностях немножечко, как это
9:02устроено. Дальше я пойду чуть быстрее,
9:05надеюсь.
9:07А вот, да, идея, как я уже сказал, берём
9:10VLM, потому что есть правер на текст
9:12картинки. Потом всё-таки, ну, мы
9:16дообучаем на рободанных, и рободанных
9:18нам хочется собрать как можно больше.
9:21Есть, например, работа Open XD- это
9:25большой коллектив там людей с разных
9:27исследовательских лабораторий. Люди
9:28взяли, собрали всевозможные Open source
9:31datasсеты на тот момент времени,
9:32двадцать третий год, а, с разными
9:34роботами. Здесь вот статистика какая-то
9:36есть маленькая, а, и объединили,
9:39почистили и подготовили такой open
9:41source datсет. Вот. А на момент двадцать
9:44третьего года это был самый большой
9:45десет. Вот, соответственно, миллион
9:47эпизодов.
9:49Но в сравнении там с интернетом, я
9:50думаю, вы понимаете, что это очень мало.
9:53Вот.
9:55Дальше у нас, соответственно, РТ2, про
9:58который я говорил, ну, взяли вот
10:01потренили VLM на действиях и показали
10:05ребята из
10:08команды, которая занимается РТ2 из
10:10Google, а что модель способна решать
10:14задачи по типу Pckп и даже понимать
10:17более сложные инструкции визуальные.
10:19Например, не знаю, положили там набор
10:21флагов, сказали: "Move ban банана to
10:23Germany". И он определил, что Германия,
10:26вот типа флаг здесь. А либо какие-то
10:29более либо какие-то более сложные
10:32инструкции, которые требуют не только
10:34детекции объекта, но и понимания
10:37семантики, например. Вот. На самом деле
10:40вот эти картинки, они очень
10:42оптимистичные, потому что велой и мы
10:44сами бенчмаркали и тестировали вот
10:46буквально на таком сетапе схожем очень.
10:49На самом деле VA довольно плохо с этим
10:53справляются, с пониманием семантики, но
10:55каком-то уровне она есть. Вот это уже
10:57как бы отдельный другой большой вопрос.
11:00Что они показали? Я просто покажу один
11:01простой график. Тут типа три бейзлайна.
11:05Значит, сratch красный, да? Это набор
11:08задач.
11:09сгруппированных. То есть они смотрят
11:12здесь генерализацию. Потренировали на
11:14одном наборе задач, дальше инферент на
11:18невиданных ранее объектов, невиданных
11:20там бэкграундов и в новых вообще средах.
11:24Вот и что они показывают здесь как бы
11:27основной такой оптимистичный вывод,
11:29который двинул, в принципе, всех людей в
11:30то, чтобы идти и делать VLA. А то, что,
11:34ну, смотрим, да, скртч просто с нуля. А
11:37у нас очень всё плохо, модель суперплохо
11:41генеризуется. А если мы посмотрим
11:45варианты с ITUN CTUN,
11:48а здесь всё слишком, точнее, ну, здесь
11:54сразу видно, что
11:56какой-то successрей
11:58есть. Понятно, что, ну, это относительно
12:00там всё относительно того, как мы задачи
12:04сформулировали и так далее, потому что
12:06много статей, работ выходит. В двадцать
12:08третьем году выходили работы, где на
12:10бенчмарках 100%й,
12:12в двадцать шестом тоже выходит. Это как
12:14бы не говорит нам особо прям абсолютных
12:17каких-то метрик, но относительно просто
12:20простая главная идея, что трейн
12:22помогает. Всё, вот, вот мы получили эту
12:24штуку. Такой вывод. И дальше двигаемся
12:28дальше, дальше двигаемся вперёд. Вот.
12:31Мм,
12:33значит, вот ещё один пример велой
12:35модели. А давайте так. А кто-нибудь
12:37знает, что такое Open Vay? Поднимите
12:40руку. Open Vay.
12:43Угу. О'кей. Аа тоже двадцать четвёртого
12:46года модель, а вышла sourourсная, первая
12:50такая openourсная, большая модель 7B
12:51модель. А идея то же самое, буквально. А
12:55vision Encoder, ну, точнее исходная
12:57вилленка у нас. Дальше дотюниваем
12:59генерировать дискретные экшены. Вот
13:01дельта X, дельта тета и дельта гриппера.
13:05А вот о'кей. Ну, тоже просто показал,
13:08что она существует. А дальше уже более
13:11свежие работы. Например, вот P
13:1505 P05, а от Physical Intelligence есть
13:21ребята из Калифорнии, которые делают
13:23очень классный стартап. А изначально они
13:26занимались и до сих пор занимаются
13:30наукой, а в Беркли, в Стэнфорде, э там
13:35суперзвестные люди, которые занимаются
13:37релем, основали его. А вот
13:40значит, что здесь в этой работе просто
13:43тоже обзорное расскажу. А пи в сравнении
13:47с прошлыми, например, работами. В чём
13:49отличие? Мы, если смотреть на такие
13:51основные milestone, как бы ключевые
13:54точки, первое, я показал трейн помогает.
13:58Супер простая идея, очевидная, но просто
14:01нужно это сказать. Ээ люди увидели э
14:05начали в это верить. Дальше все
14:07стремились к тому, чтобы делать
14:09правильный притрейн. И пи работа
14:11двадцать пятого года, наверное, один из
14:13таких ответов хороших, э, до сих пор
14:16сильных бейзлайнов. Ну, в смысле, не
14:17сильных бейзлайнов, она там в топовых,
14:20э, топовый скоры бьёт на лидербордах.
14:23Мм, это хороший ответ на вопрос, как
14:26правильно обучить модель, как сделать
14:28трейн, потому что непонятно до конца,
14:31как представлять действия. Например, вот
14:33я сказал дискретно, да?
14:35На самом деле дискретно представить
14:36действие, ну, довольно плохая идея,
14:39потому что, ну, как ты будешь
14:41дискретизировать? А что, если у тебя там
14:43какие-то,
14:45а, короче, там куча вопросов возникает,
14:48и нам хотелось бы делать, например, и
14:51работать с континус векторами. Вот. И
14:53давайте я тоже вкратце расскажу
14:57основные идеи. Вот SP05.
15:00Сейчас у меня должна быть картинка,
15:03да, пару картинок есть.
15:06А значит, в этой работе, в этой работе
15:10сделали упор на несколько вещей. Первый
15:12вопрос, как я сказал,
15:15как делать? Ну, то есть VLM, который мы
15:17используем, как её правильно
15:18подготовить.
15:20А ответ у них не [фыркает] до конца
15:23прямо полностью ясен, понятен, но ответ
15:26следующий. А существует набор задач, не
15:29просто предсказание текстом и там
15:32описанием каких-то объектов или
15:34генерация пойм по картинкам. Значит,
15:37существует набор дополнительных задач,
15:39которые очень сильно влияют или
15:42коррелируются последующим успехом мм
15:45модели, которую мы получим. Какие это
15:47могут быть задачи? Ну давайте я вот
15:49зададу вопрос в аудиторию. На чём нам
15:52нужно картиночно-языковую модель
15:54предобучить, чтобы потом, когда мы будем
15:57учить её на экшенах, у нас получилась
16:00хорошая модель генерации действий
16:02робота. Какие данные нам взять лучше?
16:06Типа распознавать котиков, собачек. Это
16:08хорошие данные.
16:10>> Угу.
16:11>> И с того же домена.
16:12>> Что ещё?
16:13>> Из того же домена и возможно какие-то
16:15динамические данные типа стала.
16:17[откашливается]
16:18>> Угу. Да.
16:20от первого лица перед с камерой
16:23выполнялся какой-то таз и чтобы она
16:27>> Ну да, да, правильный ответы. Вот,
16:30соответственно, да, мы как бы на
16:31приройне уже хотим модель готовить к
16:33тому, что она будет делать в будущем. И,
16:35например, можно предсказывать, просить
16:36её какие-то трейсы или там марки на
16:40картинке и просить как-то делать её
16:43рининг по физических свойствах или
16:45как-то отвечать на вопросы про
16:46физические свойства, а предсказывать
16:49что-то такое. Вот здесь картинки
16:51приведены.
16:53А, о'кей. И отдельный вопрос: как
16:55готовить данные, как собирать и так
16:57далее. Следующий вопрос. Я сказал про
16:59дискретные действия, что это очень
17:02нехорошая штука, на самом деле.
17:05Вот. И здесь случилось следующее. Ну,
17:08во-первых, вот эта часть, да,
17:10предренинг. Я я только что про это
17:11рассказал. Здесь картинка следующая. Как
17:14готовится VLA модель? А, есть VLM, как я
17:17уже сказал. У неё есть Vision Encoder и
17:21LMмо модель. Прекрасно. А здесь просто
17:24иллюстрация того, как происходит. Вот
17:27видно как раз какие задачи там
17:29спрашивают. Например, нужно локализовать
17:31какой-то объект, просто предсказав
17:34сейчас, где он там баundн боксы текстом.
17:37Вот. А вот это сейчас мы пропустим. Мы
17:40считаем, что просто на притрене у нас
17:42текст, мы учим на тексте, картинках и
17:45так далее. А экшены мы не генерим.
17:48Дальше происходит тот момент, когда я
17:51говорю, когда я говорил до этого,
17:52собираем работик данный и фаюним. Вот
17:56вот эта история. А что изменилось на
17:58картинке здесь?
18:00А вот это голубое - это велая модель.
18:04Она принимает картинку текст, может тоже
18:08генерить текст. Здесь пример приведён
18:10следующий. Подаётся высокоуровневая
18:13инструкция.
18:14Почисть кухню. Это очень абстрактная
18:18штука, э, как бы, которую можно разбить
18:21на шаги. А, соответственно, она может
18:24сама выдать саптаску и себе же скормить.
18:29Это что касается восприятия текста и
18:32картинки. Дальше у нас есть Action
18:33Expert. И тут вот эта штука, которая
18:37называется Action Expert, она отвечает
18:39за генерация действий. Генерацию
18:40действий. А что это такое? Давайте
18:43вопрос. Diffusionт transformer. Кто-то
18:46кто знает?
18:48Угу.
18:49А как вообще? Ну там UNET unet based
18:52дифузия работает. Идея как бы просто вот
18:55банальная идея диффузии там. Ну да,
18:57просто
18:58>> вот зашумляем, расшумляем вот это вот.
19:00Понятно?
19:01Ага, хорошо.
19:03О'кей. В общем, да, diffusion
19:05трансформер опущу, что это просто, э,
19:09диффузионная диффузионная модель,
19:12которая генерирует действия. Вот так
19:14скажу.
19:17Зачем понадобилась диффузия? Ну, как как
19:20работает диффузия на картинках. Вкратце
19:22идея следующая. У нас есть набор большой
19:25картинок.
19:27и набор кним инструкций. Мы хотим учить
19:29модель, которая будет по
19:32тексту выдавать нам картинку. Всё. Что
19:36мы делаем? Мы берём набор картинок, ну,
19:39выбрали sampмle картинка и текст. А
19:43подаём в модель какой-нибудь Vision
19:47backbн хороший. Просто, допустим, там
19:49unet набор свёрток, которые принимают
19:52Feature Map, выдают Feature Map. Вот. И
19:56в чём идея диффузии? Берём картинку,
19:59добавляем шум
20:02картинки,
20:03дальше просим модель
20:06восстановить обратно картинку. То есть
20:08мы делаем корапtion картинки и просим из
20:10такой зашумлённой картинки выдать ту,
20:12которая была изначально. Вот на
20:14инференсе мы даём полностью полностью
20:16шумную картинку, а, в смысле белый шум,
20:19например, и просим по инструкции выдать
20:22нам аа
20:24кар сгенерировать картинку, которая
20:27была. Вот, соответственно, с действиями
20:28то же самое. Мы собираем набор э данных
20:32с робота, где у нас есть непрерывные
20:34действия. А действие, как я же сказал,
20:38это вектор. Можно делать умнее, можно не
20:41генерировать одно действие сразу в
20:42момент времени, можно работать чанками.
20:45То есть чанк действия - это кусочек типа
20:48сейчас действия через Т1, Т2 и так
20:52далее. Сейчас все работают с чанками.
20:55Вот. И, соответственно, берём чанк
20:57действий. Если у нас вектор размера семь
20:59- это один вектор действия, то семь на
21:03чанк, длину чанка - это вот будет
21:05матричка такая, буквально картинка. И
21:08как с картинками логично зашумляем,
21:11расшумляем и учим экшн-эксперта. Вот эта
21:13штука чисто отвечает за генерацию
21:15действий. Как они общаются с велом? А я,
21:19мне кажется, уже начал отдельно вести
21:21лекцию по велай. Я давайте буду
21:22ускоряться быстрее, а то там очень много
21:24вещей, которые нужно ещё рассказать. М,
21:27значит, как общается вот эта штука,
21:29которая воспринимает картинки и текст, и
21:31штука, которая генерирует действия. Это
21:34два трансформера. Кто знает, что такое
21:36трансформер?
21:38Прекрасно. Значит, знаете, что есть
21:40трансформеры? Attention, self attention,
21:42cross attention. Вот.
21:45В мультимодальном обучении классический
21:47способ общаться, кондишнить трансформеры
21:50и так далее - это crossstion, один из.
21:53Вот так вот. Вот этот друг маленький, он
21:57вот здесь на картинке вообще 300 млн.
21:59Эта штука может быть там 7B модель. А
22:01так вот этот маленький друг узнаёт
22:03информацию от большого друга посредством
22:05кроссатеншна. Он просто как через слой,
22:08то есть у него есть self attention,
22:10crossstension, self attention,
22:11crossstension. На crossstensне он идёт
22:13вот сюда и спрашивает, э, а что нужно
22:17делать?
22:19На каждом слое селфитеншена своего он,
22:23посмотрев уже в картинку, ну, в
22:26латентное представление картинки текста,
22:29он говорит: "О'кей, двигаюсь в эту
22:31сторону". И потихоньку, ну, там
22:33происходит на разных слоях расшумления,
22:35пока мы из просто шума не получим
22:37вектор, ээ, или чанг действий, набор
22:40действий.
22:41>> [вздыхает]
22:41>> Всё, давайте это скипну, а быстро
22:43расскажу тоже из их статьи тоже один
22:46график и тоже простая мысль, что они
22:50показали.
22:52[вздыхает]
22:53Они показали, ээ, на самом деле уже
22:57более, в принципе, вывод вывод такой же
22:59отсюда, да, если вот этот график
23:01смотреть, вот эти просто бары, э,
23:03смотрим 104 локации без притренинга. Ну
23:06вот притренинг, если не делать, всё
23:08плохо, мы до этого уже поняли. А дальше
23:12in the domain data, no prining. Короче,
23:14они ездили в Сан-Франциско со своим
23:17роботом по разным домам и по кухням и и
23:20валили его там. У них есть прикольное
23:22видео, вы можете там погуглить,
23:24посмотреть потом, а как они это делали.
23:27Вот. Inomain data - это, соответственно,
23:29данные, собранные с,
23:33а, данные, собранные с конкретно уже
23:36домена, который нам нужен, типа кухни.
23:39Вот. И это вот если без претрейна, но
23:43есть таргет данные. И опять же
23:47data плюс prrain. Вот график. А в
23:51принципе вывод такой же, а
23:54подтверждающий их инструкции про то, как
23:57там модель учить и так далее. Но если
23:58посмотреть ещё на этот график, что
24:00интересно, он как бы заканчивается на
24:0280%.
24:04Вот вопрос вот, а что дальше идёт? Вот,
24:07вот тут типа, если мы увеличиваем, то
24:09есть, да, вот вот я показал бары просто.
24:12Теперь мы смотрим вот на этот график. А
24:15это зависимость количества разно разно
24:18разно разра разнообразных локаций,
24:22которые были в притрене. Ну, то есть мы
24:23съездили в один дом, собрали данные,
24:25съездили в другой дом, собрали данные. А
24:28так вот по иксу разнообразие локации,
24:31количество данных, собранных с разных
24:33мест, а здесь task success.
24:36Соответственно, ну, видим, что чем
24:38больше разнообразие данных, тем у насс
24:41растёт. Вопрос: а что происходит дальше?
24:44Ответа здесь вот нет. И это большой
24:47вопрос, на самом деле, потому что,
24:50ну, непонятно. Нам хочется скелить
24:52модели всегда и собирать больше данных
24:55скелить. И вот они в этой статье прямо
24:58ответа не дают. Что будет дальше? Что
25:00если мы там соберём тысячи разных
25:02локаций и так далее? Способна ли модель
25:04м хорошо скелиться?
25:06Так, про VLA я уже рассказал. Просто ещё
25:09раз визуализация, как она устроена.
25:11Vision language модель. Вот картинки
25:14принимает текст. Это можно забить. М
25:18внутри несколько слайв selftнtionна
25:21actionпертt. Диффизионный трансформер. М
25:24на вход принимает в момент времени
25:26какой-то шум. А на каждом там своё своём
25:30слое. На одном из смотрит в VLM,
25:33получает инфу о картинке, тексте. на
25:35другом занимается расшумлением экшнов. А
25:38так, да, я дошёл до картинки того, как
25:40мы контролируем действие робота. Вот
25:43обычно можно делать так. Есть дефектоor
25:45control, есть joint control. Вот у нас
25:48есть какой-то манипулятор, у него есть
25:50сочленение, джоинты называются. Вот они
25:53моторчики, где у нас стоят.
25:55А можно как, ну, как бы в машинном
26:01обучении для роботикса, как мы
26:03представляем вот эти действия, как раз
26:05как управление делается.
26:06Либоинт-контролом мы напрямую говорим, а
26:11позицию джоинта мы задаём числом там в
26:13каком-то рейндже. Говорим теперь, что
26:16вот у нас джоинт 1 2 3 4 и, допустим,
26:20четырёхмерный вектор э в каждой из
26:23координат - это джоинт. Либо можем дефor
26:25control делать, предсказывать кипоинты,
26:27буквально вот я то, что сказал, типа X
26:29Y, Z и три угла и положение, ну,
26:33состояние гриппера. Так, давайте идти
26:35дальше. Здесь статистика про VLA модели,
26:38про датасеты. А можно увидеть, наверное,
26:42с задних парт сложно, [вздыхает] что я
26:45хотел показать.
26:47Наверное, следующее просто, ну,
26:49количество эпизодов. Это статья, ну,
26:52двадцать пятого года. Это openсоourсные
26:54датасеты. Просто глянуть на то, вот
26:57сколько данных есть. Ну вот Bot World,
27:01например, 1 млн, 1,4 млн. Ну, если
27:05посмотреть, тут не миллиард, короче,
27:09данных. И это просто слайд про то, что
27:12данных мало. А это слайд красивый про
27:16то, что случается с Велойресерчем
27:20с течением времени. не случилось. Аа
27:23смотрим год двадцать третий, количество
27:25статей и работ по VLA. Двадцать
27:26четвёртый сильно больше, двадцать пятый
27:28кучу и двадцать шестой тоже.
27:32Идём дальше. А в чём проблема идеи V
27:35моделей, а, и подхода?
27:39Мм, как я сказал, мы в V моделях
27:41используем, а, ну да, я вот до этого
27:43говорил, что мы не имеем слишком много
27:45рободанных. Это как бы большая проблема.
27:49О'кей.
27:53Мы подумаем, как её можно решить. Я
27:55думаю, у вас уже есть идеи. Вот второе,
27:58что важно сказать, ну, мы используем VLM
28:02в качестве претрейна, да,
28:05инициализации для будущей экшн-модели
28:07нашей. Так вот, VLM она была, ну,
28:12предобучена, получая картинку генерить
28:14текст любой какой-то.
28:17Вот. А у нас здесь ботик и у нас всё
28:20динамично. И как бы сами картинки и
28:24задача генерации текста вряд ли нам
28:26вытащит из всего интернета. Ну то есть
28:28зачем нам делать prтрей? Грубо говоря,
28:30идея получить праеры хорошие на
28:32понимание.
28:33Трей делается. Если бы мы могли сделать
28:35prтрей на робо его делали. Это вытекает
28:38вот из первой проблемы, то, что у нас
28:41есть хоть какие-то данные, давайте на
28:42них как-то вытащим полезную инфу. А вот
28:46и использование просто VLM
28:49не даёт нам знания о динамике, потому
28:50что один кадр
28:53и предсказание текста,
28:55ну, малоинформативен.
28:58Вот. И есть более хорошие штуки в этом
29:00плане. А, например, то, о чём сегодня
29:04лекция будет, наконец-то. А,
29:06видеомодели.
29:08Видеомодели. Давайте так, просто общее
29:10высокоуровнего понимание. Э, штука,
29:12которая име, э, получая на вход один
29:15кадр либо последовательность кадров и
29:18текстовую инструкцию, может генерировать
29:20последовательность будущих кадров,
29:21например. Дальше дальше будут примеры.
29:25А, да. И третья проблема с бенчмарками.
29:28Люди пытаются делать бенчмарки
29:30нормальные. Мм, часть из них просто
29:34оверфитнуты, часть из них криво
29:37составлены, но это как бы сегодня мы не
29:39особо будем трогать.
29:41Да,
29:44следующий слайд, точнее прошлый был с
29:47названием What are we missing here?
29:51Следующий слайд SL. А если вы, ну,
29:56посмотрите пример, ну, классический
29:57пример вот с Уилом Смитом, который
29:59кушает спагетти. А я не помню, какой год
30:02вот этот слева самая картинка. Мм, но
30:07это не двадцать пятый год, не двадцать
30:08шестой точно. А вот здесь уже пример,
30:11да, это более свежие модели, по-моему.
30:13Нет, не скажу точно, какая модель, но вы
30:16можете увидеть, как прогресс шагнул.
30:18Во-первых. Во-вторых, а что я хотел
30:21сказать про AI видеомодели? Ну вот
30:24посмотрите, как он кушает спагетти.
30:25Просто довольно реалистично, мне
30:27кажется. И, ну, спагетти - это довольно
30:31такой физический объект, который сложно
30:33моделировать. Вот. И посмотрите, как
30:36здесь кот прыгает в бассейн.
30:39Вот здесь прыжок кота, ну, как бы очень
30:44похож на реальный. И почему как бы, ну,
30:48там такие видосики распространяются, в
30:50частности, потому что это выглядит очень
30:52реалистично и ты видишь кота и такой:
30:53"Вау!" Вот. И к чему этот слайд? К тому,
30:56что мм параллельно в области генерации
30:59видео шёл прогресс в сторону того, чтобы
31:03учиться генерировать более реалистичные
31:05видео. И с точки зрения физики, ну,
31:08здесь какое-то действие происходит
31:09физическое, прыжок, там, шлипок в воду.
31:13И для нас по видео, по картинке это
31:15выглядит реалистично.
31:17Вот. И можно делать следующее. Провести
31:20такой простой эксперимент. А, ну здесь
31:22вот тоже пример, мм, из
31:26по-моему, да, это про Veo 13, ладно,
31:293.1. Я не знаю, это что-то говорит или
31:32нет. В общем, видеомодель, а, техрепорт
31:34выпустили, ребята. И это тоже Google
31:38Deep Mind или кто-то ещё. И просто демки
31:40того, как она генерит видосы. Здесь,
31:43например, вот сложное отзеркаливание,
31:45здесь вода, физика. Вот. И казалось бы,
31:48блин, у нас есть вот сейчас у нас есть
31:50видеомодели, которые
31:52по текущему кадру инструкции
31:55предсказывают, что будет в будущем. Это
31:57вообще, ну, как бы супер полезная штука.
31:59И давайте брать их. Вот. И на самом
32:03деле, ну, как бы, да, давайте, э, вот
32:06здесь тоже пример, э, можно взять и вот
32:10давайте слева посмотрим, просто исходный
32:12кадр подать
32:14с манипулятором, роботом и набором
32:17объектов и сказать видеомодели просто
32:19сгенерируй, как манипулятор их там
32:22пикает. Я не знаю, что это, апельсин.
32:25Вот. А, и он, не видя никогда вот
32:28определённо вот этого робота,
32:30определённо вот из этого с этим углом,
32:32сгенерит, ну, довольно реалистичный
32:34кадр. На самом деле, тут можно увидеть,
32:36что гриппер там меняется со временем.
32:40Вот он был одним, стал тройным. А, и это
32:43тоже проблема. Но тем не менее как бы
32:45это выглядит более-менее реалистично. То
32:47же самое с лабиринтом. Это просто
32:49исходная картинка была. Машинка здесь
32:51лабиринт.
32:52>> [фыркает]
32:52>> Мы можем попросить модель
32:54сгенерировать последовательность кадров,
32:57а того, как модель, машинка проезжает
33:00лабиринт. Вот. И это очень впечатляющие
33:04результаты, мне кажется.
33:06И, соответственно, да, давайте, что если
33:08использовать вот видеомодели, а перед
33:11тем, как это делать, перед тем, как это
33:14делать, там вот я рассказал про VA
33:16модели, возникает вопрос: давайте просто
33:19заменим VLM
33:21на видеоэнкоodдер какой-то. Ну, не
33:23видеоэнкоodдер, а видеогеративную
33:25модель. Очень простая идея.
33:30Можно так сделать,
33:32но если бы,
33:36ну, в принципе,
33:38сейчас я сформулирую эту мысль,
33:42но это не один способ, и не факт, что он
33:44самый лучший. Точнее, скорее всего, ещё
33:47под вопросом, насколько он хороший.
33:49Поэтому мы начнём с бэкграунда вообще,
33:52э, того, как люди пришли ещё и к
33:56использованию видеомоделей в роботиксе.
34:00То есть я рассказал про Vay. Сейчас мы
34:02пойдём в сторону того, а как
34:06использовать, точнее, как моделировать
34:08мир. Про Wordмодели расскажу, про L&
34:11action модели, как обучаться на
34:13неразмеченных данных из интернета и так
34:15далее.
34:17Давайте
34:19приступим. А
34:22какой вопрос? Вот здесь, когда я этот
34:23слайд ставлю, я и я поднимаю, как я уже
34:26сказал, а ещё раз, типа, десятый раз,
34:30наверное. А рободанных мало. Что мы
34:33делаем тогда? Ищем, идём в другие
34:36домены, ищем, мм,
34:39данные там, которые будут полезны. Нам
34:41всегда хочется делать стрей. Мы хотим
34:43чат GPT, который типа Zрошот всё решает.
34:47Вот. М. О'кей. Значит, если V - это про
34:52данные картинка текст, то
34:56можно посмотреть теперь в домен видео. А
34:59причём видео
35:01видео, а неразмеченных, то есть просто
35:04видео снятых, как человек двигается или
35:07как
35:08человека стоит камера на голове и он
35:11совершает какие-то действия, берёт
35:12что-то. В последнее время, если вы там
35:15видели где-то новости, а или картиночки,
35:18буквально где-то в на заводах в Китае
35:22или в Индии, работникам ставят
35:25на,
35:27значит, заставляют носить кепки или мас,
35:30как это называется, короче, да, вот
35:32каски ставят им камеры и работники,
35:36которые там на конвейере что-то
35:37собирают, а пишут с них, ну, просто
35:40пишут данные, как они это делают. Вот
35:42зачем это используется.
35:44А люди поняли, что данные неразмеченные
35:47тоже можно использовать. А, во-первых,
35:49можно их размечать. А, но можно даже
35:52делать по-другому. Давайте про lettion
35:54модели проговорим. А значит, статья
35:56двадцать четвёртого года называется
35:58лапа. Такой вопрос у меня ещё. Меня
36:01слышно с задних парт? Я всё супер,
36:05спасибо.
36:06Тогда вернёмся к lettion моделям.
36:09Значит, а статья, да, двадцать
36:12четвёртого года называется Lent Action
36:14Pretraining.
36:15From Videos лапа. В чём идея? Ну, идею я
36:19уже назвал, в принципе.
36:22Вот large scale робот датасеты. Ну,
36:24дорого собирать.
36:26Нужен робот. Э, но у нас есть робот
36:29действия, мы можем на этом уже напрямую
36:31учить. А вот напротив, есть весь
36:37YouTube, например,
36:40на котором куча видео.
36:43А, но с другой стороны у нас нет
36:47разметки по действиям, и это не всегда
36:49рободанные. И [фыркает] вот Лапа
36:51задаётся вопросом. Ну вот в этой статье
36:53задаются вопросом: "А как использовать
36:55неразмеченные видеоданные?" А для того,
36:57чтобы учить экшн-модели?
37:01И ответ следующий. Ну, идея,
37:05идея лапы. А, значит, давайте чуть
37:08перейду вот сюда.
37:12М,
37:14начнём вот с этой с первой части, с
37:17первой схемы. А у нас есть два кадра.
37:21Это типа текущий и будущий. У нас есть
37:24типа видео человек, который пальцем
37:27толкает бутылку воды. А что мы можем
37:31сделать и что предлагают делать?
37:34А, имея два кадра, мы и не имея, ну, у
37:40нас есть, ещё раз, да, у нас есть видео
37:42и нет разметки по действиям, какие там
37:44действия случились. Мы хотим это
37:47использовать для того, чтобы, ну,
37:48сделать трей, например, хороший, потом
37:50обучить модель, которая генерирует
37:52действие уже. А здесь с бутыл с бутылкой
37:55пример может не такой хороший, но не
37:57суть. М так вот, следующая идея. А берём
38:02два кадра, текущий и следующий. Между
38:06ними
38:09пытаемся просто предсказать действие.
38:11Lent action. Ну вот из названия.
38:13Понятно, что а это называется inverse
38:17динамика, то есть
38:19у нас прямая динамика и динамика. Что
38:22это? Ну, грубо говоря, картинка есть,
38:26есть действия. Динамика нам выдаёт
38:28следующую картинку, следующее состояние.
38:31Инверс динамика делает наоборот
38:32немножко. У нас есть текущее состояние
38:36среды, текущая картинка, следующая
38:37картинка. И нам нужно предсказать, а
38:40какое действие привело к следующей
38:42картинке. Это делают следующим образом.
38:45Берут просто и учат. Кто-нибудь знает,
38:47что такое вQVе?
38:49ВQV.
38:51ВQV.
38:53О'кей. А просто давайте так.
38:56Вариационный автокодировщик.
38:58А сейчас е кто-то знает, что такое? Ага.
39:02Давайте так. Штука, которая из картинки
39:06в латентное пространство отображает, из
39:08этого латентного пространства обратно
39:11отображает картинку.
39:13Вот давайте я так скажу. Для тех, кто
39:15знает, что такое вое, и для тех, кто
39:18знает, что такое ВК вое.
39:20Соответственно, вот вам будет эта
39:22картинка, думаю, понятна. Для тех, кто
39:24не знает,
39:25просто учится такая вещь, этодер
39:27декодер. А имея энкодер принимает два
39:30кадра и отображает эти две картинки в
39:34какое-то латентное пространство. Ну, по
39:35сути,
39:37в пространство векторов. Декодер из
39:40этого пространства векторов нам обратно
39:42пытается восстановить вектор в
39:44пространстве картинок. А, и как эта
39:47штука вся учится?
39:49Учится она так. Подаём две картинки.
39:51Текущая, предыдущее, ой, текущее,
39:54следующее. Отображаем в латентное
39:57пространство.
39:59Из него пытаемся припрескать следующую
40:00картинку и считаем loss по предсказанию.
40:05Ну вот, вот тут у нас X2 с шляпкой и
40:07здесь X2. И мы пытаемся сделать их
40:09максимально близкими. Так вот, в чём
40:12прикол? В чём идея? Вот здесь вот что
40:15это за латентное пространство?
40:17Мы
40:19говорим,
40:21ну давайте так, ну интуитивно как бы вот
40:23что тут выучится, типа
40:26>> действие.
40:26>> Ну да, да. Вот как бы интуиция такая,
40:30что если мы подаём набор
40:33текущий и следующий кадр, отображаем в
40:35какой-то вектор и из этого вектора
40:38предсказываем опять следующий кадр, то
40:42возможно это действие. И мы говорим, что
40:45вот, ну, тут для тех, кто ВКУVе,
40:47понимает, что такое, а мы учимбук
40:50латентных экшенов. То есть мы можем
40:52задать количество этих экшенов и
40:55получить набор векторов, которые мы
40:57называем латентными экшенами. Потом что
41:00происходит дальше?
41:02А, хорошо, мы выучили по сути, ну, нам
41:06очень важен был
41:08энкоoder из этой, да,
41:11>> получается, вот у нас в фейсбуке
41:14ограничное количество экшеннов, которые
41:16мы сами заранее сдаём или мо есть
41:18возможность неограничено вытаскивать
41:21продукци
41:24вообще light модели там по-разному
41:26тренируют. Вот здесь они предлагают, ну,
41:28я вот сказал как раз ВКЕ. Мм, здесь они
41:31предлагают, предполагают, что у нас
41:33здесь отображение идёт в фиксированный
41:35набор векторов. Вот, на самом деле, ну,
41:38работает так. По дали картинкер какой-то
41:41вектор выдал, у нас есть cтбук, набор,
41:44типа пять векторов, которые вот
41:46фиксированы как-то.
41:49Дальше мы вектор, который выдал
41:50энкоodдер, пытаемся смчить с теми из,
41:52ну, с этими с теми векторами, которые у
41:55нас в кодбуке.
41:57Вот.
41:58М.
42:00Да. Так, о'кей. Мы научились, значит,
42:05выучили модель inверсдинамики. По двум
42:07кадрам она выдаёт нам латентный экшн.
42:09Прекрасно. А что происходит дальше? А мы
42:12берём VLM модель, а подаём в него
42:16картинку и учим её предсказывать
42:18латентные экшены Z1.
42:21А,
42:23прекрасно.
42:25Это называется часть Lнraing.
42:28И дальше
42:31ещё следующий степ, это мы берём уже
42:34опять же кадр и учимся предсказывать не
42:37латентный экшн, а реальный экшн. У нас
42:39уже может быть рободанные здесь, а и мы
42:42по этим, на этих рободанных учимся из
42:45текущей картинки отображать действия. А,
42:48о'кей.
42:50Значит,
42:52зачем мы это делали? вопрос.
42:58Ответ следующий. Вот вот в этом в этой и
43:01в этой э
43:03я бы даже сказал так. Ну да, вот в этих
43:05двух
43:06промежу стадиях мы можем использовать в
43:09принципе весь интернет. А давайте
43:12забудем, что тут вообще набор, э,
43:14cutтбук, он ограничен. А и скажем
43:18просто, что тут выучивается какое-то
43:20латентное пространство всех действий в
43:22мире.
43:24очень сильно упростим, но не суть. В чём
43:27прелесть вот этой первых двух фаз? В
43:29том, что мы здесь можем использовать, в
43:30смысле все видео любые вообще, где
43:33происходят какие-то действия. А мы никак
43:36жёстко не никаких требований не задаём
43:39прямо сильных. У нас только требования,
43:41чтобы был набор кадров. Всё. А и
43:46соответственно вот эта фаза, а это очень
43:48дешёвый притренинг. И отсюда мы можем
43:53брать видео, как обезьянки прыгают, а
43:56люди ходят, роботы что-то делают и
44:00притренировать на этом. Вот. А, о'кей. А
44:04вот здесь таргет уже какой-то. Здесь мы
44:07уже берём роботданные и учим.
44:10Если вот здесь просто вилэмка училась,
44:12ну вот картинку подали, обучили голову,
44:15которая по картинке инструкции
44:18выдаёт латентный экшен. вектор просто.
44:21>> Как мы инструкцию получили?
44:23>> А вот здесь
44:28типа
44:29>> хороший вопрос. Не, не, инструкцию мы
44:33через транспорт.
44:34>> Да, я вот вот немножечко неправильно
44:37сказал. Вот здесь мы используем весь
44:39интернет.
44:40Вот здесь мы всё-таки должны иметь
44:42разметку с инструкциями.
44:44Вот
44:45>> типа видосы идут с описание
44:48>> просто что происходит. Мы можем, да,
44:54>> да. А, [откашливается] о'кей. Да. И вот
44:58здесь просто учим картинка текст, VLM и
45:01голову, которую на э предсказывает. Вот
45:03здесь это та же VLM, просто она
45:06предсказывает не латентный экшн, а это
45:08другая голова, которая реальный экшен
45:10предсказывает. Вот. Да.
45:12>> А всё-таки текст он как-то размечается
45:15или как?
45:17А текст, текст, текст, текст.
45:22Да,
45:23>> можно ещё на нулевом шаге на текст,
45:26>> да?
45:27>> Если видео action, напиши,
45:29[откашливается]
45:33>> можно нагенерить, можно иметь уже
45:36исходную инструкцию. Тут вопрос про то,
45:39как качественно мы эти лейблы дадим.
45:42>> Вот
45:43>> как
45:44>> что ещё раз?
45:46Как?
45:49>> А в притрене вот здесь, да?
45:53Как возьмём
45:55они же,
45:59>> да? Ещё раз. У нас есть код.
46:08>> А вот здесь вопрос, да? Но здесь же мы
46:12знаем, какой экшн латентный соответству
46:15этой картинке. Здесь как раз приведён
46:17пример, вот картинки здесь и здесь
46:18одинаковые. Просто показать, что мы вот
46:21здесь всё-таки, да, я немножко соврал.
46:23Мы, скорее всего, вот
46:26надо проверить статье. Я извиняюсь, я
46:28немножко тут запутываюсь в этом моменте.
46:31А вот здесь, скорее всего, мы используем
46:32те же данные, неразмеченные, только
46:34немножко добавляем разметку по тексту.
46:35Разметку по тексту делать, ну, не так
46:37сложно, как разметку по реальным
46:39действиям робота или, ну, тут вообще
46:41непонятно, что, да, поэтому мы вот здесь
46:43те же действия, в смысле, те же данные
46:45используем, поэтому мы знаем, какой Z
46:47был. Вот. Да. А зачем, ну, картинку X1 в
46:53декодер продавать?
46:55>> Зачем в декодер?
46:56>> Да.
46:57>> А, ну нам нужно вот вот эту штуку, что
47:00вот здесь на первой в первой части
47:01учится.
47:02Ну,
47:03>> декодер, но декодер нам не нужен. Мы
47:05его, в принципе, использовать там мы не
47:08будем генерировать видео. Нам нужно
47:10только выучить отображение из картинок в
47:12латенты.
47:14А зачем декодер?
47:18Декодер подавать.
47:21Ну, у тебя X2 против X2 предсказа
47:25декорам от действия предсказано
47:29>> против настоящего X2, который
47:31[откашливается] от настоящего
47:32действуется,
47:34>> да? На самом деле декодер это штука,
47:36чтобы научить энкодер просто. Поэтому мы
47:38в декодер подаём а X1.
47:44>> Вот. И вот эти кадры сближаем. Угу.
47:52Дальше, а, результат обучения,
47:54соответственно,
47:56тоже тут довольно простые графики. А
47:59здесь бенчмарки
48:01м, по-моему, из реального мира. И здесь
48:05сравнение просто поксеessс-рейту.
48:08А, я не привёл картинки. Может быть, они
48:11на следующем слайде. Нет, не на
48:12следующем слайде. Я не привёл картинки,
48:14но тут были просто робозадачки, типа
48:18бутылку, выпей воды. Бридж
48:23>> бридж - это детасет для претрейна
48:26большой. Там, когда я статистику
48:29показывал, он там был Bridge V2
48:31называется. Вот в скобочках. Да, сейчас,
48:35а, сейчас отвечу на вопросы. Возможно,
48:37вот сейчас я расскажу и уже ответ будет
48:39здесь. А, в общем, что за график?
48:42Задачка, робозадачка, типа кнок. Ну,
48:46cover, pick and place. Кнок, я не
48:47понимаю, что такое. Немножко не помню.
48:50Cover - это нужно было там накрыть
48:51какой-то таргет объект, pick and place.
48:53Ну, понятно, что делать. Вот. И
48:55сравнивается, что здесь, э, скратч - это
48:57вообще с нуля обучено, но мы уже поняли,
48:59что с нуля плохо учить. А Open VLA, про
49:01которую я рассказывал, а, и Лапа. Ну,
49:04соответственно, та модель, которую про
49:06которую я только что рассказал. Здесь
49:08есть два варианта лапы. лапа в скобочках
49:10bridge, лапа в скобочках human video и
49:12open чисто bridge. Bridge - это вот,
49:16когда я говорил и показывал там Open X
49:18odment, вот этот огромный датасет, а
49:21Bridge - это как раз-таки один из
49:24кусочков вот этого большого дедсета.
49:26Просто open source, набор данных с
49:29робота, собранных в определённом сетапе.
49:32Вот. А что здесь интересно? Мы
49:35сравниваем просто OpenVay, обученный на
49:38бридже. и лапы обучены, ну, короче, open
49:40и лапы обученные на робот данданных. А
49:43performanceс у них, ну, где-то, ну, вот
49:46average, короче, схоже, потому что тут
49:48бары, доверительные интервалы
49:49пересекаются, как бы. Ну да, придумали
49:53новый метод обучения. Прикольно, как бы,
49:56носрей схожий. Кажется, что грустно.
50:01Вот. Но в чём в чём фишка? У нас есть
50:04ещё зелёный столбик, где у нас в
50:07скобочках Human Video стоит. И это Lent
50:12Action модель наша, которая была обучена
50:14на неразмеченных данных от человека.
50:18И она по перформансу сравнилась с
50:22прошлыми двумя вариантами.
50:25И это уже очень сильная штука, потому
50:27что мы как бы не делали никакой
50:28разметки, просто взяли видео и получили
50:31перформанс сравнимый с моделями, которые
50:34учились на размеченных больших
50:36рободанных. Это круто. Но на самом деле
50:40вот я бы сказал тем, кто будет дальше
50:42там смотреть какие-то статьи читать, а,
50:44особенно в работе все,
50:47я вот советовал бы аккуратно относиться
50:49к результатам бенчмарков, да, наверное,
50:51во всём MLDL в последнее время. когда
50:54это стало суперхайповым и люди начали
50:56вливать огромные деньги в это всё. Мм,
50:59нужно аккуратно относиться ко всем
51:01бенчмаркам и результатам на них. Вот. Ээ
51:03в чём здесь проблема? Как бы
51:05оптимистичная картина, да? Мы теперь
51:07можем взять весь интернет, разметить его
51:09латентными экшенами и как-то дальше
51:12учить робомодели.
51:15Но не всё так гладко, даже если даже
51:18несмотря на то, что они они показывают в
51:20статье у себя графики, типа как они
51:21скейт model scaling, data scaling l and
51:25action lens, там всякие такие штуки, они
51:27показывают, что со скейлом модели и
51:29данных качество растёт.
51:32Вот на самом деле большая проблема в
51:35Light Action моделях в том, что
51:38а скейть их тяжело.
51:41А давайте так, я задам вопрос. Сейчас я
51:45подумаю, какой. А какие-то вопросы были,
51:48может, до этого я скипнул. Вопрос был
51:51про
51:52>> Что ещё раз?
51:53>> Ну,
51:53>> кнок
51:54>> вы бы сказали, да, понимаете, а что с
51:58ней?
51:58>> А я не помню просто, что за задача
52:00кнопка.
52:00>> Просто в предыдущем слайде, где с
52:02бутылкой, там как раз кнопка был.
52:04>> Мм.
52:07Угу.
52:09Спасибо. Пронить.
52:11>> Всё супер.
52:12>> Можно вопрос?
52:13>> Да.
52:15Ну, как бы без разницы. Дайте. Нет.
52:18Почему такой сп? Почему такой спс на
52:23[откашливается]
52:25>> на всех остальных они поравные здесь
52:29вапа? Причём именно
52:30>> обычно не высляется.
52:34>> Не знаю. Скорее всего, просто они криво
52:36замерились. Ну, как бы в
52:38то есть, ну, просто взяли такую таску.
52:42Они в реальном мире это всё тестили,
52:43по-моему. И да, в реальном мире, не в
52:45симуляторе. Там ты не можешь прямо
52:48долгое валы проводить, поэтому
52:50наверное они в статье пишут, я не помню
52:52и не знаю, вот я так отвечу. Можете
52:54глянуть вот везде в каждом слайде про
52:57стати, про который я рассказываю. У них
52:59есть название, можно погуглить. Вот. Ну,
53:01как бы тут гениально чего-то это не
53:03несёт, наверное. Возможно, я это
53:06пропустил, но вот да, основные тейки,
53:08которые я сказал, вот они здесь. Так,
53:12поводу
53:13чем закрыть?
53:14>> Я правда не знаю. Ну, точнее, я не помню
53:18ощение, что и cover - это, ну, точнее,
53:21что cover он же должен что-то взять,
53:24чтобы крыть. Это же и есть, наверное,
53:30ну, странно.
53:32>> Давайте так. Смотрим на average просто.
53:35>> [смех]
53:36>> Ну да, тут я серьёзно прямо по дальше
53:40будут примеры, просто уже времени так
53:41много. Дальше будут примеры большой
53:43большого количества бенчмарков и задач.
53:45Здесь я не привёл слайды, что за задачки
53:47были, поэтому не могу ответить прямо
53:49точно. Давайте дальше. А проблема в чём
53:52этих моделей? Они показывают, что круто
53:53всё скейлится. На самом деле на самом
53:56деле, э, вот тут,
53:58когда мы вот этот котбук учим, аэ
54:02вопрос, ну, я сказал как бы так очень
54:05наивно, что мы предполагаем, что сюда
54:08записываются
54:10вот эти латентные действия, они имеют
54:11какой-то смысл. И вот то, что сюда
54:15запишется, то, что мы выучим здесь, оно
54:17будет соответствовать или иметь какую-то
54:19корреляцию с реальными действиями. Но в
54:21реальности оказывается, что если мы
54:24будем учить модель на разных данных, то
54:28возникает большая проблема и связано с
54:30тем, что вот сюда может записаться
54:32вообще какая-то, ну, левая информация,
54:34типа инфа про фон, например, информация
54:38про, не знаю, цвет, что-то ещё. Это
54:41можно фиксить тем, что мы количество там
54:43этих латентных экшенов ограничиваем, но
54:47всё равно вот есть работа от ребят, как
54:51раз коллег из Айри. Саша Сникулин, а
54:54один из первых авто, первый автор. А
54:57значит, они что сделали? Они заметили
55:00следующую проблему. А
55:03и предложили её решение. Рассказывать я
55:05прямо не буду, потому что мы пойдём
55:07дальше. Но проблема, просто её стоит
55:09знать, что вот эти модели, ну вот здесь
55:13простой, точнее, взяли они бенчмарк, где
55:17нужно вот научиться управлять вот таким
55:21такой ногой или что это такое, такой
55:23штукой, которая похожа на ногу. Короче,
55:26это я даже забыл, может, кто-то знает,
55:28как задачка называется. Вот есть кер,
55:31есть маноид в Маджока. А вот это я не
55:33помню.
55:36>> Какой-то Да, да. джампер, возможно, вот,
55:38но не суть. Где нужно, короче, выполнять
55:41контрол вот этой штучки, ногой ходить,
55:44бегать, а, и на вход мы получаем
55:47картинку, на выход мы выдаём сочинение
55:49вот эти положения джоинтов. Так вот,
55:52если мы, ну, дефолтная как задача
55:54выглядит, фон там просто типа синий. Вот
55:57если мы возьмём и начнём на фон
55:59добавлять какие-то видосы, например,
56:01человек, танцующий брекданс, вот, либо
56:03что-то ещё, и будем учить на этом L and
56:06Action модель, то потом, ну, вот это л,
56:10типа кадры, который был, а вот это кадры
56:12- это кадры, которые уже восстановили из
56:15декодера, из
56:18из вот этого вотн экшена при помощи
56:21декодера. И если посмотреть, что
56:24восстанавливается,
56:27а, то можно увидеть, что где-то у нас
56:31всё хорошо, и мы восстанавливаем чисто
56:34по латен экшену, а, ну, положение
56:37действия, грубо говоря, соотносим к
56:39тому, как робот будет выглядеть. А
56:43где-то мы восстанавливаем фон. И нам вот
56:47фон вообще не нужен, но он записывается
56:49в letкшены. И когда мы начинаем скейлить
56:52let модели, возникает вот такая
56:55проблема. Давайте дальше пойдём. А
56:58дальше, значит, я сейчас скалибруюсь по
57:02времени немножко.
57:05Пу-пу-пу-пу-пу.
57:09О'кей.
57:11Надо ускориться немножечко.
57:14Слишком долго про вела и рассказывал. У
57:16вас там отдельно ещё лекция будет от
57:19Влада. Ладно, так. А, идём дальше. А, в
57:24сторону уже не LН action модели, просто
57:28полезный мостик между Word моделями и L
57:33and Action моделями. Есть работа
57:35двадцать четвёртого года, называется G.
57:38А вы, наверное, видели в интернете
57:42видосы про генеративные модели мира, их
57:45так называют, где просто
57:49игруля, типа CS:GO или какая-то ещё, или
57:53Minecraft, но только он не внутри. Ну, в
57:57смысле, это не программа, а неронка,
57:59которая выдаёт по твоему действию склавы
58:02в следующий кадр. Видели?
58:06>> Вот. И это выглядит прикольно и
58:07впечатляет. Так вот, на самом деле, вот
58:09в основе этих штук лежат людей из LNT
58:11Action моделей. Я надеюсь, я схему, как
58:14это всё учится, скинул сюда.
58:16Да, прекрасно.
58:18Вот одна из первых таких работ
58:22двадцать четвёртого года, по-моему, даже
58:23раньше вышла, а, называется Gia. Да,
58:26есть вот команда из Google Deep Mind,
58:27которая занимается вот этой всей темой,
58:30Word-моделями геративными и так далее. А
58:32в чём идея? В чём идея?
58:37где в следующем мы хотим выучить, ну,
58:40если у нас есть видеогенеративные
58:42модели, которые по тексту текущей
58:43картинки генерируют следующий набор
58:46кадров, то мы хотим добавить ещё
58:49кондишнинг на действие. И,
58:51соответственно, чтобы от того, какой мы
58:53какое мы действие сделали. Ну, действие,
58:55я имею в виду с клавиатуры, типа там А
58:57XY, ну, вот клавиши, там вверх, вниз,
58:59вправо, влево. В зависимости от того,
59:01как какую мы кнопку нажмём, нам
59:03следующий кадр такой и сгенерился. То
59:05есть, если мы жмём бегать вперёд, то
59:08генерируется то, как вот это животное
59:11бежит вперёд. Если направо, то направо.
59:13Вот как это делать?
59:16Здесь нам на помощь приходят plant
59:18action модели. Я очень кратко расскажу,
59:22что происходит.
59:27Ну, соответственно, если у нас есть
59:28разметка такая типа видео и клавиши,
59:33которые нажимались при этом, то, ну, и
59:36текстовая инструкция, может, да,
59:37текстовую даже не надо инструкцию, то, в
59:39принципе, мы можем, ну, дальше учить
59:42генеративную модель, типа,
59:45и всё, всё прекрасно. Но проблема опять
59:47же в том, что нет такой разметки, мы не
59:49заскелим модель. И то, что мы выучим,
59:51это будет, скорее всего, вот Вил Смит,
59:53который очень плохо кушает спагетти.
59:55Вот. И чтобы такого не было, как раз
59:58идею из LN Action модели используют из
1:00:01лапы с притрейном на всём интернете, на
1:00:04видео из интернета, да? Э, в чём идея?
1:00:09Мм, если у нас нет разметки, давайте
1:00:11сделаем латентную разметку по экшенам.
1:00:14То есть мы берём, а, учим на каких-то
1:00:17кадрах из видеоигры, например,
1:00:20а, учим Latent Action модель, как я
1:00:23рассказывал до этого.
1:00:25получаем набор латентных действий.
1:00:28Дальше берём, делаем следующее. А, учим
1:00:31модель динамики. Это, в принципе, эта
1:00:33штука, которая вот, которую называют
1:00:35диффузионный симулятор или модель мира.
1:00:37Это штука, которая принимает на вход
1:00:40последова там прошлых кадров. Прошлый
1:00:41кадр латентный экшн выдаёт следующие
1:00:45кадры. Всё, как бы понятно, в чём как бы
1:00:49фишка вот этой вот работы,
1:00:53типа, зачем я про это рассказываю, в чём
1:00:56проблематика, так сказать, почему нам
1:00:58вот так легко не получа не получалось до
1:01:00двадцать четвёртого года так легко
1:01:02делать вот такие штуки, типа
1:01:04игры, которые генеративные игры, я не
1:01:06знаю, как это назвать.
1:01:13А вопрос по следующему [откашливается]
1:01:14слайду параллельная генерация, то есть,
1:01:17ну вот здесь просто нарисовано, что они
1:01:18параллельно как бы не как бы
1:01:20взаимодействи начиная зава
1:01:24или они генерация типа one time, то есть
1:01:27один кадр одно действие, один кадр одно
1:01:29действие или действительно они
1:01:30параллельно?
1:01:32>> А так ещё раз
1:01:34>> вот здесь нарисовано два пролета потока.
1:01:37В каждом из них несколько там
1:01:40прямоугольничеков.
1:01:41>> Угу.
1:01:42>> Они генерятся типа один верхний, один
1:01:44нижний, потом следующий один верхний,
1:01:45один нижний или вообще независимо, типа
1:01:47все верхние, все нижние всё равно. И
1:01:49потом динамик динами это всё вылетает.
1:01:52>> Мм, сейчас я вспомню немножко.
1:01:56Ппум-пум-пум-пум.
1:01:58Аа они генерятся параллельно и потом ещё
1:02:02с конкатится, продаётся динамиic model.
1:02:06Ну, вообще вопрос как бы как это
1:02:07организовать он типа
1:02:09>> непонятно как они Ну, то есть типа там
1:02:11же должно быть так, что команда
1:02:13поступает выбор этот вот там на гифке он
1:02:16идёт направо и должен камеру должен
1:02:20заранезать.
1:02:23>> Так, ещё ещё раз. А вопрос в чём у нас?
1:02:28Мм, да, ещё раз можно вопрос?
1:02:31Ну вот здесь вверху и внизу, да,
1:02:32>> они по одному генерации синхронизованы
1:02:35или действительно параллель картинки?
1:02:37>> А не, в смысле, вот вот это не
1:02:38генерация, это тагенизация просто
1:02:40прошлых кадров.
1:02:41>> А
1:02:41>> а генерация вот
1:02:44>> dynнаic model
1:02:45>> всё. Вот это просто организация прошлых
1:02:48кадров, а это, ну вот как раз входная
1:02:50инфа в Dynнаic Model, которая занимается
1:02:52генерацией последних кадров. Ага.
1:02:55Так вот. И да, что они показали, что вот
1:02:59они там, ну, там сейчас уже Minecraft
1:03:01делают генеративный и проходят
1:03:03ускоренно. А вот и всякие разные штуки
1:03:08такие. Ну вот пример тоже как про лапу
1:03:10рассказал
1:03:12моде вопроса. А почему раньше это не
1:03:15получалось? Потому что там раньше
1:03:17действия были дисклетны, а сейчас об
1:03:19этом. Нене, почему? Ну, у меня был
1:03:21вопрос такой, почему это так просто не
1:03:24сделать, наверное.
1:03:26Потому что, ну, двадца четтый год у нас
1:03:28там какой-нибуд stable diffusion,
1:03:30который картинки генерит или
1:03:32>> видеогенерация сложных задача
1:03:36>> в чём-то, да,
1:03:38>> забавить просто
1:03:41вот ты отвернулся от камеры.
1:03:44>> Ну, тут это это открытая до сих пор
1:03:46проблема, на самом деле, с тем, что
1:03:48происходят всякие мёрф памяти прочее. На
1:03:50самом деле, я кривой немножко вопрос
1:03:52задал. А у меня был вопрос немножко
1:03:55другой. Почему просто не выучить эту
1:03:58модель, взяв какие-то данные? Ответ тоже
1:04:00простой. У нас вот этих вот вот этой
1:04:02разметки нет. Как бы фишка вот Джине,
1:04:05например, в том, что они используют
1:04:07Lantion модель, потому что нам, в
1:04:09принципе, вот для задачи вот этого
1:04:10симулятора без разницы, что за L and
1:04:13action. У нас очень простой набор
1:04:14действий, типа вверх, направо, налево. И
1:04:17четыре действия можно уже выучить из
1:04:19большого количества видеокадров игр.
1:04:22Так, давайте дальше.
1:04:24Да,
1:04:24>> получается основная как бы бенефит, да,
1:04:28для всего с чем он заключается в том,
1:04:30что ты можешь генерировать бесконечно
1:04:33различные симуляции и
1:04:35>> ну типа а ну нет, на самом деле, а
1:04:41>> есть, я, кстати, не буду рассказывать
1:04:43про этот сейчас, но да, есть направление
1:04:45в то, чтобы дальше выучив вот такую вот
1:04:49дифузионный типа симулятор, не знаю, там
1:04:51игру и так далее, дальше запустить туда
1:04:55реальную модель робота, ну, в смысле V
1:04:57модель, которая будет экшена
1:04:59предсказывать, и там, например, учить
1:05:01модель или эвалюацию делать. Такое
1:05:03делают, да? А это ещё немножко сырая как
1:05:06бы область, потому что для для того,
1:05:08чтобы валы делать, ну, то есть если мы
1:05:10имеем штуку, которая по кадру может и по
1:05:13действию генерить последующие кад
1:05:15последовательность кадра в будущее,
1:05:17грубо говоря, то мы можем на вход кадр
1:05:20подать с роботом и действие из VA
1:05:22модели, которая VA предсказывает. И
1:05:25тогда она вот, как я показывал, сгенерит
1:05:28как вот этот вот свот происходит.
1:05:32Но это очень плохо работает, потому что
1:05:34отсюда вот я, мне кажется, не дойду, к
1:05:37сожалению, до всех слайдов, но я очень
1:05:39постараюсь. И я не знаю, мне мне можно
1:05:41вас задерживать там или нет.
1:05:48>> Серьёзно?
1:05:50>> 16. Вот сколько ещё раз?
1:05:53>> Ой, ну всё, я тогда очень быстро
1:05:54ускоряюсь, потому что тут куча всего
1:05:56рассказывать. Давайте пойдём дальше. А
1:05:59дальше я хотел рассказать про вордмоделы
1:06:02и что про них. Ну вот классическая
1:06:04картинка из статьи Шмитхубера 20
1:06:07восемнадцатого года про то, ну такая
1:06:09иллюстрация, что такое World Model и
1:06:11вообще как мы, люди, не знаю, там думаем
1:06:14и живём. [вздыхает][тяжело вздыхает]
1:06:15А вот пример человек, да, едет на
1:06:17велосипеде, какое-то действие совершает.
1:06:19При этом, ну, каждый из нас, когда там
1:06:20идёт или что-то ещё в голове, может
1:06:22представить какую-то картинку очень
1:06:24абстрактную, как здесь нам не важны
1:06:26детали, где происходит такое движение. У
1:06:29нас где-то в голове это, ну, есть эта
1:06:31инфа. Или, например, пример с комиксом.
1:06:33Э комиксы вот люди воспринимают как
1:06:35что-то консистентное. Ну, там по сути
1:06:37набор картинок. И вот эти картинки, ну,
1:06:40вот здесь он там биту держит, а здесь
1:06:41уже мячик летит. Ну, нужно какую-то
1:06:44ситуацию простроить между этим ещё
1:06:46воспринять, что вот типа вот это он как
1:06:48бы непрерывный какой-то полёт. Мы отсюда
1:06:51можем даже вытащить немножко, ну,
1:06:52действия это воспринять. Давайте я
1:06:55расскажу быстро про эту работу и про
1:06:58word вормодулы, а, и потом мы перейдём,
1:07:00наконец-то, к видеоэмоделям. Видео Word
1:07:03action моделям. Значит, в чём, э, что
1:07:07говорит и предлагает Шмитхуhuber? А
1:07:11значит, есть Doom. И, ну, допустим,
1:07:14какая-то игра, просто бродилка. А это
1:07:17значит
1:07:19дальше я покажу, что такое, что он
1:07:21называет Word-модум. Мм,
1:07:24значит, да, сначала, как и с Lant
1:07:28моделями, на самом деле, учится вот пока
1:07:31только декодер, а только на вход мы
1:07:35принимаем
1:07:38один кадр и отображаем его в латент. из
1:07:41этого латента пытаемся его
1:07:43реконструировать и учимкодер декодер на
1:07:47то, чтобы вот этот кадр и вот этот
1:07:48предсказанный, точнее, вот этот
1:07:49предсказанный максимально был похож на
1:07:51этот кадр. Грубо говоря, мы учим
1:07:54латентное пространство
1:07:57какое-то осмысленное, то есть кадры с,
1:08:00не знаю, прыжками будут в одном каком-то
1:08:02месте лежать, мм, по направлению, кадры
1:08:06с бегом в другом и так далее. Кошечки и
1:08:08собачки. Ну вот это всё и вся идея из
1:08:11плонилинга, которая есть. Вот. А значит,
1:08:14что они делают, да? Берут вот вот такой
1:08:15коodдер, декодер учат, а на наборе, ну
1:08:18вот игрулек всяких. Вот здесь, например,
1:08:21нужно машинкой управлять. Тут всё плохо
1:08:24видно, но здесь красная машинка, а
1:08:28которая едет по дороге, и здесь
1:08:29буквально, ну, кнопки типа там направо,
1:08:31налево, вверх, вниз. Нет, просто
1:08:33направо, налево. И вот мы типа едем на
1:08:37на этом обучился энкоodдер декодера вот
1:08:39этот,
1:08:41который я показывал. И нача Ну вопрос
1:08:43следующий: а что вот здесь в Z выучится?
1:08:45Давайте возьмём Z, это вектор. Ну мы
1:08:48размерность задать можем. И просто вот у
1:08:50них есть веб-сайт, можете зайти ээ и
1:08:53покрутить сами. Можно
1:08:56вот это вот, короче, набор тумблеров.
1:08:59Каждый тумблер соответствует там
1:09:00размерности, и его кручение меняет
1:09:03просто чиселки, которые в векторе лежат.
1:09:05Вот. И казалось, что м если там
1:09:07подёргать, посмотреть, то можно увидеть,
1:09:09как мы переходим от разных состояний
1:09:11среды. То есть машинка едет здесь.
1:09:13Какое-то изменение в ладенте нашем
1:09:15соответствует повороту машинки и так
1:09:17далее.
1:09:19Дальше. А меory, ну, значит, да, я тут
1:09:24как-то исходно не сказал.
1:09:27Значит, я рассказываю сейчас про то, что
1:09:30они предлагают вот в своей статье, что
1:09:33они называют Wordмоделью. До этого я
1:09:35назвал, показал Vion модель, дальше
1:09:38Memory. Ну, Memory в их случае это была
1:09:41лстмка, а, которая
1:09:45принимает на вход.
1:09:48Принимает на вход. Ну, тут Z латент. Вот
1:09:53Z - это латент, да? У нас есть картинка,
1:09:55естьдер. Получаем.
1:09:58Дальше передаём
1:10:02в РНКУ. Передаём действие, которое мы
1:10:05захотели сделать. Нажали кнопку тоже в
1:10:07РНКУ и учимся предсказывать
1:10:10а текущий, да, следующий латент, то есть
1:10:15ZT Т1, грубо говоря. И из этого латента
1:10:19мы можем восстановить, ну, грубо говоря,
1:10:20мы учимся по текущему состоянию и
1:10:23действию предсказывать будущее. Модель
1:10:25мира, но это память из неё. Вот модель
1:10:27мира выглядит так полностью вся. А, ну
1:10:31нет, в принципе, извиняюсь, я уже
1:10:34немножко туплю. А я сказал правильно,
1:10:36модель мира они называют Vision модель
1:10:37плюс memory, память. Соответственно, вот
1:10:40у нас есть кадр, есть
1:10:42vision модель, которая просто выдаёт нам
1:10:44латент из картинки.
1:10:46Потом этот латент поступает в память.
1:10:49Также действие поступает в память. И нам
1:10:52РНКА выдаёт следующий. Вот который, ну,
1:10:56следующий стейт. И и из неё мы можем
1:10:58предсказать
1:11:00следующий Z,
1:11:02следующий латент, то есть будущее. Вот,
1:11:05по сути, модель мира. То есть имея а
1:11:08состояние текущее и действие, предскажи
1:11:10нам будущее. Вот. Понятна идея, как бы
1:11:14прекрасная.
1:11:16Причём, что важно, мы как бы
1:11:21Ага, всё быстро. Что важно, мы делаем
1:11:25компрессию, то есть мы не в картинках
1:11:27работаем, а мы сжимаем в латенты и в
1:11:30латентах работаем, предсказываем уже там
1:11:32будущее. Почему? Потому что это проще,
1:11:35дешевле, а, и нужно какую-то предобку
1:11:39этого всего сделать, а не просто в
1:11:41пространстве прямо картинок работать.
1:11:45Так, дальше мы сканём сразу на Дриммер.
1:11:47А это суперпопулярный, наверное, пример
1:11:50модели мира, ну и вообще подхода, как
1:11:53используя модели мира, учиться, учить
1:11:56агентов. А здесь уже приведены, там у
1:11:59них четыре версии: дриммер третий,
1:12:01четвёртый. Вот четвёртый дриммер просто
1:12:03покажу, что они вот, а, во-первых,
1:12:06обучили модель мира, которая
1:12:08апропсимирует там Minecraft. Во-вторых,
1:12:10имея модель мира,
1:12:13мы можем в ней, вот как раз вопрос был,
1:12:14да, мы можем в ней учить модели другие.
1:12:18Вот идея Дриммера: Учимрель внутри
1:12:20модели мира. Я не буду пояснять, к
1:12:23сожалению, я не успею, как это делается
1:12:24прямо конкретно. Просто картинки здесь
1:12:27будут общего такого характера. Вот. Но
1:12:29да, Dreamмер, например, 4 сравнению даже
1:12:32с Vй. Вот здесь тоже есть пример, вот
1:12:34это статистика по тому, как они учили
1:12:38Майнкрафте, упрощённом Майнкрафте,
1:12:40выполнять разные задачи. Вот. И самая
1:12:42сложная задача была собрать алмазы. Вот.
1:12:45И
1:12:47ну потому что как бы мм в чём проблема?
1:12:51Алмазы очень нужно киркой бить. Не вся
1:12:53не любая там кирка подходит и так далее.
1:12:55Это очень такая тяжёлая задача. Вот. И
1:12:59если посмотреть там сравнение, здесь
1:13:01есть там просто трансформер на основе
1:13:04The Heral Clлониing не суть. Есть вот VA
1:13:06на основе там их гема. И есть вот
1:13:08Dreamer. Это тоже работа от тип май или
1:13:11от кого-то, да. Есть дриммер, да. И вот
1:13:14можно увидеть тут 0.7% успеха, но он
1:13:18всё-таки типа собрал алмаз. Вот. И да,
1:13:23типа сравнение с VA, например, который
1:13:26явно учится предсказывать просто
1:13:27действия.
1:13:28Давайте,
1:13:30что ещё раз не достигнут.
1:13:32>> Дача,
1:13:36>> блин, у меня кликер умер. Так как
1:13:40работает дриммер? Быстронько, очень
1:13:41быстренько расскажу.
1:13:44А дриммер работает следующим образом. Мы
1:13:48учимся по кадру получать латент. из
1:13:52этого латента имеет действие, а
1:13:55предсказывать следующий латент и
1:13:57предсказывать награду.
1:13:59У нас как бы сетингля, у нас есть
1:14:01награда за какие-то действия. Вот. М,
1:14:04соответственно, не знаю, там срубил
1:14:05дерево, тебе плюс один или плюс что-то
1:14:07ещё. Вот учим такую штуку. То есть имея
1:14:11картинку, а, получив действие, предскажи
1:14:13следующую. Ну, имея картинку отобразия в
1:14:17латент, который соответствует какому-то
1:14:19состоянию среды, мы считаем, что в
1:14:20латенте вот отсюда вытащится какая-то
1:14:23суперполезная инфа, описывающая наш мир.
1:14:27Вот состояние среды. Предскажи следующий
1:14:30кадр, следующее состояние среды, будущее
1:14:33по действию, которое пойдёт вперёд, и
1:14:35награду, насколько хорошее это действие
1:14:38в концепции того, что у нас есть задача
1:14:41решить какую-то задачу. Типа, господи,
1:14:43задача решить что-то определённое. Да,
1:14:48блин, у меня кликер сломался, походу.
1:14:51Дальше. А как обучается внутри него? Э,
1:14:55ну, то есть, если мы обучим вот то, что
1:14:57я показал раньше, то можно теперь это
1:14:59использовать для того, чтобы учить
1:15:02агентов, решать задачи. Если у нас есть
1:15:04модель мира, то мы можем не идти в
1:15:06реальный мир и не бегать, не собирать
1:15:07там данные. У нас есть модель мира. Мы
1:15:10можем делать следующее. получать кадр из
1:15:13среды реальный. Нам нужен только первый
1:15:15кадр. Дальше идти в латенты и дальше
1:15:18жить в латентах и учиться там. В смысле,
1:15:20у нас есть, а, по сути динамика, переход
1:15:24между состояниями. У нас есть, ну, в
1:15:27зависимости от экшенов. Соответственно,
1:15:29мы берём, не знаю, МЛП, который у нас
1:15:31бегает и управляет агентом, берём нашу
1:15:34модель мира,
1:15:36учим МЛП по вот этому стейту и какой-то
1:15:40там задаче предсказывать действия.
1:15:43А, прекрасно. Потом берём эту модель
1:15:46мира, берём MLP, даём кар даём.
1:15:49Генерируем действие в модель мира,
1:15:51подаём это действие, мы получаем
1:15:53следующий state и генерим reво или
1:15:56функцию, там, что угодно. И учим этот,
1:15:59ну, используем этот ревор для того,
1:16:00чтобы учить модель. Так, дальше.
1:16:04Так, тут VP.
1:16:07[фыркает]
1:16:09Давайте быстро расскажу, а, идею Вижепы.
1:16:13Мм, нет, не не расскажу. Давайте я
1:16:16пропущу. Давайте начнём с
1:16:18видеоэкшн-моделей.
1:16:20А видео экшн-модели, да, мы,
1:16:22соответственно, пришли к этому. Я
1:16:24рассказал про LA, про Latent Action
1:16:27модели, про World Model.
1:16:30Теперь мы, наконец-то, пришли к
1:16:31видеоэкмоделям. Я до этого говорил
1:16:35много про то, что у нас мало данных, что
1:16:37мы хотим видео использовать. Ну вот как
1:16:40раз видеоэкшн-модели. Вот мы V обсудили,
1:16:43да, по текущему обзервейшну языковой
1:16:45инструкции мы предсказываем действия.
1:16:48Это V.
1:16:50В свою очередь, Wordмодулы по текущему
1:16:54observationшену и действию мы
1:16:56предсказываем следующее действие,
1:16:58следующее состояние среды. О'кей. И
1:17:00теперь
1:17:02World или видеоэмодели.
1:17:04Это штука, которая по текущему состоянию
1:17:07среды картинки и языковой инструкции
1:17:09предсказывает и действия, и состояние
1:17:12среды. Вау. [фыркает]
1:17:15Мм. Идём дальше.
1:17:19Соответственно,
1:17:20видеоэкмодели можно строить по-разному.
1:17:23Word action модели. Тут есть немножко
1:17:26запутанность в терминологии. И здесь вот
1:17:29картинка есть. Wam - это word action
1:17:33модели. V - это видеоэмодели,
1:17:37но они пересекаются. Я буду называть это
1:17:40одним и тем же.
1:17:42А
1:17:44да.
1:17:46Итак, давайте сейчас я быстро посмотрю,
1:17:49какие у меня слайды.
1:17:51Угу.
1:17:53Да, давайте теперь зададимся вопросом
1:17:56следующим.
1:18:00Как нам использовать видео для того,
1:18:03чтобы учить фондоментальные модели
1:18:05действий? А первый подход
1:18:10я тут разделил на два типа, два вида вот
1:18:14этих вот моделей. как, грубо говоря,
1:18:16идейно они строятся. Первый подход
1:18:19inverse dynamics называется. А мы
1:18:23сначала предсказываем будущее состояние,
1:18:26а из будущего состояния мы предсказываем
1:18:28action.
1:18:29Эн поэтому и называется inverse
1:18:32dynamics. Что это такое? Что это значит?
1:18:36Есть картинка, есть инструкция.
1:18:39Дальше у нас есть видеомодель
1:18:42или Word-модель, которая нам по картинке
1:18:44инструкции выдаёт следующие последова
1:18:46кадров или латентов, стейтов, среды и
1:18:49так далее. О'кей. Отдельно у нас есть,
1:18:52ну, пока вот вот здесь мы экшены никакие
1:18:54не генерили. Отдельно у нас есть inverse
1:18:57dynamic head модель и так далее, которая
1:19:00по последова будущих кадров и по текущем
1:19:04текущему кадру и предсказанным будущем
1:19:06генерит последова действий. То есть как
1:19:09раз, как у нас было с Lent Action
1:19:11моделью, где один кадр текущий,
1:19:14следующий, будущий, мы пытались
1:19:16восстановить экшн. И здесь аналогично.
1:19:18Вот текущий, будущий и восстанавливаем
1:19:21экшн. Вот. Мм примеры таких моделей.
1:19:26Первое - это Unip. Я просто скажу, что
1:19:28она есть, и пропущу. А Gim тоже пропущу.
1:19:34Давайте перейдём вот к самому такому
1:19:35свежему, современному. Есть, мм, мимик
1:19:39видео, есть швейцарский стартап мимик,
1:19:41который занимается работе самым довольно
1:19:43неплохо. Аа значит вот как раз из их
1:19:47статьи, а я привожу картинку, а где они
1:19:52представили свою свою модель, которая
1:19:54называется mimмиic video и парочку
1:19:56интересных выводов нам показали. Вот как
1:19:58раз она основана на такой идее с Inverse
1:20:02Dynamic, значит, велой, как у нас
1:20:04встроено, да, и то, что они в превьюшки
1:20:06показывают.
1:20:08А
1:20:09image text pairs пара картинкой текст
1:20:13image. Господи, я немножко запутываюсь.
1:20:17А сейчас я попью воды.
1:20:21Пара, картинка, текст. А у нас есть VLM
1:20:24семантик. У нас типа семантика VLM
1:20:27зашита.
1:20:28А дальше берём, как я говорил, большое
1:20:31количество роботданных
1:20:33и учим экшн-модель.
1:20:35Красный крестик expensive postтрениing,
1:20:38типа дорого тренировать. Что они
1:20:40предлагают? Берём видетекст
1:20:43pa.
1:20:45Дальше берём видеомодель, у которой есть
1:20:47не только сеtic, но Visual Dynamic.
1:20:50Дальше нам нужно не так много данных
1:20:52робо, чтобы получить исходную хорошую,
1:20:55о, финальную хорошую модель. И вот здесь
1:20:57график есть с Data efficiency. Дальше я
1:21:00сейчас подробнее покажу, что они
1:21:02сравнивали и смотрели. А вот тут
1:21:05архитектура, как она устроена. Вот есть
1:21:07отдельная языковая модель, получающая
1:21:10текст, обрабатывающая текст. Дальше
1:21:12видеомодель, которая получает картинку
1:21:15латенты с языковой моделью. Ну просто
1:21:17текст тоже и генерит последовательность
1:21:21кадров.
1:21:22Это видеомодель. И отдельно action
1:21:26decкор, который получая state вот эти
1:21:28вот, ну, по сути, латентные
1:21:30представления вот этих кадров, генерит
1:21:32после действий. Ну, то есть как раз вот
1:21:34это action deкоoder, здесь у нас inverse
1:21:36dynamic. Вот как вот на этой картинке,
1:21:38да? Inverse dynamic видеомодель.
1:21:43Прикольно. А
1:21:46в чём прелесть? Как и с лапой. А
1:21:51как и с лапой, точнее так, не как с
1:21:53лапой. Вот эта видеомодель может
1:21:55независимо быть притренена просто на в
1:21:57большом количестве данных. А
1:22:00генерировать просто последовательности
1:22:03видео, всё. А и здесь мы можем выучить
1:22:06по интернету PRР
1:22:08на динамику.
1:22:11Что они показывают в своей статье? Есть
1:22:14графики.
1:22:16А вот такой забавный график.
1:22:19что он говорит нам прийнin видеомодель
1:22:23видеомодель.
1:22:24А,
1:22:26во-первых,
1:22:28если мы
1:22:31будем
1:22:32вот в качестве, ну, вот этот экшн
1:22:34декодер, ему мы подаём, по сути, вот эти
1:22:37вот стейпы из видеомодели.
1:22:39Если мы будем, мм, пытаться, ну, по
1:22:43сути, как видеомодель работает, по
1:22:44текущему кадру инструкции мы генерим
1:22:46будущее. Но будущем мы можем генерить
1:22:49неправильно. Можем сгенерировать, что
1:22:51гриппер немножко не доехал или сдвинулся
1:22:52немножко не туда. Вот. И вот эта ошибка,
1:22:55которая здесь произошла, она будет
1:22:56накапливаться и влиять на то, какое мы
1:22:58действие сгенерим. Вот. И если в action
1:23:01декодер подавать представление из, на
1:23:04самом деле, реальных кадров с с
1:23:06реального мира, то всё будет хорошо.
1:23:08Success Rate будет расти. Он тут 100%.
1:23:11Они показывают это здесь. эксперт видео.
1:23:13Если мы пытаться будем, ну, как вот в
1:23:15дриммере, э, или как в, грубо говоря,
1:23:17вот по текущему кадру предсказывать и
1:23:21разворачивать будущее и эти будущие
1:23:24предсказания использовать для генерации
1:23:26действий, а то это работает,
1:23:31но не так хорошо.
1:23:34Мм. [откашливается]
1:23:40Так, сейчас, секунду. Получается Teacher
1:23:42Forcing какой-то
1:23:44teacher forcing. Teacher forcing
1:23:47используется мм teacher forcing
1:23:50используется для того, чтобы экtion
1:23:52декодер научить.
1:23:55Я забыл даже, что хотел сказать по этой
1:23:57картинке. А так предит видео. Ну да,
1:24:01если мы будем, [фыркает]
1:24:03О'кей, если тут тут картинка следующая.
1:24:05Просто если мы будем использовать свои
1:24:06же видеопредсказания, а не реальные
1:24:08видео с мира, и там очень долго сидеть.
1:24:10Ну то есть мы, в принципе, можем зайти
1:24:13вот подать исходную картинку и там в
1:24:17диффузионном нашем симуляторе вот этом
1:24:18вот, мы можем так это назвать
1:24:20видеомодели, разворачивать очень долго
1:24:22вот эти кадры. А если там долго сидеть,
1:24:26то мы в какой-то момент накопим ошибку и
1:24:29никак
1:24:30не будем с, короче, уйдём куда-то не
1:24:32туда, и всё будет плохо. Это вот этот
1:24:35график prтrained. Если мы всё-таки
1:24:37пофайтюним, немножко соберём данные с
1:24:39тагет домена, то мы можем, в принципе,
1:24:41сидеть в в своих воображениях вот в
1:24:44видео вот этом симуляторе и высказывать
1:24:46действия. Но это не так хорошо работает
1:24:49ещё, как в связи с экспертными видео. А
1:24:53вот здесь примеры уже данных, на которых
1:24:55они учились и предсказания, да, вот
1:24:57здесь пакинг package sorting, да, вот
1:25:01это реальные кадры, а вот это уже то,
1:25:03что предсказала их видеомодель. Видно,
1:25:05что тут есть, конечно, морфы всякие и
1:25:07прочее, да, но довольно-таки реалистично
1:25:10предсказывается statein. Дальше, а
1:25:15важный график мимик видео сравнивает с
1:25:17P05. Пи, ну, мы назовём её State of the
1:25:20велой модели на текущий момент. Ну, на
1:25:22двадцать пятый год, допустим, видно, что
1:25:25здесь, что за график success от
1:25:27количества данных, которых мы, которые
1:25:30мы собрали. И вот исходная картинка у
1:25:32них была
1:25:34вот эта. Тут нам нужно мало рабочих
1:25:37данных на downstream fтюнинге в
1:25:39сравнению с LA, потому что вот здесь уже
1:25:41есть Visual Dynamic Prier.
1:25:45И вот здесь они тоже это показывают.
1:25:46Если мы будем про, ну, вот у нас есть
1:25:48тренинг data 100% - это весь datтасет. Я
1:25:50не скажу, какой точно, надо почитать.
1:25:53Забыл. А если 100% данных, то м ну
1:25:56плюс-минус одинаково они, допустим. А
1:25:59вот а если мы возьмём 2% данных, очень
1:26:01мало данных, то мимик видео будет
1:26:04довольно большой перформанс адекватный
1:26:06ещё показывать, а вот 05 уже очень
1:26:08сильно будет просаживаться.
1:26:11Дальше,
1:26:14дальше, да, стоит сказать про мимик
1:26:15видео. Ну, мы её запускали, тестили и
1:26:18сравнивали то же самое с пи. У них тут
1:26:20нету почему так экспериментов с
1:26:22генизацией, но, мм, мы заметили, что
1:26:25очень хорошо они генезуются на разные
1:26:27сетапы, то есть мы можем вертеть камеру,
1:26:29и модель всё ещё будет предсказывать
1:26:32хорошо действия. SVA при поворотах
1:26:35камеры у нас всё обычно ломается.
1:26:38Так, дальше я уже быстренько завершаясь
1:26:42расскажу про второй вид. Второй способ
1:26:44учить Word video action модели делать не
1:26:49отдельно модуль видеомодель inverse
1:26:51dynamic, а делать сразу предикт экшена и
1:26:54предикт видео. Joint prediction. Вот. А
1:27:00хороший представитель такого этого
1:27:02класса это Dream Zero от Nvidia. Скоро
1:27:05завершаем. Dream Zero модель недавняя от
1:27:08Nvidia.
1:27:10Просто скажу, что вот здесь она, кстати,
1:27:12учится. Ну вот. В принципе, там обычно
1:27:14вся диффузия. Ну нет, короче, вот здесь
1:27:17вот Teacher Forфон, например, в обучении
1:27:19кто-то спрашивал. Но давайте даже не
1:27:22будем стать смотреть. Я просто скажу,
1:27:23что вот есть диффузионная модель,
1:27:27которая на вход принимала набор прошлых
1:27:29кадров, а зашумлённый будущий кадр,
1:27:33зашумлённые будущие действия. И и мы
1:27:35учимся расшумлять будущие кадры и
1:27:38будущие действия.
1:27:41Дальше, что они здесь показывают? Вот
1:27:43эти ребята уже показывают генизацию, и
1:27:46они сравниваются, например, с P05, опять
1:27:49же, той велой моделью, и с GR тоже от
1:27:53Nvidia велодель. И тут уже бары, видно
1:27:56сильно различаются. Это sin Task, это
1:27:58Unsein Task.
1:28:00Вот так. Дальше. Вот здесь я гифки
1:28:03вставил разных задач, которые она
1:28:05выполняет. Но они довольно простые,
1:28:08просто посмотреть.
1:28:10Это тоже я скипну. Они ещё показали, что
1:28:13если мы можем натренить модель на одном
1:28:15типе манипуляторов
1:28:18или даже на human video посредством
1:28:20того, что мы будем трекать сочинение
1:28:22кисти, и сделать трансфер на какой-то
1:28:25другого робота, совершенно другой домен.
1:28:27Он, как видно по successсс-рейту,
1:28:31этот трансфер плохо работает. Типа 50% -
1:28:33это не то, что мы хотели бы видеть, но
1:28:36тем не менее мы движемся в эту сторону.
1:28:38Вот здесь есть обляции, я их пропущу. А
1:28:42про скорость? Ну вот это вот я привёл
1:28:45лидерборд.
1:28:48Я не, блин, я не закинул немножко
1:28:50неправильную ссылку. Эта штука
1:28:52называется
1:28:55бенчмарк называется Робо арена. Вот ему
1:28:58можно доверять, потому что в чём идея
1:29:00робо арены? Ребята сели и ну это кто кто
1:29:04знает lm арена.
1:29:06Вот такая же идея, только для роботов.
1:29:09Вот это более достоверная штука. Плюс
1:29:12это тестится определённой лабораторией
1:29:15определённым количеством людей на
1:29:17заданных задачах. И можно посмотреть
1:29:19лидерборд, кто сейчас на первом месте по
1:29:22задачам. Там задачки можете глянуть. Ну
1:29:24вот на первом месте Dream Zero, дальше
1:29:26идёт P05. Всё ещё сильный бейзлайн.
1:29:30Вот
1:29:32у них, к сожалению, не так новый там
1:29:33эвалов, но это как бы достоверный
1:29:36довольно бенч. Космос поли я пропускаю.
1:29:40И я давайте к Open Questions перейду к
1:29:45завершающим слайдам. В общем, а открытые
1:29:49вопросы. Ну я вкратце надеюсь, я как-то
1:29:52м дал какой-то взгляд, видение и
1:29:55введение какое-то в эту область. К
1:29:58сожалению, времени не хватило. Вот я бы,
1:30:02конечно, побольше бы просказал, но что
1:30:04есть. Вот на самом деле прогресс, ну вот
1:30:08в этой области он всё ещё идёт. Это
1:30:09очень горячая тема сейчас. Непонятно,
1:30:12как Word Video action модели строить.
1:30:15Мм, и вот куча есть открытых вопросов.
1:30:19Например, вот есть, ну, смешная
1:30:21картинка, типа, куда идти, VLA или вам.
1:30:25Ответ
1:30:27вам. VLA.
1:30:29>> [смех]
1:30:30>> Вот. А, ну то есть, скорее всего, в
1:30:32будущем будет какой-то гибрид, и все
1:30:34идут к этому. М, вот, например, от то
1:30:38того же Physical Intelligence P07, это
1:30:40уже следующее поколение моделей, где они
1:30:43используют VLA и World Model, Video
1:30:46Model плюс high level policy. В общем,
1:30:48они комбинируют всё вместе, получают и
1:30:51динамику, и reliable предсказания
1:30:53экшенов. Э, о'кей. Какие проблемы есть?
1:30:57Ну, например, тренинг cost учить
1:30:59видеомодели довольно дорого в сравнении
1:31:01с V моделями и VM
1:31:04просто потому что у тебя там есть
1:31:05special ну по времени зависимости. М,
1:31:08вот и тут сравнение тоже, сколько нам
1:31:12нужно потратить, ну, там, Zфлопсов,
1:31:15допустим, для того, чтобы
1:31:17видеопретрейнинг сделать и получить
1:31:22получить велоймодель какую-нибудь очень
1:31:24примитивную. Вот.
1:31:26Это ещё открытая проблема. И
1:31:28видеомодельки довольно дорого учить.
1:31:30Видеоэкшн модели тоже. А вопрос дальше
1:31:33про скейлинг данных.
1:31:36А тут такой график,
1:31:39значит, по оси X. Насколько сложно нам
1:31:41скелиться, насколько нам сложно собирать
1:31:45большой объём данных по оси Y? Насколько
1:31:50нам сложно, собрав эти данные, выучить
1:31:53хорошо робота. И здесь разные способы,
1:31:57разные данные. Вот. И как я уже
1:31:59рассказывал,
1:32:00Human Ego eгоцcенрик данные, то есть
1:32:03камера на голове и всё. Это очень
1:32:05простой способ для сбора данных. Это
1:32:08легко скелится. Ну, берёшь просто 1.000
1:32:10камер и 1.000 индусов. Вот. М Ну, сейчас
1:32:13я очень быстро уже заканчиваю.
1:32:16Вот. и учи, ну, и собираешь видео, но
1:32:20при этом трансфер с этих видео довольно
1:32:23не тривиально сделать, а противоположно
1:32:27этому. А робот телеоперация. А
1:32:31телеоперация - это следующая штука.
1:32:34Вот есть человек, есть робот, он
1:32:36надевает руку и
1:32:39чтобы собрать данные для датасета, он
1:32:42берёт, допустим,
1:32:44короче, он вот вот рука робота, вот рука
1:32:46человека, они вот так могут двигаться.
1:32:48Рука робота повторяет то, что делает
1:32:49человек,
1:32:51>> а тем более вот вы знаете, что такое
1:32:53леоп. Так вот, Телеоп, ну, очень долго
1:32:56собирать, это плохо скелится, но при
1:32:57этом на телеопе
1:32:59хорошо учатся роботы, потому что
1:33:01буквально мы с самого робота пишем все
1:33:03данные.
1:33:06А так,
1:33:08ну да, и будут будущие вопросы типа как
1:33:11слин работают законы скейлинга. Вот это
1:33:15пример там из доклада, где показали, что
1:33:18можно вывести, да, закон скейлинга для
1:33:21эгоцентрик даты, вот этой вот с головы.
1:33:25открытый вопрос, связанный с тем, что
1:33:27видеомодели, на самом деле, как бы
1:33:29хорошо там они, казалось бы, не
1:33:31предсказывают физику. Мм, ещё есть куча
1:33:35проблем. Вот есть статья, в которой
1:33:36просто очень простой эксперимент
1:33:38провели. Аа на учили модель на одном
1:33:41типе кружочков. Была задача следующая.
1:33:43Вот мы видим сначала, как двигается
1:33:46кубик синий. Это раскадровка просто.
1:33:49Потом он заходит за невидимую штучку и
1:33:52возвращается обратно. Ну, грубо говоря,
1:33:53сталкивается со стенкой, э, и летит
1:33:56обратно. И были кубики разных цветов,
1:33:59разных форм: красный, синий, круглый,
1:34:01квадратный. Вот. И мы учим там на
1:34:06красных кубиках,
1:34:08инференсимся на красных квадратиках и
1:34:12так далее. Оказалось, что очень плохо
1:34:14видеомодели, на самом деле, могут
1:34:16реализоваться в out of distribution. То
1:34:18есть, например, если она никогда не
1:34:20видела красного квадрата, а видела
1:34:23только красными кубики, ой,
1:34:27красными кружочки, то может происходить
1:34:30следующее. Сейчас вот здесь она кружок
1:34:34сделала
1:34:35кубиком. Здесь она кубик сделала
1:34:38кружком. Вот это реальный кадр, грубо
1:34:40говоря, который мы, ну, мы исходно
1:34:43подали картинку первую и просили
1:34:46развернуть дальше видеомоделью. Из-за
1:34:47того, что видеомодель не видела там, а,
1:34:50кружков синих, она первый кадр немножко,
1:34:53парочку кадров немножко сделала летящий
1:34:56кружочек, а потом сделала из него
1:34:58квадрат. Вот это очень такой
1:35:00превентивный набор задач, но на нём
1:35:02авторы показали, что там очень плохо на
1:35:05OD генизуется. В distribution всё
1:35:08хорошо. И как я показывал вот эти
1:35:10видосики с котиками, [смех]
1:35:13сейчас я уже очень быстро заканчиваю.
1:35:15>> Мне нравится два ра два раза.
1:35:18>> Ну всё, вот
1:35:23ручки по следующий.
1:35:24>> Всё, всё. Да.
1:35:29Короче, да, э, ну вот открытые проблемы,
1:35:31я не успел немножко рассказать. А можете
1:35:34в призе посмотреть, кстати. Ну да, вот
1:35:37если будут какие-то вопросы, вот есть
1:35:39там моя телега где-то ещё
1:35:42Twitter вся вот инфа на на сайте есть. М
1:35:47да. Всем спасибо за внимание.
1:35:50[аплодисменты]