ИИ движений · 5-4 · Срочная миссия

От слов к движению — речь и жесты на одной карте

В 5-3 движение стало точкой из 16 чисел. Теперь точкой станут и слова. Мы обучаем текстовую и двигательную воронки вместе, чтобы предложение «손을 흔든다» (машет рукой) и движение взмаха рукой оказались в одном и том же месте одной и той же карты. Посмотрите, как спутанные вначале линии в ходе обучения находят свои пары, а в конце введите предложение и заставьте человечка-палочку двигаться. Даже одно слово «춤춰» (Танцуй!) здесь впервые становится движением.

40 ячеекМешок слов: сколько чисел получается из предложения
8 ячеекРазмер общей карты для слов и движений
1.90 → 0.01Потери подбора пар, 400 шагов обучения (Код 1)
100%140 тестовых движений → угадывание предложения (Код 1)
5 / 7Сколько тестовых предложений, не встречавшихся при обучении, нашли своё движение (Код 1)
2кода, которые сразу запускаются в Colab
1Миссия

Четвёртое задание — «Пусть двигается по словесной команде»

Для генератора E из 5-3 «место, где собрались броски» нам приходилось выбирать самим. Теперь человек выбирает словами. Для этого слова тоже должны стать точками на карте.

[SYSTEM] 06:20 · Отчёт о завершении 5-3 получен. Следующее задание: выбор движения по предложению. Вложение: седьмая сцена «танец» и по 4 предложения к каждой сцене.
Доктор
ДокторЯ подписал к каждому движению поясняющие предложения. «Бросает банку далеко», «Радостно машет рукой»… Свяжем предложения и движения в пары: пары — поближе на карте, чужие — подальше!
Ассистент
АссистентНо предложения — это же буквы. Буквы ведь тоже надо превратить в числа, чтобы засунуть в воронку?
Исследователь-дрозофила
Исследователь-дрозофилаНачнём с самого простого. Если в предложении есть фрагмент слова из словаря — 1, нет — 0. Это мешок слов. Грубовато, но как раз удобно смотреть, где он ошибается.
Робот лабораторииС добавлением сцены танца видов движений стало семь. Предложений по четыре на каждый вид, одно из них спрятано для теста.
Человечек-палочка печатает на светящейся клавиатуре, фрагменты букв из речевого облачка вытекают и превращаются в шеренгу из пяти человечков-палочек, танцующих всё веселее, а Ассистент, Доктор и роботы радуются
Предложение рассыпается на фрагменты и становится движением. В разделах 2–5 мы шаг за шагом проложим этот путь.
2Слова — это числа

Слова — тоже числа: мешок слов на 40 ячеек

Введите предложение или нажмите на пример. Из 40 фрагментов слов в словаре единицей становятся только те, что есть в предложении. Эти 40 чисел — вход текстовой воронки.

Среди речевых облачков и светящихся квадратных фрагментов человечек-палочка подбрасывает фрагменты, выстраивает их в ряд и поднимает в руке — и маленький человечек-палочка начинает танцевать: текстовый промпт
Отвечает за текстовый промпт и разбивает предложения на фрагменты

Объяснение для начинающих

Мешок слов видит в предложении только то, «какие слова в нём есть». Порядок слов, частицы и контекст отбрасываются. Поэтому «버린» (выбросил) в «길에 캔을 던져 버린다» (швыряет банку прямо на улицу) и «버린» в «쓰레기통에 쓰레기를 버린다» (выбрасывает мусор в урну) включают одну и ту же ячейку — хотя одно — выброс мусора, а другое — норма. Эта грубость проявится в виде настоящих ошибок в разделе 6. Способы перевести в числа ещё и порядок, и контекст предложения разбираются в 3-5 и 3-8.

3Подбор пар

Подбор пар — спутанные линии находят свои пары

Слева — предложения, справа — движения (порядок нарочно перемешан). Толщина линии — вероятность того, что предложение выберет это движение. Нажмите «Запустить обучение» или двигайте ползунок, чтобы продвинуть обучение.

Шаг обучения0
Предложения слева

Результаты Кода 1 — по шагам обучения

