Глоссарий площадок

терминов: 71 · площадок: 13

На площадках эти определения появляются при наведении на термин, подчёркнутый пунктиром, а на телефоне — при нажатии на него. Здесь они собраны вместе: с формулами, примечаниями и ссылками на площадки, где термин встречается.

Площадки по темам — в каталоге.

A

ARI, скорректированный индекс Рэнда

Мера совпадения разбиения, найденного алгоритмом, с разметкой человека. 1.0 — полное совпадение, 0.0 — совпадение на уровне случайного разбиения.

Значение около нуля не означает, что метод не работает: кластеризация ищет группы, которые есть в данных, а не те, что выделил человек.

Где встречается: Память переводов.

B

BLEU

Доля n-грамм перевода (от одного до четырёх слов подряд), встречающихся в эталоне, со штрафом за слишком короткий перевод. Принимает значения от 0 до 1.

$$\mathrm{BLEU} = \mathrm{BP} \cdot \exp\!\left( \frac{1}{4}\sum_{n=1}^{4} \log p_n \right)$$

$p_n$ — доля совпавших n-грамм, $\mathrm{BP}$ — штраф за краткость. Метрика сравнивает словоформы, поэтому синоним или другая форма слова для неё такая же ошибка, как бессмыслица.

Где встречается: Метрики машинного перевода, Данные и разметка.

C

chrF

То же сравнение, но по символьным n-граммам и с учётом полноты, а не одной точности. Для языков с богатым словоизменением снисходительнее к смене словоформы.

$$\mathrm{chrF}_\beta = (1 + \beta^2)\,\frac{P \cdot R}{\beta^2 P + R}, \quad \beta = 2$$

Где встречается: Метрики машинного перевода.

F

F1-мера

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

$$F_1 = \frac{2PR}{P + R}$$

Где встречается: Метрика и дисбаланс.

M

min_df

Минимальное число текстов, в которых должен встретиться признак, чтобы попасть в словарь. При min_df=2 отбрасывается всё, что встретилось лишь в одном тексте.

Порог очищает словарь от случайных признаков, но на маленьком корпусе отсекает и полезные: там почти всё встречается по одному разу.

Где встречается: Векторизация текста.

MQM

Отраслевая схема разметки ошибок перевода: категория (точность, беглость, терминология, стиль, разметка) и степень серьёзности, за которую начисляется штраф.

Критическая ошибка — 25 баллов, серьёзная — 5, незначительная — 1. Разметку выполняет человек, а не метрика.

Где встречается: Метрики машинного перевода, Данные и разметка.

N

n-грамма

Последовательность из n соседних элементов, которая считается одним признаком. Словесная биграмма — пара соседних слов («не удалось»), символьная — пара соседних букв («не», «е », « у»).

Для русского языка символьные n-граммы работают лучше словесных: «локализация» и «локализации» — разные слова, но у них общая 4-грамма «лока».

Где встречается: Метрики машинного перевода, Языковая модель и температура, Векторизация текста, Память переводов, Данные и разметка.

P

p-значение

Вероятность получить такую же или более сильную связь, если на самом деле связи нет. Условие p < 0.05 означает, что такое бывает и случайно, но реже чем в одном случае из двадцати, — и не доказывает, что связь есть.

Где встречается: Утечка данных.

PMI, поточечная взаимная информация

Показывает, во сколько раз чаще два слова встречаются рядом, чем при случайном расположении, в логарифмической шкале. Измеряется в битах; чем больше значение, тем крепче связь.

$$\mathrm{PMI}(a, b) = \log_2 \frac{P(a, b)}{P(a)\,P(b)}$$

Мера завышает редкое: пара редких слов, встреченная один раз, получает максимальное значение. Поэтому PMI применяют вместе с порогом по частоте.

Где встречается: Три задачи вводной лекции.

PR-AUC

Площадь под кривой «точность — полнота». В отличие от ROC-AUC, она снижается, когда редкий класс теряется среди частого.

Где встречается: Метрика и дисбаланс.

R

ReLU

Функция активации нейрона: отрицательное значение заменяет нулём, положительное пропускает без изменений.

$$\mathrm{ReLU}(z) = \max(0, z)$$

Где встречается: Нейросеть на NumPy.

