← Росток Своя LLM с нуля Словарик Код EN

Своя LLM с нуля

Словарик

Все термины учебника коротко и по-человечески. У каждого — английское название и глава, где он появляется.

AdamW AdamW
Оптимизатор с адаптивным масштабом обновлений по средним градиента и его квадрата. Затухание весов применяется отдельно. глава 10 →
BPE BPE
Byte Pair Encoding: строим словарь, раз за разом склеивая самую частую пару соседних токенов. глава 6 →
KV-кэш KV cache
Сохранённые ключи и значения уже прочитанных токенов, чтобы не пересчитывать их на каждом шаге. глава 11 →
LoRA LoRA
Обучение поправок низкого ранга к выбранным матрицам при замороженных исходных весах. У адаптеров Ростка 417 792 обучаемых параметра, около 2,4% размера модели. глава 13 →
Muon Muon
Оптимизатор, приближённо ортогонализующий матричное обновление с импульсом. В коротких опытах Ростка дал меньшую ошибку при том же числе токенов, чем AdamW. глава 10 →
RLHF, DPO RLHF, DPO
RLHF использует человеческую обратную связь в обучении с подкреплением. DPO обучает по парам предпочтений напрямую, без отдельного этапа обучения модели награды. глава 17 →
RMSNorm RMSNorm
Деление координат вектора на корень из среднего квадрата с малой добавкой для устойчивости; затем применяется обучаемый масштаб. глава 8 →
RoPE RoPE
Поворотные позиционные эмбеддинги: запрос и ключ поворачиваются на угол, зависящий от позиции. глава 8 →
SFT SFT
Supervised fine-tuning: продолжение обучения на подготовленных примерах. В нашем чате ошибка считается по токенам ответа ассистента и метке его конца. глава 12 →
Softmax Softmax
Превращает логиты в вероятности: берёт экспоненту каждого и делит на сумму. глава 3 →
SwiGLU SwiGLU
Вариант сети прямого распространения с «воротами»: silu(xW₁) ⊙ xW₃. глава 8 →
Top-k, top-p Top-k, top-p
Top-k оставляет k наиболее вероятных токенов. Top-p — минимальное начало отсортированного списка с суммарной вероятностью не меньше p. Оставшиеся вероятности нормируются. глава 11 →
Авторегрессия Autoregression
Способ писать текст: выбрать следующий токен, дописать его и снова спросить модель — уже про следующий. глава 0 →
Базовая модель Base model
Модель после предобучения, до последующей настройки. Может продолжать текст и отвечать на некоторые вопросы, но ещё не настроена для роли ассистента. глава 12 →
Батч Batch
Пачка примеров, по которой считается один шаг обучения. У Ростка — 32 768 токенов. глава 10 →
Биграмма Bigram
Пара соседних единиц: символов, слов или токенов. В нашей символьной биграммной модели следующий символ зависит только от предыдущего. глава 1 →
Внимание Attention
Взвешенное смешивание векторов значений. В причинном внимании Ростка каждая позиция использует себя и доступные предыдущие позиции. глава 7 →
Выборка (сэмплирование) Sampling
Случайный выбор значения с учётом вероятностей, как бросок нечестного кубика. глава 1 →
Вызов инструмента Tool call
Модель пишет не ответ, а запрос к программе (у Ростка-2 — код на Python); страница выполняет его, возвращает результат модели, и та продолжает. глава 16 →
Голова внимания Attention head
Один набор проекций запросов, ключей и значений. Несколько голов вычисляют внимание параллельно, затем их выходы объединяются. глава 7 →
Градиент Gradient
Вектор производных по всем параметрам. Показывает, куда ошибка растёт быстрее всего. глава 3 →
Градиентный спуск Gradient descent
Шаг за шагом сдвигать параметры против градиента, чтобы ошибка уменьшалась. глава 3 →
Групповое внимание (GQA) Grouped-query attention (GQA)
Несколько голов запросов делят одну голову ключей и значений. У Ростка-2 9 голов запросов на 3 головы ключей, поэтому KV-кэш втрое меньше. глава 15 →
Дедупликация Deduplication
Удаление повторов из корпуса, чтобы модель не зубрила одно и то же. глава 9 →
Деконтаминация Decontamination
Удаление из корпуса документов, которые совпадают с вопросами бенчмарков (у Ростка-2 — 13 слов подряд), чтобы тест мерил умение, а не память. глава 14 →
Законы масштабирования Scaling laws
Эмпирические формулы: как ошибка падает с ростом модели, данных и вычислений. глава 10 →
Заполнение середины (FIM) Fill-in-the-middle (FIM)
Файл кода режут на три части и переставляют со служебными токенами: начало, конец, потом середина. Так модель учится дописывать код между готовыми строками. глава 14 →
Запрос, ключ, значение Query, key, value
Запрос и ключ сравниваются для расчёта весов внимания; значения смешиваются с этими весами. Все три вектора вычисляются из представлений токенов. глава 7 →
Каузальная маска Causal mask
Запрет смотреть в будущее: токен видит только себя и тех, кто был раньше. глава 7 →
Квантование Quantisation
Представление чисел меньшим набором значений, обычно с меньшим числом бит. Экономит память; влияние на качество зависит от метода и модели. глава 11 →
Корпус Corpus
Собрание текстов для обучения и оценки. В подготовленных данных Ростка 1,43 млрд токенов; за основной запуск прочитано около 330 млн, с возможными повторами. глава 9 →
Кросс-энтропия Cross-entropy
Среднее значение −log q для событий из распределения p, где q — прогноз модели. В курсе её оцениваем по правильным продолжениям текста. глава 2 →
Логиты Logits
Сырые оценки модели для каждого токена до softmax — любые числа, не вероятности. глава 3 →
Маска документов Document mask
В строке обучения несколько документов подряд; маска не даёт токену смотреть на токены чужого документа. глава 15 →
Мысли (рассуждение перед ответом) Thinking (reasoning before the answer)
Шаги решения, которые модель пишет перед ответом между токенами <|think|> и <|/think|>. Каждый токен — ещё немного вычислений, но верным ответ от этого сам собой не становится. глава 16 →
Мягкий потолок логитов Logit soft-capping
Логиты пропускают через c·tanh(x/c) (у Ростка-2 c = 30): обычные почти не меняются, а выше c ни один подняться не может. глава 15 →
Нат, бит Nat, bit
Единицы информации: с натуральным логарифмом — наты, с двоичным — биты. 1 нат ≈ 1,44 бита. глава 2 →
Нейрон Neuron
В учебной сети — взвешенная сумма входов со сдвигом, к которой применяют функцию активации, например tanh или ReLU. глава 4 →
Обратное распространение Backpropagation
Способ посчитать все градиенты сразу: пройти граф вычислений от ошибки назад, применяя цепное правило. глава 4 →
Остаточный поток Residual stream
Вектор, который проходит через все блоки; каждый блок прибавляет к нему свою поправку. глава 8 →
Параметр Parameter
Одно число внутри модели, которое подбирается обучением. У Ростка их 17,3 миллиона. глава 0 →
Переобучение Overfitting
Модель всё лучше подгоняется под обучающие примеры, но качество на новых данных перестаёт улучшаться или ухудшается. глава 5 →
Перплексия Perplexity
Экспонента средних потерь, измеренных в натах. Переводит ошибку в масштаб угадывания из равновероятных вариантов, но не считает оставшиеся токены. глава 2 →
Правдоподобие Likelihood
Вероятность наблюдённых данных, рассматриваемая как функция параметров модели. Обучение может искать параметры, при которых она максимальна. глава 2 →
Производная Derivative
Скорость изменения функции: насколько она вырастет, если чуть сдвинуть аргумент. глава 3 →
Прокси-модель Proxy model
Маленькая копия модели, на которой перед большим обучением дёшево сравнивают настройки: скорость обучения, состав данных, детали архитектуры. глава 15 →
Ранг матрицы Matrix rank
Сколько независимых направлений хранит матрица. Матрица ранга r — сумма r «простых» слоёв. глава 13 →
Системное сообщение System message
Текст в начале диалога, который задаёт правила или сообщает о возможностях, например «можешь запускать Python». Модель слушается его настолько, насколько видела такие примеры при обучении. глава 16 →
Скалярное произведение Dot product
Сумма попарных произведений координат. Зависит и от направлений векторов, и от их длин; часто используется при вычислении оценок сходства. глава 5 →
Скорость обучения Learning rate
Коэффициент, задающий масштаб обновления параметров. Слишком большой может сделать обучение неустойчивым, слишком маленький — медленным. глава 3 →
Смесь данных Data mix
Доли источников в обучении: сколько токенов модель видит из веба, кода, вопросов и ответов и так далее. На спуске Росток-2 учился на другой смеси. глава 14 →
Спуск скорости обучения Cooldown
Последняя часть обучения, где скорость обучения плавно падает до нуля. Росток-2 сохранил контрольную точку перед спуском, чтобы обучение можно было продолжить. глава 15 →
Температура Temperature
Делитель логитов перед softmax: ниже — модель смелее выбирает главное, выше — разнообразнее. глава 11 →
Токен Token
Единица последовательности, представленная номером в словаре: слово, фрагмент слова, байт или служебная метка. глава 6 →
Трансформер Transformer
Семейство архитектур с блоками внимания, сетью, обрабатывающей каждую позицию отдельно и остаточными связями. Росток использует причинный трансформер-декодер. глава 8 →
Удивление (информация) Surprise (information)
Минус логарифм вероятности: −log p. Маловероятное событие удивляет сильнее. глава 2 →
Условная вероятность Conditional probability
Вероятность события при условии, что другое уже случилось: p(b | a). глава 1 →
Функция потерь Loss
Численная оценка ошибки по выбранному правилу. Обучение направлено на её уменьшение, хотя отдельный шаг может её увеличить. глава 3 →
Цепное правило Chain rule
Производная сложной функции — произведение производных её частей. глава 4 →
Шаблон чата Chat template
Способ записать диалог токенами с метками ролей: <|user|>, <|assistant|>, <|end|>. глава 12 →
Эмбеддинг Embedding
Векторное представление объекта; в Ростке каждому токену соответствует обучаемая строка таблицы. Геометрические отношения между векторами зависят от обучения. глава 5 →
Энтропия Entropy
Среднее удивление самого распределения: насколько оно неопределённо. глава 2 →
Языковая модель Language model
Программа, которая по началу текста оценивает вероятность каждого возможного продолжения. глава 0 →