Шаг обученияПотери подбора пар7 тестовых предложений → свой вид среди 5 ближайших тестовых движений140 тестовых движений → вид ближайшего предложения совпал
0—2.9%10.0%
101.76328.6%55.0%
251.31765.7%72.1%
500.39571.4%96.4%
1000.09071.4%100.0%
4000.01071.4%100.0%

Обучение на экране выше — это тот же расчёт, заново выполненный в браузере (случайные числа другие), поэтому значения по шагам немного отличаются. Из 7 тестовых предложений своё движение нашли 5. Оставшиеся 2 разберём в разделе 6.

Что исправляет контрастивное обучение

  1. Для каждого вида выбираем одну сцену и одно предложение. Получается 7 пар.
  2. 7 предложений сворачиваем текстовой воронкой (40 → 8), а 7 сцен — двигательной воронкой (16 чисел из 5-3 → 8).
  3. Перемножаем их (скалярное произведение) и получаем таблицу оценок 7 × 7. Диагональ — настоящие пары.
  4. По каждой строке и каждому столбцу софтмаксом получаем вероятности и чуть-чуть правим веса обеих воронок, чтобы вероятности на диагонали приблизились к 1. Повторяем это 400 раз.

По тому же принципу работают CLIP [R1], который так совмещает слова и изображения, и MotionCLIP [R2], который совмещает слова и движения. Настоящие модели используют в качестве текстовой воронки трансформер, а пар у них — сотни миллионов.

4Общая карта

Слова и движения на одной карте

Точки 8-ячеечной карты нормированы к длине 1 (чтобы учитывалось только направление) и спроецированы на два направления наибольшего разброса. Кружки — сцены движений, ромбы — предложения. Передвиньте шаг обучения от 0 до 400 и посмотрите, подходят ли предложения к группам своих движений.

Шаг обучения400

После обучения кружки (движения) и ромбы (предложения) одного цвета собираются вместе. Слова и движения стали жить «в одном районе одной карты». Теперь, отметив предложение на карте, можно достать ближайшее к нему движение или получить новое движение из этого района.

5Слова → движение

Введите предложение — и человечек-палочка задвигается

Введите предложение и нажмите Enter. «Найти» достаёт с карты ближайшую сцену как есть, а «Создать» получает новое движение из места, где собрались 5 ближайших сцен. Если соединить два предложения через «~다가» (пока…) или «~고 나서» (а после этого…), движения склеиваются одно за другим.

Способ

Результаты Кода 2 — действительно ли созданное движение того самого вида

Способ21 обучающее предложение (×5 раз)7 тестовых предложений (×5 раз)
Найти100.0%71.4%
Создать100.0%71.4%

Вид созданного движения определялся по тому, к центру какого вида оно ближе всего в латентном пространстве из 5-3. «춤춰» (Танцуй!) → созданное движение отнесено к танцу, ошибка длины костей 5.4%. Склейка: «걸어가다가 손을 흔든다» (идёт и машет рукой) → первая половина «пройти мимо» · вторая половина «помахать рукой»; «손을 흔들고 나서 춤춰» (помаши рукой, а потом танцуй!) → «помахать рукой» · «танцевать»; «캔을 줍고 쓰레기통에 넣는다» (поднимает банку и кладёт в урну) → «поднять» · «положить в урну».

Как улучшить «Создать»

«Создать» в этой части приближает место, где собрались пять ближайших на карте сцен, средним и разбросом и разворачивает результат линейным декодером из 5-3. Настоящие модели генерации движений по тексту используют либо диффузионные модели, которые получают предложение как условие и постепенно очищают движение от шума (MDM [R4]), либо подход, при котором движение превращают в токены и дописывают следующий токен (T2M-GPT [R5]). В качестве обучающих данных широко используется HumanML3D [R3], где к каждому движению люди подписали предложения.

6Ограничения

Где ошибается мешок слов — и финальная миссия

2 из 7 тестовых предложений нашли не те движения. В обоих случаях причина ясна.