Ridge и Lasso

Два вида штрафа за большие веса. Ridge штрафует сумму квадратов весов и сжимает их все; Lasso штрафует сумму модулей и часть весов обращает ровно в ноль, т. е. попутно отбирает признаки.

$$\min_w \lVert y - Xw \rVert^2 + \alpha \lVert w \rVert_2^2 \quad\text{/}\quad \min_w \lVert y - Xw \rVert^2 + \alpha \lVert w \rVert_1$$

$\alpha$ — сила штрафа. При большой $\alpha$ Lasso обнуляет все веса и модель вырождается в одно число.

Где встречается: Сложность модели.

RMSE и MAE

Та же ошибка в других шкалах. RMSE — корень из MSE, т. е. ошибка в тех же единицах, что и сам ответ. MAE — средняя абсолютная ошибка; выбросы увеличивают её гораздо слабее.

$$\mathrm{RMSE} = \sqrt{\mathrm{MSE}}, \qquad \mathrm{MAE} = \frac{1}{N}\sum_i |y_i - \hat{y}_i|$$

Где встречается: Градиентный спуск.

ROC-AUC

Вероятность того, что случайный положительный объект получит от модели балл выше, чем случайный отрицательный. 0.5 — модель не отличает классы, 1.0 — отличает безошибочно.

При сильном дисбалансе классов даёт слишком оптимистичную картину; PR-AUC в этом случае объективнее.

R², коэффициент детерминации

Доля дисперсии предсказываемой величины, которую объясняет модель. 1.0 — предсказания точны, 0.0 — модель не лучше постоянного ответа средним значением.

$$R^2 = 1 - \frac{\sum_i (y_i - \hat{y}_i)^2}{\sum_i (y_i - \bar{y})^2}$$

Где встречается: Три задачи вводной лекции, Сложность модели.

S

sublinear_tf

Логарифмирование частоты: десять вхождений слова весят не в десять раз больше одного, а примерно в 3.3 раза.

$$\mathrm{tf} \rightarrow 1 + \log(\mathrm{tf})$$

Где встречается: Векторизация текста.

T

TER

Число правок (вставок, удалений, замен, перестановок), нужных, чтобы привести перевод к эталону, отнесённое к длине эталона. В отличие от BLEU и chrF, чем значение меньше, тем лучше.

$$\mathrm{TER} = \frac{\text{число правок}}{\text{слов в эталоне}}$$

Где встречается: Метрики машинного перевода.

TF-IDF

Вес слова, который растёт с частотой слова в этом тексте (TF) и убывает с числом текстов корпуса, где оно встречается (IDF). Слово, которое есть во всех текстах, получает наименьший вес.

$$w = \mathrm{tf} \cdot \left( \log\frac{1 + N}{1 + \mathrm{df}} + 1 \right)$$

$N$ — число текстов, $\mathrm{df}$ — в скольких из них встретилось слово.

Где встречается: Векторизация текста, Память переводов.

top-k и top-p

Отсечение хвоста распределения перед выбором: top-k оставляет k самых вероятных вариантов, top-p — столько самых вероятных, чтобы их суммарная вероятность достигла p.

Где встречается: Языковая модель и температура.

Б

Базовая модель (baseline)

Простейшее решение, которое не смотрит на содержимое объекта и всегда отвечает самым частым классом. Модель должна превзойти её результат, иначе она бесполезна.

При четырёх равных классах базовая модель даёт 0.25, при 98 % исправных деталей — 0.98.

Где встречается: Векторизация текста, Три задачи вводной лекции, Утечка данных, Метрика и дисбаланс.

В

Векторизация

Перенос цикла из Python внутрь библиотеки: операция применяется сразу ко всему массиву, а не к каждому числу по отдельности. Арифметика та же, но цикл выполняет скомпилированный код, а не интерпретатор, и вычисления ускоряются в десятки раз.

Где встречается: Конвейер подготовки данных.

Выброс

Значение, резко отличающееся от остальных. Выброс бывает настоящим (редкое, но реальное событие) и техническим — например, код ошибки прибора −900 вместо уровня сигнала. Технические выбросы нужно убрать до любых расчётов: одно такое число искажает среднее по всему столбцу.

Где встречается: Конвейер подготовки данных.

Г

