Глубокое обучение от A до Z · 3-8

Внимание и трансформеры — не вспоминать, а искать заново

Последовательные модели из части 3-7 сжимали всё пройденное в одно скрытое состояние и шли по одной позиции за раз. Внимание меняет сам подход. Всякий раз, когда нужно, модель заново просматривает все предыдущие позиции и уделяет больше внимания тем, что связаны с текущей. Мы вручную проследим числа запроса (Q), ключа (K) и значения (V), а затем увидим, почему трансформер, собранный из этих деталей, стал каркасом современных языковых моделей, и во что это обходится.

2015Статья, добавившая внимание в машинный перевод [R1]
2017Представлен трансформер [R2]
√dkДелитель оценок: чтобы softmax не перекашивался в одну сторону
8 × 64Число голов × ширина головы в исходной статье (= 512) [R2]
n²Число оценок внимания при длине n
2 примеракода, которые сразу запускаются в Colab
1Оставшиеся проблемы

Две проблемы последовательных моделей — узкое место и очередь

RNN-энкодер–декодер упаковывает всё предложение в один вектор фиксированной длины и обрабатывает позиции по одной, по порядку. Когда предложение становится длиннее, возникают две проблемы.

Длина предложения

Пояснение для начинающих

Узкое место: модель перевода типа энкодер–декодер сжимает исходный текст в один вектор фиксированной длины и уже из него строит перевод. Бахданау (Bahdanau) и соавторы сочли этот вектор фиксированной длины узким местом, ограничивающим качество, и предложили метод, при котором модель для каждого слова перевода сама ищет связанные части исходного текста [R1]. Это и есть внимание. Очередь: RNN может вычислить ht+1, только зная ht, поэтому позиции нельзя вычислять одновременно. Трансформер полностью отказался от рекуррентности и вычисляет все позиции сразу одним лишь вниманием, что сильно ускорило обучение [R2].

2Внимание

Идея внимания — при создании каждого слова снова смотреть на исходный текст

Переводим корейское предложение «초파리가 사과를 먹었다» как «The fly ate the apple». При создании каждого английского слова внимание распределяется между корейскими словами. Чем толще линия, тем больше внимание.

Создаваемое слово

Пояснение для начинающих

В корейском порядок слов «초파리가 (муха) · 사과를 (яблоко) · 먹었다 (съела)», в английском — «The fly · ate · the apple». Глагол стоит на разных местах. Поэтому при создании «ate» нужно сильно смотреть на «먹었다» в самом конце. Значения внимания на этом рисунке заданы для объяснения. Реальная модель перевода сама находит такие соответствия в ходе обучения; Бахданау (Bahdanau) и соавторы сообщили, что выученное внимание хорошо согласуется с человеческой интуицией [R1]. Все значения внимания лежат в пределах 0~1, а их сумма равна 1 (softmax).

3Q·K·V

Числовой пример Q·K·V — поиск книги в библиотеке

Внимание(Q, K, V) = softmax(Q·Kᵀ / √dk) · VVaswani и др., 2017

Вопрос (Q)
ОбозначениеВ библиотекеВ нейросети
Q — запросЗаписка с тем, что я ищуВектор, выражающий, «что нужно» текущей позиции. Вход × WQ
K — ключКаталожная карточка каждой книгиВектор, выражающий для каждой позиции «какая я информация». Вход × WK
V — значениеНастоящее содержание книгиИнформация, которую каждая позиция реально передаёт. Вход × WV
Q·KНасколько записка совпадает с карточкойСкалярное произведение двух векторов. Чем ближе направления, тем оно больше
÷ √dk—Не даёт скалярному произведению расти с длиной векторов, а softmax — сосредоточиться на одной позиции [R2]
softmaxРаспределить время чтения между книгамиПревращает оценки во внимание с суммой 1
× VСмешать содержание пропорционально времени чтенияСкладывает значения с весами, равными вниманию. Это и есть выход
4Самовнимание

Самовнимание — предложение ищет в самом себе

В разделе 3 вопрос и книги были отдельно. В самовнимании каждое слово предложения одновременно и запрос, и ключ, и значение. Каждое слово распределяет внимание между всеми остальными словами.

Слово-запрос

Откуда взялись числа в этом примере