Тестовое предложениеПравильный ответНайденные движения (5 ближайших)Почему ошибка
«길에 캔을 던져 버린다» (швыряет банку прямо на улицу)Бросить далекоположить в урну × 5«던져» (бросай) — фрагмент, которого не было в обучающих предложениях, а «버린» (выбросил) модель выучила из предложения про урну («쓰레기통에 쓰레기를 버린다», выбрасывает мусор в урну). Не зная контекста, она утянулась к «버린다 = положить в урну»
«손을 펴서 떨어뜨리고 걸어간다» (разжимает руку, роняет и уходит)Уронить под ногипройти мимо × 5«걸어» (идя) и «간다» (уходит) сильно потянули в сторону «пройти мимо». Мешок слов не знает, какое слово обозначает главное действие (уронить)
«걷다가 손 흔들기» (идти, потом помахать рукой) (раздел 5)пройти мимо → помахать рукойпервая половина — не то«걷» (идти) есть в словаре, но ни разу не встречается в обучающих предложениях (там везде «걸어»). Ячейка, которой модель не училась, не указывает ни на какое место на карте

«Найденные движения» в таблице выше — результаты Кода 1. В разделе 5, где обучение заново идёт в браузере, «길에 캔을 던져 버린다» (швыряет банку прямо на улицу) иногда уходит в сторону «поднять». Куда именно её утянет, зависит от случайных чисел при обучении, но причина, по которой не находится бросок, одна и та же: мешок слов не знает контекста.

Что мы узнали в этой части
  • Слова тоже становятся точками: если превратить предложение в числа и свернуть воронкой, оно окажется на одной карте с движениями.
  • Учимся на парах: контрастивное обучение согласует две воронки одним лишь правилом «пары — ближе, чужие — дальше». Потери 1.90 → 0.01.
  • Достаём и генерируем с карты: найти и создать, а ещё склеить в порядке слов предложения.
Оставшиеся вопросы
  • Текстовая воронка слишком мелкая: чтобы работать с порядком слов, контекстом и незнакомыми словами, нужен текстовый кодировщик вроде трансформера (3-8).
  • Человечек-палочка остаётся человечком-палочкой: танец мы создали, но пока это только скелет. Финальная миссия — одеть этот скелет в облик человека (Ассистента) и превратить в видео.
Среди летающих нот человечек-палочка стоит лицом, боком и спиной, а в нижнем ряду — четыре танцевальные позы: размахивает руками, кружится, указывает и поднимает колено
Анонс следующей миссии · карточки танцевальных движений человечка-палочки
Доктор
ДокторОдно слово «춤춰» (Танцуй!) — и человечек-палочка затанцевал. Осталось одеть этот скелет в человека. Ассистент, готов?
Ассистент
Ассистент…Так и знал, танцевать буду я. То есть когда танцует человечек-палочка, получается видео, где я повторяю за ним точь-в-точь?
Исследователь-дрозофила
Исследователь-дрозофилаВ 5-5 откроем настоящее видео. А на экране там ещё висит число — «процент совпадения движений».

Код Colab — запустите эту страницу сами

Оба кода используют только библиотеки, установленные в Colab по умолчанию. Нажмите «Скачать ноутбук (.ipynb)» и откройте его в Colab через Файл → Загрузить блокнот или скопируйте код и вставьте в ячейку нового ноутбука.

Код 1 · Мешок слов и контрастивное обучение — слова и движения на одной картеСвязан с разделами 2–4 · numpy · CPU около 5 с

Добавляет сцену танца, превращает предложения в мешок слов, а движения — в 16 чисел, после чего согласует две воронки контрастивным обучением. Выводит потери по шагам обучения и попадания тестовых предложений. Чтобы подставить свои данные, впишите в CAPTIONS поясняющие предложения к своим движениям, а в VOCAB — нужные фрагменты слов.

Результат запуска (запуск 2026-10-05, numpy 2.4 · CPU). Сид зафиксирован, поэтому результат всегда одинаков.
Код 2 · Вводишь слова — получаешь движение: найти, создать, склеитьСвязан с разделом 5 · numpy · CPU около 5 с