Градиентный спуск

Способ подбора весов модели: вычислить, в каком направлении ошибка растёт быстрее всего, сделать шаг в противоположном направлении и повторять это многократно.

$$w \leftarrow w - \eta \, \nabla L(w)$$

$\eta$ — шаг обучения, $\nabla L$ — градиент функции потерь.

Где встречается: Градиентный спуск, Нейросеть на NumPy.

Граф задач (DAG)

Задачи конвейера и зависимости между ними. Критический путь — самая длинная цепочка зависимостей: быстрее неё конвейер не выполнится, сколько бы ни было процессоров.

Где встречается: Граф задач и отказы.

Д

Дерево решений

Последовательность вопросов с ответами «да» и «нет»; каждая цепочка вопросов заканчивается ответом. Вопросы алгоритм подбирает сам: на каждом шаге он выбирает тот, что лучше всего разделяет объекты по классам.

Дерево ценно тем, что его правила можно прочесть и оспорить, — в отличие от большинства моделей.

Где встречается: Три задачи вводной лекции, Сложность модели.

Дисбаланс классов

Один класс встречается в десятки раз чаще другого. Модель, которая всегда отвечает частым классом, получает высокую долю правильных ответов и не находит ни одного редкого случая.

Где встречается: Метрика и дисбаланс.

Доля правильных ответов (accuracy)

Доля объектов, отнесённых к правильному классу. Значение 0.74 означает, что верны примерно три ответа из четырёх.

$$\mathrm{accuracy} = \frac{\text{правильных ответов}}{\text{всего объектов}}$$

Показательна, только когда классы примерно равны по размеру. Если один класс встречается в десятки раз чаще другого, смотрите на точность и полноту.

Где встречается: Векторизация текста, Данные и разметка, Три задачи вводной лекции, Утечка данных, Метрика и дисбаланс, Сложность модели, Нейросеть на NumPy.

К

Каппа Коэна

Согласие двух разметчиков с поправкой на случайные совпадения. 1.0 — разметка одинакова, 0.0 — согласие не лучше, чем если бы метки ставили наугад.

$$\kappa = \frac{p_o - p_e}{1 - p_e}$$

$p_o$ — доля случаев, где разметчики совпали; $p_e$ — доля совпадений, ожидаемая при случайной разметке. Значение ниже 0.4 обычно говорит о неясной инструкции, а не о плохом разметчике.

Где встречается: Данные и разметка.

Кластеризация

Разбиение объектов на группы похожих без всякой разметки: алгоритм сам решает, какие объекты близки. Найденные группы не обязаны совпадать с теми, что нужны человеку.

Где встречается: Память переводов.

Косинусная близость

Косинус угла между двумя векторами. 1.0 — направления совпадают, 0.0 — общих признаков нет. В отличие от расстояния, длина текста на неё не влияет.

$$\cos(a, b) = \frac{a \cdot b}{\|a\| \, \|b\|}$$

Где встречается: Метрики машинного перевода, Память переводов.

Кривая обучения

Зависимость качества модели от размера обучающей выборки. Если в правой части кривая ещё растёт, данных мало и продолжать разметку выгоднее, чем менять модель.

Где встречается: Данные и разметка.

Кросс-валидация

Выборку делят на несколько равных частей — блоков; модель обучают на всех блоках, кроме одного, и проверяют на оставшемся, и так по очереди для каждого блока. Итог — среднее по блокам.

Она нужна потому, что на одном разбиении оценка неустойчива: на 160 сегментах пара объектов, попавших или не попавших в тестовую часть, сдвигает долю правильных ответов на 0.05.

Где встречается: Векторизация текста, Данные и разметка, Три задачи вводной лекции, Утечка данных, Сложность модели.

Крутизна склона (норма градиента)

Длина вектора градиента, т. е. крутизна склона в точке текущих весов. Большое значение означает, что спуск ещё далеко от дна; значение около нуля — что он у дна и дальнейшие шаги почти ничего не меняют.

$$\lVert \nabla L\rVert = \sqrt{\sum_j (\partial L / \partial w_j)^2}$$

Где встречается: Градиентный спуск.

Л

Логистическая регрессия

Модель классификации: складывает признаки с весами и превращает сумму в вероятность класса сигмоидой. Несмотря на название, она решает задачу классификации, а не регрессии.

