Эта статья начнется сПринцип работы с одной головкой Внимание、Как работает многоголовое внимание?、полностью подключенная сеть Работапринциптри аспекта,выполнить Разбираемся в одной статьеКак работает Трансформер。
Как работает Трансформер
Одноголовое внимание: Одноголовое внимание — это механизм внимания, который привлекает внимание только один раз. В этом процессе внимание обращается на один и тот же запрос (Q), ключ (K) и значение (V) один раз, и получается результат. Этот механизм позволяет модели сосредоточиться на информации в разных местах из разных подпространств представления.
Scaled Dot-Product (операция масштабированного скалярного произведения)
Матрица запроса (Q):Указывает текущийсосредоточиться на точку или информационное требование, используемое для сопоставления с Ключевой матрицей.
Ключевая матрица (К):Содержит идентификационную информацию для каждой позиции во входной последовательности.,Используется для сопоставления с запросом матрицы запросов.
Матрица значений (V):хранится сKeyФактическое значение или информационное содержание, соответствующее матрице,Когда запрос соответствует ключу,Соответствующее значение будет использоваться для расчета выходных данных.
Путем вычисления скалярного произведения между матрицей запроса и матрицей ключей (то есть соответствующие элементы умножаются, а затем суммируются) измеряется степень сходства или совпадения между запросом и каждым ключом.
Поскольку результат операции скалярного произведения может быть очень большим, особенно если входная размерность высока, это может привести к тому, что функция softmax войдет в зону насыщения при вычислении весов внимания. Чтобы избежать этой проблемы, внимание к масштабированному скалярному произведению вводит коэффициент масштабирования, обычно квадратный корень из входного измерения. Разделив результат скалярного произведения на этот коэффициент масштабирования, можно сохранить входные данные функции softmax в разумных пределах.
Введите масштабированный результат скалярного произведения в функцию softmax, чтобы вычислить вес внимания каждого ключа относительно запроса. Функция Softmax преобразует исходный балл в такое распределение вероятностей, что сумма весов внимания всех ключей равна 2.
Принцип работы: внимание с одной головкой вычисляет скалярное произведение вектора запроса каждого токена и ключевых векторов всех токенов, получает веса внимания посредством нормализации softmax, а затем применяет эти веса к векторам значений для взвешенного суммирования, тем самым генерируя Выходное представление каждого токена с самообслуживанием.
Для каждого токена во входной последовательности у нас есть соответствующий вектор запроса (вектор запроса, Q) и вектор ключа (вектор ключа, K).
Мы вычисляем скалярное произведение каждого вектора запроса со всеми ключевыми векторами.
Этот шаг заключается в установлении связи между всеми токенами, указывающей степень «внимания» каждого токена к другим токенам.
Операция скалярного произведения вектора QK
Результат скалярного произведения должен пройти через функцию softmax, чтобы гарантировать, что сумма весов внимания всех токенов равна 1. Функция softmax преобразует результаты скалярного произведения в значения от 0 до 1, которые представляют вес внимания каждого токена относительно всех остальных токенов.
Рассчитать вес внимания
Веса внимания после обработки softmax формируют матрицу внимания.
Каждая строка этой матрицы соответствует токену, а каждый столбец также соответствует токену. Каждый элемент в матрице представляет вес внимания соответствующего токена строки к токену столбца.
Составьте матрицу внимания
Используйте эту матрицу внимания, чтобы взвесить вектор значений (V) во входной последовательности.
В частности, для каждого токена мы умножаем соответствующий ему вектор значений на все веса строки токена в матрице внимания и складываем результаты.
Результатом этого взвешенного суммирования является выходное представление токена после обработки механизмом самообслуживания.
Вектор значения взвешенной суммы
Приведенные выше операции будут применены к каждому токену в входной последовательности, чтобы получить выход, выраженный каждым токеном с помощью механизма самообслуживания.
Эти выходные представления обычно отправляются на следующий уровень модели для дальнейшей обработки.
Применяется к каждому токену
Многоголовое внимание: механизм многоголового внимания может одновременно захватывать информацию входной последовательности в разных подпространствах, параллельно запуская несколько слоев самообслуживания и синтезируя результаты, тем самым улучшая выразительные способности модели.
Multi-Head Attention
Принцип работы: Multi-Head Attention объединяет векторы, полученные каждой головой, и, наконец, умножает линейную матрицу для получения выходных данных Multi-Head Attention.
Сплайсинг и линейное преобразование
Сеть прямой связи: в модели Transformer сеть прямой связи используется для сопоставления вектора входного слова с вектором выходного слова для извлечения более богатой семантической информации. Сети прямой связи обычно включают в себя несколько линейных преобразований и нелинейных функций активации, а также остаточную связь и операцию нормализации слоев.
Часть кодера в Transformer состоит из N идентичных слоев кодера.
Каждый уровень кодера имеет два подуровня, а именно уровень многоголового внимания и сеть прямой связи.
За каждым подслоем расположены операции остаточного соединения (пунктирная линия на рисунке) и нормализации слоя (LayerNorm).,Эти двое вместе называютсяAdd&Normдействовать。
Архитектура кодировщика
Часть декодера в Transformer также состоит из N идентичных слоев декодера.
Каждый уровень декодера имеет три подуровня: уровень маскированного самообслуживания, уровень внимания кодировщика-декодера и сеть прямой связи.
такой же,За каждым подслоем расположены операции остаточного соединения (пунктирная линия на рисунке) и нормализации слоя (LayerNorm).,Эти двое вместе называютсяAdd&Normдействовать。
Структура декодера
Принцип работы: Выход Multi-Head Attention входит в двухслойную полностью подключенную сеть после остатка и нормы.
полностью подключенная сеть
Ссылка: Architect предлагает вам поиграть с ИИ.