Art of DS

Вигляд

Палітра
Тема
Доступ $20 одноразово
Увійти або створити акаунт

Вхід до Art of DSСтворіть акаунт Art of DS

Ми надішлемо на пошту посилання й шестизначний код. Увійти можна будь-яким із них; пароля немає.Введіть свою пошту. Ми надішлемо посилання й шестизначний код, щоб її підтвердити, — пароль не потрібен. Акаунт безкоштовний.

  • Ви повернетеся на цю сторінку, туди, де зупинилися.
  • Уже маєте акаунт? З тією самою адресою ви просто ввійдете.

Продовжуючи, ви приймаєте Умови та Політику конфіденційності.

Ваш акаунт

Безкоштовний акаунтДоступ назавжди

складність 2/5 Безкоштовно

Expectation and variance

Визначення

Два числа, що підсумовують випадкову величину: де вона розташована і наскільки далеко відхиляється. Кожне має умову, про яку забувають, а одного з них іноді взагалі не існує.

Формула
E[X]=∑ixipiVar(X)=E ⁣[(X−μX)2]=E[X2]−μX2\mathbb{E}[X] = \sum_i x_i p_i \qquad \mathrm{Var}(X) = \mathbb{E}\!\left[(X-\mu_X)^2\right] = \mathbb{E}[X^2] - \mu_X^2

Інтуїція

Майже кожна сторінка цього сайту мовчки спирається на ці два числа. Втрати — це математичне сподівання. Розклад на зміщення та дисперсію — це тотожність щодо них. Довірчий інтервал — це замасковане стандартне відхилення.

Середнє показує, де величина зазвичай розташована, і воно «по суті, говорить нам, де зазвичай перебуває випадкова величина» [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.

Як це працює

running mean of n draws — 8 runs of each+4+20−2−4101001k10k100k1Mn, log scalenormal(0, 1)Cauchypanel clipped at ±4
The same experiment run on two distributions. The eight normal runs funnel into the axis and stay there — by a million draws the worst of them is 0.0017 from the truth. The eight Cauchy runs never settle: five of them leave the panel entirely, the worst running mean plotted here is 14.3, and the value at a million draws is no better than the value at a thousand. Nothing is wrong with the sampling. The Cauchy distribution has no mean for the sample mean to converge to, so averaging more data buys nothing at all.

Неперервний випадок нічого не змінює. Розбийте пряму на інтервали довжини ε, і сума стане інтегралом: μ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 запитання

Кожну відповідь пояснено: який розділ вона перевіряє і з якого джерела.

Джерела

  1. Zhang, Lipton, Li, Smola. Dive into Deep Learningbook · звірено 2026-09-12https://d2l.ai/chapter_appendix-mathematics-for-deep-learning/random-variables.html
  2. Downey. Think Stats, 2nd ed.book · звірено 2026-09-12https://greenteapress.com/thinkstats2/html/index.html
  3. NIST/SEMATECH. 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

Маєте промокод?

Код зі знижкою 100% одразу відкриває все. Менша знижка віднімається від ціни у вікні оплати: введіть там той самий код.

Написати в підтримку

Питання, проблема з доступом, повернення коштів? Напишіть нам, і ми відповімо листом.

Про що це?

Адресу використаємо лише для відповіді вам.

Повідомлення надіслано

Дякуємо. Відповімо листом на адресу, яку ви вказали.

Або напишіть нам напряму

support@artofds.com

Повідомлення надіслано Дякуємо. Відповімо листом на адресу, яку ви вказали.

Перевірте адресу пошти: вона потрібна, щоб відповісти.

Це наша адреса. Вкажіть свою, щоб відповідь дійшла до вас.

На цю адресу не можна надіслати лист. Перевірте, чи немає помилки.

Напишіть трохи більше: щонайменше 10 символів.

Забагато повідомлень за короткий час. Спробуйте за кілька хвилин.

Не вдалося надіслати повідомлення. Напишіть нам напряму: support@artofds.com