Векторы слов заданы вручную из четырёх ячеек: [животное, еда, действие, указатель]. Преобразование запроса WQ задано так, чтобы «указательное слово ищет еду, а действие ищет животное». Преобразования ключей и значений оставлены без изменений. В настоящем трансформере и векторы слов, и WQ·WK·WV определяются обучением, а ширина составляет сотни ячеек. Формулы — точно такие же, как в этом примере. Код 1 выдаёт те же числа.

5Многоголовое внимание

Многоголовое внимание — несколько связей одновременно

В одном предложении связи наслаиваются друг на друга. «Кто съел?» и «что съели?» — разные вопросы. Каждая голова использует свои WQ·WK·WV, видит свою связь, а результаты склеиваются.

Слово-запрос
Ширина модели (расчёт параметров)
6Позиционная информация

Позиционная информация — внимание не знает порядка

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

Позиционный код
Порядок слов

Синусно-косинусный позиционный код

В исходной статье для позиции pos в чётные ячейки записывается sin(pos / 100002i/d), а в нечётные — cos(…) [R2]. Первые ячейки колеблются быстро, последние — медленно, поэтому у каждой позиции получается свой узор. Это как часы: если смотреть одновременно на секундную, минутную и часовую стрелки, время определяется однозначно. Широко используется и способ, при котором позиционный код определяется обучением. Маленький трансформер из кода 2 использует обучаемый позиционный эмбеддинг.

7Блок

Сборка блока — внимание + полносвязный блок и короткий путь

Один блок трансформера состоит из многоголового внимания и сети прямого распространения (MLP из 3-2). К каждой из них добавляют короткий путь, прибавляющий вход без изменений (остаточная связь), и нормализацию, а сами блоки складывают в несколько слоёв.

Размер блока
8Энкодер·декодер

Энкодер·декодер и тип GPT — что разрешено видеть

Один и тот же блок применяется по-разному, если поменять, «какая позиция какую может видеть» (маска).

Архитектура
9Основа и ограничения

Почему он стал основой сегодняшних моделей и каковы его ограничения

Причины широкого распространения трансформера сводятся к трём. Есть у него и своя цена. Самая большая — вычисление внимания, которое растёт как квадрат длины.

Длина n
Почему он стал основой
  • Вычисления разом: рекуррентности нет, все позиции вычисляются одновременно, поэтому за то же время можно обучиться на гораздо большем объёме данных [R2].
  • Прямая связь дальних позиций: первая и последняя позиции связаны одним шагом внимания. Сигнал не размывается, проходя через все позиции, как в RNN. В коде 2 это проверяется на задаче из 3-7 (ниже, в разделе 9).
  • Тот же блок, только больше: масштаб легко наращивать, складывая блоки в несколько слоёв и увеличивая ширину. BERT, использующий только энкодер [R4], и GPT-3, использующий только декодер (175 млрд параметров) [R5], построены из таких блоков.
Ограничения и цена
  • Квадрат длины: при длине n оценок внимания n². Если предложение вдвое длиннее, вычисления внимания и память вырастают примерно в 4 раза. Поэтому есть предел длины, которую можно обработать за раз, и исследования по его снижению продолжаются.
  • Данные и вычисления: раз предположения о порядке и соседстве (локальность CNN, последовательность RNN) слабы, всё это приходится выучивать из данных. На малых данных RNN и CNN могут оказаться лучше.
  • Длины за пределами обучения: на входах, гораздо длиннее тех, что были при обучении, позиционные коды непривычны, и качество может падать.
  • Внимание ≠ объяснение: картина внимания лишь показывает, «куда смотрела модель при вычислении», но не гарантирует, почему её решение верно.

Эксперимент кода 2 — задача, на которой LSTM провалилась в 3-7, решается трансформером

Та же задача, что в коде 2 из 3-7 (все позиции ±1, ответ — первая позиция), и те же настройки обучения (Adam 0.005, 30 эпох, 2,000 обучающих и 1,000 тестовых примеров, 2 сида). Трансформер использует один блок самовнимания (ширина 16, 2 головы) и обучаемый позиционный эмбеддинг. «Внимание к первой позиции» — среднее внимания, которое все позиции уделяют первой.

Рамки этой серии

