🔴 Сложный ⏱️ 60 минут

Моменты случайных величин

📋 Содержание урока

Моменты случайных величин ⚖️

Представь, что ты открыл новый датасет и хочешь понять, что за зверь у тебя в руках. Первое, что ты делаешь — вызываешь df.describe(). Смотришь на среднее. Смотришь на стандартное отклонение. И вроде бы всё понятно: средний чек 3400 рублей, разброс 1800. Ты строишь модель, гонишь линейную регрессию — и она разваливается. Метрики в тесте катастрофически хуже, чем в валидации. Ты добавляешь регуляризацию, меняешь модель, перебираешь гиперпараметры — толку ноль.

А потом строишь гистограмму и всё становится ясно за две секунды: у признака чудовищный правый хвост. Девяносто пять процентов чеков лежат между 500 и 5000 рублей, а оставшиеся пять процентов растянуты до полумиллиона. Среднее и дисперсия про это НЕ рассказали — они не умеют. Они видят «центр» и «разброс», но слепы к тому, что распределение перекошено вправо и что хвост у него толще, чем у нормального, в десятки раз.

Вот здесь и появляются моменты. Матожидание — это первый момент. Дисперсия — второй центральный. Но ряд на этом не заканчивается: есть третий момент, который измеряет перекос (асимметрию), есть четвёртый, который измеряет толщину хвостов (эксцесс), есть пятый, шестой и вообще любой $k$-й. Каждый следующий момент добавляет к портрету распределения новый штрих. Три числа — среднее, дисперсия, асимметрия — уже дают тебе куда более честную картину признака, чем два. Четыре — ещё честнее.

Моменты — это не абстрактная теоретическая надстройка. Ими буквально дышит современный ML. Оптимизатор Adam, на котором обучают почти все нейросети мира, назван так потому, что хранит первый и второй моменты градиента — это прямо в названии: Adaptive Moment Estimation. BatchNorm работает тем, что выравнивает первые два момента активаций между слоями. Метод моментов — это классический способ оценить параметры распределения по данным. Moment matching — техника, на которой построена целая ветка вариационного вывода. В этом уроке мы разберём всё это по шагам: от определения $\alpha_k = E(X^k)$ до строчки кода в оптимизаторе.

🎯 Ты узнаешь:

  • Что такое начальные моменты $\alpha_k = E(X^k)$ и центральные $\mu_k = E(X - EX)^k$, и почему матожидание с дисперсией — просто два первых члена бесконечного ряда
  • Как переводить начальные моменты в центральные и обратно, и почему на практике почти всегда считают через начальные
  • Что означают коэффициент асимметрии $\gamma_1 = \mu_3/\sigma^3$ и коэффициент эксцесса $\gamma_2 = \mu_4/\sigma^4 - 3$, и почему из эксцесса вычитают именно тройку
  • Почему у распределения Коши нет даже матожидания, и что это значит для реальных данных
  • Как устроена производящая функция моментов и почему набор моментов не всегда однозначно задаёт распределение
  • Где моменты живут в ML: skewness как сигнал к логарифмированию, тяжёлые хвосты в финансах, метод моментов, moment matching и $m_t$ с $v_t$ внутри Adam

История: откуда это взялось?

Слово «момент» пришло в теорию вероятностей не из математики, а из механики. В XVII–XVIII веках физики уже вовсю пользовались понятием момента силы относительно точки и момента инерции относительно оси: если у тебя есть система точечных масс $m_i$, расположенных в точках $x_i$, то величина $\sum m_i x_i$ — это статический момент, а $\sum m_i x_i^2$ — момент инерции. Первый показывает, где находится центр тяжести системы; второй — насколько трудно её раскрутить.

Аналогия оказалась настолько точной, что её просто перенесли целиком. Если заменить массы $m_i$ на вероятности $p_i$ (а их сумма, как и полная масса в нормированной системе, равна единице), то $\sum p_i x_i$ — это матожидание, то есть «центр тяжести» распределения, а $\sum p_i x_i^2$ — второй момент, аналог момента инерции. Пафнутий Львович Чебышёв в работах 1860–1880-х годов сделал моменты своим главным рабочим инструментом: именно через них он доказывал закон больших чисел и подступался к центральной предельной теореме. Его ученики Андрей Марков и Александр Ляпунов довели «метод моментов» до состояния строгой техники — Марков в 1884 году защитил магистерскую диссертацию буквально под названием «О некоторых приложениях алгебраических непрерывных дробей», где решал ту самую проблему моментов: можно ли по последовательности чисел $\alpha_1, \alpha_2, \alpha_3, \dots$ восстановить распределение.

Параллельно, в Англии, Карл Пирсон в 1890-х годах занялся совершенно прикладной задачей: биологические данные, которые он мерил (размеры крабов, рост людей, признаки растений), упорно не желали быть нормальными. Одни распределения были скошены вправо, другие — с непохожими на колокол хвостами. Пирсон предложил классифицировать распределения по их моментам и в 1895 году ввёл два теперь общеизвестных коэффициента: $\beta_1$ (мера асимметрии) и $\beta_2$ (мера эксцесса). Именно ему мы обязаны терминами skewness и kurtosis — второе слово он произвёл от греческого κυρτός, «выпуклый, горбатый». Пирсон же придумал вычитать тройку из $\mu_4/\sigma^4$, чтобы нормальное распределение получило ровно ноль и служило точкой отсчёта.

Мостик в сегодня получается прямой и короткий. В 2014 году Дидерик Кингма и Джимми Ба опубликовали статью про оптимизатор Adam — Adaptive Moment Estimation. Его вся суть: на каждом шаге поддерживать оценки первого момента градиента (среднее направление) и второго момента (средний квадрат, то есть масштаб) и делить одно на корень из другого. Тот же самый механический принцип «центр тяжести и момент инерции», который Чебышёв перенёс в вероятность 160 лет назад, сегодня крутится внутри каждой обучающейся нейросети.


Начальные моменты: $\alpha_k = E(X^k)$

Интуиция

Давай разберёмся, зачем вообще возводить случайную величину в степень и брать матожидание. Представь, что распределение — это профиль горы, а ты пытаешься описать его форму, не имея возможности показать картинку. У тебя есть только телефон и право сообщить собеседнику несколько чисел.

Первое, что ты скажешь: «центр горы находится примерно на отметке 3400». Это первый момент — матожидание. Второе: «гора не узкая, разброс порядка 1800». Это уже про второй момент. Третье: «но она несимметричная, левый склон крутой, правый — пологий и длинный». Это третий момент. Четвёртое: «и у правого края есть далеко тянущийся шлейф, гораздо толще, чем у нормального холма». Это четвёртый момент.

Каждое возведение в более высокую степень усиливает роль далёких значений. При $k = 1$ значение $x = 10$ вносит вклад 10, а $x = 1$ — вклад 1: отношение 10 к 1. При $k = 2$ уже 100 к 1. При $k = 4$ — 10000 к 1. Поэтому чем выше момент, тем сильнее он «слушает» хвосты и тем меньше его интересует то, что творится в центре. Это ключевое свойство, из которого растёт всё остальное в уроке.

Определение: Начальным моментом порядка $k$ (или моментом $k$-го порядка относительно нуля) случайной величины $X$ называется величина

$$\alpha_k = E(X^k),$$

если это математическое ожидание существует. Для дискретной величины $\alpha_k = \sum_i x_i^k p_i$, для непрерывной с плотностью $f(x)$ — $\alpha_k = \int_{-\infty}^{+\infty} x^k f(x)\,dx$.

Сразу зафиксируем очевидные, но важные частные случаи:

  • $\alpha_0 = E(X^0) = E(1) = 1$ — нулевой момент всегда равен единице (это просто полная вероятность)
  • $\alpha_1 = E(X) $ — это в точности математическое ожидание, наш старый знакомый из урока 237
  • $\alpha_2 = E(X^2)$ — тот самый «средний квадрат», который ты уже видел в формуле $DX = E(X^2) - (EX)^2$

Обрати внимание на слова «если существует». Это не формальная оговорка юриста — есть вполне реальные распределения, у которых $\alpha_1$ не существует вовсе. Мы разберём такое ниже (спойлер: оно называется распределением Коши, и в данных оно встречается чаще, чем хотелось бы).

Примеры с разбором

Пример 1 (простой): найди первые три начальных момента для игрального кубика

Случайная величина $X$ — число очков на честном шестигранном кубике, каждое значение с вероятностью $1/6$.

Решение:

Шаг 1. Первый момент — обычное среднее:

$$\alpha_1 = \frac{1 + 2 + 3 + 4 + 5 + 6}{6} = \frac{21}{6} = 3{,}5$$

Шаг 2. Второй момент — среднее квадратов:

$$\alpha_2 = \frac{1 + 4 + 9 + 16 + 25 + 36}{6} = \frac{91}{6} \approx 15{,}167$$

Шаг 3. Третий момент — среднее кубов:

$$\alpha_3 = \frac{1 + 8 + 27 + 64 + 125 + 216}{6} = \frac{441}{6} = 73{,}5$$

Проверим ответ: заодно посчитаем дисперсию через связь $DX = \alpha_2 - \alpha_1^2 = \frac{91}{6} - 12{,}25 = 15{,}1\overline{6} - 12{,}25 = 2{,}91\overline{6} = \frac{35}{12}$. Это известное значение дисперсии для кубика ✅

Ответ: $\alpha_1 = 3{,}5$, $\alpha_2 = \frac{91}{6}$, $\alpha_3 = 73{,}5$.

Заметь, как быстро растут моменты: 3,5 → 15,2 → 73,5. Это нормально. Начальные моменты сами по себе плохо сравнимы между распределениями именно потому, что они бешено растут с $k$ и зависят от масштаба. Мы починим это позже стандартизацией.


Пример 2 (средний): моменты равномерного распределения на $[0; 1]$

Решение:

Шаг 1. Плотность равномерного распределения на отрезке $[0; 1]$ равна $f(x) = 1$ при $x \in [0;1]$ и нулю вне отрезка.

Шаг 2. По определению:

$$\alpha_k = \int_{0}^{1} x^k \cdot 1 \, dx = \left. \frac{x^{k+1}}{k+1} \right|_0^1 = \frac{1}{k+1}$$

Шаг 3. Выпишем первые четыре:

$$\alpha_1 = \frac{1}{2}, \quad \alpha_2 = \frac{1}{3}, \quad \alpha_3 = \frac{1}{4}, \quad \alpha_4 = \frac{1}{5}$$

Проверим ответ: $\alpha_1 = 1/2$ — это середина отрезка, и это правильный ответ для симметричного равномерного распределения ✅. Дисперсия: $\alpha_2 - \alpha_1^2 = 1/3 - 1/4 = 1/12$ — классическое значение для $U[0;1]$ ✅

Ответ: $\alpha_k = \dfrac{1}{k+1}$ для любого $k \geq 0$.

Красивая формула. И обрати внимание: все моменты конечны и монотонно убывают к нулю. Так и должно быть у распределения с ограниченным носителем — никакой $x^k$ не может стать большим, если сам $x$ не превосходит единицы.


Пример 3 (сложный): моменты показательного распределения

Пусть $X$ имеет показательное (экспоненциальное) распределение с параметром $\lambda > 0$, то есть плотность $f(x) = \lambda e^{-\lambda x}$ при $x \geq 0$. Найди $\alpha_k$ для произвольного $k$.

Решение:

Шаг 1. Пишем интеграл:

$$\alpha_k = \int_0^{\infty} x^k \lambda e^{-\lambda x} \, dx$$

Шаг 2. Сделаем замену $t = \lambda x$, тогда $x = t/\lambda$, $dx = dt/\lambda$:

$$\alpha_k = \int_0^{\infty} \frac{t^k}{\lambda^k} \cdot \lambda e^{-t} \cdot \frac{dt}{\lambda} = \frac{1}{\lambda^k} \int_0^{\infty} t^k e^{-t} \, dt$$

Шаг 3. Интеграл справа — это гамма-функция в целой точке, $\Gamma(k+1) = k!$. Значит:

$$\alpha_k = \frac{k!}{\lambda^k}$$

Шаг 4. Выпишем первые четыре момента:

$$\alpha_1 = \frac{1}{\lambda}, \quad \alpha_2 = \frac{2}{\lambda^2}, \quad \alpha_3 = \frac{6}{\lambda^3}, \quad \alpha_4 = \frac{24}{\lambda^4}$$

Проверим ответ: дисперсия должна получиться $1/\lambda^2$ — известный результат для показательного распределения. Считаем: $\alpha_2 - \alpha_1^2 = \frac{2}{\lambda^2} - \frac{1}{\lambda^2} = \frac{1}{\lambda^2}$ ✅

Ответ: $\alpha_k = \dfrac{k!}{\lambda^k}$.

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

Почему это важно

Начальные моменты — это универсальный «язык описания» распределения, который работает одинаково для дискретных и непрерывных величин, для эмпирических данных и для теоретических моделей. В любой библиотеке анализа данных, когда ты вызываешь scipy.stats.moment или считаешь (x**k).mean(), ты работаешь именно с ними.

Практическая ценность в том, что моменты аддитивны по выборке: чтобы обновить оценку $\alpha_k$ при поступлении новых данных, не нужно хранить всю выборку — достаточно хранить накопленную сумму $\sum x_i^k$ и счётчик. Именно поэтому потоковая статистика (streaming analytics), онлайн-обучение и мониторинг дрейфа признаков в проде построены на моментах, а не на, скажем, квантилях: квантили требуют помнить всё, моменты — только несколько чисел. Тот же принцип, кстати, лежит в основе экспоненциальных скользящих средних в Adam, до которых мы скоро доберёмся.


Центральные моменты: $\mu_k = E(X - EX)^k$

Интуиция

С начальными моментами есть большая практическая проблема: они завязаны на то, где находится ноль. Если ты меришь температуру в градусах Цельсия, у тебя одни моменты; переведёшь в Кельвины — сдвинешь всё на 273, и $\alpha_2$, $\alpha_3$, $\alpha_4$ поменяются до неузнаваемости. А форма распределения при этом не изменилась ни на йоту! Просто сдвинули график вправо.

Представь, что ты фотографируешь гору и хочешь описать её форму. Тебе не важно, на каком километре трассы она стоит — важна сама форма. Логичное решение: перед измерением перенести начало координат в центр тяжести распределения. То есть смотреть не на $X$, а на отклонение $X - EX$.

Именно это и делают центральные моменты. Они меряют распределение относительно его собственного среднего, и потому нечувствительны к сдвигу. Это ровно то же самое, что ты уже делал с дисперсией: $DX = E(X - EX)^2$ — это и есть центральный момент второго порядка, просто ты не знал, что у него есть номер.

Определение: Центральным моментом порядка $k$ случайной величины $X$ называется величина

$$\mu_k = E\big[(X - EX)^k\big] = E\big[(X - \alpha_1)^k\big],$$

если это математическое ожидание существует.

Разберём первые четыре, они все имеют собственный смысл:

  • $\mu_0 = E\big[(X-EX)^0\big] = 1$ — тривиально
  • $\mu_1 = E(X - EX) = EX - EX = 0$ — всегда ноль, для любой величины. Это прямое следствие линейности матожидания и одновременно проверка правильности: если у тебя в расчётах $\mu_1 \neq 0$, где-то ошибка
  • $\mu_2 = E(X - EX)^2 = DX$ — это дисперсия, урок 238
  • $\mu_3$ — отвечает за асимметрию: у симметричного распределения он равен нулю, при перекосе вправо положителен, влево — отрицателен
  • $\mu_4$ — отвечает за толщину хвостов: чем больше, тем чаще встречаются далёкие выбросы

📌 Ключевое свойство: центральные моменты не меняются при сдвиге. Если $Y = X + b$, то $EY = EX + b$, значит $Y - EY = X - EX$, и все $\mu_k$ у $Y$ и $X$ совпадают. А вот масштаб на них влияет: при $Y = aX$ получаем $\mu_k(Y) = a^k \mu_k(X)$. Это мы починим на следующем шаге — стандартизацией.

Примеры с разбором

Пример 4 (простой): центральные моменты трёхточечной величины

Пусть $X$ принимает значения $-1$, $0$, $1$ с вероятностями $0{,}25$; $0{,}5$; $0{,}25$. Найди $\mu_2$, $\mu_3$, $\mu_4$.

Решение:

Шаг 1. Сначала центр: $EX = (-1)(0{,}25) + 0 \cdot 0{,}5 + 1 \cdot 0{,}25 = 0$. Удобно — центр совпал с нулём, значит $X - EX = X$.

Шаг 2. Второй момент:

$$\mu_2 = (-1)^2 (0{,}25) + 0^2 (0{,}5) + 1^2 (0{,}25) = 0{,}25 + 0 + 0{,}25 = 0{,}5$$

Шаг 3. Третий:

$$\mu_3 = (-1)^3 (0{,}25) + 0 + 1^3 (0{,}25) = -0{,}25 + 0{,}25 = 0$$

Шаг 4. Четвёртый:

$$\mu_4 = (-1)^4 (0{,}25) + 0 + 1^4(0{,}25) = 0{,}25 + 0{,}25 = 0{,}5$$

Проверим ответ: распределение симметрично относительно нуля, поэтому все нечётные центральные моменты обязаны быть нулевыми — и $\mu_3 = 0$ это подтверждает ✅

Ответ: $\mu_2 = 0{,}5$, $\mu_3 = 0$, $\mu_4 = 0{,}5$.


Пример 5 (средний): несимметричная величина

Пусть $X$ принимает значения $0$, $1$, $10$ с вероятностями $0{,}5$; $0{,}4$; $0{,}1$. Это грубая модель признака «сумма покупки»: половина клиентов ничего не купили, сорок процентов купили на единицу, десять процентов — крупные покупатели. Найди $\mu_2$ и $\mu_3$.

Решение:

Шаг 1. Центр:

$$EX = 0 \cdot 0{,}5 + 1 \cdot 0{,}4 + 10 \cdot 0{,}1 = 0 + 0{,}4 + 1 = 1{,}4$$

Шаг 2. Отклонения от центра: $0 - 1{,}4 = -1{,}4$; $1 - 1{,}4 = -0{,}4$; $10 - 1{,}4 = 8{,}6$.

Шаг 3. Второй центральный момент:

$$\mu_2 = 0{,}5 \cdot (-1{,}4)^2 + 0{,}4 \cdot (-0{,}4)^2 + 0{,}1 \cdot (8{,}6)^2$$

$$\mu_2 = 0{,}5 \cdot 1{,}96 + 0{,}4 \cdot 0{,}16 + 0{,}1 \cdot 73{,}96 = 0{,}98 + 0{,}064 + 7{,}396 = 8{,}44$$

Шаг 4. Третий центральный момент:

