Перейти к содержимому

Глоссарий

Термины пособия в алфавитном порядке: сначала английские, затем русские. Ссылка ведёт в главу, где термин разобран подробно.

AdamW — оптимизатор Adam с «отделённым» (decoupled) затуханием весов: веса уменьшаются на ηλθ\eta\lambda\theta отдельно от адаптивного шага. Стандарт для обучения трансформеров. → training.md

ALiBi — способ кодирования позиции штрафом к оценкам attention, линейным по расстоянию. В репозитории не реализован. → positional-encoding.md

Attention (внимание) — операция, в которой каждая позиция собирает информацию с других позиций с весами softmax(QK⊤/dh)\mathrm{softmax}(QK^\top/\sqrt{d_h}). → attention.md

attention_mask — внешняя маска [B, T]: 1 — настоящий токен, 0 — паддинг. → masks.md

Autoregressive (авторегрессивная) модель — модель, которая порождает последовательность по одному элементу, каждый раз опираясь на уже порождённые. → language-modeling.md

Batch (батч) — несколько примеров, обрабатываемых одновременно; ось BB тензоров.

Bias (сдвиг) — вектор b\mathbf{b} в линейном слое xW+b\mathbf{x}W + \mathbf{b}. В LLaMA, Mistral, Mixtral и Gemma его нет; в библиотеке — ключ bias.

BPE (Byte Pair Encoding) — алгоритм токенизации, который начинает с символов и многократно сливает самую частую пару соседних токенов. → tokenization.md

Causal-маска — маска, запрещающая позиции ii смотреть на позиции j>ij > i (в будущее). → masks.md

Checkpoint (чекпоинт) — файл с весами (и, в этой библиотеке, конфигом) обученной модели; model.save / Model.load.

Context window (контекст) — максимальное число токенов, которое модель обрабатывает за раз, Tmax⁡T_{\max} (max_position_embeddings).

Cross-entropy (перекрёстная энтропия) — функция потерь −ln⁡pверный токен-\ln p_{\text{верный токен}}, усреднённая по позициям. → language-modeling.md

Decoder-only трансформер — трансформер только из блоков декодера с causal-маской; архитектура всех моделей пособия. → language-modeling.md

Dropout — регуляризация: при обучении случайно обнуляет элементы с вероятностью pp и масштабирует остальные на 1/(1−p)1/(1-p). → training.md

Embedding (эмбеддинг) — обучаемый вектор, сопоставленный токену; строка матрицы E∈RV×dE \in \mathbb{R}^{V \times d}. → embeddings.md

EOS / BOS / PAD / UNK — специальные токены: конец и начало последовательности, заполнитель, неизвестный токен. → tokenization.md

Expert (эксперт) — одна из EE параллельных FFN-сетей слоя MoE. → mixture-of-experts.md

Feed-forward сеть (FFN, MLP) — двух- или трёхслойное преобразование каждой позиции независимо, вторая половина блока трансформера. → feed-forward.md

Fine-tuning (дообучение) — продолжение обучения предобученной модели на целевой задаче.

GeGLU — gated FFN с GELU в гейте; используется в Gemma. → feed-forward.md

GELU — функция активации x Φ(x)x\,\Phi(x), где Φ\Phi — функция распределения стандартного нормального закона; в GPT используется её tanh-аппроксимация. → feed-forward.md

GQA (Grouped Query Attention) — attention, в котором группа голов Q делит одну пару голов K/V; 1<G<H1 < G < H. → attention.md

Gradient clipping — ограничение нормы градиента перед шагом оптимизатора. → training.md

Greedy decoding (жадная генерация) — выбор на каждом шаге самого вероятного токена. → generation.md

Head (голова) — одна из HH параллельных копий attention в своём подпространстве размера dhd_h. → attention.md

KV-кэш — сохранённые ключи и значения прошлых позиций, чтобы при генерации не пересчитывать их. → attention.md, generation.md

LayerNorm — нормализация вектора: вычитание среднего, деление на стандартное отклонение, обучаемые масштаб и сдвиг. → normalization.md

Learning rate (скорость обучения) — множитель η\eta шага оптимизатора. → training.md

Load-balancing loss — вспомогательный loss, поощряющий равномерную загрузку экспертов MoE. → mixture-of-experts.md

Logits — ненормированные оценки z∈RV\mathbf{z} \in \mathbb{R}^{V} на выходе модели; вероятности получаются softmax. → embeddings.md

