Стек блоков: как контекст течёт через слои
Один блок — это лишь шаблон. Сила трансформера в том, что таких блоков ставят десятки друг на друга. Разберём, что происходит по мере подъёма по стопке.
Стек (стопка) блоков — последовательность одинаковых по устройству, но с разными весами блоков трансформера; выход одного становится входом следующего.
Одинаковая форма, разные веса
Все блоки устроены идентично (attention + FFN + residual + norm), но у каждого свои обученные параметры. Выход нижнего блока подаётся на вход следующего, и так десятки раз. GPT-3, например, — это 96 таких блоков один над другим. Глубина даёт модели возможность строить всё более абстрактные представления.
Что происходит по мере подъёма
Грубая, но полезная картина: чем выше слой, тем абстрактнее то, что «понимает» представление токена.
| Уровень слоёв | Что улавливается (приблизительно) |
| Нижние | поверхностное: части слова, морфология, ближайшие соседи |
| Средние | синтаксис: кто подлежащее, какие слова связаны грамматически |
| Верхние | смысл и задача: о чём текст, что нужно предсказать дальше |
Это упрощение — на деле всё переплетено, и строгого «разделения труда» по слоям нет. Но направление верное: представление токена обогащается от слоя к слою, вбирая всё более далёкий и абстрактный контекст.
Как «течёт» информация
Важно понимать поток данных. На каждом слое:
- внимание позволяет каждому токену подтянуть информацию от других токенов;
- FFN переваривает подтянутое внутри токена;
- обновлённые представления идут в следующий слой, где история повторяется — но теперь токены уже «знают» больше.
Так за один проход через стопку информация успевает несколько раз обойти всю последовательность. Токен в начале текста и токен в конце могут провзаимодействовать многократно, на разных уровнях абстракции.
Остаточный поток как «магистраль»
Благодаря residual-связям существует сквозная «магистраль» (residual stream), идущая снизу доверху: каждый блок не переписывает её, а лишь добавляет свою поправку. Можно представить это как общий черновик, в который каждый слой дописывает что-то своё, ничего не стирая. Это удобная ментальная модель того, как трансформер постепенно собирает ответ.
На выходе стопки
После последнего блока представление самого последнего токена используют, чтобы предсказать следующий токен: его прогоняют через финальный слой, дающий логиты по всему словарю, а затем softmax — вероятности. Круг замкнулся: вход → стопка блоков → распределение следующего токена.
Итог
- Трансформер — это десятки одинаковых по форме блоков с разными весами, поставленных стопкой.
- Нижние слои ловят поверхностные признаки, верхние — смысл и задачу.
- На каждом слое внимание подтягивает контекст, а FFN его перерабатывает; так повторяется многократно.
- Residual-связи образуют сквозную «магистраль», в которую каждый блок добавляет поправку.