$$\mu_3 = 0{,}5 \cdot (-1{,}4)^3 + 0{,}4 \cdot (-0{,}4)^3 + 0{,}1 \cdot (8{,}6)^3$$

$$\mu_3 = 0{,}5 \cdot (-2{,}744) + 0{,}4 \cdot (-0{,}064) + 0{,}1 \cdot 636{,}056$$

$$\mu_3 = -1{,}372 - 0{,}0256 + 63{,}6056 = 62{,}208$$

Проверим ответ: посчитаем контрольную сумму $\mu_1$, которая обязана быть нулём: $0{,}5(-1{,}4) + 0{,}4(-0{,}4) + 0{,}1(8{,}6) = -0{,}7 - 0{,}16 + 0{,}86 = 0$ ✅

Ответ: $\mu_2 = 8{,}44$, $\mu_3 \approx 62{,}21$.

Обрати внимание на арифметику: почти весь третий момент ($63{,}6$ из $62{,}2$ итоговых) даёт одна точка с вероятностью всего $0{,}1$. Это и есть та самая «чувствительность к хвостам»: чем выше степень, тем больше вклад редких далёких значений. Именно поэтому оценки $\mu_3$ и $\mu_4$ по небольшой выборке крайне нестабильны — один выброс двигает их радикально.


Пример 6 (сложный): центральные моменты показательного распределения

Для $X \sim \text{Exp}(\lambda)$ найди $\mu_2$, $\mu_3$, $\mu_4$, используя уже посчитанные начальные моменты $\alpha_k = k!/\lambda^k$.

Решение:

Шаг 1. Обозначим $m = \alpha_1 = 1/\lambda$ и раскроем скобки в $E(X - m)^2$:

$$\mu_2 = E(X^2) - 2m E(X) + m^2 = \alpha_2 - 2m^2 + m^2 = \alpha_2 - m^2 = \frac{2}{\lambda^2} - \frac{1}{\lambda^2} = \frac{1}{\lambda^2}$$

Шаг 2. Раскроем куб: $(X-m)^3 = X^3 - 3mX^2 + 3m^2 X - m^3$. Берём матожидание:

$$\mu_3 = \alpha_3 - 3m\alpha_2 + 3m^2 \alpha_1 - m^3 = \alpha_3 - 3m\alpha_2 + 3m^3 - m^3 = \alpha_3 - 3m\alpha_2 + 2m^3$$

Подставляем:

$$\mu_3 = \frac{6}{\lambda^3} - 3 \cdot \frac{1}{\lambda} \cdot \frac{2}{\lambda^2} + 2 \cdot \frac{1}{\lambda^3} = \frac{6 - 6 + 2}{\lambda^3} = \frac{2}{\lambda^3}$$

Шаг 3. Четвёртая степень: $(X-m)^4 = X^4 - 4mX^3 + 6m^2X^2 - 4m^3X + m^4$, откуда

$$\mu_4 = \alpha_4 - 4m\alpha_3 + 6m^2\alpha_2 - 4m^4 + m^4 = \alpha_4 - 4m\alpha_3 + 6m^2\alpha_2 - 3m^4$$

Подставляем:

$$\mu_4 = \frac{24}{\lambda^4} - \frac{4 \cdot 6}{\lambda^4} + \frac{6 \cdot 2}{\lambda^4} - \frac{3}{\lambda^4} = \frac{24 - 24 + 12 - 3}{\lambda^4} = \frac{9}{\lambda^4}$$

Проверим ответ: $\mu_3 = 2/\lambda^3 > 0$ — и действительно, показательное распределение перекошено вправо (длинный правый хвост), что согласуется с положительным третьим моментом ✅

Ответ: $\mu_2 = \dfrac{1}{\lambda^2}$, $\mu_3 = \dfrac{2}{\lambda^3}$, $\mu_4 = \dfrac{9}{\lambda^4}$.

Почему это важно

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

В машинном обучении это работает буквально каждый день. Когда ты центрируешь признаки (x - x.mean()), ты переходишь к центральным моментам. Когда BatchNorm вычитает среднее по батчу — то же самое. Когда в градиентном спуске с моментом (SGD momentum) ты накапливаешь скользящее среднее градиентов — ты оцениваешь первый момент, и он не «центральный» только потому, что для градиента в оптимуме нулём и является идеальное среднее.


Связь начальных и центральных моментов

Интуиция

Здесь всё держится на одной простой мысли: центральный момент — это начальный момент сдвинутой величины. А сдвиг — это бином Ньютона. Раскрываешь $(X - m)^k$ по биному, берёшь матожидание от каждого слагаемого (матожидание линейно, поэтому оно спокойно заходит внутрь суммы) — и получаешь центральный момент через начальные.

Зачем это нужно на практике? Потому что считать напрямую центральный момент неудобно: нужно сначала пройти по всем данным, найти среднее, потом пройти второй раз, вычитая среднее. Два прохода. А через начальные моменты хватает одного прохода: копишь суммы $\sum x_i$, $\sum x_i^2$, $\sum x_i^3$, $\sum x_i^4$ — и в конце пересчитываешь. Это классический приём потоковой статистики.

Определение (связь моментов): для любого $k$, при котором моменты существуют, справедливо

$$\mu_k = \sum_{j=0}^{k} \binom{k}{j} (-1)^{k-j} \alpha_j \, m^{k-j}, \qquad \alpha_k = \sum_{j=0}^{k} \binom{k}{j} \mu_j \, m^{k-j},$$

где $m = \alpha_1 = EX$, $\alpha_0 = \mu_0 = 1$.

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

Из начальных в центральные:

  • $\mu_2 = \alpha_2 - m^2$
  • $\mu_3 = \alpha_3 - 3m\alpha_2 + 2m^3$
  • $\mu_4 = \alpha_4 - 4m\alpha_3 + 6m^2\alpha_2 - 3m^4$

Из центральных в начальные:

  • $\alpha_2 = \mu_2 + m^2$
  • $\alpha_3 = \mu_3 + 3m\mu_2 + m^3$
  • $\alpha_4 = \mu_4 + 4m\mu_3 + 6m^2\mu_2 + m^4$

Первая формула $\mu_2 = \alpha_2 - m^2$ — это в точности $DX = E(X^2) - (EX)^2$ из урока 238. Просто теперь ты видишь, что она не одинокая магическая формула, а первый член целого семейства.

Примеры с разбором

Пример 7 (средний): восстановление центральных моментов по начальным

Известно, что у случайной величины $\alpha_1 = 2$, $\alpha_2 = 8$, $\alpha_3 = 44$, $\alpha_4 = 280$. Найди $\mu_2$, $\mu_3$, $\mu_4$.

Решение:

Шаг 1. Обозначим $m = \alpha_1 = 2$.

Шаг 2. Второй центральный момент:

$$\mu_2 = \alpha_2 - m^2 = 8 - 4 = 4$$

Значит $\sigma = 2$.

Шаг 3. Третий:

$$\mu_3 = \alpha_3 - 3m\alpha_2 + 2m^3 = 44 - 3 \cdot 2 \cdot 8 + 2 \cdot 8 = 44 - 48 + 16 = 12$$

Шаг 4. Четвёртый:

$$\mu_4 = \alpha_4 - 4m\alpha_3 + 6m^2\alpha_2 - 3m^4$$

$$\mu_4 = 280 - 4 \cdot 2 \cdot 44 + 6 \cdot 4 \cdot 8 - 3 \cdot 16 = 280 - 352 + 192 - 48 = 72$$

Проверим ответ: пойдём обратно, из центральных в начальные. $\alpha_3 = \mu_3 + 3m\mu_2 + m^3 = 12 + 3 \cdot 2 \cdot 4 + 8 = 12 + 24 + 8 = 44$ ✅. И $\alpha_4 = \mu_4 + 4m\mu_3 + 6m^2\mu_2 + m^4 = 72 + 4 \cdot 2 \cdot 12 + 6 \cdot 4 \cdot 4 + 16 = 72 + 96 + 96 + 16 = 280$ ✅

Ответ: $\mu_2 = 4$, $\mu_3 = 12$, $\mu_4 = 72$.

Обрати внимание на технический момент: в промежуточных вычислениях $\mu_4$ мы получили большие числа (280, 352, 192), а ответ вышел маленьким — 72. Это катастрофическая потеря точности при вычислениях в плавающей точке. Если данные большие по модулю, разности почти равных чисел съедают значащие цифры. Практический вывод: в реальном коде для потоковой статистики моментов используют не «наивную» формулу, а численно устойчивые алгоритмы Уэлфорда и его обобщения (Пебея). Мы вернёмся к этому в лайфхаках.

Почему это важно

Связь моментов — это не только вычислительный трюк. Она объясняет, почему нельзя просто «взять и сравнить» начальные моменты двух распределений: чем выше порядок, тем сильнее в начальном моменте доминирует слагаемое $m^k$, то есть просто степень среднего. Например, у признака «доход в рублях» со средним 80 000 значение $\alpha_4$ будет порядка $10^{19}$, и в нём информация о форме утоплена в шуме от $m^4$. А центральный момент $\mu_4$ показывает именно форму.

Ровно поэтому в отчётах и в API библиотек ты почти никогда не видишь «сырой» четвёртый момент — видишь эксцесс, то есть $\mu_4$, нормированный на $\sigma^4$. К нормировке мы сейчас и переходим.


Коэффициент асимметрии (skewness)

Интуиция

Представь два распределения зарплат в двух компаниях. В первой все получают примерно одинаково: гистограмма — аккуратный симметричный холм вокруг 150 тысяч. Во второй большинство получает 80–120 тысяч, но есть десяток топ-менеджеров с зарплатами в 2–5 миллионов. Средние у обеих компаний могут совпасть, дисперсии — тоже подогнать можно. А распределения совершенно разные.

Разница — в симметрии. Второе распределение перекошено вправо: у него длинный тонкий хвост, уходящий в большие значения, и плотная «шишка» слева. Формально это ловится третьим центральным моментом.

Почему именно третьим? Потому что куб сохраняет знак. Значения, которые больше среднего, дают положительный вклад $(x - m)^3 > 0$; меньше среднего — отрицательный. У симметричного распределения вклады взаимно уничтожаются и $\mu_3 = 0$. А если хвост тянется вправо — далёкие положительные отклонения, возведённые в куб, перевешивают многочисленные, но маленькие отрицательные. Получается $\mu_3 > 0$.

Но у $\mu_3$ есть недостаток: он зависит от масштаба. Если перевести зарплаты из рублей в тысячи рублей, $\mu_3$ уменьшится в миллиард раз, хотя форма графика не изменилась. Лечение — поделить на $\sigma^3$, который меняется точно так же. Получим безразмерное число.

Определение: Коэффициентом асимметрии (skewness) случайной величины $X$ называется

$$\gamma_1 = \frac{\mu_3}{\sigma^3} = \frac{E(X - EX)^3}{\big(\sqrt{DX}\big)^3} = E\left[\left(\frac{X - EX}{\sigma}\right)^3\right],$$

то есть третий момент стандартизованной величины $Z = (X - EX)/\sigma$.

Как читать значение:

  • $\gamma_1 = 0$ — распределение симметрично относительно среднего (или, как минимум, перекосы взаимно погашаются)
  • $\gamma_1 > 0$ — правосторонняя асимметрия (positive skew): длинный правый хвост, «шишка» слева. Типично: $\text{среднее} > \text{медиана} > \text{мода}$
  • $\gamma_1 < 0$ — левосторонняя асимметрия (negative skew): длинный левый хвост, «шишка» справа. Типично: $\text{среднее} < \text{медиана} < \text{мода}$

📌 Мнемоника, которая работает всегда: хвост показывает направление знака. Хвост тянется вправо — асимметрия положительная. Хвост влево — отрицательная. Ошибка «шишка слева, значит асимметрия левая» — самая частая, и от неё эта мнемоника спасает.

Как это выглядит на графике. Возьми нормальную кривую — идеальный симметричный колокол, $\gamma_1 = 0$. Теперь мысленно возьми её правый край и потяни вправо, растягивая: вершина при этом сместится влево, правый склон станет длинным и пологим, левый — коротким и крутым. Вот это и есть $\gamma_1 > 0$. Классические примеры: доходы, цены на недвижимость, время отклика сервера, длительность сессии пользователя, размер файла, число просмотров у роликов — везде куча маленьких значений и редкие гиганты.

Зеркальная картинка ($\gamma_1 < 0$) в жизни встречается реже, но тоже бывает: возраст смерти в развитых странах (большинство доживает до 75–85, хвост тянется в молодые возрасты), процент выполнения простого теста (все около 90–100%, хвост вниз к неудачникам), время до дедлайна при сдаче задания.

Ориентиры по величине, которых обычно придерживаются на практике:

  • $|\gamma_1| < 0{,}5$ — распределение почти симметрично, ничего делать не надо
  • $0{,}5 < |\gamma_1| < 1$ — умеренная асимметрия, стоит присмотреться
  • $|\gamma_1| > 1$ — сильная асимметрия, преобразование признака почти наверняка поможет

Примеры с разбором

Пример 8 (простой): асимметрия распределения Бернулли

Пусть $X$ принимает значение 1 с вероятностью $p$ и 0 с вероятностью $q = 1 - p$. Найди $\gamma_1$.

Решение:

Шаг 1. Все начальные моменты одинаковы, потому что $1^k = 1$ и $0^k = 0$:

$$\alpha_k = 1^k \cdot p + 0^k \cdot q = p \quad \text{для любого } k \geq 1$$

Шаг 2. Значит $m = p$ и $\mu_2 = \alpha_2 - m^2 = p - p^2 = pq$.

Шаг 3. Третий центральный момент:

$$\mu_3 = \alpha_3 - 3m\alpha_2 + 2m^3 = p - 3p^2 + 2p^3 = p(1 - 3p + 2p^2) = p(1-p)(1-2p) = pq(q - p)$$

Шаг 4. Делим на $\sigma^3 = (pq)^{3/2}$:

$$\gamma_1 = \frac{pq(q-p)}{(pq)^{3/2}} = \frac{q - p}{\sqrt{pq}}$$

Проверим ответ: при $p = 0{,}5$ имеем $q - p = 0$, значит $\gamma_1 = 0$ — честная монета симметрична ✅. При $p = 0{,}1$: $\gamma_1 = (0{,}9 - 0{,}1)/\sqrt{0{,}09} = 0{,}8/0{,}3 \approx 2{,}67$ — сильный перекос вправо, что логично: почти все значения нули, и редкие единицы образуют «хвост» ✅

Ответ: $\gamma_1 = \dfrac{q - p}{\sqrt{pq}} = \dfrac{1 - 2p}{\sqrt{p(1-p)}}$.

Полезное практическое следствие: у сильно несбалансированного бинарного таргета (скажем, доля положительного класса 1%) асимметрия огромна — около $9{,}9$. Это одна из формальных причин, почему несбалансированные задачи такие капризные.


Пример 9 (средний): асимметрия показательного распределения

Используя $\mu_2 = 1/\lambda^2$ и $\mu_3 = 2/\lambda^3$ из примера 6, найди $\gamma_1$ для $X \sim \text{Exp}(\lambda)$.

Решение:

Шаг 1. Стандартное отклонение: $\sigma = \sqrt{\mu_2} = \sqrt{1/\lambda^2} = 1/\lambda$.

Шаг 2. Куб: $\sigma^3 = 1/\lambda^3$.

Шаг 3. Делим:

$$\gamma_1 = \frac{\mu_3}{\sigma^3} = \frac{2/\lambda^3}{1/\lambda^3} = 2$$

Проверим ответ: результат не зависит от $\lambda$ — и это правильно. Параметр $\lambda$ задаёт только масштаб, а $\gamma_1$ — безразмерная характеристика формы, она обязана быть инвариантна к масштабу ✅

Ответ: $\gamma_1 = 2$ для любого показательного распределения.

Двойка — важный ориентир. Показательное распределение — эталон «умеренно тяжёлого правого хвоста». Если у твоего признака $\gamma_1 \approx 2$, он ведёт себя примерно как время между событиями в пуассоновском потоке. Если $\gamma_1 = 15$ — там что-то посерьёзнее, скорее всего степенной хвост или несколько экстремальных выбросов.


Пример 10 (сложный): асимметрия выборки и эффект логарифмирования

Дан признак «сумма заказа» с выборкой (в тысячах рублей): $1, 1, 2, 2, 3, 4, 5, 8, 14, 40$. Оцени выборочный коэффициент асимметрии, потом прологарифмируй значения и оцени асимметрию снова.

Решение:

Шаг 1. Среднее исходной выборки:

$$\bar{x} = \frac{1+1+2+2+3+4+5+8+14+40}{10} = \frac{80}{10} = 8$$

Шаг 2. Отклонения от среднего: $-7, -7, -6, -6, -5, -4, -3, 0, 6, 32$.

Шаг 3. Сумма квадратов:

$$49 + 49 + 36 + 36 + 25 + 16 + 9 + 0 + 36 + 1024 = 1280$$

Значит $\hat{\mu}_2 = 1280/10 = 128$, откуда $\sigma \approx 11{,}31$ и $\sigma^3 \approx 1448{,}2$.

Шаг 4. Сумма кубов:

$$-343 - 343 - 216 - 216 - 125 - 64 - 27 + 0 + 216 + 32768 = 31650$$

Считаем аккуратно: $-343-343 = -686$; $-686-216 = -902$; $-902-216 = -1118$; $-1118-125 = -1243$; $-1243-64 = -1307$; $-1307-27 = -1334$; $-1334 + 0 = -1334$; $-1334+216 = -1118$; $-1118 + 32768 = 31650$. Значит $\hat{\mu}_3 = 3165$.

Шаг 5. Асимметрия:

$$\gamma_1 = \frac{3165}{1448{,}2} \approx 2{,}19$$

Шаг 6. Теперь логарифмируем (натуральный логарифм, округляем до трёх знаков): $\ln 1 = 0$; $\ln 2 = 0{,}693$; $\ln 3 = 1{,}099$; $\ln 4 = 1{,}386$; $\ln 5 = 1{,}609$; $\ln 8 = 2{,}079$; $\ln 14 = 2{,}639$; $\ln 40 = 3{,}689$.

Новая выборка: $0; 0; 0{,}693; 0{,}693; 1{,}099; 1{,}386; 1{,}609; 2{,}079; 2{,}639; 3{,}689$.

Шаг 7. Новое среднее: сумма $= 0 + 0 + 0{,}693 + 0{,}693 + 1{,}099 + 1{,}386 + 1{,}609 + 2{,}079 + 2{,}639 + 3{,}689 = 13{,}887$, среднее $\approx 1{,}389$.

Шаг 8. Отклонения: $-1{,}389; -1{,}389; -0{,}696; -0{,}696; -0{,}290; -0{,}003; 0{,}220; 0{,}690; 1{,}250; 2{,}300$.

