ai_learning/common/NOTATION.md

8.0 KiB
Raw Blame History

Соглашения об обозначениях

Этот файл задаёт общую математическую запись для всех курсов. Локальные исключения допустимы только с явным пояснением.

Общие правила

  • Скаляр: x,a,\lambda.
  • Вектор-столбец: \mathbf{x}\in\mathbb{R}^d.
  • Матрица: \mathbf{X}\in\mathbb{R}^{n\times d}.
  • Множество: \mathcal{D}, пространство: \mathbb{R}^d.
  • Индексы начинаются с 1 в формулах и с 0 в Python.
  • Верхний индекс в скобках, например \mathbf{x}^{(i)}, обозначает номер объекта, а не степень.

Данные и параметры

Набор из n объектов с d признаками:


\mathcal{D}=\{(\mathbf{x}^{(i)},y^{(i)})\}_{i=1}^{n},\qquad
\mathbf{X}=
\begin{bmatrix}
(\mathbf{x}^{(1)})^\top\\
\cdots\\
(\mathbf{x}^{(n)})^\top
\end{bmatrix}
\in\mathbb{R}^{n\times d}.

Строка матрицы — объект, столбец — признак. Целевой вектор \mathbf{y}\in\mathbb{R}^n. Параметры модели обозначаются \boldsymbol{\theta}; веса линейной модели — \mathbf{w}, смещение — b. Предсказание — \hat y, истинное значение — y.

Разбиения данных: \mathcal{D}_{\mathrm{train}}, \mathcal{D}_{\mathrm{val}}, \mathcal{D}_{\mathrm{test}}.

Векторы и матрицы


\mathbf{x}^\top\mathbf{y}=\sum_{j=1}^{d}x_jy_j,\qquad
\|\mathbf{x}\|_2=\sqrt{\sum_jx_j^2},\qquad
\|\mathbf{x}\|_1=\sum_j|x_j|.
  • \mathbf{A}^\top — транспонирование.
  • \mathbf{A}^{-1} — обратная матрица, только если она существует.
  • \mathbf{I}_d — единичная матрица размера d.
  • \mathbf{0}, \mathbf{1} — векторы или матрицы из нулей и единиц; размер следует из контекста.
  • \operatorname{diag}(\mathbf{x}) — диагональная матрица.
  • \operatorname{tr}(\mathbf{A})=\sum_i A_{ii} — след.
  • \det(\mathbf{A}) — определитель.
  • \operatorname{rank}(\mathbf{A}) — ранг.
  • \mathbf{A}\odot\mathbf{B} — поэлементное произведение.
  • \mathbf{A}\mathbf{B} — матричное произведение.

Норма Фробениуса:


\|\mathbf{A}\|_F=
\sqrt{\sum_{i,j}A_{ij}^2}
=\sqrt{\operatorname{tr}(\mathbf{A}^\top\mathbf{A})}.

Запись \mathbf{A}\succeq0 означает симметричную положительно полуопределённую матрицу: \mathbf{x}^\top\mathbf{A}\mathbf{x}\geq0 для любого \mathbf{x}.

Функции и отображения


f:\mathbb{R}^d\to\mathbb{R},\qquad
\mathbf{g}:\mathbb{R}^d\to\mathbb{R}^m.

Композиция записывается f\circ g, то есть (f\circ g)(x)=f(g(x)). Образ множества — f(\mathcal{X}). Индикатор события:


\mathbb{1}\{A\}=
\begin{cases}
1,&A\text{ произошло},\\
0,&\text{иначе}.
\end{cases}

Дифференциальное исчисление

Обычная производная — f'(x)=df/dx, частная производная — \partial f/\partial x_j. Градиент скалярной функции — вектор-столбец:


\nabla_{\mathbf{x}}f=
\begin{bmatrix}
\partial f/\partial x_1\\
\vdots\\
\partial f/\partial x_d
\end{bmatrix}
\in\mathbb{R}^{d}.

Гессиан:


\nabla_{\mathbf{x}}^2 f=
\left[\frac{\partial^2 f}{\partial x_i\partial x_j}\right]_{i,j}
\in\mathbb{R}^{d\times d}.

Якобиан \mathbf{g}:\mathbb{R}^d\to\mathbb{R}^m:


\mathbf{J}_{\mathbf{g}}(\mathbf{x})=
\left[\frac{\partial g_i}{\partial x_j}\right]_{i,j}
\in\mathbb{R}^{m\times d}.

Дифференциал записывается df. Для функции матрицы градиент определяется соглашением


df=\operatorname{tr}\left(
(\nabla_{\mathbf{X}}f)^\top d\mathbf{X}
\right).

Вероятность

Вероятностное пространство явно не выписывается, если оно не существенно.

  • Случайные величины: X,Y; их реализации: x,y.
  • Случайный вектор: \mathbf{X}; наблюдение: \mathbf{x}.
  • Вероятность события: \mathbb{P}(A).
  • Условная вероятность: \mathbb{P}(A\mid B).
  • Плотность или функция вероятности: p_X(x), кратко p(x).
  • Совместное распределение: p(x,y).
  • Условное распределение: p(y\mid x).
  • Математическое ожидание: \mathbb{E}[X].
  • Дисперсия: \operatorname{Var}(X).
  • Ковариация: \operatorname{Cov}(X,Y).
  • Ковариационная матрица: \boldsymbol{\Sigma}.

\mathbb{E}_{X\sim p}[f(X)]
=\int f(x)p(x)\,dx

для непрерывного X; для дискретного интеграл заменяется суммой. Запись X\sim\mathcal{N}(\mu,\sigma^2) означает нормальное распределение. Независимость обозначается X\perp Y, условная независимость — X\perp Y\mid Z.

Оценивание и оптимизация

Истинный неизвестный параметр — \theta, его оценка по данным — \hat\theta. Функция потерь одного объекта — \ell, эмпирический риск:


\hat R(\boldsymbol{\theta})
=\frac1n\sum_{i=1}^{n}
\ell\left(f_{\boldsymbol{\theta}}(\mathbf{x}^{(i)}),y^{(i)}\right).

\boldsymbol{\theta}^\star
\in\arg\min_{\boldsymbol{\theta}\in\Theta}
L(\boldsymbol{\theta}).

\min L — минимальное значение, а \arg\min L — множество аргументов, на которых оно достигается. Итерация алгоритма имеет индекс t:


\boldsymbol{\theta}_{t+1}
=\boldsymbol{\theta}_t-\eta_t\nabla L(\boldsymbol{\theta}_t),

где \eta_t>0 — шаг обучения.

Суммы, пределы и асимптотика


\sum_{i=1}^{n}a_i,\qquad
\prod_{i=1}^{n}a_i,\qquad
\lim_{n\to\infty}a_n.

f(n)=O(g(n)) задаёт асимптотическую верхнюю границу с точностью до константы; \Theta(g(n)) — двустороннюю. Эти обозначения не описывают реальное время для конкретного малого n.

Числа и вычисления

  • \varepsilon — малая математическая величина или допуск; машинная точность обозначается \varepsilon_{\mathrm{mach}}.
  • (\operatorname{softmax}(\mathbf{z})_i =e^{z_i}/\sum_j e^{z_j}).
  • \log — натуральный логарифм, если основание не указано.
  • a\approx b — приближённое равенство; a\propto b — пропорциональность.

В тексте нельзя смешивать математический вектор (\mathbf{x}\in\mathbb{R}^d) с массивом NumPy формы (1, d): первый обычно соответствует форме (d,). Формы (d,), (d, 1) и (1, d) в коде различны.