Обученными воронками находит или заново создаёт движение по предложению, а предложения, соединённые через «~다가» (пока…), склеивает одно за другим. Вид созданного движения определяется в латентном пространстве. Таблица из раздела 5 строится прямо из этого вывода.

Результат запуска (запуск 2026-10-05, numpy 2.4 · CPU). Сид зафиксирован, поэтому результат всегда одинаков.

Промпты для применения ИИ — этот код как отправная точка

Эти промпты нужно вставлять в ИИ-помощники вроде ChatGPT, Qwen или Claude. При нажатии «Копировать» после промпта добавляется выбранный код. Замените текст в 〔 〕 на свою ситуацию.

Какой код приложить

Ответ ИИ — лишь отправная точка. Предложенные статьи, числа и функции библиотек обязательно проверяйте по первоисточникам и официальной документации. Если вы используете видео с реальными людьми, сначала убедитесь в наличии согласия на съёмку и соблюдении правил обработки персональных данных.

Глоссарий

Это тот же словарь, что и у терминов с жёлтым пунктирным подчёркиванием в тексте. Нажмите на название раздела, чтобы перейти туда, где термин встретился впервые.

Сборник аналогий — и где аналогия не работает

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

ПонятиеБытовая аналогияАналогия с восприятием человекаГде аналогия не работает
Мешок словРазрезать предложение на карточки со словами, сложить в мешок и потрястиНетУ карточек, вынутых из мешка, нет порядка. «Собака кусает человека» и «Человек кусает собаку» становятся одинаковыми
Контрастивное обучениеКарточная игра на подбор пар: верные пары соединяем, неверные разъединяемОтчасти как ребёнок, который слышит слова и одновременно видит действие, и так усваивает их значениеРебёнку хватает нескольких раз, а модели нужно увидеть одну и ту же пару сотни раз, и слова без пары она так и не узнает
Общая картаПоместить слова двух языков в один словарьНетВ словаре соответствия задаёт человек, а на этой карте они возникают только из данных о парах. Слова, у которых мало пар, оказываются не на своём месте
Найти против создатьВзять книгу в библиотеке против прочитать похожие книги и написать новый текстНетЗа новым текстом стоит замысел автора, а «создать» в этой части лишь берёт точку рядом со средним пяти ближайших сцен
СклеитьУказания хореографа: «сначала сделай ~, а потом ~»Отчасти двигаться в порядке слов предложенияХореограф делает переход естественным, а здесь просто смешиваются 10 кадров

Об авторе и источники

E-1 Об авторе · E-2 Научные источники · E-3 Источники рисунков и чисел

E-1 Об авторе

Ан Сансон (генеральный директор M-Robo Co., Ltd.)

Работал в Корейской корпорации электробезопасности (KESCO) и газете Maeil Business Newspaper, затем основал внешнее венчурное предприятие Maeil Business — M-Robo Co., Ltd., которое возглавляет в настоящее время. M-Robo — медиавенчур, начинавшийся как внутренний стартап СМИ: компания предоставляла газете Kukmin Ilbo сервис робота-журналиста (StockBot) и выполнила ряд проектов для Корейского агентства интернета и безопасности (KISA), Корейского фонда прессы, Корейского агентства по радиосвязи и др. Сейчас компания развивает собственный ИИ-сервис новостей Money-Robo. Будучи генеральным директором, победил на Азиатском хакатоне открытых данных и дважды получил награду министра внутренних дел и безопасности за заслуги в области стартапов на основе данных; является изобретателем и правообладателем 5 патентов в области искусственного интеллекта и блокчейна. Автор книги «Преступления с ИИ и самозащита»; разрабатывал электронные учебные курсы по финтеху, статистике и искусственному интеллекту для Центра онлайн-образования Корейского технологического и образовательного университета (KOREATECH). Имеет степень доктора экономических наук (Университет Тонгук, микроэкономика и математическая экономика). Преподаёт дисциплины, связанные с данными и искусственным интеллектом, в ряде университетов, в том числе в Университете Кукмин и Университете Хосо. Подробный профиль

