Multi Head Attention (многозадачное или многоголовое внимание) — это главный двигатель современных нейронных сетей.
Именно этот блок лежит в основе архитектуры Transformer, которая сегодня доминирует во всем мире искусственного интеллекта.
До появления механизма внимания в 2017 году стандартом для работы с последовательностями (текстом, звуком) были рекуррентные нейронные сети (RNN, LSTM, GRU). Их главная проблема заключалась в узком горлышке памяти. Чтобы понять смысл длинного предложения, модели приходилось последовательно протаскивать информацию от первого слова к последнему. К концу абзаца контекст первых слов часто терялся, а обучение было крайне медленным из-за невозможности распараллелить вычисления.
Простой механизм Self-Attention решил проблему потери контекста: он позволил каждому слову в предложении напрямую смотреть на любое другое слово, независимо от их расстояния. Но у него осталась другая слабость — модель смотрела на текст слишком однобоко.
Представьте, что вы читаете сложное предложение: Несмотря на дождь, который лил всю ночь, старый почтальон Иван быстро доставил хрупкую посылку своему единственному клиенту.
Чтобы полностью понять это предложение, человеческому мозгу нужно одновременно удерживать в голове несколько связей:
Один стандартный вектор внимания вынужден усреднять эти связи. Он пытается найти один фокус для каждого слова. Multi-Head Attention решает эту проблему, запуская сразу несколько независимых механизмов внимания параллельно. Слово доставил теперь смотрит на остальную часть предложения не одной парой глаз, а восемью или шестнадцатью (количество голов/хэдов задается архитектором модели).
Внутри каждой головы происходит операция скалярного произведения внимания (Scaled Dot-Product Attention). Для этого входной вектор каждого слова () проходит через три разные линейные матрицы проекции (умножается на обучаемые веса ), превращаясь в три вектора:
Процесс выглядит следующим образом:
В Multi-Head Attention эта процедура повторяется раз (где — количество голов). Перед подачей данных в головы одна большая входная матрица разделяется на маленьких частей по глубине (размерности), чтобы каждая голова работала с уменьшенным, но полным фрагментом информации. Каждая голова имеет свои собственные, независимые матрицы весов . Таким образом, разные головы учатся искать принципиально разные типы зависимостей.
После того как каждая голова выполнила свою работу, их результаты (векторы) склеиваются обратно в один длинный вектор и пропускаются через финальную линейную проекцию.
Эмпирические исследования показывают, что при обучении разные головы действительно берут на себя разные роли:
Без многоголового подхода модели пришлось бы выбирать: либо правильно связать подлежащее со сказуемым, либо учесть дальнее прилагательное. Multi-Head Attention позволяет делать и то, и другое одновременно.
Важно отметить, что сам по себе блок Multi-Head Attention составляет лишь половину вычислительного блока в трансформере. Сразу после него следуют два критически важных элемента:
Хотя механизм был разработан для обработки естественного языка (NLP), он успешно мигрировал в другие области ИИ:
Главная цена такой мощности — квадратичная вычислительная сложность относительно длины последовательности (. Если в предложении слов, то каждый слой внимания должен построить матрицу взаимодействий размером . При обработке целых книг или видео длиной в тысячи кадров это требует колоссальных объемов видеопамяти.
Для решения этой проблемы исследователи разрабатывают эффективные варианты внимания: Sparse Attention (работает только с локальными окнами), Linear Attention (приближенное вычисление) и Flash Attention (оптимизированная работа с памятью GPU).
Multi-Head Attention — это архитектурный ответ на многообразие мира. Вместо того чтобы заставлять одну универсальную математическую функцию искать единственный правильный ответ, разработчики дали ей возможность собрать консилиум. Разные головы анализируют данные под разными углами, ищут синтаксис, семантику и логику параллельно, а затем объединяют свои выводы. Этот подход превратил грубые статистические машины начала 2010-х годов в гибкие системы, способные демонстрировать зачаточное понимание структуры человеческого знания.
Свяжитесь с нашими экспертами для подбора оптимальной конфигурации оборудования и расчета стоимости аренды под ваши задачи ИИ.