$$P(y = 1) = \sigma(w_1 x_1 + \dots + w_n x_n + b)$$

Где встречается: Утечка данных, Метрика и дисбаланс.

М

Матрица ошибок

Таблица «истинный класс» × «ответ модели». На диагонали стоят правильные ответы, вне её видно, какие классы модель путает между собой.

Информативнее одного числа — доли правильных ответов: показывает не только сколько ошибок, но и каких.

Где встречается: Векторизация текста, Метрика и дисбаланс.

Метод ближайших соседей (kNN)

Модель ничего не обучает: чтобы классифицировать новую точку, она находит k ближайших известных точек и выбирает класс голосованием. При k = 1 ответ на обучающих данных всегда безошибочен — точка сама себе сосед, — и это наглядный пример переобучения.

Где встречается: Сложность модели.

Мешок слов

Представление текста вектором, в котором каждому слову словаря соответствует число его вхождений. Порядок слов при этом полностью теряется.

«не удалось подключиться» и «удалось не подключиться» дают одинаковый вектор.

Где встречается: Векторизация текста.

Множественные проверки и поправка Бонферрони

Если проверить тысячу случайных признаков с порогом 0.05, около пятидесяти пройдут его случайно. Поправка Бонферрони делит порог на число проверок, и случайные кандидаты его уже не проходят.

$$\alpha_{\text{на проверку}} = \alpha / m$$

$m$ — сколько проверок сделано.

Где встречается: Утечка данных.

О

Обратный проход (backpropagation)

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

$$\frac{\partial L}{\partial w_1} = \frac{\partial L}{\partial a} \cdot \frac{\partial a}{\partial z} \cdot \frac{\partial z}{\partial w_1}$$

Где встречается: Нейросеть на NumPy.

Отбор признаков

Выбор из множества столбцов тех немногих, что связаны с целевой переменной. Если отбор сделан до разбиения выборки, он уже учёл ответы отложенной части, и оценка модели окажется завышенной. Отбор должен входить в обучение, как и любой другой шаг.

Это самый частый источник утечки: отбор нужно повторять внутри каждого блока кросс-валидации, только по обучающей части.

Где встречается: Утечка данных.

Отложенная выборка

Часть данных, которую убирают до обучения и не показывают модели ни на одном шаге. Только по ней можно судить, выучила модель закономерность или запомнила примеры.

Ошибка на обучающей части всегда меньше и сама по себе ничего не доказывает.

Где встречается: Утечка данных, Метрика и дисбаланс, Сложность модели, Нейросеть на NumPy.

П

Перекрёстная энтропия

Функция потерь для классификации: штрафует модель тем сильнее, чем увереннее она назвала неправильный класс. Уверенная ошибка обходится намного дороже неуверенной.

$$L = -\frac{1}{n} \sum_i \bigl(y_i \ln p_i + (1 - y_i) \ln (1 - p_i)\bigr)$$

$y_i$ — правильный класс (0 или 1), $p_i$ — вероятность класса 1, которую назвала модель.

Где встречается: Нейросеть на NumPy.

Переобучение и недообучение

Переобучение — модель запомнила обучающие примеры и плохо работает на новых; недообучение — она слишком проста и не улавливает закономерность даже на обучающих.

Его видно по разрыву между качеством на обучающей и контрольной выборках.

Где встречается: Градиентный спуск, Языковая модель и температура, Сложность модели.

Перплексия

Мера того, насколько текст «неожидан» для модели: грубо говоря, между сколькими вариантами она в среднем выбирает на каждом шаге. Чем меньше, тем лучше.

$$\mathrm{PP} = \exp\!\left( -\frac{1}{N}\sum_i \log p_i \right)$$

Где встречается: Языковая модель и температура.

Плейсхолдер

Метка в строке интерфейса, вместо которой программа подставит значение: «{count}», «%s». В переводе её нужно сохранить в точности, иначе программа выдаст ошибку или неверный текст.

Где встречается: Метрики машинного перевода.

Повторы и пропуск задач

Две реакции планировщика на сбой. Повтор — новый запуск задачи, завершившейся с ошибкой; он спасает от случайных сбоев вроде обрыва сети. Пропуск — отказ от запуска задач, зависящих от окончательно не выполненной, чтобы в работу не попал незавершённый результат.