Лекции

  • Ан Сансон (2025). Конспект лекций «Наука о данных для бизнеса». Кафедра конвергенции ИИ, Корейский открытый киберуниверситет.
  • Ан Сансон (2025). [K-Digital] Обработка естественного языка с помощью ИИ. STEP (Smart Training Education Platform), Центр онлайн-образования Корейского технологического и образовательного университета.
  • Ан Сансон (2024). [K-Digital] Основы анализа данных в финтехе. STEP (Smart Training Education Platform), Центр онлайн-образования Корейского технологического и образовательного университета.

Курсы на STEP: link.step.or.kr/1qyVoJ · link.step.or.kr/M9na9N · link.step.or.kr/brqEyc
Если из-за обновления сайта ссылки не открываются, перейдите на www.step.or.kr.

Статьи и доклады

  • Ан Сансон (2025). Модель прогнозирования расходов домохозяйств на данных Корейского панельного исследования пенсионного обеспечения (KReIS): подход на основе моделей ИИ. «Будущее общество» (Future Society), 16(2). Полный текст
  • Ан Сансон (2025). Модель прогнозирования расходов домохозяйств на данных Корейского панельного исследования пенсионного обеспечения: подход на основе ИИ. Доклад на научной конференции по панельному исследованию пенсионного обеспечения (13.05.2025), Исследовательский институт Национальной пенсионной службы Кореи. Материалы доклада
  • Ан Сансон (2025). Алгоритм обнаружения подозрительных сделок с наркотиками по текстам соцсетей: анализ паттернов и контекста. «Будущее общество» (Future Society), 16(1). Полный текст
  • Ан Сансон (2024). Статистические методы противодействия состязательным данным для защиты моделей обнаружения аномалий в финансовой сфере: эмпирический анализ и результаты моделирования. «Будущее общество» (Future Society), 15(3). Полный текст
  • Ан Сансон (2024). Решение на основе ИИ для обнаружения публикаций в соцсетях по признакам виртуальных персонажей. Стендовый доклад на 2024 Summer Newmedia Party (19.06.2024), Сеульский университет медиа (аспирантура).
  • Ан Сансон (2024). Модели машинного обучения на панельных данных о производственном травматизме. Стендовый доклад на 10-й научной конференции по панельному исследованию страхования от производственных травм (17.05.2024), Исследовательский институт социального обеспечения трудящихся, Корейская служба социального обеспечения трудящихся (COMWEL).
  • Ан Сансон (2024). Анализ и прогнозирование временных рядов виртуальных активов: сравнение моделей временных рядов и моделей ИИ, предложения по улучшению. «Будущее общество» (Future Society), 15(1). Полный текст

E-2 Научные источники

  1. [R1] Radford, A., Kim, J. W., Hallacy, C., Ramesh, A., Goh, G., Agarwal, S., Sastry, G., Askell, A., Mishkin, P., Clark, J., Krueger, G., & Sutskever, I. (2021). Learning transferable visual models from natural language supervision. ICML 2021. arXiv:2103.00020 — раздел 3 (контрастивное обучение, CLIP)
  2. [R2] Tevet, G., Gordon, B., Hertz, A., Bermano, A. H., & Cohen-Or, D. (2022). MotionCLIP: Exposing human motion generation to CLIP space. ECCV 2022. arXiv:2203.08063 — разделы 3 · 4
  3. [R3] Guo, C., Zou, S., Zuo, X., Wang, S., Ji, W., Li, X., & Cheng, L. (2022). Generating diverse and natural 3D human motions from text. CVPR 2022. — раздел 5 (датасет HumanML3D)
  4. [R4] Tevet, G., Raab, S., Gordon, B., Shafir, Y., Cohen-Or, D., & Bermano, A. H. (2023). Human motion diffusion model. ICLR 2023. arXiv:2209.14916 — раздел 5
  5. [R5] Zhang, J., Zhang, Y., Cun, X., Huang, S., Zhang, Y., Zhao, H., Lu, H., & Shen, X. (2023). T2M-GPT: Generating human motion from textual descriptions with discrete representations. CVPR 2023. arXiv:2301.06052 — раздел 5