LM head (выходная проекция) — линейный слой из Rd\mathbb{R}^{d} в RV\mathbb{R}^{V}, дающий logits. → embeddings.md

MHA (Multi-Head Attention) — attention с HH головами Q и столькими же головами K/V. → attention.md

MoE (Mixture-of-Experts) — слой из нескольких экспертов, из которых роутер выбирает kk на каждый токен. → mixture-of-experts.md

MQA (Multi-Query Attention) — attention с одной парой K/V на все головы Q; G=1G = 1. → attention.md

Nucleus sampling — см. top-p.

Perplexity (перплексия) — eLe^{\mathcal{L}}, где L\mathcal{L} — средняя cross-entropy; «эффективное число вариантов», между которыми выбирает модель. → language-modeling.md

Post-LN / Pre-LN — расположение нормализации: после сложения с residual (GPT-1) или перед подблоком (GPT-2 и далее). → normalization.md

Prefill / decode — две фазы генерации: обработка всего промпта сразу и затем порождение по одному токену. → generation.md

Residual-связь — прибавление входа подблока к его выходу: x+F(x)\mathbf{x} + F(\mathbf{x}). → normalization.md

RMSNorm — нормализация делением на среднеквадратичное значение без вычитания среднего. → normalization.md

RoPE (Rotary Position Embedding) — кодирование позиции поворотом пар координат Q и K на угол, пропорциональный позиции. → positional-encoding.md

rope_theta (база RoPE) — основание, задающее частоты поворота θi=base−2i/dh\theta_i = \text{base}^{-2i/d_h}. → positional-encoding.md

Rolling buffer cache (кольцевой кэш) — KV-кэш фиксированного размера WW для скользящего окна: K и V позиции ii записываются в ячейку i mod Wi \bmod W. В библиотеке вместо него кэш обрезается срезом до последних WW позиций. → mistral.md

Router (роутер) — линейный слой MoE, оценивающий, каким экспертам отдать токен. → mixture-of-experts.md

SiLU / Swish — функция активации x σ(x)x\,\sigma(x). → feed-forward.md

Sliding window attention (скользящее окно) — attention, в котором токен видит только ближайшее прошлое: в библиотеке — себя и WW предыдущих позиций (W+1W + 1 позиций, 0≤i−j≤W0 \le i - j \le W), в HuggingFace — WW позиций вместе с собой. → masks.md, mistral.md

Softmax — функция, превращающая вектор чисел в распределение вероятностей. → notation.md

SwiGLU — gated FFN с SiLU в гейте; используется в LLaMA, Mistral, Mixtral. → feed-forward.md

Teacher forcing — обучение, при котором на вход подаётся настоящий текст, а не предсказания модели. → language-modeling.md

Temperature (температура) — делитель logits перед softmax при генерации; меньше — увереннее, больше — разнообразнее. → generation.md

Token (токен) — единица текста для модели: символ, часть слова или слово; целое число от 0 до V−1V-1. → tokenization.md

Top-k sampling — выбор следующего токена только среди kk самых вероятных. → generation.md

Top-p sampling — выбор среди минимального набора самых вероятных токенов с суммарной вероятностью не меньше pp. → generation.md

Warmup — начальный период обучения, в котором learning rate линейно растёт от нуля. → training.md

Weight decay (затухание весов) — регуляризация, на каждом шаге немного уменьшающая веса. → training.md

Weight tying (связывание весов) — использование одной матрицы для эмбеддингов на входе и для выходной проекции. → embeddings.md

Авторегрессия — см. Autoregressive.

Батч — см. Batch.

Голова attention — см. Head.

Контекст — см. Context window.

Маска — матрица, запрещающая части пар «запрос — ключ» в attention. → masks.md

Паддинг — дополнение коротких последовательностей pad-токенами до общей длины; правый (в конце) и левый (в начале). → masks.md

Позиционное кодирование — способ сообщить модели порядок токенов. → positional-encoding.md

Претокенизация — предварительное разбиение текста на слова и знаки перед BPE. → tokenization.md

Скрытое состояние — вектор ht∈Rd\mathbf{h}_t \in \mathbb{R}^{d}, которым модель представляет позицию tt между слоями.

Словарь — множество всех токенов, размер VV. → tokenization.md

Функция потерь (loss) — число, которое обучение минимизирует; для языковой модели — cross-entropy.