Содержание курса 11 / 22

11 / 22 · Несколько случайных величин

Условное математическое ожидание

Наилучший прогноз одной случайной величины по другой: E[Y | X] как функция и как случайная величина, свойство башни, почему условное среднее минимизирует квадратичную ошибку и оставляет неустранимый уровень шума, закон полной дисперсии (объяснённая и необъяснённая дисперсия) и то, какая функция потерь ведёт к какой цели: медиана, квантиль, наиболее вероятный класс, всё распределение целиком.

На этой странице 11

Обучение с учителем — это задача прогноза: по признакам XX угадать целевую переменную YY. Ещё до обучения какой-либо модели теория вероятностей говорит, каким был бы наилучший возможный прогноз, если бы совместное распределение было известно, и какая ошибка осталась бы даже тогда. Ответ — условное математическое ожидание (conditional expectation) E[Y∣X]E[Y \mid X]. Заметка о многомерном нормальном распределении нашла его для одного семейства: это линейная функция. В этой заметке мы определяем его в общем случае, доказываем, что оно минимизирует квадратичную ошибку, разбиваем дисперсию YY на часть, которую объясняет XX, и часть, которая остаётся необъяснённой, и показываем, к каким другим целям ведут другие функции потерь.

Обозначения. m(x)=E[Y∣X=x]m(x) = E[Y \mid X = x] — число, заданное для каждого xx; это функция регрессии (regression function). E[Y∣X]=m(X)E[Y \mid X] = m(X) — та же функция, применённая к случайной XX, поэтому это случайная величина. Var⁡(Y∣X=x)\operatorname{Var}(Y \mid X = x) — дисперсия условного распределения.

Условное математическое ожидание как функция#

Условное математическое ожидание — это математическое ожидание условного распределения:

E[Y∣X=x]=∑yy pY∣X(y∣x)или∫y fY∣X(y∣x) dy.E[Y \mid X = x] = \sum_y y\, p_{Y \mid X}(y \mid x) \quad \text{или} \quad \int y\, f_{Y \mid X}(y \mid x)\, dy .

Для двух костей, где XX — значение первой, а YY — большее из двух, условное распределение при X=3X = 3 приписывает значению 3 вероятность 3/63/6, а каждому из значений 4, 5, 6 — вероятность 1/61/6, поэтому E[Y∣X=3]=(9+4+5+6)/6=4E[Y \mid X = 3] = (9 + 4 + 5 + 6)/6 = 4. Для всех шести значений

m(1),…,m(6)=72,113,4,92,316,6.m(1), \dots, m(6) = \tfrac72, \tfrac{11}3, 4, \tfrac92, \tfrac{31}6, 6 .

Для гауссовского вектора из предыдущей заметки m(x1)=0.6 x1m(x_1) = 0.6\, x_1. В общем случае mm может быть любой функцией; для совместно гауссовских величин она линейна, а в остальных случаях линейной быть не обязана.

Понятие начинает по-настоящему работать, когда E[Y∣X]E[Y \mid X] читается как случайная величина m(X)m(X). Пока XX не наблюдалась, наилучший прогноз YY сам неизвестен, и у него есть своё распределение, своё среднее и своя дисперсия.

Свойство башни#

Усреднение условных средних по распределению XX возвращает безусловное среднее:

E[E[Y∣X]]=E[Y].E\big[E[Y \mid X]\big] = E[Y] .

Для костей 16(72+113+4+92+316+6)=16136\frac16 (\frac72 + \frac{11}3 + 4 + \frac92 + \frac{31}6 + 6) = \frac{161}{36} — среднее большего значения, найденное в заметке о совместных распределениях. Свойство башни (tower property), которое также называют формулой полного математического ожидания (law of total expectation), — это формула полной вероятности для математических ожиданий: чтобы вычислить среднее, поставим в условие то, что упрощает задачу, а затем усредним.

