складність 2/5 Безкоштовно
Expectation and variance
Два числа, що підсумовують випадкову величину: де вона розташована і наскільки далеко відхиляється. Кожне має умову, про яку забувають, а одного з них іноді взагалі не існує.
Інтуїція
Майже кожна сторінка цього сайту мовчки спирається на ці два числа. Втрати — це математичне сподівання. Розклад на зміщення та дисперсію — це тотожність щодо них. Довірчий інтервал — це замасковане стандартне відхилення.
Середнє показує, де величина зазвичай розташована, і воно «по суті, говорить нам, де зазвичай перебуває випадкова величина» [1, §22.6.1.4]. Самого його замало, і d2l пояснює причину краще за більшість підручників: «прибуток $10 ± $1 з кожного продажу дуже відрізняється від $10 ± $15 з кожного продажу, попри однакове середнє значення. Другий варіант має набагато більший ступінь коливань, а отже, становить набагато більший ризик» [1, §22.6.1.4].
Тож потрібні обидва. Ця сторінка — про три місця, де знати обидва все одно замало: дисперсії не просто додаються, гарантія стандартного відхилення набагато слабша, ніж вважають, а для деяких розподілів жодного з цих чисел не існує взагалі.
Формальне визначення
Середнє дискретної величини — це «зважене середнє: сума значень, помножених на ймовірність того, що випадкова величина набуває цього значення» [1, §22.6.1.4]. Воно має дві властивості, які варто запам’ятати, обидві з [1, §22.6.1.4]:
- μaX+b = a μX + b
- μX+Y = μX + μY, для будь-яких X та Y
Друга не має жодних умов. Математичні сподівання додаються завжди.
Дисперсія — це «кількісна міра того, наскільки випадкова величина відхиляється від середнього» [1, §22.6.1.5]. Її властивості схожі, але не такі самі [1, §22.6.1.5]:
- Var(X) ≥ 0, і рівність досягається лише тоді, коли X стала
- Var(aX + b) = a² Var(X) — причина в квадраті
- Var(X + Y) = Var(X) + Var(Y) лише якщо X та Y незалежні
Стандартне відхилення існує тому, що дисперсія має не ті одиниці виміру. Коли вимірюють рейтинг у зірках, «ми хочемо розглядати (X − μX)², що вимірюється у квадратних зірках. Це означає, що саму дисперсію не можна порівнювати з початковими вимірами» [1, §22.6.1.5]. Квадратний корінь повертає її до зірок.
Нерівність Чебишова — це те, що робить стандартне відхилення тлумачним для будь-якого розподілу взагалі: P(X ∉ [μ − ασ, μ + ασ]) ≤ 1/α². Словами, для α = 10: «99% вибіркових значень будь-якої випадкової величини лежать у межах 10 стандартних відхилень від середнього» [1, §22.6.1.6]. Жодного припущення про нормальність, жодного припущення взагалі.
Think Stats підходить до дисперсії з боку вибірки й зауважує пастку, важливу в
коді: «назва „вибіркова дисперсія“ може означати або S², або S²n−1, а
символ S² вживають для кожної з них або для обох» [2, §8.2]. var у NumPy ділить на n; pandas ділить на n−1.
Як це працює
Неперервний випадок нічого не змінює. Розбийте пряму на інтервали довжини ε, і сума стане інтегралом: μX = ∫ x p(x) dx [1, §22.6.1.7]. Усе сказане вище зберігається.
Крім випадку, коли інтеграл не збігається. Розподіл Коші має щільність 1/(1+x²), яка «виглядає невинно, і справді, таблиця інтегралів покаже, що площа під нею дорівнює одиниці, а отже, вона задає неперервну випадкову величину» [1, §22.6.1.7]. Інтеграл для його дисперсії нескінченний, а гірше того, інтеграл для середнього «по суті дорівнює log(∞) = ∞, тож коректно визначеного середнього значення теж немає» [1, §22.6.1.7].
Саме це й показує рисунок. Не повільна збіжність і не велика дисперсія — просто немає середнього, до якого могло б збігатися вибіркове середнє.
Де застосовується
- Кожна функція втрат. Середньоквадратична похибка — це очікуване квадратичне відхилення, але від прогнозу, а не від середнього; перехресна ентропія — очікувана від’ємна логарифмічна правдоподібність.
- Розклад на зміщення та дисперсію — тотожність у цих двох величинах, і більше нічого.
- Стандартні похибки та інтервали, де вся справа — оцінити стандартне відхилення оцінки [2, §8.3].
- Робота з портфелями й ризиком, де Var(X + Y) = Var(X) + Var(Y) + 2Cov(X, Y) — це весь предмет, а не примітка.
- Розміри ефекту, які існують, щоб «порівняти різницю між групами з мінливістю всередині груп»: d Коена ділить різницю середніх на об’єднане стандартне відхилення, тож відповідь виражена в стандартних відхиленнях, а не в тих одиницях, у яких вимірювали дані [2, §2.9].
Чому і коли
Завжди наводьте обидва. Середнє без дисперсії — це речення без дієслова.
Перевіряйте незалежність, перш ніж додавати дисперсії. Це найпоширеніша з трьох помилок, і приклад нижче вимірює, наскільки великою вона буває: корельована пара, дисперсії якої в сумі дають 20.2, має суму з дисперсією 36.2, бо загалом Var(X + Y) = Var(X) + Var(Y) + 2Cov(X, Y) [1, §22.6.1.10].
Використовуйте нерівність Чебишова, коли нічого не знаєте, і чекайте, що вона буде грубою. Це гарантія, що діє для кожного розподілу, тож вона мусить виконуватися й для найгіршого: триточковий приклад d2l лежить точно на ній [1, §22.6.1.6], а більшість розподілів — значно всередині.
Не використовуйте стандартне відхилення як підсумок важкого хвоста. Якщо хвіст досить важкий, стандартного відхилення не існує, а обчислене число — це артефакт вашої вибірки: тисяча точок оцінює його не краще, ніж одна [3, Comments].
Стандартизуйте, коли одиниці виміру нічого не означають, і пам’ятайте, що дисперсія вимірюється в квадратних одиницях, тож z-стандартизація — це ділення на σ і ніколи на σ² [1, §22.6.1.5].
Практичний приклад
Три питання. Чи виконуються правила, коли їх виміряти? Наскільки груба нерівність Чебишова на практиці? І як насправді виглядає розподіл без середнього?
Python 55 рядків Показати код Сховати код
import numpy as np
rng = np.random.default_rng(0)
N = 2_000_000
# --- 1. правила, виміряні, а не процитовані ----------------------------------
X = rng.normal(3.0, 2.0, N)
Y = rng.gamma(2.0, 1.5, N) # independent of X, and not symmetric
Z = 2.0 * X + rng.normal(0, 0.5, N) # deliberately correlated with X
print(" E and Var over 2,000,000 draws")
print(f" E[5X + 1] {(5 * X + 1).mean():>9.4f} 5 E[X] + 1 {5 * X.mean() + 1:>9.4f}")
print(f" Var(5X + 1) {(5 * X + 1).var():>9.4f} 25 Var(X) {25 * X.var():>9.4f}")
print(f" Var(X + Y) {(X + Y).var():>9.4f} Var X + Var Y {X.var() + Y.var():>9.4f} independent")
print(f" Var(X + Z) {(X + Z).var():>9.4f} Var X + Var Z {X.var() + Z.var():>9.4f} correlated")
print(f" the shortfall is 2 Cov(X, Z) = {2 * np.cov(X, Z)[0, 1]:.4f}")
# --- 2. наскільки груба нерівність Чебишова? --------------------------------
# Межа — це твердження про розподіл, тож підставляємо справжні середнє й стандартне
# відхилення, а не вибіркові.
cases = [
("normal(0,1)", lambda n: rng.normal(0, 1, n), 0.0, 1.0),
("exponential(1)", lambda n: rng.exponential(1.0, n), 1.0, 1.0),
("lognormal(0,1)", lambda n: rng.lognormal(0, 1, n), np.exp(0.5), np.sqrt(np.e**2 - np.e)),
("t, 3 dof", lambda n: rng.standard_t(3, n), 0.0, np.sqrt(3.0)),
]
print("\n P(|X - mu| >= alpha sigma), measured against the 1/alpha^2 bound")
print(f"{'alpha':>8}{'bound':>10}" + "".join(f"{c[0]:>17}" for c in cases))
for alpha in (1.5, 2.0, 3.0, 5.0):
row = "".join(f"{np.mean(np.abs(d(N) - mu) >= alpha * sd):>17.4f}" for _, d, mu, sd in cases)
print(f"{alpha:>8.1f}{1 / alpha**2:>10.4f}" + row)
# --- 3. межа груба не для кожного розподілу -----------------------------------
# Триточкова змінна з d2l: +/-2 з імовірністю p кожне, 0 інакше. Її
# дисперсія дорівнює 8p, тож за p = 1/(2 alpha^2) дві крайні точки лежать рівно
# за alpha стандартних відхилень від середнього. Обчислено з pmf, не з вибірки.
print("\n a family that attains the bound, computed exactly from its pmf")
for alpha in (1.5, 2.0, 3.0, 5.0):
p = 1 / (2 * alpha**2)
sigma = np.sqrt(8 * p)
print(f" alpha {alpha:>4.1f} p {p:.5f} sigma {sigma:.4f} alpha*sigma {alpha * sigma:.4f} P = 2p = {2 * p:.4f} bound {1 / alpha**2:.4f}")
# --- 4. розподіл, що взагалі не має середнього --------------------------------
# По вісім незалежних прогонів кожного, тож порівняння — властивість самого
# розподілу, а не одного щасливого потоку.
rng4 = np.random.default_rng(1) # its own seed, so this block reproduces alone
RUNS, M = 8, 1_000_000
norm = rng4.normal(0, 1, (RUNS, M)).cumsum(1) / np.arange(1, M + 1)
cauchy = rng4.standard_cauchy((RUNS, M)).cumsum(1) / np.arange(1, M + 1)
print(f"\n running mean of n draws, {RUNS} independent runs of each")
print(f"{'n':>12}{'normal: worst |mean|':>24}{'Cauchy: worst |mean|':>24}")
for n in (10, 100, 1_000, 10_000, 100_000, 1_000_000):
print(f"{n:>12,}{np.abs(norm[:, n - 1]).max():>24.4f}{np.abs(cauchy[:, n - 1]).max():>24.4f}")
sums = cauchy * np.arange(1, M + 1)
print(f" largest single Cauchy draw seen {np.abs(np.diff(sums, axis=1)).max():>16,.0f}")Вивід
E and Var over 2,000,000 draws
E[5X + 1] 16.0090 5 E[X] + 1 16.0090
Var(5X + 1) 99.9654 25 Var(X) 99.9654
Var(X + Y) 8.4965 Var X + Var Y 8.5016 independent
Var(X + Z) 36.2382 Var X + Var Z 20.2433 correlated
the shortfall is 2 Cov(X, Z) = 15.9949
P(|X - mu| >= alpha sigma), measured against the 1/alpha^2 bound
alpha bound normal(0,1) exponential(1) lognormal(0,1) t, 3 dof
1.5 0.4444 0.1334 0.0818 0.0562 0.0806
2.0 0.2500 0.0458 0.0500 0.0370 0.0407
3.0 0.1111 0.0027 0.0183 0.0181 0.0138
5.0 0.0400 0.0000 0.0025 0.0058 0.0033
a family that attains the bound, computed exactly from its pmf
alpha 1.5 p 0.22222 sigma 1.3333 alpha*sigma 2.0000 P = 2p = 0.4444 bound 0.4444
alpha 2.0 p 0.12500 sigma 1.0000 alpha*sigma 2.0000 P = 2p = 0.2500 bound 0.2500
alpha 3.0 p 0.05556 sigma 0.6667 alpha*sigma 2.0000 P = 2p = 0.1111 bound 0.1111
alpha 5.0 p 0.02000 sigma 0.4000 alpha*sigma 2.0000 P = 2p = 0.0400 bound 0.0400
running mean of n draws, 8 independent runs of each
n normal: worst |mean| Cauchy: worst |mean|
10 0.4403 2.2880
100 0.1060 2.6014
1,000 0.0543 5.9038
10,000 0.0214 5.5972
100,000 0.0049 1.9442
1,000,000 0.0017 10.8063
largest single Cauchy draw seen 10,244,088Лінійні правила виконуються точно, до четвертого знака на двох мільйонах
значень: E[5X+1] = 16.0090 обома способами, Var(5X+1) = 99.9654 обома
способами. Дисперсії незалежних величин додаються: 8.4965 проти 8.5016,
розбіжність 0.06%, яка є шумом вибірки.
Дисперсії корельованих величин — ні. Var(X + Z) дорівнює 36.24, тоді як сума дисперсій — 20.24, і відсутні 16.00 — це точно 2 Cov(X, Z) = 15.9949. Це не мала поправка. Правило, яке всі носять із собою, — дисперсії додаються — занижує тут справжній розкид на 44%, і в тому напрямку, що має значення: воно каже, що сума менш мінлива, ніж насправді.
Нерівність Чебишова груба в три–дванадцять разів. За α = 2 межа дозволяє 25% маси зовні, а нормальний розподіл кладе туди 4.58%. За α = 5 межа дозволяє 4%, а в нормального там нічого. Ось ціна слів «для будь-якого розподілу»: межу задає найгірший випадок.
Для найгіршого випадку вона не груба. Триточкова сім’я лежить точно на межі за кожного випробуваного α. Тож нерівність Чебишова не можна покращити, нічого не припустивши, і кожне точніше правило, яке ви бачили, — наприклад, числа 68-95-99.7, — це твердження про нормальний розподіл, а не про розкид.
А ще є розподіл Коші. Найгірше ковзне середнє нормального розподілу за вісім прогонів падає з 0.44 до 0.0017, коли n зростає від десяти до мільйона. У Коші воно змінюється з 2.29 до 10.81 — стає гірше. Найбільше окреме значення серед цих восьми мільйонів чисел було 10,244,088, і одне таке значення може зсунути середнє мільйона значень на десять.
Неприємніше за все те, що у вибірці ніщо цього не видає. Обчисліть середнє й стандартне відхилення даних із розподілу Коші — і ви отримаєте числа; вони підсумовують лише ваші конкретні значення й більше нічого, і вони не стабілізуються, хоч скільки даних ви додасте.
Типові помилки
Додавання дисперсій без перевірки незалежності. Найдорожча помилка з усіх тут, і приклад дає їй числову оцінку.
Припущення, що стандартне відхилення щільно обмежує хвіст. Без припущення про розподіл ви маєте право лише на нерівність Чебишова, і її не можна звузити [1, §22.6.1.6]; приклад показує, що вона груба в три–дванадцять разів.
Середнє на даних із важким хвостом — затримки, доходи, розміри страхових виплат, розміри файлів. Якщо воно взагалі існує, у ньому домінують спостереження, яких ви, найімовірніше, ще не бачили. Наводьте також медіану й кілька квантилів.
Плутанина двох вибіркових дисперсій. np.var ділить на n, а
pandas.Series.var — на n−1. Назви однакові [2, §8.2]; числа — ні.
Ставлення до дисперсії так, ніби вона в одиницях даних. Вона в квадратних одиницях [1, §22.6.1.5], тому й стандартизують на σ.
Прочитання «дисперсії» як «ризику» без перевірки симетрії. Дисперсія рахує несподіванку вгору так само, як несподіванку вниз, а більшість застосувань — ні.
Ще не прочитаноДочитайте сторінку до кінця — і вона вважатиметься прочитаною.
Зберігайте свій прогресЗ доступом назавжди кожна дочитана сторінка позначається, і ви продовжуєте з того місця, де зупинилися, на всіх своїх пристроях.
Відкрити доступПеревірте себе
3 запитання
Кожну відповідь пояснено: який розділ вона перевіряє і з якого джерела.
Джерела
- Dive into Deep Learningbook · звірено 2026-09-12https://d2l.ai/chapter_appendix-mathematics-for-deep-learning/random-variables.html
- Think Stats, 2nd ed.book · звірено 2026-09-12https://greenteapress.com/thinkstats2/html/index.html
- e-Handbook of Statistical Methods — 1.3.6.6.3 Cauchy Distributionstandard · звірено 2026-10-04https://www.itl.nist.gov/div898/handbook/eda/section3/eda3663.htm