Сумма квадратов $\approx 1{,}929 + 1{,}929 + 0{,}484 + 0{,}484 + 0{,}084 + 0 + 0{,}048 + 0{,}476 + 1{,}563 + 5{,}290 = 12{,}287$, откуда $\hat{\mu}_2 \approx 1{,}229$, $\sigma \approx 1{,}109$, $\sigma^3 \approx 1{,}363$.

Сумма кубов $\approx -2{,}680 - 2{,}680 - 0{,}337 - 0{,}337 - 0{,}024 - 0 + 0{,}011 + 0{,}329 + 1{,}953 + 12{,}167 = 8{,}402$, значит $\hat{\mu}_3 \approx 0{,}840$.

Шаг 9. Новая асимметрия:

$$\gamma_1^{\text{log}} = \frac{0{,}840}{1{,}363} \approx 0{,}62$$

Проверим ответ: асимметрия упала с $2{,}19$ до $0{,}62$, то есть из зоны «сильная» перешла в зону «умеренная» ✅. Логарифм сжимает большие значения сильнее, чем маленькие (40 превращается в 3,7, а 1 — в 0), поэтому правый хвост подтягивается к центру.

Ответ: до логарифмирования $\gamma_1 \approx 2{,}19$, после — $\approx 0{,}62$.

Почему это важно

Это самый прикладной раздел урока. Асимметрия признака — прямой сигнал к преобразованию, и в реальном пайплайне проверка df.skew() стоит одной из первых.

Почему перекос вредит моделям? Три причины:

  • Линейные модели (линейная и логистическая регрессия) неявно предполагают, что ошибки более-менее нормальны, а влияние наблюдений сопоставимо. При сильном правом хвосте несколько огромных значений начинают доминировать в функции потерь — модель фактически подстраивается под них и игнорирует основную массу данных.
  • Метрики на расстояниях (kNN, k-means, SVM с RBF) считают евклидовы расстояния. Признак с хвостом до полумиллиона будет задавать расстояние почти единолично, даже если он менее информативен, чем остальные.
  • Градиентные методы плохо сходятся, когда масштабы разных признаков различаются на порядки, а именно к этому и приводит асимметрия.

Стандартный набор лечения:

  • $\log(x)$ или $\log(1 + x)$ (np.log1p) — базовый выбор для правого хвоста с неотрицательными значениями, безопасен для нулей
  • $\sqrt{x}$ — более мягкий вариант, когда $\log$ переборщил и загнал асимметрию в минус
  • Преобразование Бокса–Кокса $\frac{x^\lambda - 1}{\lambda}$ — подбирает степень $\lambda$ автоматически, минимизируя отклонение от нормальности; требует $x > 0$
  • Преобразование Йео–Джонсона — обобщение Бокса–Кокса, работает и с нулями, и с отрицательными значениями
  • QuantileTransformer(output_distribution='normal') — грубая сила: буквально насильно перегоняет любое распределение в нормальное по рангам

Один важный нюанс, который часто забывают: деревьям (RandomForest, XGBoost, LightGBM, CatBoost) асимметрия безразлична. Дерево делает сплиты по порогам, то есть работает только с порядком значений, а монотонное преобразование порядок не меняет. Логарифмировать признак перед бустингом — почти всегда бессмысленная операция. А вот логарифмировать таргет в задаче регрессии со скошенным целевым признаком — очень даже осмысленно, потому что MSE-лосс живёт в пространстве значений, а не рангов.


Коэффициент эксцесса (kurtosis)

Интуиция

Асимметрия рассказала нам, в какую сторону перекошено распределение. Но есть ещё один вопрос, на который она не отвечает: насколько часто случаются далёкие выбросы?

Представь два трейдера. Первый каждый день зарабатывает или теряет примерно 0,5% — стабильно, скучно, предсказуемо. Второй девяносто девять дней из ста стоит почти в нуле (±0,05%), а на сотый день теряет 20% депозита. Средняя доходность у обоих может быть одинаковой. Волатильность (стандартное отклонение) — тоже, если подобрать числа. Асимметрия — тоже, если сделать симметричные скачки в обе стороны. А риск — совершенно разный.

Разница в том, что у второго распределение имеет тяжёлые хвосты (fat tails) и одновременно острый пик: масса вероятности сконцентрирована очень близко к центру, а всё остальное вынесено далеко-далеко. Именно это ловит четвёртая степень. Четвёртая степень безжалостно усиливает далёкие значения: отклонение в $5\sigma$ даёт вклад $625\sigma^4$, а отклонение в $1\sigma$ — всего $\sigma^4$. Разница в 625 раз.

Определение: Коэффициентом эксцесса (excess kurtosis) случайной величины $X$ называется

$$\gamma_2 = \frac{\mu_4}{\sigma^4} - 3 = E\left[\left(\frac{X - EX}{\sigma}\right)^4\right] - 3.$$

Величину $\beta_2 = \mu_4/\sigma^4$ без вычитания тройки называют просто куртозисом (kurtosis), а $\gamma_2$ — избыточным куртозисом или эксцессом.

Почему вычитают именно тройку

Вопрос, который задаёт каждый нормальный человек. Ответ простой и красивый: потому что у нормального распределения $\mu_4/\sigma^4$ ровно 3.

Давай это увидим. Для стандартного нормального $Z \sim N(0,1)$ известно (мы выведем это позже через производящую функцию), что $E(Z^4) = 3$. Значит $\mu_4 = 3$, $\sigma^4 = 1$, отношение равно 3, а эксцесс равен нулю.

Для произвольного $X \sim N(m, \sigma^2)$ ничего не меняется: $Z = (X-m)/\sigma$ стандартна, а $\gamma_2$ по определению считается именно от стандартизованной величины.

Тройка — это точка отсчёта. Пирсон выбрал её сознательно: нормальное распределение — базовая модель, эталон «нормальной толщины хвостов». Вычитание тройки превращает шкалу в удобную:

  • $\gamma_2 = 0$ — мезокуртическое распределение, хвосты как у нормального
  • $\gamma_2 > 0$ — лептокуртическое (от греч. λεπτός, «тонкий»): острый узкий пик и тяжёлые хвосты. Выбросы случаются заметно чаще, чем предсказала бы нормальная модель
  • $\gamma_2 < 0$ — платикуртическое (от греч. πλατύς, «плоский»): пологая вершина и лёгкие хвосты, экстремальных значений почти нет

⚠️ Важная ловушка терминологии: в разных библиотеках «kurtosis» означает разное. scipy.stats.kurtosis(x) по умолчанию возвращает избыточный эксцесс (то есть уже с вычтенной тройкой, параметр fisher=True). А pandas.Series.kurt() тоже возвращает избыточный, но по несмещённой формуле — на маленьких выборках цифры разойдутся. Если у тебя нормальные данные и функция вернула $\approx 3$, значит она считает $\beta_2$ без вычитания; если $\approx 0$ — с вычитанием. Всегда проверяй это одной строчкой на np.random.randn(100000).

Ориентиры:

  • Равномерное распределение: $\gamma_2 = -1{,}2$ (максимально «плоское», хвостов вообще нет)
  • Нормальное: $\gamma_2 = 0$
  • Показательное: $\gamma_2 = 6$
  • Распределение Лапласа (двустороннее показательное): $\gamma_2 = 3$
  • Распределение Стьюдента с $\nu$ степенями свободы: $\gamma_2 = \frac{6}{\nu - 4}$ при $\nu > 4$; при $\nu \leq 4$ эксцесс бесконечен
  • Дневные доходности акций и индексов: обычно $\gamma_2$ от 3 до 15, иногда за 50

Примеры с разбором

Пример 11 (простой): эксцесс равномерного распределения

Найди $\gamma_2$ для $X \sim U[0;1]$, используя $\alpha_k = 1/(k+1)$.

Решение:

Шаг 1. $m = \alpha_1 = 1/2$, $\alpha_2 = 1/3$, $\alpha_3 = 1/4$, $\alpha_4 = 1/5$.

Шаг 2. Дисперсия: $\mu_2 = 1/3 - 1/4 = 1/12$, значит $\sigma^4 = (1/12)^2 = 1/144$.

Шаг 3. Четвёртый центральный момент:

$$\mu_4 = \alpha_4 - 4m\alpha_3 + 6m^2\alpha_2 - 3m^4 = \frac{1}{5} - 4 \cdot \frac{1}{2} \cdot \frac{1}{4} + 6 \cdot \frac{1}{4} \cdot \frac{1}{3} - 3 \cdot \frac{1}{16}$$$$\mu_4 = 0{,}2 - 0{,}5 + 0{,}5 - 0{,}1875 = 0{,}0125 = \frac{1}{80}$$

Шаг 4. Куртозис:

$$\beta_2 = \frac{\mu_4}{\sigma^4} = \frac{1/80}{1/144} = \frac{144}{80} = 1{,}8$$

Шаг 5. Эксцесс:

$$\gamma_2 = 1{,}8 - 3 = -1{,}2$$

Проверим ответ: $-1{,}2 = -6/5$ — это табличное значение для равномерного распределения ✅. Знак отрицательный — правильно: у равномерного вообще нет хвостов, оно обрывается на краях отрезка.

Ответ: $\gamma_2 = -1{,}2$.

Кстати, $-1{,}2$ — это не самое маленькое возможное значение. Абсолютный минимум эксцесса равен $-2$, и он достигается на распределении Бернулли с $p = 1/2$: вся масса сидит ровно в двух точках, на расстоянии $\sigma$ от центра, никакого разнообразия. Ниже $-2$ эксцесс не опускается никогда — это следствие неравенства $\beta_2 \geq \gamma_1^2 + 1$.


Пример 12 (средний): эксцесс показательного распределения

Решение:

Шаг 1. Из примера 6 у нас $\mu_2 = 1/\lambda^2$ и $\mu_4 = 9/\lambda^4$.

Шаг 2. $\sigma^4 = (\mu_2)^2 = 1/\lambda^4$.

Шаг 3.

$$\gamma_2 = \frac{9/\lambda^4}{1/\lambda^4} - 3 = 9 - 3 = 6$$

Проверим ответ: результат не зависит от $\lambda$ — как и должно быть у безразмерной характеристики формы ✅

Ответ: $\gamma_2 = 6$.

Шесть — это ощутимо тяжёлые хвосты. Если у показательного распределения $\sigma = 1$ (то есть $\lambda = 1$), вероятность увидеть значение больше $5\sigma$ от среднего равна $P(X > 6) = e^{-6} \approx 0{,}0025$. У нормального с тем же $\sigma$ вероятность выйти за $5\sigma$ вправо составляет примерно $2{,}9 \cdot 10^{-7}$ — почти в десять тысяч раз реже.


Пример 13 (сложный): смесь нормальных распределений — откуда берутся тяжёлые хвосты

Пусть с вероятностью $0{,}9$ величина $X$ берётся из $N(0, 1)$ («спокойный режим рынка»), а с вероятностью $0{,}1$ — из $N(0, 9)$, то есть с $\sigma = 3$ («режим паники»). Найди $\gamma_2$ у этой смеси.

Решение:

Шаг 1. Обе компоненты центрированы в нуле, поэтому $EX = 0$ и центральные моменты совпадают с начальными.

Шаг 2. Для смеси моменты усредняются с весами компонент. Второй момент:

$$\mu_2 = 0{,}9 \cdot 1 + 0{,}1 \cdot 9 = 0{,}9 + 0{,}9 = 1{,}8$$

Шаг 3. Для нормальной величины $N(0, s^2)$ четвёртый момент равен $3s^4$. Значит:

$$\mu_4 = 0{,}9 \cdot 3 \cdot 1^2 + 0{,}1 \cdot 3 \cdot 9^2 = 0{,}9 \cdot 3 + 0{,}1 \cdot 243 = 2{,}7 + 24{,}3 = 27$$

Шаг 4. $\sigma^4 = (1{,}8)^2 = 3{,}24$.

Шаг 5.

$$\gamma_2 = \frac{27}{3{,}24} - 3 = 8{,}3\overline{3} - 3 = 5{,}3\overline{3} = \frac{16}{3}$$

Проверим ответ: эксцесс сильно положительный, хотя обе компоненты по отдельности нормальны и имеют нулевой эксцесс ✅ Это принципиально важно.

Ответ: $\gamma_2 = 16/3 \approx 5{,}33$.

Вот это — самый содержательный результат раздела. Смесь нормальных распределений с разными дисперсиями никогда не нормальна и всегда имеет положительный эксцесс. А реальные данные почти всегда представляют собой такую смесь: рынок бывает спокойным и паническим, сервер работает в штатном режиме и под нагрузкой, пользователи делятся на обычных и ботов. Отсюда и берутся тяжёлые хвосты у финансовых рядов: волатильность сама случайна и меняется во времени (это называется стохастической волатильностью и кластеризацией волатильности), и даже если внутри каждого режима доходность идеально нормальна, на длинном горизонте смесь режимов даёт $\gamma_2 \gg 0$.

Почему это важно

Эксцесс — это, по сути, мера риска редких катастроф. Классический пример из истории финансов: 19 октября 1987 года индекс Dow Jones упал на 22,6% за один день. Если бы дневные доходности были нормальны с исторической волатильностью, это событие отстояло бы от среднего примерно на $20$ стандартных отклонений. Вероятность такого события в нормальной модели меньше $10^{-88}$ — то есть его не должно было случиться ни разу за всё время существования Вселенной. Оно случилось. Значит, модель была неверна, и хвосты у доходностей толще нормальных.

В ML эксцесс работает как быстрый диагностический инструмент:

  • Детекция выбросов. Высокий $\gamma_2$ у признака означает, что правило «$3\sigma$» здесь не работает: за три сигмы будет выходить не 0,3% наблюдений, а в разы больше. Пороги нужно ставить по квантилям или через IQR, а не по сигмам.
  • Устойчивость лосса. MSE — это по построению второй момент ошибки, и он крайне чувствителен к хвостам. При тяжёлых хвостах разумнее MAE, Huber loss или квантильная регрессия.
  • Инициализация и стабильность обучения. Взрывающиеся градиенты часто видны как резкий рост эксцесса распределения градиентов по слоям — задолго до того, как норма градиента улетит в NaN. Логировать kurtosis(grad) по слоям — дешёвый и очень чувствительный ранний детектор.
  • Проверка предпосылок. Тест Жарка–Бера, которым проверяют нормальность остатков регрессии, буквально построен на выборочных $\gamma_1$ и $\gamma_2$: статистика $JB = \frac{n}{6}\left(\gamma_1^2 + \frac{\gamma_2^2}{4}\right)$ асимптотически распределена как $\chi^2$ с двумя степенями свободы.

Когда моментов не существует: распределение Коши

Интуиция

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

Момент $\alpha_k = \int x^k f(x)\,dx$ — это интеграл, и он вполне может расходиться. Логика простая: интеграл сходится, если подынтегральная функция достаточно быстро убывает на бесконечности. Плотность $f(x)$ убывает, но $x^k$ растёт. Кто победит — вопрос конкретного распределения.

У нормального распределения плотность убывает как $e^{-x^2/2}$, то есть быстрее любой степени. Экспонента всегда бьёт полином, поэтому у нормального существуют все моменты. У показательного плотность убывает как $e^{-\lambda x}$ — тоже быстрее любой степени, все моменты конечны. А вот если плотность убывает степенным образом, как $f(x) \sim C/x^{a}$, то $x^k f(x) \sim C x^{k-a}$, и интеграл $\int^{\infty} x^{k-a}dx$ сходится только при $k - a < -1$, то есть при $k < a - 1$. Моменты порядка выше этого просто не существуют.

Каноничный пример — распределение Коши.

Определение: случайная величина $X$ имеет стандартное распределение Коши, если её плотность равна

$$f(x) = \frac{1}{\pi(1 + x^2)}, \qquad x \in \mathbb{R}.$$

Внешне это милейший симметричный колокол, очень похожий на нормальную кривую — чуть острее в вершине и чуть шире по бокам. Но плотность убывает как $1/x^2$, а не экспоненциально. И это меняет всё.

Пример 14 (сложный): у распределения Коши нет матожидания

Покажем, что $\alpha_1 = E(X)$ не существует.

Решение:

Шаг 1. По определению матожидание существует, если сходится интеграл от модуля:

$$E|X| = \int_{-\infty}^{+\infty} \frac{|x|}{\pi(1+x^2)}\,dx = \frac{2}{\pi}\int_{0}^{+\infty} \frac{x}{1+x^2}\,dx$$

(двойка появилась из симметрии подынтегральной функции).

