Как устроена архитектура Transformer
Расскажи базовую архитектуру Transformer: encoder/decoder, self-attention, Q/K/V, positional encoding и отличия GPT/BERT.
Короткий ответ
Transformer строится из attention-блоков: токены превращаются в embeddings, добавляется позиционная информация, self-attention считает Q/K/V и взвешивает values, дальше идут FFN, residual connections и normalization. GPT - decoder-only, BERT - encoder-only.
Полный разбор
Базовая схема: текст токенизируется, токены переводятся в embeddings, к ним добавляется positional information. Один transformer block обычно содержит multi-head self-attention, feed-forward network, residual connections и layer normalization.
В attention для каждого токена считаются query, key и value. Attention score - scaled dot product query с key, затем softmax по позициям, затем взвешенная сумма value. Multi-head attention делает несколько таких проекций параллельно, чтобы ловить разные типы связей.
Encoder видит всю последовательность и строит контекстные представления. Decoder для autoregressive генерации использует causal mask, чтобы токен не смотрел в будущее. В encoder-decoder архитектуре decoder также делает cross-attention к выходам encoder.
GPT - decoder-only модель для next-token prediction. BERT - encoder-only модель, исторически обучаемая через masked language modeling. Positional encoding может быть sinusoidal, learned или rotary embeddings; без него self-attention не знает порядок токенов.
Теория
В RecSys sequential модели вроде SASRec используют близкую идею: история взаимодействий пользователя превращается в последовательность item tokens, и attention учится выбирать релевантный контекст для next item.
Типичные ошибки
- Не объяснить, зачем нужны positional embeddings.
- Перепутать encoder-only и decoder-only.
- Сказать, что attention просто "ищет похожие слова", не объяснив Q/K/V.
Как отвечать на собеседовании
- Дай структуру блока: embeddings + positions -> attention -> FFN -> residual/norm.
- Отдельно назови causal mask для GPT.