Эта часть доходит до архитектуры трансформера. Генеративные модели, которые с её помощью создают тексты и изображения (предобучение больших языковых моделей, обучение следованию инструкциям, диффузионные модели и т. п.), выходят за рамки этой серии. Следующие части (3-4 Речь, 3-6 Временные ряды и цены акций, 3-5 Текст) сосредоточены на том, как превратить данные в числа.

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

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

Код 1 · Ручной расчёт внимания на numpyСвязан с разделами 3~6 · numpy, matplotlib · CPU меньше 1 секунды

На одних и тех же числах вычисляет пример с библиотекой, самовнимание для пяти слов, две головы, перемешивание порядка и позиционный код. Чтобы подставить свои данные, измените BOOK_K·BOOK_V·QUERIES или векторы слов X.

Результат запуска (запуск 2026-10-03, numpy 2.4 · matplotlib 3.10 · CPU). В расчёте нет случайности, поэтому результат всегда одинаков.
Код 2 · Маленький трансформер против LSTM на Keras — «запомнить первый сигнал» из 3-7Связан с разделом 9 · tensorflow (Keras), numpy, matplotlib · CPU около 8 минут

Задачу, на которой LSTM провалилась при большой длине в 3-7, решаем заново трансформером с одним блоком самовнимания. Заодно измеряем, сколько внимания обученный трансформер уделяет первой позиции, где находится ответ. Таблица ниже, в разделе 9, строится прямо из этого вывода.

Результат выполнения (запуск 2026-10-03, TensorFlow 2.21 · Keras 3.15 · CPU). Числа могут меняться в зависимости от сида, версий и оборудования.

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

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

Код, который добавить

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

Глоссарий

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

Собрание аналогий — и где аналогии ошибаются

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

ПонятиеБытовая аналогияАналогия с дрозофилой и мозгомГде аналогия ошибается
ВниманиеВыделять маркером важные места при подготовке к экзаменуЧастично Избирательное внимание человека (сосредоточиться на одном голосе в шумном месте)Внимание мозга — явление, в котором переплетены ощущения, намерения, усталость и т. д. Внимание модели — всего лишь взвешенное среднее, заданное скалярным произведением и softmax
Q·K·VЗаписка с вопросом, каталожная карточка и содержание книги в библиотекеНетВ библиотеке приносят одну книгу, а внимание смешивает все книги в пропорции
Softmax-вниманиеРаспределить время чтения между книгамиНетВремя, как его ни дели, тратится целиком; но и позиция с вниманием 0.01 обязательно вычисляется (поэтому требуется n²)
Многоголовое вниманиеНесколько редакторов читают один документ с разных точек зренияНет«Точку зрения» головы задаёт не человек. Если анализировать модель после обучения, у многих голов нет чёткой роли
Позиционный кодВремя определяется, если смотреть одновременно на секундную, минутную и часовую стрелкиНетЧасы через сутки возвращаются к началу, а позиционный код привычен модели только в пределах длин, на которых она обучалась
Остаточная связьВсегда держать оригинал рядом с исправленной рукописьюНетГлавное — оригинал «прибавляется как есть». Если правок мало, оригинал почти без изменений переходит в следующий слой
Маска (тип GPT)Закрыть лист с ответами и решать следующую задачу, глядя только на предыдущиеНетПри обучении все позиции вычисляются сразу. Закрывается только «область, которую можно видеть»

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

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

E-1 Об авторе

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

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

Лекции

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

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

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

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

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

  1. [R1] Bahdanau, D., Cho, K., & Bengio, Y. (2015). Neural machine translation by jointly learning to align and translate. ICLR 2015. arXiv:1409.0473 — вводная часть, разделы 1·2
  2. [R2] Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, Ł., & Polosukhin, I. (2017). Attention is all you need. Advances in Neural Information Processing Systems 30. arXiv:1706.03762 — вводная часть, разделы 1·3·5·6·7·8·9 (d_model 512, 8 голов × 64, d_ff 2048, деление на √d_k, синусно-косинусный позиционный код)
  3. [R3] Cho, K., van Merriënboer, B., Gulcehre, C., Bahdanau, D., Bougares, F., Schwenk, H., & Bengio, Y. (2014). Learning phrase representations using RNN encoder–decoder for statistical machine translation. EMNLP 2014, 1724–1734. doi:10.3115/v1/D14-1179 — раздел 1 (RNN-энкодер–декодер)
  4. [R4] Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. NAACL 2019, 4171–4186. doi:10.18653/v1/N19-1423 — разделы 8·9
  5. [R5] Brown, T. B., Mann, B., Ryder, N., … Amodei, D. (2020). Language models are few-shot learners. Advances in Neural Information Processing Systems 33. arXiv:2005.14165 — разделы 8·9 (GPT-3, 175 млрд параметров)
  6. [R6] Hochreiter, S., & Schmidhuber, J. (1997). Long short-term memory. Neural Computation, 9(8), 1735–1780. doi:10.1162/neco.1997.9.8.1735 — сравнительный эксперимент в разделе 9