Случайное число слагаемых. В магазин за час приходит N∼Poisson(20)N \sim \mathrm{Poisson}(20) покупателей, и каждый тратит случайную сумму со средним 30 независимо от остальных и от их числа. При N=nN = n ожидаемая выручка равна 30n30n, поэтому безусловная ожидаемая выручка равна E[30N]=30⋅20=600E[30N] = 30 \cdot 20 = 600. Тот же шаг даёт ожидаемую стоимость случайного числа повторных попыток или ожидаемое число токенов, сгенерированных до стоп-токена.

Наилучший прогноз#

Для любой функции gg прибавим и вычтем m(X)m(X):

E[(Y−g(X))2]=E[(Y−m(X))2]+E[(m(X)−g(X))2].E\big[(Y - g(X))^2\big] = E\big[(Y - m(X))^2\big] + E\big[(m(X) - g(X))^2\big] .

Перекрёстный член 2E[(Y−m(X))(m(X)−g(X))]2E[(Y - m(X))(m(X) - g(X))] обращается в нуль: при известном XX множитель m(X)−g(X)m(X) - g(X) становится константой, а E[Y−m(X)∣X]=0E[Y - m(X) \mid X] = 0, и свойство башни усредняет этот нуль. Первое слагаемое не зависит от gg; второе равно нулю только при g=mg = m. Значит, mm — наилучший прогноз, а любой другой прогноз расплачивается дополнительным квадратом расстояния до mm.

Рисунок

Условное среднее — лучший прогноз

Облако точек, условное среднее и лучшая прямаяТочки вокруг синусоиды; красная синусоида проходит через центр облака, жёлтая прямая пересекает его наискосок.-2-1012E[Y | X = x] = sin 1.5x: ошибка 0.090лучшая прямая 0.52x: ошибка 0.255Облако точек, условное среднее и лучшая прямаяТочки вокруг синусоиды; красная синусоида проходит через центр облака, жёлтая прямая пересекает его наискосок.-2-1012E[Y | X = x] = sin 1.5x: ошибка 0.090лучшая прямая 0.52x: ошибка 0.255
260 точек: X равномерно на [−2, 2], Y = sin 1.5X + шум со стандартным отклонением 0.3. Условное среднее E[Y | X] = sin 1.5X (красная кривая) имеет среднеквадратичную ошибку 0.3² = 0.090 — это шум, который не убрать никаким прогнозом. Лучшая прямая 0.519x (жёлтая) добавляет ошибку формы и даёт 0.255.

Это разложение делит ошибку любого прогноза на две части. Первое слагаемое — шум в YY, который XX не определяет, — неустранимая ошибка (irreducible error): 0.0900.090 на рисунке, какой бы ни была модель. Второе — квадрат расстояния от gg до mm. Для наилучшего прогноза g∗g^* внутри класса моделей это ошибка аппроксимации (approximation error) этого класса: наилучшая прямая не может повторить синусоиду и платит сверх этого 0.255−0.090=0.1650.255 - 0.090 = 0.165. Модель, обученная на конечной выборке, попадает в другое gg из класса, дальше от mm, чем g∗g^*; лишнее расстояние — ошибка оценивания (estimation error), а если обучение остановилось раньше наилучшего решения, то и ошибка оптимизации. Заметка об оценках разбивает ошибку оценивания на смещение и дисперсию.

Закон полной дисперсии#

Дисперсия YY раскладывается так же:

Var⁡(Y)=E[Var⁡(Y∣X)]⏟необъяснённая+Var⁡(E[Y∣X])⏟объяснённая.\operatorname{Var}(Y) = \underbrace{E\big[\operatorname{Var}(Y \mid X)\big]}_{\text{необъяснённая}} + \underbrace{\operatorname{Var}\big(E[Y \mid X]\big)}_{\text{объяснённая}} .

Первое слагаемое — средний разброс YY вокруг прогноза, т. е. неустранимая ошибка из предыдущего раздела; второе — то, насколько сам прогноз меняется вместе с XX. Для костей:

Рисунок

Закон полной дисперсии на двух костях