Где встречается: Граф задач и отказы.

Полный пакет, SGD и мини-пакеты

Число примеров, по которым делается один шаг: все сразу (полный пакет, batch), один (стохастический спуск, SGD) или несколько десятков (мини-пакет). Чем меньше пакет, тем шумнее траектория и тем дешевле шаг.

Где встречается: Градиентный спуск.

Порог

Граница балла, выше которой объект считается положительным. Сдвигая её, обменивают полноту на точность; цену этого обмена задаёт задача, а не модель.

Где встречается: Метрики машинного перевода, Память переводов, Метрика и дисбаланс.

Признак

Одно измеряемое свойство объекта, которое модель получает на вход: длина сегмента, частота слова, показание датчика. Модель видит объект только через его признаки.

Где встречается: Градиентный спуск, Векторизация текста, Данные и разметка, Три задачи вводной лекции, Утечка данных, Сложность модели, Граф задач и отказы.

Пропуски

Ячейки, в которых нет значения. Модели не умеют работать с пустыми ячейками, поэтому пропуски либо удаляют вместе со строкой, либо заполняют каким-либо числом — и выбор этого числа сам вносит в данные искажение.

Заполнение одним значением на весь столбец — самый грубый вариант; он сжимает разброс данных.

Где встречается: Конвейер подготовки данных.

Процент совпадения

Мера сходства строк, принятая в CAT-инструментах: 100 % — строки одинаковы. Ниже порога (обычно 70–75 %) подсказку выгоднее проигнорировать, чем исправлять.

$$100\% \cdot \left( 1 - \frac{\text{расстояние Левенштейна}}{\text{длина большей строки}} \right)$$

Где встречается: Память переводов.

Р

Разброс между блоками

Стандартное отклонение результата между блоками кросс-валидации. Если две настройки различаются меньше чем на этот разброс, считать одну из них лучшей нельзя.

Где встречается: Векторизация текста.

Расстояние Левенштейна

Наименьшее число вставок, удалений и замен одного символа, которыми одна строка превращается в другую. «кот» → «кит» — одна замена.

На его основе вычисляют «процент совпадения», который показывают CAT-инструменты — программы автоматизированного перевода.

Где встречается: Память переводов.

Регуляризация

Штраф за слишком большие веса, который удерживает модель от запоминания обучающей выборки. В scikit-learn её силой управляет параметр C: чем меньше C, тем сильнее штраф.

Где встречается: Сложность модели.

С

Сигмоида

Функция, которая переводит любое число в число от 0 до 1: большие положительные — почти в 1, большие отрицательные — почти в 0. Поэтому её результат читают как вероятность.

$$\sigma(z) = \frac{1}{1 + e^{-z}}$$

Где встречается: Нейросеть на NumPy.

Снижение размерности (SVD, PCA)

Замена тысяч разреженных признаков несколькими десятками плотных, которые сохраняют главные различия между текстами.

Применительно к текстам это называют латентно-семантическим анализом (LSA).

Где встречается: Память переводов.

Среднее и медиана

Два способа описать «типичное» значение. Среднее складывает все числа и делит на их количество, поэтому один выброс тянет его за собой. Медиана — значение ровно посередине упорядоченного ряда, и выброс сдвигает её на одну позицию, не больше.

$$\mathrm{med}(x_1, \ldots, x_n)$$

Поэтому пропуски обычно заполняют медианой, а не средним.

Где встречается: Конвейер подготовки данных.

Стандартизация

Приведение признака к среднему 0 и стандартному отклонению 1. После неё признаки в разных единицах измерения сопоставимы, и веса модели можно сравнивать между собой.

$$z = \frac{x - \bar{x}}{s}$$

Где встречается: Сложность модели.

Стемминг

Усечение слова до основы, чтобы формы одной лексемы стали одним признаком: «локализация», «локализации», «локализацию» → «локализац».

Стеммер отсекает окончания по правилам, без словаря, поэтому «сохранить» и «сохранение» сводит к одной основе не всегда.

Где встречается: Векторизация текста.

Сходимость