E-3 Источники рисунков и чисел

  • Иллюстрации сцен (сопоставление текста и движения, от промпта к движению, текстовый промпт, карточки танцевальных движений) — пиксель-арт, нарисованный автором
  • Все сцены и предложения — синтетические данные. 28 предложений и 40 фрагментов слов выбраны автором
  • Таблицы под разделами 3 · 5 — результаты реального запуска Кодов 1 · 2. Обучение и генерация на экране — тот же расчёт, заново выполненный в браузере, поэтому числа немного отличаются

Советы преподавателям

Методическая памятка для преподавателей, наставников по обучению на рабочем месте (OJT) и тьюторов. Время указано ориентировочно — подстройте его под своё занятие.

Для когоСтуденты и работающие специалисты, прошедшие 5-3. Менеджеры и практики, которые хотят понять, что внутри генеративного ИИ, который «выдаёт результат по промпту»
Что нужно знать заранееЛатентное пространство из 5-3, скалярное произведение и софтмакс (3-2 · 3-8)
Цели обучения① Объяснить простейший способ превратить предложение в числа (мешок слов) и его ограничения ② Рассказать, как контрастивное обучение согласует две воронки по правилу «пары — ближе, чужие — дальше» ③ На примерах показать разницу между «найти», «создать» и «склеить» на общей карте
Ориентировочное времяЧтение 30–40 мин · демонстрация анимаций 25 мин · практика в Colab 25 мин (Код 1 — 12 мин, Код 2 — 13 мин)

Три сценария занятия

Лекция, 50 мин

Упор на понятия

Введение 5 мин (раздел 1) → раздел 2, мешок слов, 8 мин → раздел 3, запуск обучения, 15 мин → раздел 4, карта, 7 мин → раздел 5, ввод предложений, 10 мин → раздел 6, ошибочные предложения, 5 мин.

Обучение на рабочем месте (OJT), 90 мин

С упором на составление промптов

Разделы 2 · 3 — 20 мин → по таблице из раздела 6 обсуждение «слова, которые модель знает и не знает» — 15 мин → в разделе 5 команды ищут предложения, которые работают и не работают, — 20 мин → добавить новые предложения в Код 1 и переобучить — 25 мин → подведение итогов — 10 мин.

Индивидуальные занятия 1:1

Темп по уровню

Начинающим — только разделы 2 · 3 · 5. Учащиеся среднего уровня вручную, на таблице 2 × 2, разбираются, почему одна строка G = (P − I + Q − I) / 14 из Кода 1 «поднимает диагональ и опускает всё остальное».

Ключевые моменты по разделам

РазделВопрос, на котором стоит остановитьсяСовет по управлению
2 Слова — это числа«Почему у „캔을 던진다“ (бросает банку) и „던진다 캔을“ (те же слова в обратном порядке) одинаковые числа?»Нажимать два примера по очереди
3 Подбор пар«За сколько шагов линии нашли свои пары? А для тестовых предложений?»После запуска обучения переключиться на «Тестовые предложения»
4 Общая карта«Где были ромбы до обучения?»Перетащить ползунок шагов с 400 на 0
5 Слова → движение«Чем отличаются результаты „Найти“ и „Создать“?»Несколько раз нажать «춤춰» (Танцуй!) в режиме «Создать»
6 Ограничения«Что нужно изменить, чтобы „던져 버린다“ (швыряет) находилось правильно?»Проверить самим, введя это предложение в разделе 5

Топ-5 частых заблуждений

ЗаблуждениеПравильное объяснениеЧто показать
ИИ понимает смысл предложения и по нему выбирает движениеОн лишь превращает предложение в числа и ищет ближайшее место на карте. В этой части числа — это всего лишь наличие или отсутствие фрагментов словРаздел 2, раздел 6
Для контрастивного обучения нужны метки с правильными ответамиДостаточно пар вида «это предложение и это движение — пара». Названия видов не используютсяРазбор в разделе 3
Если потери при обучении близки к 0, модель хорошо угадывает и незнакомые предложенияПотери считаются по обучающим предложениям. Из тестовых предложений угадано только 5 из 7Таблица раздела 3
Чем длиннее и подробнее предложение, тем всегда лучше результатЕсли примешиваются слова не из словаря или слова других движений, предложение, наоборот, утягивает не тудаРаздел 6: «손을 펴서 떨어뜨리고 걸어간다» (разжимает руку, роняет и уходит)
«Создать» создаёт совершенно новое движение, которого не было в обучающих данныхОно берёт точку рядом с местом, где собрались ближайшие на карте сцены. За пределы выученных видов движений почти не выходитРаздел 5: «날아올라» (Взлетай!)