Условные распределения по столбцам и разложение дисперсииШесть столбцов кружков; средние растут от 3.5 до 6; полоса дисперсии делится на 1.20 и 0.77.123456123456X — первая костьY — большаяVar(Y) = 1.97E[Var(Y | X)] = 1.20Var(E[Y | X]) = 0.77Условные распределения по столбцам и разложение дисперсииШесть столбцов кружков; средние растут от 3.5 до 6; полоса дисперсии делится на 1.20 и 0.77.123456123456X — первая костьY — большаяVar(Y) = 1.97E[Var(Y | X)] = 1.20Var(E[Y | X]) = 0.77
Для каждого значения первой кости X — условное распределение большего значения Y (площадь кружка пропорциональна вероятности) и его среднее E[Y | X = x] (ромбы): 3.5, 3.67, 4, 4.5, 5.17, 6. Дисперсия Y = 1.97 складывается из средней дисперсии внутри столбцов, 1.20, и дисперсии самих средних, 0.77: знание X объясняет 39% разброса Y.

Отношение Var⁡(E[Y∣X])/Var⁡(Y)\operatorname{Var}(E[Y \mid X]) / \operatorname{Var}(Y) — наибольший коэффициент детерминации R2R^2, которого может достичь модель, использующая XX; здесь он равен 0.390.39. Для гауссовского вектора из предыдущей заметки разложение согласуется с найденными там формулами: Var⁡(X2)=1=0.28+0.62⋅2\operatorname{Var}(X_2) = 1 = 0.28 + 0.6^2 \cdot 2 — условная дисперсия плюс дисперсия линейного условного среднего.

Из закона также следует, что замена случайной величины её условным математическим ожиданием никогда не увеличивает дисперсию, поскольку отброшенное слагаемое E[Var⁡(⋅∣X)]E[\operatorname{Var}(\cdot \mid X)] неотрицательно. В применении к оценке, если взять её условное математическое ожидание при достаточной статистике (sufficient statistic) — сводке данных, при условии которой их распределение уже не зависит от неизвестного параметра (для бросков монеты — числе орлов), — это теорема Рао–Блэквелла (Rao–Blackwell theorem): усреднение по несущественной случайности никогда не ухудшает оценку и, как правило, улучшает её.

Другие функции потерь — другие цели#

Условное среднее — ответ для квадратичной функции потерь. Другие функции потерь требуют других характеристик того же условного распределения:

Функция потерьНаилучший прогноз при X=xX = xНа практике
квадратичная ошибка (y−g)2(y - g)^2условное среднее E[Y∣X=x]E[Y \mid X = x]регрессия с MSE
абсолютная ошибка ∣y−g∣\lvert y - g \rvertусловная медианаробастная регрессия, MAE
pinball loss (квантильная функция потерь) уровня qq, (y−g)(q−1[y<g])(y - g)(q - \mathbb 1[y < g])условный qq-квантильинтервалы прогноза, квантильная регрессия (quantile regression)
функция потерь 0–1 для классовнаиболее вероятный класс arg⁡max⁡kP(Y=k∣X=x)\arg\max_k P(Y = k \mid X = x)байесовский классификатор (Bayes classifier)
логарифмическая функция потерь (log loss, кросс-энтропия)всё условное распределение P(Y∣X=x)P(Y \mid X = x)классификаторы, языковые модели

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

Что изменилось#

Без XXС XX
Наилучший прогноз YYконстанта E[Y]E[Y]функция m(X)=E[Y∣X]m(X) = E[Y \mid X]
Его среднеквадратичная ошибкаVar⁡(Y)\operatorname{Var}(Y)E[Var⁡(Y∣X)]E[\operatorname{Var}(Y \mid X)]
Вычисление среднегонапрямуюсвойство башни: поставить в условие, затем усреднить
Дисперсия YYодно числообъяснённая + необъяснённая
Ошибка обученной моделиодно числонеустранимая + квадрат расстояния до mm (ошибка аппроксимации, ошибка оценивания)

