Модуль 8: Революция Attention и Трансформеры (движки LLM)
Задача модуля: Объяснить архитектуру, на которой построены все современные ChatGPT и подобные.
Механизм Внимания (Attention)
Интуиция: при ответе на вопрос вы «обращаете внимание» на ключевые слова в тексте. Математика: Query (запрос — «что ищем»), Key (ключ — «по чему ищем»), Value (значение — «что берём»). Скалярное произведение Query и Key даёт оценку близости; после softmax получаем веса внимания. Взвешенная сумма Value по этим весам — выход внимания. Так каждый токен может «смотреть» на любой другой — основа трансформера.
Архитектура Трансформер (Transformer)
Отказ от RNN: «Attention is all you need». Энкодер — понимает вход (каждый токен обогащается контекстом через self-attention). Декодер — генерирует выход по одному токену, смотрит на выход энкодера и на уже сгенерированные токены. Огромные матрицы весов — миллиарды параметров в больших моделях. Слои: self-attention, нормализация, feed-forward, снова нормализация; так блоки повторяются.
Позиционное кодирование (Positional Encoding)
Attention сам по себе не различает порядок токенов — только «кто на кого смотрит». Чтобы модель понимала структуру предложения, к эмбеддингам токенов добавляют позиционное кодирование — вектор, зависящий от позиции. Классический вариант — синусы и косинусы разной частоты (фиксированные). В современных моделях часто обучаемое позиционное кодирование или относительные позиции.
Многослойное внимание (Multi-Head Attention)
Не один механизм внимания, а несколько параллельных «голов». Каждая голова имеет свои матрицы Q, K, V и учится искать свои типы связей — грамматические, смысловые, анафорические и т.д. Выходы голов конкатенируются и проходят через линейный слой. Так модель одновременно учитывает разные аспекты контекста.