Проверочные вопросы (нажмите, чтобы раскрыть разбор)

Q1. Если в словаре четыре ячейки [캔, 던지, 흔들, 손] (банка, бросать, махать, рука), каков мешок слов для «손을 흔들며 캔을 던진다» (бросает банку, махая рукой)?

[1, 1, 1, 1]. Все четыре фрагмента присутствуют. Это предложение окажется где-то между броском и взмахом рукой.

Q2. Если таблица оценок пар равна [[3, 1], [0, 2]], каковы вероятности софтмакса для первой строки? Как обучение попытается изменить эту строку?

e³ / (e³ + e¹) ≈ 0.881, e¹ / (e³ + e¹) ≈ 0.119. Обе воронки правятся так, чтобы диагональ (0.881) поднималась к 1, а ячейка не-пары (0.119) опускалась к 0.

Q3. Почему «тестовое движение → предложение» угадывается на 100%, а «тестовое предложение → движение» — только 5 из 7?

У движений 420 сцен, так что форма каждого вида хорошо определена, а у предложений всего по 3 обучающих на вид, и мешок слов не знает контекста. Когда приходит незнакомое сочетание слов, текстовая воронка «плывёт».

Q4. Почему в «걷다가 손 흔들기» (идти, потом помахать рукой) первая половина получилась не той?

«걷» (идти) есть в словаре, но ни разу не встречается в обучающих предложениях. Вес этой ячейки остался исходным маленьким случайным значением, поэтому на карте он не указывает ни на какое осмысленное место. Если заменить на «걸어가다가» (идёт и…), получится «пройти мимо».

Q5. Что опаснее с точки зрения персональных данных — «найти» или «создать»? Почему?

«Найти». Оно достаёт обучающую сцену как есть, поэтому, если это данные о движениях реального человека, его движения воспроизводятся без изменений (как у генератора C из 5-2). «Создать» генерирует заново из места, где собрались несколько сцен.

Задания в Colab

Базовое

В CAPTIONS Кода 1 замените одно из обучающих предложений для броска на предложение, похожее на «길에 캔을 던져 버린다» (швыряет банку прямо на улицу), и переобучите. Сообщите, как изменились попадания тестовых предложений.

Повышенной сложности

Вместо мешка слов напишите функцию bag, которая использует «перекрывающиеся фрагменты по два символа» (напр. «던져» → «던», «져», «던져»), и по попаданиям тестовых предложений сравните, лучше ли она справляется с незнакомыми словами («걷다가», пока идёт).

Регулировка сложности и что изучить дальше

НовичкамДаже один запуск обучения в разделе 3 даёт понимание того, что модель «учится, подбирая пары»
УглублённоПоложить рисунок 1 из статей CLIP и MotionCLIP рядом с разделом 3 этой части и попросить учащихся рассказать о сходствах и различиях
Следующая часть5-5 От «Танцуй!» к видео с танцем — одеваем танец человечка-палочки в облик Ассистента

Миссия 5-4 выполнена!

Вы дочитали часть «5-4 От слов к движению» до конца. Команда лаборатории подводит итоги — каждый по одной фразе.

Доктор
ДокторМы поместили слова и движения на одну карту.
  • Предложение — мешок слов на 40 ячеек
  • Пары — ближе, чужие — дальше: контрастивное обучение
  • Находим, генерируем и склеиваем на карте
Ассистент
АссистентОбидно, что «던져 버린다» (швыряет) уехало в урну. Нужна воронка, которая понимает контекст!
Исследователь-дрозофила
Исследователь-дрозофилаОстался последний шаг. Превратим танец человечка-палочки в видео, где танцует Ассистент!