Момент, когда очередной шаг почти не уменьшает ошибку. Продолжать вычисления нет смысла: спуск достиг минимума или застрял на плато.

$$|L_t - L_{t-1}| < \varepsilon$$

$\varepsilon$ — порог, который задан ползунком «когда считать, что процесс сошёлся».

Где встречается: Градиентный спуск.

Т

Температура

Параметр, от которого зависит, насколько модель рискует при выборе следующего символа. Ниже 1 она тяготеет к самому вероятному варианту и повторяется, выше 1 выбирает разнообразнее и чаще ошибается.

$$p_i \rightarrow \frac{\exp(\log p_i / T)}{\sum_j \exp(\log p_j / T)}$$

При $T \to 0$ модель всегда берёт самый вероятный вариант.

Где встречается: Языковая модель и температура.

Топологический порядок

Порядок, в котором задачи можно выполнять так, чтобы каждая запускалась после всех задач, от которых зависит. Для графа без циклов он всегда существует; если в графе есть цикл, порядка нет и запускать нечего.

Задачи, не связанные зависимостью, попадают на один уровень и могли бы выполняться одновременно.

Где встречается: Граф задач и отказы.

Точность и полнота (precision, recall)

Точность — доля настоящих случаев среди поднятых тревог; полнота — доля настоящих случаев, которые удалось обнаружить. Повышая одну из них, обычно теряют другую.

$$P = \frac{TP}{TP + FP} \qquad R = \frac{TP}{TP + FN}$$

TP — верно найденные, FP — ложные тревоги, FN — пропущенные.

Где встречается: Метрика и дисбаланс.

У

Утечка данных

Попадание в обучение информации из проверочной выборки, например когда отбор признаков сделан до разбиения. Оценка качества оказывается завышенной, а на новых данных модель работает заметно хуже.

Где встречается: Утечка данных.

Ф

Формальные проверки

Правила, составленные вручную: совпадают ли плейсхолдеры и числа, не потеряно ли отрицание, не подозрительно ли короток перевод. Они дёшевы и выявляют то, чего не видят метрики.

Где встречается: Метрики машинного перевода.

Функция потерь

Число, которым измеряют, насколько ответы модели расходятся с правильными. Обучение — это её минимизация.

$$\mathrm{MSE} = \frac{1}{N}\sum_i (y_i - \hat{y}_i)^2$$

Где встречается: Градиентный спуск, Нейросеть на NumPy.

Ц

Цена ошибки

Ошибки двух видов обходятся по-разному. Пропустить отказ оборудования дороже, чем напрасно вызвать наладчика, поэтому порог выбирают не там, где «точнее всего», а там, где суммарная цена ошибок минимальна.

$$\text{цена} = c_{\text{проп}} \cdot FN + c_{\text{лт}} \cdot FP$$

$FN$ — пропуски, $FP$ — ложные тревоги. Отношение цен задаёт предметная область, а не математика.

Где встречается: Метрика и дисбаланс.

Ч

Численная проверка градиента

Способ найти ошибку в формулах обратного прохода: вес немного сдвигают в обе стороны, смотрят, как изменилась ошибка, и сравнивают результат с формулой. Если значения расходятся больше чем в последних знаках, в формуле ошибка.

$$g_{\text{числ}} = \frac{L(w + h) - L(w - h)}{2h}$$

Вычислять так градиент на всём обучении слишком медленно, поэтому проверку выполняют один раз, на маленькой сети.

Где встречается: Нейросеть на NumPy.

Ш

Шаг обучения (learning rate)

Величина, на которую сдвигаются веса за один шаг. При слишком малом шаге обучение не успевает сойтись, при слишком большом — расходится.

Где встречается: Градиентный спуск, Нейросеть на NumPy.

Э

Эмбеддинг (векторное представление)

Вектор из нескольких сотен чисел, которым нейросетевая модель, обученная на миллиардах слов, описывает смысл текста. Близкие по смыслу тексты получают близкие векторы, даже без общих слов.

Векторы вычислены заранее: в браузере такую модель не запустить.

Где встречается: Метрики машинного перевода, Память переводов.

Эпоха

Один полный проход по всей обучающей выборке. Сто эпох — сто раз показать модели все данные; шагов спуска при этом может быть гораздо больше.

Где встречается: Нейросеть на NumPy.