Шаг 2. Считаем интеграл. Заметим, что $\frac{x}{1+x^2} = \frac{1}{2}\cdot\frac{(1+x^2)'}{1+x^2}$, значит первообразная — это $\frac{1}{2}\ln(1+x^2)$:

$$\int_{0}^{T} \frac{x\,dx}{1+x^2} = \frac{1}{2}\ln(1+T^2) - \frac{1}{2}\ln 1 = \frac{1}{2}\ln(1+T^2)$$

Шаг 3. Устремляем $T \to \infty$:

$$\lim_{T\to\infty} \frac{1}{2}\ln(1+T^2) = +\infty$$

Шаг 4. Интеграл расходится, значит $E|X| = \infty$, и матожидание не существует.

Ответ: $E(X)$ у распределения Коши не существует; тем более не существуют $\alpha_2$, $DX$, асимметрия и эксцесс.

⚠️ Тонкий момент, который любят на собеседованиях. Кто-то скажет: «но ведь распределение симметрично, значит среднее равно нулю по симметрии!» Это неверно. Формально $\int_{-T}^{T}\frac{x\,dx}{\pi(1+x^2)} = 0$ для любого $T$ — но это так называемое главное значение по Коши, а не матожидание. Матожидание требует, чтобы сходились обе половины интеграла по отдельности, а здесь каждая из них равна $+\infty$ и $-\infty$. Разность $\infty - \infty$ не определена. Медиана у распределения Коши, кстати, прекрасно существует и равна нулю — но медиана это не момент.

Почему это важно

Последствия отсутствия моментов драматичны и на удивление практичны.

Закон больших чисел не работает. Обычно среднее выборки $\bar{X}_n$ сходится к $EX$ при росте $n$. Для Коши сходиться не к чему. Более того, доказано, что среднее $n$ независимых величин Коши само имеет ровно то же распределение Коши. Усредни миллион наблюдений — получишь такой же разброс, как у одного наблюдения. Ноль пользы от сбора данных.

Центральная предельная теорема не работает. ЦПТ (урок 241) требует конечной дисперсии. У Коши её нет, и сумма не сходится к нормальному распределению — она сходится к самому Коши. Это частный случай более общей теории устойчивых распределений.

В реальных данных это встречается. Отношение двух независимых нормальных величин со средним ноль — это ровно Коши. Значит, любой признак вида «отношение двух зашумлённых величин» (конверсия при малом знаменателе, отношение цен, доходность, вычисленная через деление на почти нулевую базу, эластичность) — кандидат на тяжёлые хвосты типа Коши. И на таких признаках среднее — бесполезная статистика: оно скачет от прогона к прогону и не стабилизируется.

Практический вывод для ML: если ты видишь, что выборочное среднее признака или метрики не стабилизируется с ростом объёма данных (посчитал на 10 тысячах — одно, на 100 тысячах — совсем другое, на миллионе — снова другое), это красный флаг «моментов, возможно, нет». Лечение: переходи на робастные статистики — медиану, усечённое среднее (trimmed mean), межквартильный размах вместо дисперсии, ранговые корреляции вместо Пирсона.

Ещё одна практическая деталь: распределение Стьюдента $t_\nu$ имеет конечные моменты только до порядка $\nu - 1$. При $\nu = 1$ это в точности Коши (моментов нет вообще), при $\nu = 2$ есть среднее, но нет дисперсии, при $\nu = 3$ есть дисперсия, но нет эксцесса. Финансовые доходности часто хорошо описываются $t$-распределением с $\nu \approx 3\text{--}5$ — то есть эксцесс у них на грани существования.


Производящая функция моментов

Интуиция

Смотри, какая неприятность вырисовывается. Моментов бесконечно много: $\alpha_1, \alpha_2, \alpha_3, \dots$ Каждый следующий приходится считать отдельным интегралом или отдельной суммой, и с ростом $k$ эти вычисления становятся всё муторнее. Чтобы добраться до $\mu_4$ показательного распределения в примере 6, пришлось сперва посчитать четыре начальных момента, затем раскрыть четвёртую степень бинома и аккуратно собрать пять слагаемых. Для $\mu_5$ возни было бы заметно больше.

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

Идея вот в чём. Возьмём экспоненту и разложим её в ряд:

$$e^{tX} = 1 + tX + \frac{t^2X^2}{2!} + \frac{t^3X^3}{3!} + \dots$$

В этом ряду степени $X$ стоят подряд: $X$, $X^2$, $X^3$ — то есть ровно те штуки, матожидания которых и есть моменты. Возьмём матожидание от обеих частей. Матожидание линейно, поэтому оно проходит внутрь суммы:

$$E(e^{tX}) = 1 + t\,\alpha_1 + \frac{t^2}{2!}\alpha_2 + \frac{t^3}{3!}\alpha_3 + \dots$$

Слева — функция одной переменной $t$. Справа — степенной ряд, коэффициенты которого построены из всех моментов сразу. Все моменты упакованы в одну функцию. Осталось понять, как их оттуда извлекать, и это тоже просто: коэффициенты степенного ряда достаются производными в нуле.

Определение: производящей функцией моментов (ПФМ, англ. moment generating function, MGF) случайной величины $X$ называется функция

$$M_X(t) = E\left(e^{tX}\right),$$

определённая для тех $t$, при которых это матожидание конечно. Говорят, что ПФМ существует, если она конечна на некотором интервале $(-h; h)$ вокруг нуля, где $h > 0$.

Для дискретной величины $M_X(t) = \sum_i e^{t x_i} p_i$, для непрерывной $M_X(t) = \int_{-\infty}^{+\infty} e^{tx} f(x)\,dx$.

Оговорка про интервал вокруг нуля — не формальность. В самом нуле $M_X(0) = E(e^0) = E(1) = 1$ у кого угодно, даже у Коши. Толк от функции появляется только тогда, когда она конечна в целой окрестности нуля: именно там её можно дифференцировать.

Как достаются моменты

Продифференцируем $M_X(t)$ по $t$. Производная $e^{tX}$ по $t$ равна $Xe^{tX}$, поэтому

$$M_X'(t) = E\left(X e^{tX}\right).$$

Подставим $t = 0$: экспонента превращается в единицу, и остаётся $M_X'(0) = E(X) = \alpha_1$.

Дифференцируем ещё раз: $M_X''(t) = E(X^2 e^{tX})$, при $t = 0$ получаем $\alpha_2$. Общая формула получается по индукции — каждое дифференцирование опускает вниз ещё один множитель $X$:

$$M_X^{(k)}(t) = E\left(X^k e^{tX}\right), \qquad \boxed{\ \alpha_k = M_X^{(k)}(0)\ }$$

Отсюда и название: функция производит моменты. Ровно тот же результат виден и со стороны ряда: в разложении $M_X(t) = \sum_k \alpha_k t^k / k!$ коэффициент при $t^k$ равен $\alpha_k/k!$, а $k$-я производная в нуле у степенного ряда как раз равна $k!$, умноженному на этот коэффициент.

⚠️ Тонкость, из-за которой в определении и стоит требование конечности на интервале: чтобы протащить производную под знак матожидания (то есть поменять местами дифференцирование и интегрирование), нужна равномерная оценка подынтегральной функции. Конечность $M_X$ на $(-h; h)$ такую оценку даёт. Если ПФМ конечна только в точке $t = 0$, дифференцировать нечего — нет окрестности.

Примеры с разбором

Пример 15 (простой): ПФМ распределения Бернулли и биномиального

Пусть $X \sim \mathrm{Bern}(p)$: $X = 1$ с вероятностью $p$ и $X = 0$ с вероятностью $q = 1 - p$. Найди $M_X(t)$ и первые два момента при $p = 0{,}4$. Затем найди ПФМ и моменты для $Y \sim \mathrm{Bin}(5; 0{,}4)$.

Решение:

Шаг 1. Сумма по двум точкам:

$$M_X(t) = e^{t \cdot 0} \cdot q + e^{t \cdot 1} \cdot p = q + p e^{t} = 0{,}6 + 0{,}4 e^{t}$$

Шаг 2. Первая производная: $M_X'(t) = p e^t$, значит $\alpha_1 = M_X'(0) = p = 0{,}4$.

Шаг 3. Вторая производная: $M_X''(t) = p e^t$ — та же самая функция. Значит $\alpha_2 = p = 0{,}4$. И вообще $\alpha_k = p$ при любом $k \geq 1$, что понятно и без всякой ПФМ: $X^k = X$, потому что $0^k = 0$ и $1^k = 1$.

Шаг 4. Дисперсия: $DX = \alpha_2 - \alpha_1^2 = 0{,}4 - 0{,}16 = 0{,}24 = pq$.

Шаг 5. Теперь биномиальное. Величина $Y \sim \mathrm{Bin}(n; p)$ — это сумма $n$ независимых бернуллиевских. Забежим на полшага вперёд к свойству, которое разберём ниже: ПФМ суммы независимых равна произведению ПФМ. Значит

$$M_Y(t) = \left(q + p e^t\right)^n = \left(0{,}6 + 0{,}4e^t\right)^5$$

Шаг 6. Дифференцируем по правилу сложной функции:

$$M_Y'(t) = n\left(q + pe^t\right)^{n-1} p e^t, \qquad M_Y'(0) = n \cdot 1 \cdot p = np = 5 \cdot 0{,}4 = 2$$

Шаг 7. Вторая производная — производная произведения $npe^t \cdot (q+pe^t)^{n-1}$:

$$M_Y''(t) = npe^t\left(q+pe^t\right)^{n-1} + npe^t \cdot (n-1)\left(q+pe^t\right)^{n-2} pe^t$$$$M_Y''(0) = np + n(n-1)p^2 = 2 + 5 \cdot 4 \cdot 0{,}16 = 2 + 3{,}2 = 5{,}2$$

Шаг 8. Дисперсия:

$$DY = 5{,}2 - 2^2 = 1{,}2$$

Проверим ответ: табличная дисперсия биномиального равна $npq = 5 \cdot 0{,}4 \cdot 0{,}6 = 1{,}2$ ✅

Ответ: $M_X(t) = q + pe^t$, все $\alpha_k = p$; $M_Y(t) = (q+pe^t)^n$, $EY = np = 2$, $DY = npq = 1{,}2$.


Пример 16 (средний): ПФМ распределения Пуассона и его асимметрия

Пусть $X \sim \mathrm{Pois}(\lambda)$, то есть $P(X = k) = e^{-\lambda}\lambda^k / k!$ при $k = 0, 1, 2, \dots$ Найди ПФМ, первые три начальных момента и коэффициент асимметрии. Числа посчитай при $\lambda = 4$.

Решение:

Шаг 1. Пишем сумму и группируем степени:

$$M_X(t) = \sum_{k=0}^{\infty} e^{tk} \cdot \frac{e^{-\lambda}\lambda^k}{k!} = e^{-\lambda}\sum_{k=0}^{\infty} \frac{\left(\lambda e^t\right)^k}{k!}$$

Шаг 2. Внутри стоит ряд для экспоненты $\sum_k z^k/k! = e^{z}$ при $z = \lambda e^t$. Значит

$$M_X(t) = e^{-\lambda} \cdot e^{\lambda e^t} = e^{\lambda\left(e^t - 1\right)}$$

Ряд сходится при любом $t$, так что ПФМ пуассоновского распределения существует на всей прямой.

Шаг 3. Дифференцируем. Обозначим для краткости $u = u(t) = \lambda e^t$; заметь, что $u' = u$, а $u(0) = \lambda$. Тогда $M = e^{u - \lambda}$ и

$$M' = u\,M$$

При $t = 0$: $\alpha_1 = \lambda \cdot 1 = \lambda = 4$.

Шаг 4. Вторая производная (производная произведения, помним про $u' = u$ и $M' = uM$):

$$M'' = u'M + uM' = uM + u^2M = \left(u + u^2\right)M$$

При $t = 0$: $\alpha_2 = \lambda + \lambda^2 = 4 + 16 = 20$.

Отсюда сразу дисперсия: $DX = 20 - 16 = 4 = \lambda$. У Пуассона среднее и дисперсия совпадают — это его визитная карточка.

Шаг 5. Третья производная:

$$M''' = \left(u + 2u \cdot u'\right)M + \left(u + u^2\right)M' = \left(u + 2u^2\right)M + \left(u + u^2\right)uM = \left(u + 3u^2 + u^3\right)M$$

При $t = 0$: $\alpha_3 = \lambda + 3\lambda^2 + \lambda^3 = 4 + 48 + 64 = 116$.

Шаг 6. Третий центральный момент — по формуле связи из раздела выше:

$$\mu_3 = \alpha_3 - 3\alpha_1\alpha_2 + 2\alpha_1^3 = 116 - 3 \cdot 4 \cdot 20 + 2 \cdot 64 = 116 - 240 + 128 = 4$$

В общем виде получается то же самое: $(\lambda + 3\lambda^2 + \lambda^3) - 3\lambda(\lambda+\lambda^2) + 2\lambda^3 = \lambda$.

Шаг 7. Коэффициент асимметрии:

$$\gamma_1 = \frac{\mu_3}{\sigma^3} = \frac{\lambda}{\lambda^{3/2}} = \frac{1}{\sqrt{\lambda}} = \frac{1}{2} = 0{,}5$$

Проверим ответ: $\gamma_1 > 0$ — распределение скошено вправо, что логично: слева оно упирается в ноль, а справа хвост уходит в бесконечность ✅ И асимметрия убывает с ростом $\lambda$: при $\lambda = 100$ уже $\gamma_1 = 0{,}1$, распределение почти симметрично и хорошо приближается нормальным ✅

Ответ: $M_X(t) = e^{\lambda(e^t-1)}$; $\alpha_1 = 4$, $\alpha_2 = 20$, $\alpha_3 = 116$; $\gamma_1 = 1/\sqrt{\lambda} = 0{,}5$.


Пример 17 (сложный): ПФМ нормального распределения и долгожданное $E(Z^4) = 3$

Выведи ПФМ стандартного нормального $Z \sim N(0;1)$, затем нормального $X \sim N(m; \sigma^2)$, и найди все чётные моменты $Z$. Именно здесь мы закрываем долг из раздела про эксцесс.

Решение:

Шаг 1. По определению:

$$M_Z(t) = \int_{-\infty}^{+\infty} e^{tz} \cdot \frac{1}{\sqrt{2\pi}} e^{-z^2/2}\,dz = \frac{1}{\sqrt{2\pi}}\int_{-\infty}^{+\infty} e^{tz - z^2/2}\,dz$$

Шаг 2. Главный приём — выделить полный квадрат в показателе:

$$tz - \frac{z^2}{2} = -\frac{1}{2}\left(z^2 - 2tz\right) = -\frac{1}{2}\left(z^2 - 2tz + t^2\right) + \frac{t^2}{2} = -\frac{(z-t)^2}{2} + \frac{t^2}{2}$$

Шаг 3. Множитель $e^{t^2/2}$ от $z$ не зависит, выносим его за интеграл:

$$M_Z(t) = e^{t^2/2} \cdot \frac{1}{\sqrt{2\pi}}\int_{-\infty}^{+\infty} e^{-(z-t)^2/2}\,dz$$

Под интегралом осталась плотность нормального распределения $N(t; 1)$ — со сдвинутым центром, но по-прежнему плотность. Интеграл от любой плотности по всей прямой равен единице. Значит

$$M_Z(t) = e^{t^2/2}$$

Шаг 4. Общий случай. Если $X \sim N(m; \sigma^2)$, то $X = m + \sigma Z$, и

$$M_X(t) = E\left(e^{t(m+\sigma Z)}\right) = e^{tm} E\left(e^{(t\sigma) Z}\right) = e^{tm} \cdot e^{\sigma^2 t^2/2} = e^{\,mt + \sigma^2 t^2/2}$$

Проверим на первых двух производных: $M_X'(t) = (m + \sigma^2 t)M_X(t)$, при $t=0$ даёт $\alpha_1 = m$ ✅ Дальше $M_X''(t) = \left[(m+\sigma^2t)^2 + \sigma^2\right]M_X(t)$, при $t=0$ даёт $\alpha_2 = m^2 + \sigma^2$, откуда $DX = \sigma^2$ ✅

Шаг 5. Теперь чётные моменты $Z$. Вместо четырёх дифференцирований разложим $e^{t^2/2}$ в ряд по формуле $e^{w} = \sum_j w^j/j!$ при $w = t^2/2$:

$$M_Z(t) = \sum_{j=0}^{\infty} \frac{1}{j!}\left(\frac{t^2}{2}\right)^{j} = \sum_{j=0}^{\infty} \frac{t^{2j}}{2^j\, j!}$$

Шаг 6. Нечётных степеней $t$ в этом ряду нет вообще — значит все нечётные моменты равны нулю (что и обязано быть у симметричного распределения). А коэффициент при $t^{2j}$ по общей формуле равен $\alpha_{2j}/(2j)!$. Приравниваем:

$$\frac{\alpha_{2j}}{(2j)!} = \frac{1}{2^j\, j!} \qquad \Longrightarrow \qquad \alpha_{2j} = \frac{(2j)!}{2^j\, j!} = (2j-1)!!$$

Шаг 7. Подставляем конкретные $j$:

  • $j = 1$: $\alpha_2 = \dfrac{2!}{2 \cdot 1} = 1$ — дисперсия стандартного нормального
  • $j = 2$: $\alpha_4 = \dfrac{4!}{4 \cdot 2} = \dfrac{24}{8} = 3$
  • $j = 3$: $\alpha_6 = \dfrac{6!}{8 \cdot 6} = \dfrac{720}{48} = 15$
  • $j = 4$: $\alpha_8 = \dfrac{8!}{16 \cdot 24} = \dfrac{40320}{384} = 105$

Проверим ответ: $E(Z^4) = 3$ — ровно то число, которое мы вычитали из $\mu_4/\sigma^4$ при определении эксцесса ✅ Теперь ясно, откуда оно взялось: это четвёртый момент стандартного нормального, посчитанный честно.

Ответ: $M_Z(t) = e^{t^2/2}$, $M_X(t) = e^{mt+\sigma^2t^2/2}$; нечётные моменты $Z$ нулевые, чётные равны $(2j-1)!! = 1 \cdot 3 \cdot 5 \cdots (2j-1)$, в частности $E(Z^4) = 3$, $E(Z^6) = 15$.


ПФМ суммы независимых величин

Вот свойство, ради которого ПФМ в основном и держат в арсенале.

Свойство: если $X$ и $Y$ независимы, то

$$M_{X+Y}(t) = M_X(t) \cdot M_Y(t).$$

Для $n$ независимых слагаемых — произведение $n$ сомножителей. Кроме того, для любых констант: $M_{aX+b}(t) = e^{bt}M_X(at)$.

Доказательство занимает одну строчку. Из независимости $X$ и $Y$ следует независимость $e^{tX}$ и $e^{tY}$ (функции от независимых величин независимы), а матожидание произведения независимых величин равно произведению матожиданий:

$$M_{X+Y}(t) = E\left(e^{t(X+Y)}\right) = E\left(e^{tX} \cdot e^{tY}\right) = E\left(e^{tX}\right)E\left(e^{tY}\right) = M_X(t)M_Y(t)$$

Почему это мощно. Найти распределение суммы двух независимых величин напрямую — значит посчитать свёртку плотностей: $f_{X+Y}(z) = \int f_X(x)f_Y(z-x)\,dx$. Это тяжёлый интеграл даже для двух слагаемых, а для двадцати он безнадёжен. ПФМ превращает свёртку в обычное умножение. Дальше остаётся узнать в получившемся произведении знакомую функцию — и распределение суммы найдено.

Узнавать законно вот почему: ПФМ однозначно определяет распределение. Если у двух величин ПФМ конечны в окрестности нуля и совпадают там, то и распределения совпадают. Это теорема единственности, и она превращает узнавание формулы в строгий вывод.

Пример 18 (средний): суммы через произведение ПФМ

Покажи, что сумма независимых пуассоновских — снова пуассоновская, а сумма независимых нормальных — снова нормальная.

Решение:

Шаг 1. Пусть $X \sim \mathrm{Pois}(\lambda_1)$, $Y \sim \mathrm{Pois}(\lambda_2)$, независимы. Перемножаем ПФМ из примера 16:

$$M_{X+Y}(t) = e^{\lambda_1(e^t-1)} \cdot e^{\lambda_2(e^t-1)} = e^{(\lambda_1+\lambda_2)(e^t-1)}$$

Шаг 2. Справа стоит ПФМ пуассоновского распределения с параметром $\lambda_1 + \lambda_2$. По теореме единственности $X + Y \sim \mathrm{Pois}(\lambda_1 + \lambda_2)$.

Численно: если на сайт заходит в среднем $\lambda_1 = 30$ пользователей в минуту из поиска и $\lambda_2 = 12$ из рассылки, суммарный поток — пуассоновский с $\lambda = 42$, и его дисперсия тоже $42$, а стандартное отклонение $\sqrt{42} \approx 6{,}48$.

Шаг 3. Теперь нормальные: $X \sim N(m_1; \sigma_1^2)$, $Y \sim N(m_2; \sigma_2^2)$, независимы.

$$M_{X+Y}(t) = e^{m_1 t + \sigma_1^2 t^2/2} \cdot e^{m_2 t + \sigma_2^2 t^2/2} = e^{(m_1+m_2)t + (\sigma_1^2+\sigma_2^2)t^2/2}$$

Шаг 4. Это ПФМ нормального распределения с параметрами $m_1 + m_2$ и $\sigma_1^2 + \sigma_2^2$. Значит

$$X + Y \sim N\left(m_1 + m_2;\ \sigma_1^2 + \sigma_2^2\right)$$

Шаг 5. Численный контроль: $X \sim N(10; 9)$, $Y \sim N(-4; 16)$. Тогда $X + Y \sim N(6; 25)$, то есть среднее $6$ и стандартное отклонение $5$. Складываются дисперсии, а не стандартные отклонения: $3 + 4 = 7 \neq 5$.

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

Ответ: $\mathrm{Pois}(\lambda_1) + \mathrm{Pois}(\lambda_2) = \mathrm{Pois}(\lambda_1+\lambda_2)$; $N(m_1;\sigma_1^2) + N(m_2;\sigma_2^2) = N(m_1+m_2;\ \sigma_1^2+\sigma_2^2)$.


Когда ПФМ не существует

Беда та же самая, что мы разбирали на Коши, только выраженная резче. Интеграл $\int e^{tx}f(x)\,dx$ требует, чтобы плотность убывала быстрее экспоненты. Степенное убывание тут даже не рассматривается.

Для распределения Коши при любом $t > 0$

$$M_X(t) = \int_{-\infty}^{+\infty} \frac{e^{tx}}{\pi(1+x^2)}\,dx = +\infty,$$

потому что $e^{tx}$ на плюс-бесконечности растёт, а $1/(1+x^2)$ убывает лишь степенным образом — произведение уходит в бесконечность. При $t < 0$ то же самое ломается на левом хвосте. Конечное значение остаётся ровно в одной точке $t = 0$, где $M_X(0) = 1$. Окрестности нет, дифференцировать негде, моментов нет.

Ещё более коварный случай — логнормальное распределение $X = e^{Z}$, где $Z \sim N(0;1)$. У него все моменты конечны:

$$\alpha_k = E\left(e^{kZ}\right) = M_Z(k) = e^{k^2/2}$$

то есть $\alpha_1 = e^{0{,}5} \approx 1{,}649$, $\alpha_2 = e^{2} \approx 7{,}389$, $\alpha_3 = e^{4{,}5} \approx 90{,}02$. А вот ПФМ при любом $t > 0$ расходится: $E(e^{tX}) = E(e^{te^{Z}})$, и двойная экспонента растёт быстрее, чем гауссова плотность убывает.

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

$$f_\varepsilon(x) = f_{\text{lognorm}}(x)\left[1 + \varepsilon \sin\left(2\pi \ln x\right)\right], \qquad |\varepsilon| \leq 1,$$

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

Практический критерий, который стоит запомнить:

  • ПФМ конечна на интервале вокруг нуля $\Rightarrow$ все моменты конечны, и они однозначно задают распределение
  • Все моменты конечны, но ПФМ расходится $\Rightarrow$ однозначности может не быть (логнормальное — канонический контрпример)
  • ПФМ конечна лишь в нуле $\Rightarrow$ моментов нет вообще (Коши)

Универсальный выход из положения — характеристическая функция $\varphi_X(t) = E\left(e^{itX}\right)$ с мнимой единицей в показателе. Модуль $|e^{itx}| = 1$ при любых вещественных $t$ и $x$, поэтому интеграл сходится всегда, у любой случайной величины без исключений. У Коши характеристическая функция есть и равна $\varphi(t) = e^{-|t|}$ — красивая, аккуратная, просто не дифференцируемая в нуле, отчего моментов и нет. Именно через характеристические функции доказывают центральную предельную теорему (урок 241): ПФМ для этого слишком капризна.

Почему это важно

Свёртки превращаются в умножение. Это тот же трюк, что преобразование Фурье в обработке сигналов или логарифм в арифметике: перейти в пространство, где сложная операция становится простой, поработать там и вернуться. Половина классических результатов теории вероятностей — распределение суммы квадратов нормальных величин ($\chi^2$), устойчивость гамма-распределения относительно сложения, вывод биномиального из бернуллиевских — получается на ПФМ в три строчки, а «в лоб» через свёртки требует страниц.

Кумулянты и разгадка тройки в эксцессе. Возьми логарифм ПФМ: $K_X(t) = \ln M_X(t)$ — это производящая функция кумулянтов. Её производные в нуле дают величины, которые ведут себя ещё удобнее моментов:

$$K'(0) = m, \qquad K''(0) = \sigma^2, \qquad K'''(0) = \mu_3, \qquad K^{(4)}(0) = \mu_4 - 3\sigma^4$$

Посмотри на четвёртый: $\mu_4 - 3\sigma^4$ — это в точности числитель коэффициента эксцесса. Вот настоящая причина, по которой Пирсон вычитал тройку: он (пусть и не в этих терминах) нормировал четвёртый кумулянт, а не четвёртый момент. И проверить это можно мгновенно: у нормального $K_X(t) = mt + \sigma^2t^2/2$ — многочлен второй степени, у которого все производные начиная с третьей тождественно равны нулю. Все кумулянты нормального распределения выше второго — нули. Отсюда и $\gamma_1 = 0$, и $\gamma_2 = 0$.

Оценки хвостов (неравенство Чернова). Из неравенства Маркова, применённого к $e^{tX}$, следует, что при $t > 0$

$$P(X \geq a) = P\left(e^{tX} \geq e^{ta}\right) \leq \frac{M_X(t)}{e^{ta}} = e^{-ta}M_X(t),$$

и это верно для всех $t > 0$ сразу, так что правую часть можно минимизировать. Для $Z \sim N(0;1)$: минимизируем $e^{-ta + t^2/2}$, показатель минимален при $t = a$, и получается

$$P(Z \geq a) \leq e^{-a^2/2}$$

При $a = 5$ это даёт границу $e^{-12{,}5} \approx 3{,}7 \cdot 10^{-6}$. На этом неравенстве стоят все оценки обобщающей способности в статистической теории обучения и понятие субгауссовости — класса распределений, у которых ПФМ ограничена гауссовой, а значит хвосты гарантированно лёгкие. Когда в статье про ML пишут «предположим, что шум субгауссов» — речь ровно про ПФМ.

Прямой аналог в глубоком обучении. Функция $\ln E\left(e^{tX}\right)$ на конечной выборке — это буквально log-sum-exp, то есть знаменатель softmax. А в энергетических моделях и в статистической физике $Z(\beta) = E(e^{-\beta E})$ — статсумма, и производные её логарифма по $\beta$ дают среднюю энергию и теплоёмкость: те же самые первые два кумулянта. Так что производящая функция моментов — не музейный экспонат: ты видишь её каждый раз, когда пишешь torch.logsumexp.


Метод моментов

Интуиция

До сих пор мы шли в одну сторону: известно распределение — считаем его моменты. В реальной работе задача обычно стоит наоборот. У тебя есть выборка: длительности сессий, размеры платежей, времена между кликами. Есть гипотеза о том, какого семейства это распределение — скажем, гамма. Но параметры семейства неизвестны, и их надо оценить по данным.

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

Почему это вообще работает? Потому что закон больших чисел: выборочный момент $\frac{1}{n}\sum x_i^k$ — это среднее независимых одинаково распределённых величин $X_i^k$, и при росте $n$ оно сходится к $E(X^k) = \alpha_k$. То есть выборочные моменты — состоятельные оценки теоретических. Если параметры выражаются через моменты непрерывной функцией, то и оценки параметров получаются состоятельными.

Определение: пусть распределение зависит от $p$ неизвестных параметров $\theta_1, \dots, \theta_p$, а по выборке $x_1, \dots, x_n$ вычислены выборочные начальные моменты

$$\hat\alpha_k = \frac{1}{n}\sum_{i=1}^{n} x_i^{k}.$$

Оценкой по методу моментов называется решение системы

$$\alpha_k(\theta_1, \dots, \theta_p) = \hat\alpha_k, \qquad k = 1, 2, \dots, p.$$

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

Примеры с разбором

Пример 19 (простой): равномерное распределение $U[a; b]$

По выборке получены $\bar x = 5$ и выборочная дисперсия $\hat\sigma^2 = 3$. Оцени границы $a$ и $b$, считая распределение равномерным.

Решение:

Шаг 1. Выписываем теоретические моменты равномерного распределения:

$$EX = \frac{a+b}{2}, \qquad DX = \frac{(b-a)^2}{12}$$

Шаг 2. Приравниваем к выборочным:

$$\frac{a+b}{2} = 5, \qquad \frac{(b-a)^2}{12} = 3$$

Шаг 3. Из второго уравнения: $(b-a)^2 = 36$, а так как $b > a$, получаем $b - a = 6$.

Шаг 4. Из первого: $a + b = 10$. Решаем систему $a+b=10$, $b-a=6$:

$$b = \frac{10 + 6}{2} = 8, \qquad a = \frac{10 - 6}{2} = 2$$

Шаг 5. Общая формула, которую полезно запомнить: из $b - a = \sqrt{12}\,\hat\sigma = 2\sqrt{3}\,\hat\sigma$ следует

$$\hat a = \bar x - \sqrt{3}\,\hat\sigma, \qquad \hat b = \bar x + \sqrt{3}\,\hat\sigma$$

Здесь $\hat\sigma = \sqrt 3 \approx 1{,}732$, и $\sqrt3 \cdot \sqrt3 = 3$, что даёт те же $2$ и $8$.

Проверим ответ: подставим найденные границы обратно. $EX = (2+8)/2 = 5$ ✅ $DX = 6^2/12 = 3$ ✅

Ответ: $\hat a = 2$, $\hat b = 8$.

⚠️ А теперь ловушка, которая делает равномерное распределение любимым учебным контрпримером. Возьмём выборку $0{,}01$; $0{,}5$; $0{,}55$; $0{,}6$; $0{,}65$ (пять наблюдений, одно из них заметно левее остальных). Считаем: $\bar x = 2{,}31/5 = 0{,}462$; $\hat\alpha_2 = 1{,}3351/5 = 0{,}26702$; $\hat\sigma^2 = 0{,}26702 - 0{,}462^2 = 0{,}26702 - 0{,}213444 = 0{,}053576$; $\hat\sigma \approx 0{,}23147$; $\sqrt3\,\hat\sigma \approx 0{,}40091$. Оценки границ:

$$\hat a \approx 0{,}462 - 0{,}401 = 0{,}061, \qquad \hat b \approx 0{,}462 + 0{,}401 = 0{,}863$$

Но в выборке есть наблюдение $0{,}01$, которое меньше оценённой левой границы! Модель, которую нам выдал метод, приписывает уже увиденным данным нулевую вероятность. Метод максимального правдоподобия такой глупости не совершает: для равномерного распределения он даёт $\hat a = \min x_i = 0{,}01$ и $\hat b = \max x_i = 0{,}65$ — оценки, всегда согласованные с данными. Это первый звоночек про то, что метод моментов, при всей его простоте, бывает грубоват.


Пример 20 (средний): гамма-распределение

Длительности сессий моделируются гамма-распределением $\Gamma(k; \theta)$ с $EX = k\theta$ и $DX = k\theta^2$. По выборке из $n = 500$ сессий получено $\bar x = 9$ минут и $\hat\sigma^2 = 27$. Оцени параметры и предскажи асимметрию, зная, что у гаммы $\gamma_1 = 2/\sqrt{k}$.

Решение:

Шаг 1. Система из двух уравнений:

$$k\theta = 9, \qquad k\theta^2 = 27$$

Шаг 2. Делим второе на первое — параметр $k$ сокращается, и $\theta$ находится сразу:

$$\theta = \frac{k\theta^2}{k\theta} = \frac{27}{9} = 3$$

Шаг 3. Подставляем в первое уравнение:

$$k = \frac{9}{\theta} = \frac{9}{3} = 3$$

Шаг 4. Общие формулы, полезные на практике:

$$\hat\theta = \frac{\hat\sigma^2}{\bar x}, \qquad \hat k = \frac{\bar x^{\,2}}{\hat\sigma^2}$$

Обрати внимание на смысл: $\hat k$ — это квадрат обратного коэффициента вариации. Чем стабильнее данные относительно своего среднего, тем больше $k$ и тем ближе гамма к нормальному.

Шаг 5. Предсказываем асимметрию:

$$\gamma_1 = \frac{2}{\sqrt{k}} = \frac{2}{\sqrt{3}} \approx 1{,}155$$

Шаг 6. Это предсказание — бесплатная проверка модели. Мы потратили только два момента, а третий получили как следствие. Считаем выборочную асимметрию по тем же данным и сравниваем: сошлось около $1{,}15$ — гамма адекватна; получилось $3$ или больше — данные тяжелее гаммы, надо смотреть логнормальное или Парето.

Проверим ответ: $k\theta = 3 \cdot 3 = 9$ ✅ $k\theta^2 = 3 \cdot 9 = 27$ ✅ Оба момента воспроизведены точно — по построению метода иначе и быть не может.

Ответ: $\hat\theta = 3$, $\hat k = 3$, предсказанная асимметрия $\gamma_1 \approx 1{,}155$.


Пример 21 (сложный): нормальное распределение и сравнение с максимальным правдоподобием

Выборка: $2, 4, 4, 4, 5, 5, 7, 9$. Оцени параметры $m$ и $\sigma^2$ нормального распределения методом моментов и сравни результат с методом максимального правдоподобия.

Решение:

Шаг 1. Теоретические моменты нормального: $\alpha_1 = m$, $\alpha_2 = m^2 + \sigma^2$.

Шаг 2. Считаем выборочные моменты. Сумма: $2+4+4+4+5+5+7+9 = 40$, значит

$$\hat\alpha_1 = \frac{40}{8} = 5$$

Сумма квадратов: $4+16+16+16+25+25+49+81 = 232$, значит

$$\hat\alpha_2 = \frac{232}{8} = 29$$

Шаг 3. Решаем систему:

$$\hat m = \hat\alpha_1 = 5, \qquad \hat\sigma^2 = \hat\alpha_2 - \hat\alpha_1^2 = 29 - 25 = 4$$

Шаг 4. Проверим вторым способом, через отклонения. Отклонения от среднего: $-3, -1, -1, -1, 0, 0, 2, 4$. Их квадраты: $9, 1, 1, 1, 0, 0, 4, 16$, сумма $= 32$. Делим на $n = 8$: $\hat\sigma^2 = 4$ ✅ Сошлось.

Шаг 5. Теперь максимальное правдоподобие. Логарифм функции правдоподобия для нормального:

$$\ln L(m, \sigma^2) = -\frac{n}{2}\ln(2\pi\sigma^2) - \frac{1}{2\sigma^2}\sum_{i=1}^{n}(x_i - m)^2$$

Приравняв к нулю производные по $m$ и по $\sigma^2$, получаем

$$\hat m_{\text{МП}} = \bar x = 5, \qquad \hat\sigma^2_{\text{МП}} = \frac{1}{n}\sum (x_i - \bar x)^2 = 4$$

Шаг 6. Оценки совпали в точности. Для нормального распределения метод моментов и метод максимального правдоподобия дают один и тот же ответ — это редкое и приятное совпадение, объясняющееся тем, что нормальное распределение полностью описывается первыми двумя моментами и ничем больше.

Шаг 7. Одна общая для обоих методов деталь: оценка $\hat\sigma^2 = 4$ смещена, потому что делится на $n$. Несмещённая оценка делит на $n-1$:

$$s^2 = \frac{32}{7} \approx 4{,}571$$

Различие тут заметное, потому что выборка крошечная: $32/8 = 4$ против $32/7 \approx 4{,}57$ — разница почти $15\%$. При $n = 1000$ она составила бы $0{,}1\%$.

Проверим ответ: подставим обратно: $m^2 + \sigma^2 = 25 + 4 = 29 = \hat\alpha_2$ ✅

Ответ: $\hat m = 5$, $\hat\sigma^2 = 4$; метод моментов и метод максимального правдоподобия для нормального распределения совпадают; несмещённая оценка дисперсии равна $32/7 \approx 4{,}571$.


Метод моментов против максимального правдоподобия

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

Метод моментов Максимальное правдоподобие
Что делает приравнивает моменты максимизирует $\prod f(x_i \mid \theta)$
Вычисления обычно явная формула обычно численная оптимизация
Состоятельность есть есть
Эффективность ниже, дисперсия оценок больше асимптотически минимальная дисперсия
Использует данные только несколько моментов всю форму распределения
Устойчивость к выбросам плохая (высокие моменты чувствительны) зависит от модели
Согласованность с данными может дать невозможную модель по построению не может

Насколько именно метод моментов проигрывает, хорошо видно на том же равномерном распределении. Для $U[0; b]$ оценка максимального правдоподобия $\hat b = \max x_i$ имеет ошибку порядка $b/n$, а моментная $\hat b = \bar x + \sqrt{3}\hat\sigma$ — порядка $b/\sqrt n$. При $n = 100$ это разница между $1\%$ и $10\%$ — десятикратная. Для гамма-распределения разрыв гораздо скромнее: моментные оценки теряют по эффективности единицы или десятки процентов, зато считаются мгновенно и без риска, что оптимизатор куда-нибудь свалится.

Отсюда рабочее правило: метод моментов как стартовая точка, максимальное правдоподобие как финиш. Именно так и устроен scipy.stats.<dist>.fit() — у него есть режим method='MM', а в стандартном режиме method='MLE' моментные оценки часто служат начальным приближением для итеративной оптимизации. Хороший старт экономит итерации и заметно снижает шанс попасть в локальный минимум.

Moment matching

У метода моментов есть более широкий родственник, который в ML встречается чаще самого метода. Идея та же — «подогнать по моментам», — но подгоняют уже не параметры под данные, а одно распределение под другое.

Определение: moment matching — приближение сложного распределения $p$ простым распределением $q$ из выбранного семейства так, чтобы у $q$ совпадали с $p$ первые несколько моментов.

Где это работает:

  • Expectation propagation. Приближая апостериорное распределение гауссианой, минимизация $KL(p \parallel q)$ по $q$ из экспоненциального семейства сводится в точности к приравниванию моментов: у оптимальной гауссианы среднее и дисперсия совпадают со средним и дисперсией $p$. Это не аналогия, а теорема.
  • BatchNorm и LayerNorm. Нормализация активаций — это принудительное приведение первых двух моментов к $0$ и $1$. Буквальный moment matching, встроенный в архитектуру.
  • Инициализация Хе и Ксавье. Дисперсия весов подбирается так, чтобы второй момент сигнала не менялся от слоя к слою. Опять подгонка момента.
  • Обобщённый метод моментов (GMM) в эконометрике: уравнений на моменты берут больше, чем параметров, и минимизируют взвешенную невязку. Так оценивают модели, у которых правдоподобие вообще не выписывается.

И тут же важное предупреждение, которое стоит держать в голове: совпадение первых двух моментов ничего не гарантирует про форму. Двугорбая смесь и одногорбая гауссиана могут иметь идентичные среднее и дисперсию, но выглядеть совершенно по-разному — и решения, принятые по такому приближению, окажутся неверными. Именно в этом слабое место всех гауссовых аппроксимаций в байесовском выводе.

Почему это важно

Мгновенная оценка параметров. Когда нужно быстро подобрать распределение под признак — для генерации синтетики, для симуляции нагрузки, для аналитического прайсинга — метод моментов даёт ответ по двум числам, mean и var, которые уже посчитаны в df.describe(). Ни оптимизатора, ни итераций, ни риска расходимости.

Бесплатная валидация модели. Приём «подогнал по $n$ моментам, проверил по $(n+1)$-му» универсален и стоит десять секунд. Оценил гамму по среднему и дисперсии — сравни предсказанную $\gamma_1 = 2/\sqrt{\hat k}$ с выборочной асимметрией. Разошлись вдвое — семейство выбрано неверно, и лучше узнать об этом сейчас, чем после того, как на модели построен прод.

Мониторинг и потоковые данные. Моменты аддитивны: чтобы обновить оценку, достаточно хранить накопленные суммы $\sum x_i$, $\sum x_i^2$, $\sum x_i^3$ и счётчик. Поэтому в системах мониторинга дрейфа параметры распределения признаков переоценивают именно методом моментов — максимальное правдоподобие потребовало бы держать всю выборку и гонять оптимизацию на каждом окне.

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


Adam: моменты градиента в оптимизаторе

Интуиция

Мы обошли круг и вернулись к тому, с чего начинали урок. Оптимизатор Adam расшифровывается как Adaptive Moment estimation, и слово «моменты» в названии стоит не для красоты: внутри Adam в буквальном смысле оценивает первый и второй моменты распределения градиента.

Откуда вообще берётся распределение? Градиент на шаге обучения считается не по всему датасету, а по случайному мини-батчу. Разные батчи дают разные градиенты. То есть градиент $g_t$ по каждой координате — это случайная величина, у которой есть своё распределение: центр (истинное направление спуска) и разброс (шум от случайности батча). Всё, что мы разбирали про моменты, применимо к нему один в один.

Дальше — простая мысль, из которой вырастает весь алгоритм. Обычный градиентный спуск на каждом шаге верит текущему градиенту целиком, шумам и всему. Разумнее было бы оценить два числа:

  • первый момент $E[g]$ — куда градиент показывает в среднем, то есть устойчивое направление, очищенное от дрожания
  • второй момент $E[g^2]$ — насколько велик градиент по модулю, то есть характерный масштаб этой координаты

И шагать в направлении первого момента, деля на корень из второго. Деление убивает масштаб: если координата систематически даёт большой градиент, её поделят на большое число; если маленький — на маленькое. У всех координат шаг получается одного порядка, и не нужно подбирать свой learning rate под каждый слой.

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

Определение: экспоненциальным скользящим средним (EMA) потока значений $g_1, g_2, \dots$ с коэффициентом $\beta \in (0;1)$ называется последовательность

$$m_t = \beta m_{t-1} + (1-\beta)g_t, \qquad m_0 = 0.$$

Adam хранит две таких оценки:

$$m_t = \beta_1 m_{t-1} + (1-\beta_1)g_t \quad (\text{оценка } E[g]), \qquad v_t = \beta_2 v_{t-1} + (1-\beta_2)g_t^2 \quad (\text{оценка } E[g^2]),$$

затем применяет поправку на смещение

$$\hat m_t = \frac{m_t}{1-\beta_1^{\,t}}, \qquad \hat v_t = \frac{v_t}{1-\beta_2^{\,t}},$$

и делает шаг

$$\theta_{t} = \theta_{t-1} - \eta\,\frac{\hat m_t}{\sqrt{\hat v_t} + \varepsilon}.$$

Стандартные значения: $\beta_1 = 0{,}9$, $\beta_2 = 0{,}999$, $\varepsilon = 10^{-8}$.

Два замечания к определению. Первое: $v_t$ оценивает начальный второй момент $E[g^2]$, а не дисперсию — среднее из него не вычитается. Второе: величина $1/(1-\beta)$ — это эффективная длина окна усреднения. При $\beta_1 = 0{,}9$ окно около $10$ шагов, при $\beta_2 = 0{,}999$ — около $1000$. Масштаб градиента меняется медленно, поэтому его усредняют по длинной истории; направление меняется быстро, поэтому окно короткое.

Откуда берётся поправка на смещение

Раскроем рекуррентную формулу до конца. Подставляя $m_{t-1}$, затем $m_{t-2}$ и так далее до $m_0 = 0$, получаем явную запись:

$$m_t = (1-\beta_1)\sum_{i=1}^{t}\beta_1^{\,t-i} g_i$$

Это взвешенное среднее всех прошлых градиентов, где вес свежего наблюдения равен $(1-\beta_1)$, вес предыдущего — $(1-\beta_1)\beta_1$, и так по геометрической прогрессии. Просуммируем веса:

$$\sum_{i=1}^{t}(1-\beta_1)\beta_1^{\,t-i} = (1-\beta_1)\cdot\frac{1-\beta_1^{\,t}}{1-\beta_1} = 1 - \beta_1^{\,t}$$

Вот в чём загвоздка. У честного взвешенного среднего веса должны давать в сумме единицу, а здесь они дают $1 - \beta_1^{t}$ — величину меньше единицы, особенно на первых шагах. При $t = 1$ и $\beta_1 = 0{,}9$ сумма весов всего $0{,}1$. Если градиент в среднем равен $\bar g$, то

$$E[m_t] = \left(1 - \beta_1^{\,t}\right)\bar g$$

то есть оценка систематически занижена ровно в $1/(1-\beta_1^{t})$ раз. Это чистое смещение, вызванное стартом с нуля: накопитель ещё не разогнался, а недостающий вес фактически отдан фиктивному нулевому «наблюдению» $m_0$.

Лечение напрашивается само: разделить на сумму весов. Это и есть $\hat m_t = m_t/(1-\beta_1^{t})$. С ростом $t$ поправка стремится к единице ($0{,}9^{100} \approx 2{,}7\cdot10^{-5}$) и перестаёт что-либо менять — она нужна только на разогреве.

Отдельно стоит понять, почему без поправки было бы плохо не просто «неточно», а разрушительно. Смещения у $m_t$ и $v_t$ разные: у первого множитель $1-\beta_1^t$, у второго $1-\beta_2^t$, и на первом шаге это $0{,}1$ против $0{,}001$. В отношении $m_t/\sqrt{v_t}$ числитель занижен в $10$ раз, а корень знаменателя — в $\sqrt{1000} \approx 31{,}6$ раза. Итого отношение завышено примерно втрое. Первые шаги обучения получаются втрое длиннее номинальных, и это в самом хрупком месте — на неразогретых весах.

Примеры с разбором

Пример 22 (простой): EMA как оценка первого момента

Пусть градиент три шага подряд равен $g = 2$, $\beta_1 = 0{,}9$, $m_0 = 0$. Посчитай $m_1, m_2, m_3$ и $\hat m_1, \hat m_2, \hat m_3$.

Решение:

Шаг 1. Считаем по рекуррентной формуле:

$$m_1 = 0{,}9 \cdot 0 + 0{,}1 \cdot 2 = 0{,}2$$

$$m_2 = 0{,}9 \cdot 0{,}2 + 0{,}1 \cdot 2 = 0{,}18 + 0{,}2 = 0{,}38$$

$$m_3 = 0{,}9 \cdot 0{,}38 + 0{,}1 \cdot 2 = 0{,}342 + 0{,}2 = 0{,}542$$

Шаг 2. Истинный первый момент равен $2$, а сырые оценки дают $0{,}2$, $0{,}38$, $0{,}542$ — занижение в $10$, в $5{,}26$ и в $3{,}69$ раза соответственно. Занижение тает, но медленно.

Шаг 3. Сверим с явной формулой $m_t = \bar g\left(1-\beta_1^{t}\right)$:

  • $t=1$: $2 \cdot (1 - 0{,}9) = 2 \cdot 0{,}1 = 0{,}2$ ✅
  • $t=2$: $2 \cdot (1 - 0{,}81) = 2 \cdot 0{,}19 = 0{,}38$ ✅
  • $t=3$: $2 \cdot (1 - 0{,}729) = 2 \cdot 0{,}271 = 0{,}542$ ✅

Шаг 4. Применяем поправку:

$$\hat m_1 = \frac{0{,}2}{0{,}1} = 2, \qquad \hat m_2 = \frac{0{,}38}{0{,}19} = 2, \qquad \hat m_3 = \frac{0{,}542}{0{,}271} = 2$$

Проверим ответ: при постоянном градиенте поправленная оценка попадает в истинное значение точно на любом шаге, а не приближённо ✅ Это и есть подтверждение того, что коэффициент $1/(1-\beta^t)$ подобран правильно, а не подогнан на глазок.

Ответ: $m_t = 0{,}2;\ 0{,}38;\ 0{,}542$, а $\hat m_t = 2$ на всех трёх шагах.


Пример 23 (средний): три шага Adam на шумном градиенте

Градиент по одной координате на трёх шагах равен $g_1 = 0{,}4$, $g_2 = -0{,}2$, $g_3 = 0{,}6$. Параметры стандартные: $\beta_1 = 0{,}9$, $\beta_2 = 0{,}999$, $m_0 = v_0 = 0$. Посчитай длину шага в единицах $\eta$ на каждой итерации.

Решение:

Шаг 1. Итерация $t = 1$:

$$m_1 = 0{,}1 \cdot 0{,}4 = 0{,}04, \qquad v_1 = 0{,}001 \cdot 0{,}4^2 = 0{,}001 \cdot 0{,}16 = 0{,}00016$$

Поправки: $1-0{,}9 = 0{,}1$ и $1-0{,}999 = 0{,}001$.

$$\hat m_1 = \frac{0{,}04}{0{,}1} = 0{,}4, \qquad \hat v_1 = \frac{0{,}00016}{0{,}001} = 0{,}16, \qquad \sqrt{\hat v_1} = 0{,}4$$

Отношение: $0{,}4/0{,}4 = 1$. Шаг равен $-\eta$.

Шаг 2. Итерация $t = 2$, градиент сменил знак:

$$m_2 = 0{,}9 \cdot 0{,}04 + 0{,}1 \cdot (-0{,}2) = 0{,}036 - 0{,}02 = 0{,}016$$

$$v_2 = 0{,}999 \cdot 0{,}00016 + 0{,}001 \cdot 0{,}04 = 0{,}00015984 + 0{,}00004 = 0{,}00019984$$

Шаг 3. Поправки на втором шаге: $1 - 0{,}9^2 = 0{,}19$ и $1 - 0{,}999^2 = 1 - 0{,}998001 = 0{,}001999$.

$$\hat m_2 = \frac{0{,}016}{0{,}19} \approx 0{,}08421, \qquad \hat v_2 = \frac{0{,}00019984}{0{,}001999} \approx 0{,}09997$$$$\sqrt{\hat v_2} \approx 0{,}31618 \qquad \Longrightarrow \qquad \frac{\hat m_2}{\sqrt{\hat v_2}} \approx \frac{0{,}08421}{0{,}31618} \approx 0{,}2663$$

Шаг сократился до $-0{,}266\eta$ — почти вчетверо. Логика прозрачна: знак градиента скакнул, накопленное направление $\hat m$ почти обнулилось, а масштаб $\hat v$ остался прежним. Adam автоматически притормаживает там, где градиент похож на шум.

Шаг 4. Итерация $t = 3$:

$$m_3 = 0{,}9 \cdot 0{,}016 + 0{,}1 \cdot 0{,}6 = 0{,}0144 + 0{,}06 = 0{,}0744$$

$$v_3 = 0{,}999 \cdot 0{,}00019984 + 0{,}001 \cdot 0{,}36 = 0{,}00019964 + 0{,}00036 = 0{,}00055964$$

Поправки: $1-0{,}9^3 = 1 - 0{,}729 = 0{,}271$ и $1 - 0{,}999^3 = 1 - 0{,}997003 = 0{,}002997$.

$$\hat m_3 = \frac{0{,}0744}{0{,}271} \approx 0{,}27454, \qquad \hat v_3 = \frac{0{,}00055964}{0{,}002997} \approx 0{,}18673$$$$\sqrt{\hat v_3} \approx 0{,}43213 \qquad \Longrightarrow \qquad \frac{\hat m_3}{\sqrt{\hat v_3}} \approx \frac{0{,}27454}{0{,}43213} \approx 0{,}6353$$

Шаг $-0{,}635\eta$: направление восстановилось, оптимизатор снова разгоняется, но пока не до полного шага — память о развороте ещё жива.

Шаг 5. Сводим в таблицу:

$t$ $g_t$ $\hat m_t$ $\hat v_t$ $\hat m_t/\sqrt{\hat v_t}$ шаг
1 $0{,}4$ $0{,}4$ $0{,}16$ $1{,}000$ $-\eta$
2 $-0{,}2$ $0{,}0842$ $0{,}09997$ $0{,}266$ $-0{,}266\eta$
3 $0{,}6$ $0{,}2745$ $0{,}18673$ $0{,}635$ $-0{,}635\eta$

Проверим ответ: отношение $\hat m_t/\sqrt{\hat v_t}$ на всех шагах лежит в пределах от $-1$ до $1$ ✅ Так и должно быть: по неравенству Коши — Буняковского $\left(E[g]\right)^2 \leq E[g^2]$, поэтому оценка первого момента не может превысить корень из оценки второго. Отсюда важное следствие: длина шага Adam никогда не превосходит $\eta$, каким бы гигантским ни оказался градиент.

Ответ: шаги равны $-\eta$, $-0{,}266\eta$, $-0{,}635\eta$; смена знака градиента гасит шаг вчетверо.


Пример 24 (сложный): Adam против momentum и против RMSProp

Прогони по тем же градиентам $0{,}4$; $-0{,}2$; $0{,}6$ два других оптимизатора и сравни поведение.

Решение:

Шаг 1. Чистый momentum (heavy ball в реализации PyTorch): накапливается только первый момент, деления на масштаб нет.

$$b_t = \mu b_{t-1} + g_t, \qquad \Delta\theta_t = -\eta\, b_t, \qquad \mu = 0{,}9$$$$b_1 = 0{,}4, \qquad b_2 = 0{,}9 \cdot 0{,}4 - 0{,}2 = 0{,}16, \qquad b_3 = 0{,}9 \cdot 0{,}16 + 0{,}6 = 0{,}744$$

Шаги: $-0{,}4\eta$, $-0{,}16\eta$, $-0{,}744\eta$.

Шаг 2. RMSProp: накапливается только второй момент, поправки на смещение нет, в числителе стоит сырой текущий градиент.

$$v_t = 0{,}9 v_{t-1} + 0{,}1 g_t^2, \qquad \Delta\theta_t = -\eta\,\frac{g_t}{\sqrt{v_t}}$$$$v_1 = 0{,}1 \cdot 0{,}16 = 0{,}016, \qquad \sqrt{v_1} \approx 0{,}12649, \qquad \frac{0{,}4}{0{,}12649} \approx 3{,}162$$$$v_2 = 0{,}9 \cdot 0{,}016 + 0{,}1 \cdot 0{,}04 = 0{,}0184, \qquad \sqrt{v_2} \approx 0{,}13565, \qquad \frac{-0{,}2}{0{,}13565} \approx -1{,}474$$$$v_3 = 0{,}9 \cdot 0{,}0184 + 0{,}1 \cdot 0{,}36 = 0{,}05256, \qquad \sqrt{v_3} \approx 0{,}22926, \qquad \frac{0{,}6}{0{,}22926} \approx 2{,}617$$

Шаги: $-3{,}162\eta$, $+1{,}474\eta$, $-2{,}617\eta$.

Шаг 3. Кладём три оптимизатора рядом (длина шага в единицах $\eta$, знак минус — движение в сторону убывания):

$t$ $g_t$ Momentum RMSProp Adam
1 $0{,}4$ $-0{,}400$ $-3{,}162$ $-1{,}000$
2 $-0{,}2$ $-0{,}160$ $+1{,}474$ $-0{,}266$
3 $0{,}6$ $-0{,}744$ $-2{,}617$ $-0{,}635$

Шаг 4. Читаем таблицу по столбцам.

Momentum пропорционален величине градиента: умножь все $g_t$ на тысячу — и все его шаги вырастут в тысячу раз. Это и есть та боль, из-за которой learning rate приходится мучительно подбирать под каждую архитектуру и каждый масштаб данных.

RMSProp масштаб убирает (деление на $\sqrt{v_t}$ безразмерное, умножь градиенты на тысячу — числа в столбце не изменятся), но у него две беды. Первая: числитель — сырой текущий градиент, поэтому на втором шаге RMSProp честно разворачивается и идёт назад с большим шагом, отрабатывая случайный выброс. Второй момент усредняется по длинной истории, а первый не усредняется вообще. Вторая беда: первый шаг длиной $3{,}16\eta$ — прямое следствие отсутствия поправки на смещение, ведь $v_1$ занижен в $10$ раз, а корень из него — в $\sqrt{10} \approx 3{,}16$ раза.

Adam забирает лучшее из обоих: усреднённое направление в числителе (как у momentum), масштабирование в знаменателе (как у RMSProp) и поправку на смещение, которая делает первый шаг ровно $\eta$, а не втрое длиннее.

Шаг 5. Формулой:

$$\text{Adam} = \underbrace{\text{первый момент в числителе}}_{\text{momentum}} + \underbrace{\text{второй момент в знаменателе}}_{\text{RMSProp}} + \underbrace{\text{поправка на смещение}}_{\text{вклад Кингмы и Ба}}$$

Проверим ответ: у Adam модуль шага ни разу не превысил $\eta$, у RMSProp превысил дважды ✅ Ограниченность шага — прямое следствие того, что и числитель, и знаменатель построены из моментов одного и того же градиента.

Ответ: momentum зависит от масштаба градиента, RMSProp от него свободен, но дёргается на шуме и завышает первые шаги; Adam = momentum $+$ RMSProp $+$ поправка на смещение.


Почему это важно

Отношение $\hat m_t/\sqrt{\hat v_t}$ — это сигнал/шум. Взгляни на него глазами теории моментов. Если координата даёт стабильный градиент, то $E[g^2] \approx (E[g])^2$, отношение близко к $\pm 1$, и оптимизатор идёт полным шагом. Если же градиент — чистый шум с нулевым средним, то $E[g] \approx 0$, а $E[g^2] \approx D[g] > 0$, отношение около нуля, и шаг почти не делается. Adam сам тормозит там, где данные не дают согласованного сигнала. Никакой отдельной логики для этого в алгоритме нет — всё вытекает из арифметики двух моментов.

Гиперпараметры $\beta$ — это выбор длины окна. $\beta_1 = 0{,}9$ означает усреднение направления примерно по $10$ последним шагам, $\beta_2 = 0{,}999$ — усреднение масштаба по тысяче. При маленьких батчах градиент шумнее, и $\beta_1$ имеет смысл поднять до $0{,}95$; при обучении на длинных последовательностях в трансформерах часто снижают $\beta_2$ до $0{,}95{-}0{,}98$, чтобы оценка масштаба быстрее реагировала на резкие смены режима и не держалась за устаревшую историю. Если ты понимаешь, что $\beta$ задаёт окно оценки момента, эти настройки перестают быть шаманством.

Поправка на смещение и warmup — про одно и то же. Прогрев learning rate (линейный рост $\eta$ первые несколько тысяч шагов), без которого трансформеры обучаются плохо, лечит остаточную ту же болезнь: на ранних шагах оценки моментов построены по нескольким наблюдениям и потому крайне неустойчивы, даже будучи несмещёнными. Поправка убирает систематическое смещение, а warmup — большую дисперсию оценки. Отсюда же выросли оптимизаторы вроде RAdam, где вклад второго момента включают постепенно, по мере накопления статистики.

Память как цена за моменты. Adam хранит по два числа на каждый параметр модели: $m_t$ и $v_t$. Для модели на $7$ миллиардов параметров в float32 это $7\cdot10^9 \cdot 4 \cdot 2 \approx 56$ ГБ только под состояние оптимизатора — вдвое больше, чем весят сами веса. Отсюда вся индустрия экономии: 8-битный Adam, Adafactor (хранит вместо полной матрицы вторых моментов её построчные и постолбцовые суммы), SGD с momentum в задачах, где второй момент не критичен. Когда в следующий раз увидишь CUDA out of memory — вспомни, что заметная часть памяти ушла на два момента градиента.

AdamW и одна строчка разницы. В AdamW затухание весов (weight decay) вынесено из градиента и добавляется прямо к обновлению параметров. Причина ровно моментная: если $\lambda\theta$ подмешать в градиент, этот регуляризационный вклад попадёт и в $v_t$, а значит будет поделён на корень из второго момента — и сила регуляризации станет разной у координат с разным масштабом градиента. Отвязав decay от моментов, авторы AdamW починили именно эту нестыковку. Сегодня AdamW — дефолт для обучения языковых моделей.


Практика: 30 заданий

Базовые (задания 1-10)

Задание 1: Дискретная величина $X$ принимает значения $0$, $1$, $2$ с вероятностями $0{,}2$; $0{,}5$; $0{,}3$. Найди начальные моменты $\alpha_1$, $\alpha_2$, $\alpha_3$.


Задание 2: У случайной величины известны $\alpha_1 = 3$ и $\alpha_2 = 13$. Найди второй центральный момент и стандартное отклонение.


Задание 3: Величина $X$ принимает значения $2$, $5$, $11$ с вероятностями $0{,}5$; $0{,}3$; $0{,}2$. Проверь, что $\mu_1 = 0$, и найди $\mu_2$.


Задание 4: Величина $X$ равномерно распределена на отрезке $[0; 2]$, то есть $f(x) = 1/2$ при $x \in [0;2]$ и $0$ вне отрезка. Найди $\alpha_1$, $\alpha_2$, $\alpha_3$ и $\mu_2$.


Задание 5: У величины $X$ известны $\alpha_1 = 5$, $\mu_2 = 9$, $\mu_3 = 27$. Рассмотрим $Y = X + 100$. Найди $\alpha_1(Y)$, $\mu_2(Y)$, $\mu_3(Y)$ и коэффициенты асимметрии обеих величин.


Задание 6: У величины $X$ известны $\mu_2 = 9$, $\mu_3 = 27$. Рассмотрим $Y = 4X$. Найди $\mu_2(Y)$, $\mu_3(Y)$ и $\gamma_1(Y)$.


Задание 7: У признака $\mu_2 = 9$ и $\mu_3 = -54$. Найди коэффициент асимметрии и скажи, в какую сторону тянется хвост.


Задание 8: У признака $\mu_2 = 4$ и $\mu_4 = 48$. Найди куртозис $\beta_2$ и эксцесс $\gamma_2$. Что это говорит о хвостах?


Задание 9: Величина $X$ принимает значения $-3$, $-1$, $1$, $3$ с вероятностями $0{,}1$; $0{,}4$; $0{,}4$; $0{,}1$. Найди $\gamma_1$ и $\gamma_2$.


Задание 10: Для честного игрального кубика известны $\alpha_1 = 3{,}5$, $\alpha_2 = 91/6$, $\alpha_3 = 73{,}5$. Найди $\mu_2$, $\mu_3$ и $\gamma_1$.


Средние (задания 11-20)

Задание 11: Признак «сумма покупки» (в тысячах рублей) моделируется величиной со значениями $1$, $2$, $7$ и вероятностями $0{,}5$; $0{,}3$; $0{,}2$. Найди $\mu_2$, $\mu_3$ и $\gamma_1$. Нужно ли логарифмировать этот признак перед линейной регрессией?


Задание 12: У случайной величины $\alpha_1 = 1$, $\alpha_2 = 5$, $\alpha_3 = 31$, $\alpha_4 = 241$. Найди $\mu_2$, $\mu_3$, $\mu_4$, а затем $\gamma_1$ и $\gamma_2$.


Задание 13: Число ошибок модели на батче моделируется распределением Пуассона с $\lambda = 4$. Известны его начальные моменты: $\alpha_1 = \lambda$, $\alpha_2 = \lambda^2 + \lambda$, $\alpha_3 = \lambda^3 + 3\lambda^2 + \lambda$. Найди $\mu_2$, $\mu_3$ и $\gamma_1$, а затем выведи формулу асимметрии Пуассона через $\lambda$.


Задание 14: Найди эксцесс распределения Бернулли при $p = 0{,}5$. Сравни результат с ограничением $\beta_2 \ge \gamma_1^2 + 1$.


Задание 15: Стандартизуем величину: $Z = \dfrac{X - m}{\sigma}$. Докажи, что $\alpha_1(Z) = 0$, $\alpha_2(Z) = 1$, $\alpha_3(Z) = \gamma_1(X)$, $\alpha_4(Z) = \gamma_2(X) + 3$. Проверь на данных задания 12.


Задание 16: Выборка времён обработки запроса (мс): $2, 3, 3, 4, 5, 6, 8, 29$. Оцени $\hat\mu_2$, $\hat\mu_3$ и выборочный коэффициент асимметрии. Что изменится, если убрать значение $29$?


Задание 17: Пусть $S_n = X_1 + \dots + X_n$ — сумма $n$ независимых одинаково распределённых величин с асимметрией $\gamma_1$ и эксцессом $\gamma_2$. Известно, что $\mu_3(S_n) = n\mu_3$ и $\mu_4(S_n) = n\mu_4 + 3n(n-1)\sigma^4$. Найди $\gamma_1(S_n)$ и $\gamma_2(S_n)$ и примени к сумме $100$ показательных величин.


Задание 18: Распределение Стьюдента $t_\nu$ имеет конечные моменты только до порядка $\nu - 1$, а его эксцесс равен $\gamma_2 = \dfrac{6}{\nu - 4}$ при $\nu > 4$. Разбери случаи $\nu = 1$, $2$, $3$, $5$, $10$: какие характеристики существуют?


Задание 19: Для стандартного распределения Коши с плотностью $f(x) = \dfrac{1}{\pi(1+x^2)}$ покажи, что второй начальный момент $\alpha_2$ тоже не существует. Существует ли медиана?


Задание 20: Признак «время на сайте» — смесь двух групп: с вероятностью $0{,}8$ значение берётся из $N(0, 1)$ (обычные пользователи, после центрирования), с вероятностью $0{,}2$ — из $N(5, 1)$ (боты, которые сидят намного дольше). Найди $\alpha_1$, $\mu_2$, $\mu_3$, $\gamma_1$ и $\gamma_2$ смеси. Используй, что для $N(\mu, 1)$ выполнено $E X^2 = \mu^2 + 1$, $E X^3 = \mu^3 + 3\mu$, $E X^4 = \mu^4 + 6\mu^2 + 3$.


Продвинутые (задания 21-30)

Задание 21: Оптимизатор Adam хранит две скользящие оценки: $m_t = \beta_1 m_{t-1} + (1-\beta_1)g_t$ и $v_t = \beta_2 v_{t-1} + (1-\beta_2)g_t^2$, а затем поправляет их на смещение: $\hat m_t = \dfrac{m_t}{1-\beta_1^t}$, $\hat v_t = \dfrac{v_t}{1-\beta_2^t}$. Пусть $\beta_1 = 0{,}9$, $\beta_2 = 0{,}999$, $m_0 = v_0 = 0$, и градиент три шага подряд равен $g = 0{,}1$. Посчитай $m_t$, $v_t$, $\hat m_t$, $\hat v_t$ для $t = 1, 2, 3$ и объясни, зачем нужна поправка на смещение.


Задание 22: BatchNorm получает батч активаций $2, 4, 4, 4, 5, 5, 7, 9$. Посчитай, какие моменты будут у батча после нормализации, и проверь, изменились ли $\gamma_1$ и $\gamma_2$.


Задание 23: Мониторинг обучения логирует по слоям центральные моменты градиента. Слой A: $\mu_2 = 10^{-4}$, $\mu_4 = 3 \cdot 10^{-8}$. Слой B: $\mu_2 = 10^{-4}$, $\mu_4 = 4{,}8 \cdot 10^{-7}$. Норма градиента у обоих одинакова. Что происходит в слое B?


Задание 24: Метод моментов. Признак «длительность сессии» предполагается гамма-распределённым: $X \sim \Gamma(k, \theta)$, где $EX = k\theta$ и $DX = k\theta^2$. По выборке получили $\bar x = 4$ и $s^2 = 8$. Оцени $k$ и $\theta$, а затем предскажи асимметрию признака, зная, что у гамма-распределения $\gamma_1 = 2/\sqrt{k}$.


Задание 25: В валидационной выборке $100$ ошибок предсказания: у $99$ объектов модуль ошибки равен $1$, у одного — равен $30$ (объект с битой разметкой). Посчитай MSE и MAE и определи, какую долю каждой метрики даёт один выброс. Какой лосс выбрать?


Задание 26: Признак $X = e^{Y}$, где $Y \sim N(0, 1)$ — это логнормальное распределение, классическая модель для доходов, цен и времён отклика. Известно, что $\alpha_k = e^{k^2/2}$. Найди $\mu_2$, $\mu_3$ и $\gamma_1$. Что даст логарифмирование признака?


Задание 27: Инициализация весов. Полносвязный слой: $y = \sum_{i=1}^{n} w_i x_i$, где $n = 256$, веса $w_i$ независимы, центрированы, с дисперсией $\sigma_w^2$, и независимы от входов $x_i$. Какой должна быть $\sigma_w^2$, чтобы второй момент активаций сохранялся при переходе от слоя к слою? Как изменится ответ для ReLU?


Задание 28: Остатки регрессии на выборке из $n = 500$ наблюдений дали $\hat\gamma_1 = 0{,}6$ и $\hat\gamma_2 = 1{,}2$. Посчитай статистику Жарка–Бера $JB = \dfrac{n}{6}\left(\gamma_1^2 + \dfrac{\gamma_2^2}{4}\right)$ и сделай вывод о нормальности, если критическое значение $\chi^2$ с двумя степенями свободы на уровне $5\%$ равно $5{,}99$.


Задание 29: В эксперименте для каждого из $n$ пользователей считают индивидуальную метрику «отношение выручки к числу показов», причём знаменатель мал и шумен. Аналитик усредняет эти отношения по пользователям и удивляется, что среднее прыгает от прогона к прогону и не стабилизируется при росте $n$. Объясни, что происходит, и предложи, что делать.


Задание 30: Moment matching. Двугорбое распределение — смесь $0{,}5\cdot N(-2, 1) + 0{,}5\cdot N(2, 1)$ — приближают одной нормальной по первым двум моментам. Найди параметры этой нормальной, затем посчитай $\gamma_2$ смеси и объясни, что приближение теряет.


Частые ошибки

Ошибка 1: путать начальный и центральный момент

Неправильно: «Дисперсия — это второй момент, значит $DX = E(X^2)$. У признака со средним $100$ и разбросом $\pm 2$ получаем $DX \approx 10\,000$».

Правильно: дисперсия — это второй центральный момент: $DX = \mu_2 = \alpha_2 - m^2 = E(X^2) - (EX)^2$. Для признака со средним $100$ и $\sigma = 2$ получится $\alpha_2 = 10\,004$, а $DX = 10\,004 - 10\,000 = 4$.

Почему важно: ошибка не арифметическая, а смысловая: начальный момент смешивает положение и форму, центральный оставляет только форму. Чем дальше распределение от нуля, тем катастрофичнее расхождение — здесь оно в $2500$ раз. Коварная деталь: правильный ответ получается как разность двух почти равных больших чисел, и в float32 это съедает точность — поэтому наивная однопроходная формула дисперсии иногда возвращает отрицательное значение, а библиотеки используют алгоритм Уэлфорда.


Ошибка 2: считать эксцесс мерой «остроты пика»

Неправильно: «У признака $\gamma_2 = 5$, значит у него узкий острый пик».

Правильно: эксцесс — это в первую очередь про хвосты, а не про пик. Четвёртая степень практически не чувствует то, что происходит в пределах одной сигмы от центра: отклонение $0{,}5\sigma$ даёт вклад $0{,}0625\sigma^4$, а отклонение $4\sigma$ — вклад $256\sigma^4$, то есть в четыре тысячи раз больше. Значение $\gamma_2 = 5$ означает «выбросы случаются заметно чаще, чем предсказала бы нормальная модель», и почти ничего не говорит про форму вершины.

Почему важно: формулировка «острота пика» гуляет по учебникам с начала XX века и сбивает с толку. Практическое следствие высокого эксцесса — «правило трёх сигм здесь не работает, ставь пороги по квантилям». Прочитанный как «пик острый», сигнал не влечёт никакого действия и теряется.


Ошибка 3: считать, что $\gamma_1 = 0$ и $\gamma_2 = 0$ означают нормальность

Неправильно: «Посчитал асимметрию и эксцесс остатков, оба около нуля — значит остатки нормальны, можно строить доверительные интервалы по нормальной теории».

Правильно: совпадение нескольких моментов не определяет распределение. Симметричная смесь, равномерное с добавкой хвостов, треугольное с подобранными параметрами — сколько угодно ненормальных распределений имеют $\gamma_1 = 0$ и $\gamma_2 = 0$. Нулевые $\gamma_1$ и $\gamma_2$ — это необходимое условие нормальности, но никак не достаточное.

Почему важно: это ровно та проблема моментов, которой занимались Чебышёв и Марков. Более того, у логнормального распределения даже полный бесконечный набор моментов не задаёт распределение однозначно. Вывод: моменты — быстрая диагностика, а не доказательство; для выводов про форму смотри гистограмму и Q-Q plot.


Ошибка 4: доверять выборочным $\gamma_1$ и $\gamma_2$ на маленькой выборке

Неправильно: «На $30$ наблюдениях получил $\hat\gamma_2 = 4{,}1$ — у признака тяжёлые хвосты, надо менять лосс».

Правильно: дисперсия выборочной оценки эксцесса приблизительно равна $24/n$, то есть при $n = 30$ стандартная ошибка составляет $\sqrt{24/30} \approx 0{,}89$. Значение $4{,}1$ формально значимо, но оценка почти наверняка держится на одном-двух наблюдениях: посмотри задание 16, где убирание единственной точки уронило $\hat\gamma_1$ с $2{,}07$ до $0{,}39$. Для устойчивой оценки эксцесса нужны сотни, а лучше тысячи наблюдений.

Почему важно: высокие моменты чувствительны к хвостам по построению, и это же свойство делает их нестабильными как оценки. Забавный парадокс: чем тяжелее хвосты у распределения (то есть чем важнее эксцесс), тем хуже он оценивается по выборке — а при $\gamma_2 = \infty$ выборочный эксцесс просто растёт с $n$ и ни к чему не сходится. Правило: перед тем как принимать решение по $\hat\gamma_2$, посчитай его на нескольких бутстрэп-подвыборках и посмотри на разброс.


Ошибка 5: подставлять формулу за пределами области существования моментов

Неправильно: «У распределения Стьюдента $\gamma_2 = 6/(\nu-4)$. При $\nu = 3$ получаем $\gamma_2 = -6$».

Правильно: формула справедлива только при $\nu > 4$. При $\nu = 3$ четвёртый момент бесконечен, эксцесс не существует, и никакого числа тут нет. Кстати, $-6$ невозможно в принципе: эксцесс не бывает меньше $-2$ — уже это должно было насторожить.

Почему важно: формулы для моментов почти всегда идут с условием существования, и это условие не декоративное. Полезная привычка: получив значение характеристики формы, сверяй его с допустимыми границами. Эксцесс $\ge -2$; выполняется неравенство $\beta_2 \ge \gamma_1^2 + 1$; дисперсия неотрицательна, то есть $\alpha_2 \ge \alpha_1^2$. Нарушение любого из них означает, что где-то ошибка — либо в арифметике, либо в применимости формулы.


Ошибка 6: считать, что скейлинг лечит асимметрию

Неправильно: «Признак сильно скошен, но я прогнал StandardScaler, теперь всё нормально».

Правильно: StandardScaler — это линейное преобразование $z = (x - m)/\sigma$, а линейное преобразование не меняет ни $\gamma_1$, ни $\gamma_2$ (задания 5, 6, 15, 22). Признак с $\gamma_1 = 6$ после скейлинга останется с $\gamma_1 = 6$, просто у него будет нулевое среднее и единичная дисперсия. Асимметрию лечат нелинейными преобразованиями: $\log$, $\sqrt{\cdot}$, Бокс–Кокс, Йео–Джонсон, квантильное преобразование.

Почему важно: это одна из самых живучих иллюзий в прикладном ML, потому что после скейлинга признак «выглядит прилично»: значения в диапазоне примерно от $-3$ до $3$, как у нормального. Но выбросы никуда не делись — просто теперь они на отметке $12$ вместо $500\,000$. И линейная регрессия по-прежнему будет подстраиваться под них.


Главное запомнить

📝 Ключевые понятия

Начальный момент: $\alpha_k = E(X^k)$ — среднее $k$-й степени. Частные случаи: $\alpha_0 = 1$, $\alpha_1 = EX$, $\alpha_2 = E(X^2)$. Для дискретной величины $\alpha_k = \sum x_i^k p_i$, для непрерывной $\alpha_k = \int x^k f(x)\,dx$.

Центральный момент: $\mu_k = E(X - EX)^k$ — момент относительно центра тяжести. Всегда $\mu_0 = 1$ и $\mu_1 = 0$ (это готовая проверка расчётов), а $\mu_2 = DX$. Центральные моменты не меняются при сдвиге и умножаются на $a^k$ при растяжении в $a$ раз.

Перевод начальных в центральные: $\mu_2 = \alpha_2 - m^2$, $\mu_3 = \alpha_3 - 3m\alpha_2 + 2m^3$, $\mu_4 = \alpha_4 - 4m\alpha_3 + 6m^2\alpha_2 - 3m^4$, где $m = \alpha_1$. Обратно: $\alpha_3 = \mu_3 + 3m\mu_2 + m^3$, $\alpha_4 = \mu_4 + 4m\mu_3 + 6m^2\mu_2 + m^4$. Это позволяет считать всё за один проход по данным.

Коэффициент асимметрии: $\gamma_1 = \dfrac{\mu_3}{\sigma^3}$ — безразмерная мера перекоса. Правило: хвост показывает направление знака. Ориентиры: $|\gamma_1| < 0{,}5$ — почти симметрично, $0{,}5$–$1$ — умеренно, $> 1$ — сильно (пора преобразовывать признак). Эталон: показательное распределение даёт ровно $2$.

Коэффициент эксцесса: $\gamma_2 = \dfrac{\mu_4}{\sigma^4} - 3$ — мера толщины хвостов, не остроты пика. Тройка вычитается потому, что у нормального $E(Z^4) = 3$. Ориентиры: равномерное $-1{,}2$, нормальное $0$, Лапласа $3$, показательное $6$, дневные доходности акций $3$–$15$. Абсолютный минимум $-2$.

Стандартизация: $Z = (X - m)/\sigma$ даёт $\alpha_1(Z) = 0$, $\alpha_2(Z) = 1$, $\alpha_3(Z) = \gamma_1$, $\alpha_4(Z) = \gamma_2 + 3$. Линейное преобразование меняет только первые два момента, а форму (третий и четвёртый стандартизованные) не трогает вообще.

Чувствительность к хвостам растёт со степенью: отклонение в $5\sigma$ даёт вклад $25$ в $\mu_2$, $125$ в $\mu_3$ и $625$ в $\mu_4$. Отсюда два следствия: высокие моменты хорошо ловят выбросы и одновременно плохо оцениваются по выборке (дисперсия оценки $\gamma_2$ порядка $24/n$).

Суммирование гасит форму: для суммы $n$ независимых одинаково распределённых величин $\gamma_1(S_n) = \gamma_1/\sqrt{n}$ и $\gamma_2(S_n) = \gamma_2/n$. Это ЦПТ, разобранная на моменты, — и объяснение, почему для сильно скошенных данных нормальное приближение требует больших $n$.

Границы метода. Во-первых, моменты могут не существовать: при степенном убывании плотности интеграл $\int x^k f(x)dx$ расходится начиная с какого-то $k$ (у Коши нет даже матожидания, у Стьюдента $t_\nu$ конечны моменты лишь до порядка $\nu-1$); признак беды на практике — среднее, которое не стабилизируется с ростом $n$. Во-вторых, моменты не определяют распределение однозначно: нулевые $\gamma_1$ и $\gamma_2$ не доказывают нормальность, а у логнормального совпадения даже всех моментов недостаточно. Моменты — быстрая диагностика, гистограмма и Q-Q plot — доказательство.

Где это в ML: Adam хранит $\hat m_t$ (первый момент градиента) и $\hat v_t$ (второй), BatchNorm и LayerNorm выравнивают первые два момента активаций, инициализация Хе и Ксавье — это арифметика второго момента, MSE — второй момент ошибки, метод моментов оценивает параметры, тест Жарка–Бера построен на $\gamma_1$ и $\gamma_2$, а df.skew() — первая команда, которую стоит выполнить над новым признаком.


Связь с другими темами курса

Что нужно было знать до этого урока

  • Математическое ожидание (урок 237) — фундамент всего. Начальный момент $\alpha_k$ — это матожидание от $X^k$, и все выкладки этого урока держатся на линейности $E$: именно она позволяет раскрыть бином $(X-m)^k$ и внести матожидание внутрь суммы.
  • Дисперсия и стандартное отклонение (урок 238) — прямой предшественник. Формула $DX = E(X^2) - (EX)^2$, которая там выглядела отдельным приёмом, здесь оказалась первым членом семейства $\mu_k \leftrightarrow \alpha_k$, а $\sigma$ стала нормировкой для $\gamma_1$ и $\gamma_2$.
  • Плотность вероятности (урок 236) — без неё не посчитать моменты непрерывных величин и не разобрать, почему у Коши интеграл расходится.
  • Случайные величины и функция распределения (уроки 234-235) — язык, на котором всё сформулировано; оттуда же понятие медианы, которая в этом уроке сыграла роль спасателя там, где моменты не существуют.

Что изучить дальше

  • Основные распределения (урок 240, следующий) — там ты получишь целый каталог распределений, и моменты станут инструментом навигации по нему: у каждого распределения свои $\gamma_1$ и $\gamma_2$, и по ним ты сможешь на глаз подбирать модель под данные.
  • Центральная предельная теорема (урок 241) — задание 17 фактически её доказало на уровне моментов: асимметрия суммы гаснет как $1/\sqrt n$, эксцесс как $1/n$. Строгое доказательство ЦПТ идёт через характеристические функции, ближайшую родню производящей функции моментов.
  • Закон больших чисел (урок 242) — и, главное, разбор того, когда он не работает. Распределение Коши из этого урока — каноничный контрпример.
  • Многомерные случайные величины (урок 243) — там появятся смешанные моменты $E(X^i Y^j)$, из которых вырастают ковариация и корреляция. Ковариация — это смешанный центральный момент порядка $(1,1)$.
  • Оценка параметров (урок 246) — метод моментов из задания 24 будет разобран строго и сопоставлен с методом максимального правдоподобия.
  • Проверка гипотез (урок 247) — там тест Жарка–Бера из задания 28 встанет в общий ряд статистических критериев.

Где это нужно в жизни

💻 В программировании. Потоковая статистика: чтобы поддерживать среднее и дисперсию потока, хватает нескольких накопителей вместо всей истории — прямое следствие аддитивности моментов. Алгоритм Уэлфорда и его обобщение (алгоритм Пебея) для высоких моментов стоят в основе любого мониторинга метрик. Профилирование: латентность сервиса почти всегда скошена вправо ($\gamma_1$ от $2$ до $10$), поэтому SRE смотрят на p95 и p99 — среднее у скошенного распределения не описывает опыт пользователя.

🤖 В ML/AI. Adam и его родня (AdamW, RMSProp, Adagrad, Lion) — это арифметика первого и второго моментов градиента. BatchNorm, LayerNorm, RMSNorm выравнивают моменты активаций. Инициализация Хе и Ксавье подбирает дисперсию весов так, чтобы второй момент сигнала не затухал по глубине. Skewness признака — сигнал к логарифмированию. Kurtosis градиентов по слоям — ранний детектор взрывающихся градиентов. Moment matching — основа expectation propagation и части методов вариационного вывода. И df.describe() с df.skew() — первые две команды в любом EDA.

📊 В Data Science. С новым признаком первым делом считают четыре числа: среднее, $\sigma$, skewness, kurtosis — они за секунду отвечают, где центр, какой разброс, нужно ли преобразование и будет ли беда с выбросами. В A/B-тестировании моменты определяют, применима ли нормальная теория. В финансах эксцесс доходностей — прямая мера риска редких катастроф. В маркетинге LTV клиента распределён логнормально, и работать с ним надо в логарифмах.

🔬 В науке. Метод моментов Чебышёва — исторический фундамент русской вероятностной школы. В физике моменты распределения скоростей молекул дают температуру (второй момент) и потоки (третий). В биометрии система распределений Пирсона, построенная на $\beta_1$ и $\beta_2$, до сих пор помогает подобрать модель под эмпирические данные. В обработке изображений моменты Ху — классические инвариантные дескрипторы формы, работавшие задолго до свёрточных сетей.


Интересные факты

💡 Название «момент» — это буквально момент силы из физики. Аналогия не просто похожая, а точная: если заменить вероятности на массы, то $\alpha_1$ — координата центра тяжести, $\mu_2$ — момент инерции относительно этой оси. Отсюда же и знаменитая теорема Гюйгенса–Штейнера из механики: момент инерции относительно произвольной оси равен моменту относительно центральной плюс $md^2$. В вероятностной записи это ровно $\alpha_2 = \mu_2 + m^2$ — та самая формула, которой ты пользовался весь урок.

💡 Слово «kurtosis» придумал Карл Пирсон, и он же виноват в путанице. Термин произведён от греческого κυρτός — «выпуклый, горбатый», и Пирсон описывал им именно форму вершины. Позже выяснилось, что четвёртый момент почти не чувствителен к тому, что происходит около центра, и меряет он на самом деле хвосты. Формулировка «острота пика» осталась в учебниках, и вот уже сто с лишним лет каждое новое поколение статистиков заново объясняет, что это неверно. Заодно Пирсон ввёл и «skewness» — от староанглийского skew, «косой, кривой».

💡 Adam назван не в честь человека. Название — акроним от Adaptive Moment estimation, и это одна из самых удачных аббревиатур в истории ML: она одновременно читается как имя и точно описывает суть. Статья Кингмы и Ба 2014 года — одна из самых цитируемых работ в истории машинного обучения (свыше двухсот тысяч цитирований). При этом её главная идея умещается в две строчки: держи скользящие оценки первого и второго моментов градиента и дели одно на корень из другого.

💡 Существует распределение, у которого все моменты конечны, но они не определяют его однозначно. Это логнормальное. Можно построить целое семейство разных распределений с абсолютно теми же $\alpha_1, \alpha_2, \alpha_3, \dots$ — до бесконечности. Значит, «знать все моменты» не всегда значит «знать распределение». Эта задача называется проблемой моментов Стилтьеса, и условие однозначности (условие Карлемана) требует, чтобы моменты росли не слишком быстро: $\sum \alpha_{2k}^{-1/(2k)} = \infty$. У логнормального $\alpha_k = e^{k^2\sigma^2/2}$ растёт как экспонента от квадрата — слишком быстро, и однозначность ломается.

💡 Моменты Ху были стандартом компьютерного зрения полвека. В 1962 году Мин-Кви Ху построил из моментов изображения семь комбинаций, инвариантных к сдвигу, повороту и масштабу. До эпохи нейросетей именно они позволяли роботам и OCR-системам узнавать символы и детали независимо от того, как те повёрнуты. Тот же самый аппарат $\alpha_k$ и $\mu_k$, только применённый к двумерной «плотности яркости» вместо плотности вероятности.


Лайфхаки и полезные трюки

1. Четыре числа за один проход

Копи по данным всего пять накопителей: $n$, $\sum x$, $\sum x^2$, $\sum x^3$, $\sum x^4$. Из них получаешь среднее, дисперсию, асимметрию и эксцесс, ни разу не возвращаясь к данным и не храня их. Это работает в потоке, в SQL-запросе, в MapReduce, где угодно.

Пример: в ClickHouse одним запросом SELECT count(), sum(x), sum(x*x), sum(pow(x,3)), sum(pow(x,4)) FROM events ты снимаешь всю форму распределения по миллиарду строк — а потом переводишь начальные моменты в центральные формулами из шпаргалки. Для мониторинга дрейфа признаков этого хватает: если $\gamma_1$ признака вчера был $1{,}9$, а сегодня $4{,}3$, что-то поменялось в источнике данных.

2. Но в проде — алгоритм Уэлфорда, а не наивная формула

У однопроходного подхода есть цена: $\mu_2 = \alpha_2 - m^2$ — это разность почти равных больших чисел. При среднем $10^6$ и $\sigma = 1$ в float32 значащих цифр не останется вовсе, и функция вернёт мусор или отрицательную дисперсию.

Пример: для координат в метрах ($m \approx 6\,400\,000$, разброс метры) наивная формула гарантированно сломается. Лечение: алгоритм Уэлфорда (инкрементальное обновление среднего и суммы квадратов отклонений) либо его обобщение — алгоритм Пебея для моментов до четвёртого порядка. Именно они стоят внутри numpy, pandas и scipy. Дешёвый компромисс, если пишешь сам: вычти из данных грубую оценку центра (хоть первое значение выборки) и считай моменты от разностей — точность спасена, а результат не изменится, потому что центральные моменты инвариантны к сдвигу.

3. Проверяй, какую именно kurtosis вернула библиотека

scipy.stats.kurtosis по умолчанию отдаёт избыточный эксцесс (с вычтенной тройкой), а многие другие реализации — «сырой» $\beta_2$. Разница в тройку легко превращает «нормальные хвосты» в «тяжёлые».

Пример: одна строчка снимает вопрос навсегда — f(np.random.randn(1_000_000)). Вернулось около нуля — функция считает $\gamma_2$; около трёх — $\beta_2$. Заодно эта проверка калибрует и вопрос смещённости: pandas.Series.kurt() использует несмещённую формулу, и на выборке из тридцати элементов она разойдётся со scipy заметно.

4. Диагностика по четырём числам за десять секунд

Прежде чем строить модель, посмотри на $(\bar x, \sigma, \gamma_1, \gamma_2)$ каждого признака и читай их как чек-лист: $|\gamma_1| > 1$ — кандидат на логарифм; $\gamma_2 > 3$ — правило трёх сигм не работает, пороги ставь по квантилям; $\gamma_2 < -1$ при $\gamma_1 \approx 0$ — подозрение на бимодальность, смотри гистограмму; $\sigma \approx 0$ — константный признак, выкидывай.

Пример: df.agg(['mean','std','skew','kurt']).T даёт готовую таблицу по всем признакам сразу, и по ней за минуту составляется план препроцессинга — что логарифмировать, что клипать, что проверять на смесь групп.

5. Правило «подогнал по $k$ моментам — проверь по $(k+1)$-му»

Если ты оценил параметры распределения методом моментов, у тебя остаётся бесплатная проверка модели: следующий момент был предсказан, а не подогнан.

Пример: оценил гамма-распределение по среднему и дисперсии (задание 24) — теперь сравни предсказанную $\gamma_1 = 2/\sqrt k$ с выборочной. Совпало — модель адекватна. Выборочная вдвое больше — данные тяжелее гаммы, смотри логнормальное или Парето. Этот приём стоит десять секунд и ловит неверную модель раньше, чем ты успеешь на ней что-то построить.

6. Тест на существование моментов: график среднего от $n$

Посчитай накопительное среднее признака на первых $10^3$, $10^4$, $10^5$, $10^6$ наблюдениях и нарисуй. Нормальная метрика выходит на плато, «бесхвостая» — продолжает скакать с прежней амплитудой.

Пример: метрика вида «средняя доходность» или «среднее отношение» с шумным знаменателем часто даёт именно вторую картину. Увидел её — переходи на отношение сумм, медиану или дельта-метод. Тот же приём работает и для $\hat\sigma$: если стандартное отклонение растёт с $n$, значит дисперсии не существует, и все доверительные интервалы, что ты построил, — фикция.

7. Эксцесс градиентов — дешёвый детектор проблем обучения

Логируй по слоям не только норму градиента, но и его эксцесс. Норма усредняет и потому слепа к концентрации сигнала в нескольких компонентах, а эксцесс её ловит сразу.

Пример: одна строчка в колбэке — и за десятки шагов до появления NaN ты видишь, что в третьем блоке $\gamma_2$ подскочил с $0$ до $40$. Это подсказывает и лечение: не общий clip_grad_norm_, который просто уменьшит всё пропорционально, а clip_grad_value_, бьющий именно по вылетевшим компонентам, плюс проверка инициализации этого конкретного слоя.


Заключение

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

Но самое ценное здесь — не формулы перевода $\alpha_k \leftrightarrow \mu_k$ и не таблица ориентиров для $\gamma_2$, а понимание того, что каждое повышение степени усиливает роль далёких значений. Из этого одного принципа вытекает всё остальное: и почему skewness ловит перекос, и почему kurtosis меряет хвосты, а не пик, и почему высокие моменты так плохо оцениваются по маленькой выборке, и почему MSE разваливается на выбросах, и почему у Коши моментов нет вообще.

И параллельно — трезвое понимание границ метода. Моменты не определяют распределение однозначно. Нулевые $\gamma_1$ и $\gamma_2$ не доказывают нормальность. Существуют вполне реальные величины, у которых моментов просто нет, и на них ломается закон больших чисел. Тот, кто это знает, не будет неделями собирать данные ради среднего, которое никогда не стабилизируется, и не станет строить доверительные интервалы там, где дисперсия бесконечна.

А ещё ты теперь видишь моменты там, где раньше видел просто код. df.skew() — третий стандартизованный момент. Строчка v = beta2*v + (1-beta2)*g**2 в Adam — оценка второго момента градиента. nn.init.kaiming_normal_ — подбор дисперсии весов так, чтобы второй момент сигнала не затухал по глубине. BatchNorm — выравнивание первых двух моментов. Это не совпадения: почти вся практическая работа с распределениями в ML сводится к тому, чтобы посчитать несколько моментов и что-то с ними сделать.

💡 Совет: заведи привычку смотреть на четыре числа сразу — mean, std, skew, kurt — по каждому новому признаку и по каждой новой метрике. Это десять секунд работы, и они экономят дни. Скошенный признак, который ты поймал до обучения, — это правильно выбранное преобразование. Тот же признак, пойманный после, — это неделя гадания, почему модель не сходится. И ещё: попробуй прямо сейчас открыть свой текущий проект и посчитать kurtosis по градиентам слоёв на первых сотне шагов обучения. Скорее всего, ты увидишь там что-то интересное.

В следующем уроке — «Основные распределения» — мы соберём каталог: биномиальное, Пуассона, равномерное, нормальное, показательное и другие. И моменты станут твоим инструментом навигации по нему: у каждого распределения свои $\gamma_1$ и $\gamma_2$, и, посчитав четыре числа по данным, ты будешь примерно понимать, какое семейство подойдёт. Ты уже видел эту логику в действии — теперь получишь под неё полный справочник. Погнали! 🚀

Понял тему? Закрепи в боте! 🚀

Попрактикуйся на задачах и получи персональные рекомендации от AI

💪 Начать тренировку
💬 Есть вопрос? Спроси бота!