E-3 Материалы к рисункам

  • Значения внимания при переводе в разделе 2 заданы для объяснения (это не выученные значения)
  • Структура блока в разделе 7 следует рисунку 1 из [R2] (сторона энкодера)

Советы преподавателю

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

АудиторияСтуденты и работающие специалисты, прошедшие 3-7. Практики, которые хотят знать, «из каких деталей собраны» языковые модели
Предварительные знанияСкалярное произведение векторов (перемножить элементы на одинаковых местах и сложить), softmax и MLP из 3-2, энкодер–декодер из 3-7
Цели обучения① Вычислить формулу внимания softmax(QKᵀ/√d_k)V на числах ② Объяснить, зачем нужны самовнимание, многоголовое внимание и позиционный код ③ Объяснить, почему трансформер стал основой, вместе со стоимостью n²
Ориентировочное времяЧтение 45~55 мин · демонстрация анимаций 25 мин · практика в Colab 30 мин (код 1 — 10 мин, код 2 — запуск 8 мин + разбор 12 мин)

Три варианта занятия

Лекция, 50 мин

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

Введение 5 мин (раздел 1, узкое место) → разделы 2·3, библиотека, 15 мин → разделы 4·5, 10 мин → раздел 6, перемешивание порядка, 10 мин → раздел 9, n² и результаты кода 2, 5 мин → проверочные вопросы 5 мин.

OJT на рабочем месте, 90 мин

Упор на применение в работе

Разделы 1·3, 15 мин → раздел 8: связать три архитектуры с рабочими задачами (классификация, реферирование, перевод), 20 мин → раздел 9: расчёт стоимости (для длины наших документов), 15 мин → запуск и разбор кода 2, 25 мин → карточки промптов 15 мин.

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

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

Новичкам — только разделы 1·2·3·9. Слушателям среднего уровня — вручную вычислить итоговый вектор в разделе 3 и сверить с кодом 1, а также самостоятельно вывести 4d² + 4d из раздела 7.

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

РазделВопрос, на котором стоит остановитьсяСовет по управлению
1 Оставшиеся проблемы«Если уместить предложение из 40 слов в вектор из 8 ячеек, сколько ячеек придётся на одно слово?»Переключить с 5 на 40 слов и посмотреть, как меняются числа
2 Внимание«Почему при создании ate модель смотрит на последнее слово?»Остановиться на кнопке «ate»
3 Q·K·V«А нельзя ли брать только книгу с наибольшим вниманием?»Посмотреть, как при «Интересует и то и другое» результат смешивается в [5.5, 5.5]
4 Самовнимание«На что указывает „оно“? Как модель это узнала?»Нажать по очереди «оно» → «сладкое» и увидеть также ограничения правил, заданных вручную
5 Многоголовое внимание«Если увеличить число голов до 8, станет ли параметров в 8 раз больше?»Проверить число параметров при ширине модели 512
6 Позиционная информация«Если при перемешивании порядка результат тот же, в чём проблема?»Нажать по порядку: без позиционного кода → перемешанный порядок → прибавить
7 Блок«Большая часть параметров блока — во внимании или в полносвязном блоке?»Прочитать «долю полносвязного блока» в базовой модели
8 Энкодер·декодер«Почему тип GPT должен закрывать будущие позиции?»Нажать «Только декодер» и указать на ячейки × в маске
9 Основа и ограничения«Если длина документа вырастет вдвое, во сколько раз вырастут вычисления внимания?»Переключить 4,096 → 32,768, сравнить память и перейти к таблице эксперимента ниже

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