Ограничения#

  • mm определяется неизвестным совместным распределением. Обучение с учителем, по сути, и есть задача оценить её по конечному числу сэмплов, а в большой размерности для этого нужны либо очень много сэмплов, либо сильные предположения о форме mm.
  • Среднее — не решение. Когда условное распределение асимметрично или многомодально, условное среднее может оказаться значением, которое встречается редко или не встречается вовсе; цель должна выбирать функция потерь, а не привычка.
  • Условие — не вмешательство (intervention). E[Y∣X=x]E[Y \mid X = x] описывает, какой бывает YY в тех случаях, когда XX оказывается равной xx, а не какой стала бы YY, если бы XX принудительно сделали равной xx.

Что нужно запомнить#

  • E[Y∣X=x]E[Y \mid X = x] — среднее условного распределения; E[Y∣X]=m(X)E[Y \mid X] = m(X) — случайная величина.
  • Свойство башни: E[E[Y∣X]]=E[Y]E[E[Y \mid X]] = E[Y].
  • m(X)m(X) минимизирует E[(Y−g(X))2]E[(Y - g(X))^2]; E[(Y−g(X))2]=E[(Y−m(X))2]+E[(m(X)−g(X))2]E[(Y - g(X))^2] = E[(Y - m(X))^2] + E[(m(X) - g(X))^2].
  • Var⁡(Y)=E[Var⁡(Y∣X)]+Var⁡(E[Y∣X])\operatorname{Var}(Y) = E[\operatorname{Var}(Y \mid X)] + \operatorname{Var}(E[Y \mid X]): необъяснённая плюс объяснённая дисперсия; неустранимая ошибка — первое слагаемое.
  • Квадратичная функция потерь ведёт к среднему, абсолютная — к медиане, pinball loss — к квантилю, функция потерь 0–1 — к наиболее вероятному классу, логарифмическая — ко всему условному распределению.

Код#

Кости в точных дробях, наилучший прогноз и случайная сумма — симуляцией:

import numpy as np
from fractions import Fraction

# two dice, X the first and Y the larger: E[Y | X = x], the tower property, the law of total variance
m = {x: Fraction(x * x + sum(range(x + 1, 7)), 6) for x in range(1, 7)}
v = {x: Fraction(x**3 + sum(y * y for y in range(x + 1, 7)), 6) - m[x] ** 2 for x in range(1, 7)}
EY = sum(m.values()) / 6
print([str(m[x]) for x in m], EY)                     # ['7/2', '11/3', '4', '9/2', '31/6', '6'] 161/36
unexplained, explained = sum(v.values()) / 6, sum((m[x] - EY) ** 2 for x in m) / 6
print(unexplained, explained, unexplained + explained, round(float(explained / (unexplained + explained)), 3))
# 259/216 1001/1296 2555/1296 0.392: 1.20 + 0.77 = 1.97, and X explains 39%

# the best predictor sin(1.5x) against the best straight line, on simulated data
rng = np.random.default_rng(0)
x = rng.uniform(-2, 2, 1_000_000)
y = np.sin(1.5 * x) + 0.3 * rng.normal(size=x.size)
b = np.cov(x, y)[0, 1] / np.var(x, ddof=1)
print(round(float(np.mean((y - np.sin(1.5 * x)) ** 2)), 3), round(float(b), 3), round(float(np.mean((y - b * x) ** 2)), 3))
# 0.09 0.518 0.254

# the tower property for a random sum: N ~ Poisson(20) customers, each spending 30 on average
N = rng.poisson(20, 20_000)
print(round(float(np.mean([rng.exponential(30, n).sum() for n in N])), 1))   # 599.9, against 20 * 30 = 600

Дальше#

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

Литература#

  • J. K. Blitzstein, J. Hwang. Introduction to Probability, 2nd ed. CRC Press, 2019. Глава 9 (условное математическое ожидание, закон Адама, закон Евы, прогноз).
  • T. Hastie, R. Tibshirani, J. Friedman. The Elements of Statistical Learning, 2nd ed. Springer, 2009. Раздел 2.4 (статистическая теория решений: функция регрессии и байесовский классификатор).
  • R. Koenker, G. Bassett. Regression Quantiles. Econometrica, 46(1), 1978.