ЗаблуждениеВерное объяснениеЧто показать
Внимание выбирает одно самое важное словоОно смешивает все слова в пропорции. В результат попадают и слова с малым вниманиемРаздел 3, «Интересует и то и другое»
Трансформер сам по себе знает порядокБез позиционного кода результат не меняется при перемешивании порядкаРаздел 6
Роль каждой головы задаёт человекРоли возникают в ходе обучения. Две головы на этой странице заданы вручную для объясненияРаздел 5 и пояснение под ним
Трансформер во всём лучше RNNОн силён в дальних связях и параллельных вычислениях, но требует квадратичной по длине стоимости и может проигрывать на малых данныхРаздел 9
Картина внимания — это причина решения моделиОна показывает лишь, куда модель смотрела при вычислении, и не гарантирует, почему решение верноРаздел 4, «сладкое»

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

Q1. При q = [2, 0.4], k = [2, 0], d_k = 2 чему равна оценка q·k / √d_k?

q·k = 2×2 + 0.4×0 = 4. 4 / √2 ≈ 2.828. Это совпадает с оценкой книги A в разделе 3.

Q2. Если оценки равны [1.98, 1.98, 2.772], каким будет softmax-внимание и результат смешивания значений V = [10,0], [0,10], [6,6]?

Внимание ≈ [0.238, 0.238, 0.525]. Результат = 0.238×[10,0] + 0.238×[0,10] + 0.525×[6,6] ≈ [5.53, 5.53]. Код 1 выводит [5.525, 5.525].

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

Он не изменится. Выход каждого слова определяется только «сравнением со всеми остальными словами», а множество сравниваемых слов одно и то же независимо от порядка. В коде 1 разница составила 1e-16 (на уровне погрешности вычислений).

Q4. Сколько параметров в слое многоголового внимания при ширине модели d = 512? А если изменить число голов с 8 на 16?

Четыре матрицы W_Q·W_K·W_V·W_O размером 512 × 512 каждая плюс по 512 смещений: 4 × 262,144 + 4 × 512 = 1,050,624. При изменении числа голов уменьшается лишь ширина головы, а размеры матриц те же, так что число не меняется.

Q5. Во сколько раз вырастет число оценок внимания, если длина документа увеличится с 4,096 до 8,192?

В 4 раза. (2n)² = 4n². Было 4,096² = 16,777,216, станет 8,192² = 67,108,864.

Задания в Colab

Базовое

В коде 1 вычислите, как изменится внимание в примере с библиотекой, если не делить на √d_k. В двух предложениях объясните, как растёт эффект деления, если увеличить векторы в 10 раз.

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

В коде 2 уберите позиционный эмбеддинг трансформера (AddPosition) и обучите заново. Сообщите, как изменились результат и «внимание к первой позиции», минимум на 3 сидах, и объясните причину, связав её с разделом 6.

Настройка сложности и что изучить дальше

НачинающимРазделы 5·7 можно пропустить без потери связности. Достаточно как следует вручную посчитать один пример с библиотекой из раздела 3
УглублённоПредложите изучить и представить способы снижения стоимости n² из раздела 9 (просмотр по отрезкам, низкоранговые приближения и т. п.). Изученные статьи проверять по оригиналу
Что изучить дальшеСансон Ан, конспект лекций «Наука о данных для бизнеса» (наука о данных в целом) · STEP [K-Digital] Обработка естественного языка с помощью ИИ (связано с 3-5·3-8) · STEP [K-Digital] Основы анализа финтех-данных (связано с 3-6)
Материалы для преподавателяКритерии оценки проверочных вопросов и примеры ответов к заданиям — на странице ответов для преподавателей (3-8)

Отличная работа!

Вы дочитали часть «3-8 Внимание и трансформеры» до конца. Сотрудники лаборатории подведут итоги — каждый по одной фразе.

Профессор
ПрофессорМы завершили серию способом «не вспоминать, а искать заново».
  • Внимание всякий раз заново просматривает все предыдущие позиции
  • Q·K·V — это вопрос, каталожная карточка и содержание книги
  • Если длина вырастает вдвое, вычисления внимания растут вчетверо
Ассистентка
АссистенткаТрансформер сразу нашёл первую позицию!
Муха-исследователь
Муха-исследовательПоздравляю с финишем! Выбери снова на главной странице.