Zákon velkých čísel a centrální limitní věta: proč se průměry chovají tak předvídatelně
Výběrový průměr, zákon velkých čísel a centrální limitní věta s animacemi — proč je normální rozdělení všude, odkud se bere chyba průzkumů ±3 % a proč dvakrát přesnější odhad stojí čtyřikrát víc dat.
Série Základy AI Díl 18 z 83
- Mapa umělé inteligence: co je co a jak to do sebe zapadá
- Stručná historie umělé inteligence: od Turinga po jazykové modely
- Data, model, trénink, inference: základní pojmy na jednom příkladu
- Jak číst matematický zápis: symboly, indexy, sumy a kvantifikátory
- Množiny a relace: stavebnice, ze které se skládají definice v AI
- Funkce a zobrazení: proč je každý model v AI funkce
- Logika a důkazy: pravidla, podle kterých se v AI uvažuje
- Grafy a stromy: struktura, na které stojí hledání i neuronové sítě
- Lineární algebra pro strojové učení: vektory, matice a proč AI hlavně násobí
- Derivace, gradient a řetízkové pravidlo: jak model zjistí, kterým směrem se učit
- Gradientní sestup: jak se model učí
- Co je pravděpodobnost: od hodu kostkou ke Kolmogorovovým axiomům
- Podmíněná pravděpodobnost a Bayesova věta: jak změnit odhad, když se dozvíte něco nového
- Náhodná veličina a distribuční funkce: jedna funkce, která o rozdělení řekne všechno
- Funkce hustoty a pravděpodobnostní funkce: proč má spojitá veličina v bodě pravděpodobnost nula
- Střední hodnota, rozptyl a kovariance: kde rozdělení leží, jak je široké a co s čím souvisí
- Přehled pravděpodobnostních rozdělení: Bernoulli, binomické, Poisson, rovnoměrné, normální a exponenciální
- Zákon velkých čísel a centrální limitní věta: proč se průměry chovají tak předvídatelně
- Statistika a odhady parametrů: maximální věrohodnost, MAP a intervaly spolehlivosti
- Teorie informace: entropie, křížová entropie a KL divergence — odkud se berou ztrátové funkce
- Prohledávání stavového prostoru: BFS, DFS, UCS a A* s animacemi
- Hry a protivník: minimax, alfa-beta ořezávání a Monte Carlo tree search
- Splňování omezujících podmínek: backtracking, propagace omezení a AC-3 na sudoku a mapě krajů
- Logika a znalostní systémy: dopředné a zpětné řetězení, rezoluce a expertní systémy
- Plánování: STRIPS, svět kostek, heuristiky z relaxace a plánování v AI agentech
- Lokální hledání a simulované žíhání: obchodní cestující přes krajská města
- Genetické algoritmy: populace, křížení, mutace a výběr na batohu na výlet
- Evoluční strategie a genetické programování: od pravidla jedné pětiny po Keplerův zákon
- Optimalizace mravenčí kolonií: jak feromonová stopa najde krátkou cestu
- Optimalizace hejnem částic: setrvačnost, vlastní zkušenost a zkušenost hejna
- Neuroevoluce: evoluce vah i tvaru neuronových sítí a algoritmus NEAT
- Fuzzy množiny a funkce příslušnosti: jak zapsat „trochu teplo“
- Fuzzy logika a pravděpodobnost: proč „trochu teplo“ neznamená „pravděpodobně teplo“
- Fuzzy logika: t-normy, implikace a pravidla KDYŽ–PAK
- Fuzzy řízení: Mamdani a Sugeno od ventilátoru po kyvadlo na vozíku
- Fuzzy shlukování: algoritmus fuzzy c-means a body mezi shluky
- Neuro-fuzzy systémy (ANFIS): fuzzy pravidla, která se učí z dat
- Markovovy řetězce: přechodová matice, stacionární rozdělení a PageRank
- Skryté Markovovy modely: Viterbiho algoritmus a nepoctivé kasino
- Bayesovské sítě: proč je tráva mokrá a co z toho plyne pro postřikovač
- Kalmanův filtr: jak z nepřesných měření odhadnout, kde auto je a jak rychle jede
- Druhy strojového učení: s učitelem, bez učitele, s částečným učitelem a další
- Přeučení a regularizace: proč model, který zná data nazpaměť, selže
- Vyhodnocení modelu: křížová validace, F1 a křivka ROC
- Shlukování a snížení dimenze: k-means, PCA a t-SNE
- Klasifikace a regrese: dvě úlohy učení s učitelem
- Lineární regrese: nejmenší čtverce geometricky i maticově
- Polynomiální a nelineární regrese: jak přímku ohnout
- Logistická regrese: sigmoida, šance a křížová entropie
- Vícetřídní klasifikace a softmax: od dvou tříd k mnoha
- Naivní Bayesův klasifikátor: spamový filtr, který funguje lépe, než by měl
- Ztrátové funkce: co přesně model minimalizuje
- Rozhodovací stromy a k nejbližších sousedů: modely bez vzorců
- Ansámbly: náhodný les a gradient boosting
- SVM a jádrový trik: nejširší hranice a jak ji ohnout
- Signál a vzorkování: proč platí Nyquistův teorém
- Fourierova transformace: rozklad signálu na frekvence
- Filtry a konvoluce: vyhlazení, hrany a odstranění šumu
- Zvuk a řeč: spektrogram, melová škála a MFCC
- Obraz jako signál: pixely, barvy, konvoluce a hrany
- Perceptron a umělý neuron: nejjednodušší neuronová síť a co neumí
- Neuronová síť od nuly: zpětné šíření chyby krok za krokem
- Aktivace, inicializace a normalizace: drobnosti, na kterých hluboká síť stojí
- Konvoluční sítě: jak síť poznává obrázky
- Rekurentní sítě: paměť pro posloupnosti a mizející gradient
- LSTM a GRU: brány, které rozhodují, co si síť zapamatuje
- Autoenkodéry: síť, která se učí data stlačit a zase rozbalit
- Embeddingy a word2vec: jak se slovo stane vektorem
- Mechanismus pozornosti: jak se model naučí, kam se dívat
- Transformery a velké jazykové modely: architektura krok za krokem
- Tokenizace: jak se text rozseká na kousky pro model
- Předtrénování a škálování: proč větší model a víc dat funguje
- Doladění a RLHF: jak se z doplňovače textu stane asistent
- Prompty, kontext a RAG: jak modelu dát správné informace
- Variační autoenkodéry (VAE): nové obrázky ze spojitého latentního prostoru
- Generativní adversariální sítě (GAN): padělatel proti detektivovi
- Difúzní modely: jak se z čistého šumu stane obrázek
- Markovovy rozhodovací procesy: stavy, akce, odměny a Bellmanovy rovnice
- Q-learning a DQN: učení hodnoty akcí od tabulky po neuronovou síť
- Policy gradient a PPO: učení přímo strategie
- Jak funguje AI agent: jazykový model ve smyčce s nástroji
- Programování s AI agenty: zadání, testy a kontrola
- Vyhodnocení a bezpečnost AI systémů: jak měřit a jak hlídat
Celá osnova série 83 z 83 témat hotovo
- Proč se výběrový průměr blíží střední hodnotě a proč jeho kolísání klesá jen s odmocninou počtu dat.
- Co říká centrální limitní věta a proč má průměr mnoha veličin skoro vždy normální rozdělení.
- Jak z toho spočítat chybu odhadu — v průzkumech, při vyhodnocení modelů i v gradientním sestupu.
Co se hodí znát předem: Přehled pravděpodobnostních rozdělení: Bernoulli, binomické, Poisson, rovnoměrné, normální a exponenciální
Jeden hod kostkou je čistá náhoda. Průměr deseti tisíc hodů je ale skoro jistě 3,5 — a to s přesností, kterou umíme předem spočítat. Tenhle díl je o dvou větách, které z chaosu jednotlivých pokusů dělají předvídatelnost: zákon velkých čísel říká, kam se průměr blíží, a centrální limitní věta, jak kolem toho cíle kolísá. Na nich stojí průzkumy veřejného mínění, kontrola kvality, A/B testy i trénování neuronových sítí.
Navazuje na díly Střední hodnota a rozptyl a Přehled rozdělení.
1. Výběrový průměr
Definice — nezávislé stejně rozdělené veličiny
Nechť (Ω, 𝓕, P) je pravděpodobnostní prostor a X1, X2, … : Ω → ℝ je konečná nebo nekonečná posloupnost náhodných veličin. Pro x ∈ ℝ označme FXi(x) = P(Xi ≤ x) distribuční funkci veličiny Xi (podrobněji v části o konvergenci níže). Veličiny jsou nezávislé stejně rozdělené (anglicky i.i.d.), právě když platí obě podmínky:
- nezávislost: pro každé n ≥ 1 (nejvýše délka posloupnosti) a všechna x1, …, xn ∈ ℝ je P(X1 ≤ x1 ∧ … ∧ Xn ≤ xn) = P(X1 ≤ x1) · … · P(Xn ≤ xn);
- stejné rozdělení: pro všechny indexy i, j a každé x ∈ ℝ je FXi(x) = FXj(x).
Zápis P(X1 ≤ x1 ∧ … ∧ Xn ≤ xn) je zkratka za P({ω ∈ Ω : X1(ω) ≤ x1 ∧ … ∧ Xn(ω) ≤ xn}). Podmínka 1 tedy říká, že znalost hodnot jedněch veličin nemění pravděpodobnosti hodnot ostatních.
Opakujete pořád tentýž pokus za stejných podmínek a jeden výsledek neovlivní druhý: hody stejnou kostkou, odpovědi náhodně vybraných lidí, měření stejným přístrojem.
Definice — výběrový průměr
Nechť (Ω, 𝓕, P) je pravděpodobnostní prostor, n ∈ ℕ, n ≥ 1, a X1, …, Xn : Ω → ℝ jsou náhodné veličiny. Jejich výběrový průměr je náhodná veličina X̄n : Ω → ℝ,
X̄n(ω) = X1(ω) + … + Xn(ω)/n = 1/n ∑i=1n Xi(ω), ω ∈ Ω.
Pro každý výsledek ω je to tedy obyčejný aritmetický průměr čísel X1(ω), …, Xn(ω).
Obyčejný průměr naměřených hodnot. Pozor na rozdíl: střední hodnota μ je vlastnost rozdělení, jedno pevné číslo. Výběrový průměr se počítá z dat, a protože data jsou náhodná, je i on náhodná veličina — při každém novém pokusu vyjde trochu jinak.
Věta — střední hodnota a rozptyl průměru
Nechť n ∈ ℕ, n ≥ 1, a X1, …, Xn jsou nezávislé stejně rozdělené náhodné veličiny s konečnou střední hodnotou E[Xi] = μ ∈ ℝ a konečným rozptylem Var(Xi) = σ² (σ ≥ 0). Pak
E[X̄n] = μ, Var(X̄n) = σ²/n, a směrodatná odchylka X̄n je σ/√n.
Průměr míří správně a jeho kolísání se s počtem dat zmenšuje — ale jen s odmocninou. Jedna kostka má σ ≈ 1,71, průměr 100 kostek už jen 0,171. Pro dvakrát přesnější odhad potřebujete čtyřikrát víc dat. Věta plyne přímo z linearity a ze sčítání rozptylů nezávislých veličin z minulých dílů.
Důkaz a příklad — rozptyl průměru kostek
E[X̄n] = 1/n · (E[X1] + … + E[Xn]) = 1/n · nμ = μ (linearita)
Var(X̄n) = (1/n)2 · (Var X1 + … + Var Xn) = nσ2/n2 = σ2/n (konstanta vychází ze rozptylu na druhou, rozptyly nezávislých veličin se sčítají)
Jedna kostka: μ = 1 + 2 + … + 6/6 = 3,5, E[X2] = 1 + 4 + 9 + 16 + 25 + 36/6 = 91/6
σ2 = 91/6 − 3,52 = 35/12 ≈ 2,917, σ ≈ 1,708
Průměr 100 kostek: σ/√100 = 1,708/10 ≈ 0,171
Celá věta stojí na tom, že činitel 1/n se v rozptylu umocní na 1/n2, kdežto součet rozptylů roste jen jako n. U závislých veličin by se k součtu přidaly kovariance a kolísání by klesalo pomaleji.
2. Zákon velkých čísel
Věta — (slabý) zákon velkých čísel
Nechť (Ω, 𝓕, P) je pravděpodobnostní prostor a X1, X2, … : Ω → ℝ jsou nezávislé stejně rozdělené náhodné veličiny se střední hodnotou E[Xi] = μ ∈ ℝ a konečným rozptylem Var(Xi) = σ² < ∞. Nechť X̄n je výběrový průměr prvních n z nich. Pak
∀ε > 0 : limn→∞ P(|X̄n − μ| ≥ ε) = 0.
(Říkáme, že X̄n konverguje k μ v pravděpodobnosti. Tvrzení platí i bez předpokladu konečného rozptylu — Chinčinův zákon velkých čísel —, důkaz je ale složitější.)
Ať si zvolíte jakkoli malou toleranci ε, s dost velkým počtem dat bude průměr od skutečné střední hodnoty dál než ε jen s mizivou pravděpodobností. Průměr dat je dobrý odhad střední hodnoty — a čím víc dat, tím lepší.
Důkaz je na jeden řádek: podle Čebyševovy nerovnosti je P(|X̄n − μ| ≥ ε) ≤ σ²/nε² a to jde s rostoucím n k nule. Pro kostku, toleranci 0,1 a 10 000 hodů vychází mez 2,917/10 000 · 0,1² = 2,917/100 ≈ 0,029 (barvy podle vzorce níže).
P(|X̄n − μ| ≥ ε) ≤ σ²/n · ε²
- |X̄n − μ| ≥ ε
- „průměr se netrefil“ — minul skutečnou střední hodnotu aspoň o zvolenou toleranci
- σ²
- rozptyl jednoho pokusu — čím divočejší jsou jednotlivá data, tím větší šanci na minutí musíme připustit
- n
- počet dat — rozptyl průměru je σ²/n, proto mez s rostoucím n klesá k nule; to je celý zákon velkých čísel
- ε²
- tolerance na druhou — Čebyšev porovnává rozptyl (veličinu „na druhou“) s čtvercem vzdálenosti; přísnější tolerance stojí kvadraticky víc dat
Mez jde použít i obráceně — kolik hodů stačí, aby se průměr s pravděpodobností aspoň 95 % netrefil o méně než 0,1? Stačí, aby 2,917/n · 0,01 ≤ 0,05, tedy n ≥ 2,917/0,0005 ≈ 5833,3 — postačí 5834 hodů. Čebyšev je ale opatrný: platí pro každé rozdělení, a proto bývá skutečně potřebný počet výrazně menší. Kolik přesně, řekne centrální limitní věta.
Po deseti hodech leží průměry čtyř běhů mezi 3,4 a 4,1, po 10 000 hodech mezi 3,496 a 3,502. Trychtýř μ ± 2σ/√n se zužuje přesně tak, jak říká věta o rozptylu průměru — a čáry z něj vybočují jen výjimečně. Proč zrovna 2σ a proč „jen výjimečně“, řekne další věta.
Zákon velkých čísel neříká, že se náhoda „vyrovnává“. Když na minci padne pětkrát po sobě líc, rub není „na řadě“ — mince si nic nepamatuje. Průměr se k 0,5 neblíží tím, že by se přebytek líců odčítal, ale tím, že ho dalších tisíc hodů rozředí.
3. Konvergence v distribuci
Definice — distribuční funkce
Nechť (Ω, 𝓕, P) je pravděpodobnostní prostor a Y : Ω → ℝ náhodná veličina. Distribuční funkce veličiny Y je funkce FY : ℝ → [0, 1],
FY(x) = P(Y ≤ x) = P({ω ∈ Ω : Y(ω) ≤ x}), x ∈ ℝ.
Každá distribuční funkce
- je neklesající: x ≤ y ⇒ FY(x) ≤ FY(y);
- je zprava spojitá: limt→x+ FY(t) = FY(x) pro každé x ∈ ℝ;
- splňuje limx→−∞ FY(x) = 0 a limx→+∞ FY(x) = 1,
a rozdělení veličiny Y určuje úplně. Distribuční funkce normovaného normálního rozdělení N(0, 1) se značí Φ.
Příklad: pro jednu kostku je F(3) = 3/6 = 0,5 a F(3,7) také 0,5 — mezi celými čísly je F vodorovná a v každém z bodů 1, …, 6 skočí o 1/6.
Definice — konvergence v distribuci
Nechť Y, Y1, Y2, … jsou náhodné veličiny s distribučními funkcemi FY, FY1, FY2, … (nemusí být definované na témže pravděpodobnostním prostoru — záleží jen na jejich rozděleních). Označme
C(FY) = {x ∈ ℝ : FY je spojitá v bodě x}.
Posloupnost Y1, Y2, … konverguje v distribuci k veličině Y, píšeme Yn →d Y, právě když
∀x ∈ C(FY) : limn→∞ FYn(x) = FY(x).
Má-li Y rozdělení N(0, 1), píšeme také Yn →d N(0, 1); protože Φ je spojitá všude, znamená to limn→∞ FYn(x) = Φ(x) pro každé x ∈ ℝ.
Nejde o to, že by se hodnoty Yn blížily nějakému číslu, ale že se tvar jejich rozdělení blíží tvaru jiného rozdělení. Binomické rozdělení se takhle v minulém dílu blížilo Poissonovu.
Příklad — proč výjimka pro body nespojitosti
Nechť Yn je s jistotou rovno 1/n (tj. Yn(ω) = 1/n pro každé ω ∈ Ω) a Y s jistotou 0. Hodnoty se zjevně blíží nule, takže bychom chtěli, aby Yn konvergovalo k Y. Jenže
FYn(0) = P(1/n ≤ 0) = 0 pro každé n, ale FY(0) = P(0 ≤ 0) = 1.
Pro každé x ≠ 0 se už FYn(x) a FY(x) od jistého n shodují (obě 0 pro x < 0, obě 1 pro x > 0 a n > 1/x).
Jediný problematický bod je 0 — a právě tam má FY skok. Proto definice body nespojitosti vynechává.
4. Centrální limitní věta
Věta — centrální limitní věta
Nechť (Ω, 𝓕, P) je pravděpodobnostní prostor a X1, X2, … : Ω → ℝ jsou nezávislé stejně rozdělené náhodné veličiny se střední hodnotou E[Xi] = μ ∈ ℝ a rozptylem Var(Xi) = σ², kde 0 < σ² < ∞. Pro n ≥ 1 nechť X̄n je výběrový průměr prvních n z nich a
Zn = X̄n − μ/σ/√n.
Pak Zn →d N(0, 1), tj.
∀z ∈ ℝ : limn→∞ P(Zn ≤ z) = Φ(z).
Ať mají jednotlivé pokusy rozdělení jakékoli — rovnoměrné, zešikmené, s několika vrcholy —, průměr mnoha z nich má přibližně normální rozdělení se střední hodnotou μ a směrodatnou odchylkou σ/√n. Proto je zvonová křivka všude: kdykoli se sčítá hodně drobných nezávislých vlivů. Galtonova deska z minulého dílu je přesně tohle.
X̄n − μ/σ/√n →d N(0, 1)
- X̄n − μ
- chyba průměru — posune rozdělení tak, aby měl střed v nule; samotný X̄n by se podle zákona velkých čísel smrskl do bodu μ a žádný tvar by nezbyl
- σ/√n
- směrodatná odchylka průměru — dělením chybu „zvětšíme“ přesně tolik, kolik ji velké n zmenšilo, takže rozptyl zůstane pořád 1 a tvar je vidět
- →d
- konvergence v distribuci — blíží se tvar rozdělení, ne hodnoty
- N(0, 1)
- cíl je vždy týž, nezávisle na rozdělení Xi — z původního rozdělení přežijí jen μ a σ, které jsme už odečetli a vydělili
Rozdělení jedné kostky je ploché — žádný zvon. Průměr dvou kostek je trojúhelník, průměr pěti už zvon připomíná a průměr třiceti od normálního rozdělení skoro neodlišíte. Sloupce jsou přesné rozdělení spočítané výčtem všech možností, čárkovaně normální aproximace:
Funguje to i pro silně zešikmené rozdělení — třeba čekání na e-mail s exponenciálním rozdělením. Jedno čekání je hodně nesouměrné (šikmost 2), průměr pěti čekání méně a průměr třiceti už je skoro souměrný (šikmost 0,37):
Definice — šikmost
Nechť X je náhodná veličina s konečnou střední hodnotou E[X] = μ, směrodatnou odchylkou σ, kde 0 < σ < ∞, a konečným třetím momentem E[|X|3] < ∞. Šikmost veličiny X je číslo
γ = E[(X − μ)3]/σ3.
Třetí mocnina zachová znaménko odchylky, takže odchylky nahoru a dolů se u souměrného rozdělení vyruší a γ = 0. Dlouhý chvost doprava dá γ > 0. Dělení σ3 dělá z šikmosti číslo bez jednotek — nezáleží na tom, jestli čekání měříte v minutách, nebo v sekundách.
Exp(λ): γ = 2 pro každé λ. Průměr n nezávislých kopií: γn = γ/√n
n = 5: 2/√5 ≈ 0,89, n = 30: 2/√30 ≈ 2/5,477 ≈ 0,37
Šikmost tedy mizí jen s odmocninou n — u silně zešikmených dat potřebuje centrální limitní věta víc pozorování než u souměrných.
Jak dobrá aproximace je, ukáže konkrétní otázka: s jakou pravděpodobností bude průměr 30 hodů kostkou větší než 4? Přesný výpočet přes všechny možnosti dává 0,0488. Centrální limitní věta říká: 4 je 4 − 3,5/1,708/√30 ≈ 1,60 směrodatné odchylky nad průměrem (barvy podle rozboru věty výše), takže P ≈ 1 − Φ(1,60) ≈ 0,0544. Bez jediného sčítání přes 630 možností, s chybou pod šest tisícin.
Příklad — průměr 30 kostek nad 4, krok za krokem
σ/√30 = 1,708/5,477 ≈ 0,3118
z = 4 − 3,5/0,3118 ≈ 1,604, P(X̄30 > 4) ≈ 1 − Φ(1,604) ≈ 1 − 0,9456 = 0,0544
Přesně: průměr nad 4 znamená součet aspoň 121 a sečtení pravděpodobností součtů 121 až 180 dá 0,0488.
Většinu rozdílu způsobuje to, že součet kostek je celé číslo, kdežto normální rozdělení je spojité: hodnotám „nad 120“ a „aspoň 121“ přisuzuje různé pravděpodobnosti, i když jde o tentýž jev. Obvyklá oprava na spojitost bere hranici uprostřed mezi 120 a 121, tedy průměr 120,5/30 ≈ 4,017:
z = 120,5/30 − 3,5/0,3118 = 0,5167/0,3118 ≈ 1,657, 1 − Φ(1,657) ≈ 0,0488
Barvy odpovídají členům rozboru centrální limitní věty výše. S opravou se aproximace s přesným výsledkem shoduje na čtyři desetinná místa.
5. K čemu to je: chyba odhadu
Centrální limitní věta říká, že odhad průměrem leží v 95 % případů do 1,96 · σ/√n od skutečné hodnoty. Z toho plyne nejpoužívanější vzorec statistiky:
m = 1,96 · √p(1 − p)/n
- 1,96
- kolik směrodatných odchylek zahrnout, aby uvnitř bylo 95 %: Φ(1,96) ≈ 0,975, takže nad i pod zbude po 2,5 %; pro 99 % by to bylo 2,58
- p(1 − p)
- rozptyl jedné odpovědi ano/ne — Bernoulliho rozptyl z minulého dílu; největší, 0,25, je pro p = 0,5
- n
- počet respondentů nebo testovacích příkladů — pod odmocninou, proto dvakrát menší chyba stojí čtyřikrát víc dat
- Průzkum veřejného mínění s 1 000 respondenty a podporou kolem 50 % má chybu 1,96 · √0,25/1 000 ≈ ±3,1 procentního bodu (barvy podle vzorce výše). Proto mají průzkumy kolem tisíce lidí — pro poloviční chybu by jich potřebovaly čtyři tisíce.
- Přesnost modelu naměřená na 1 000 testovacích příkladech jako 90 % je ve skutečnosti 90 % ± 1,9 procentního bodu. Model s 91 % na stejně velké sadě proto ještě nemusí být lepší.
Příklad — chyba průzkumu, potřebný počet lidí a srovnání dvou modelů
Průzkum: 1,96 · √0,5 · 0,5/1 000 = 1,96 · √0,00025 = 1,96 · 0,01581 ≈ 0,031
Model: 1,96 · √0,9 · 0,1/1 000 = 1,96 · 0,00949 ≈ 0,019
Obrácený vzorec n = 1,962 · p(1 − p)/m2: pro m = 0,03 vyjde 3,8416 · 0,25/0,0009 ≈ 1067,1, tedy 1068 lidí
Rozdíl dvou modelů (90 % a 91 %, každý na jiných 1 000 příkladech): rozptyly nezávislých odhadů se sčítají, 1,96 · √0,09/1 000 + 0,0819/1 000 ≈ 0,026
Barvy odpovídají členům vzorce pro m výše. Naměřený rozdíl 1 procentní bod je menší než 2,6 bodu, které může způsobit samotná náhoda — proto „ještě nemusí být lepší“. Na téže testovací sadě jsou chyby obou modelů závislé a počítá se jinak (párovým testem), závěr ale bývá podobný.
Odkud bere statistika σ, když ho nezná, a co přesně ten interval znamená, je téma příštího dílu o statistice a odhadech.
6. Kdy věty neplatí
- Nekonečný rozptyl nebo žádná střední hodnota. Cauchyho rozdělení má tak těžké chvosty, že střední hodnotu vůbec nemá — a průměr n Cauchyho veličin má přesně stejné rozdělení jako jedna jediná. Víc dat nepomůže vůbec. Podobně divoké bývají velikosti měst, majetky nebo propady na burze. (Cauchyho rozdělení má hustotu f(x) = 1/π(1 + x2), x ∈ ℝ; integrál ∫−∞∞ |x| f(x) dx diverguje, protože |x|/π(1 + x2) klesá jen jako 1/π|x| — a tak E[X] neexistuje.)
- Závislá data. Tisíc odpovědí od lidí z jedné ulice nebo tisíc snímků téhož videa nejsou tisíc nezávislých pozorování a σ/√n chybu silně podhodnotí.
- Málo dat a zešikmené rozdělení. Věta je limitní — u exponenciálního čekání je po pěti pozorováních rozdělení průměru pořád znatelně nesouměrné.
7. Limitní věty v umělé inteligenci
- Stochastický gradientní sestup. Gradient spočítaný z dávky (minibatch) B příkladů je výběrový průměr. Míří stejně jako gradient z celých dat (zákon velkých čísel), ale kolísá se směrodatnou odchylkou ∝ 1/√B. Čtyřikrát větší dávka znamená jen dvakrát menší šum — proto se nevyplatí dávky donekonečna zvětšovat.
- Metody Monte Carlo. Když se něco nedá spočítat přesně — očekávaná odměna v posilovaném učení, integrál ve vysoké dimenzi —, zprůměruje se hodně náhodných vzorků. Zákon velkých čísel zaručí správný výsledek, centrální limitní věta řekne, jak přesný.
- Vyhodnocení modelů a A/B testy stojí na chybě 1,96 · σ/√n: bez ní nepoznáte, jestli je nový model opravdu lepší, nebo měl jen štěstí.
- Inicializace sítí. Vstup neuronu je součet mnoha vah krát aktivací — podle centrální limitní věty má přibližně normální rozdělení. Na tom stojí inicializační schémata Xavier a He, která volí rozptyl vah tak, aby signál sítí ani nezesiloval, ani nezanikal.
gB = 1/B ∑i ∈ dávka ∇ℓi(w), směrodatná odchylka gB = σ∇/√B
- gB
- gradient z dávky — odhad, podle kterého se udělá krok; počítat přesný gradient přes miliony příkladů by bylo pro každý krok příliš drahé
- 1/B ∑, B
- výběrový průměr přes B náhodně vybraných příkladů — díky němu míří odhad v průměru přesně (E[gB] = skutečný gradient) a kolísá jen jako 1/√B
- ∇ℓi(w)
- gradient ztráty na jednom příkladu — náhodná veličina, protože příklad je vybraný náhodně
- σ∇
- jak moc se gradienty jednotlivých příkladů liší — vlastnost dat a modelu, velikostí dávky ji nezměníme
Dávka 32 příkladů má šum σ∇/√32 ≈ 0,177 σ∇, dávka 128 příkladů σ∇/√128 ≈ 0,088 σ∇ — čtyřikrát víc výpočtu za polovinu šumu (barvy podle vzorce výše).
Algoritmus — odhad metodou Monte Carlo i s chybou
Vstup: funkce h : ℝ → ℝ, procedura vzorek(), která při každém volání vrátí novou hodnotu náhodné veličiny X nezávislou na předchozích, a počet vzorků n ∈ ℕ, n ≥ 2. Předpokládáme E[h(X)2] < ∞ (konečný rozptyl h(X)).
Výstup: odhad ȳ ∈ ℝ střední hodnoty E[h(X)] a přibližný 95% interval ȳ ± 1,96 · s/√n.
Kroky:
- Pro i = 1, …, n: vygeneruj nezávislý vzorek xi veličiny X a spočítej yi = h(xi).
- Odhad: ȳ = 1/n ∑i=1n yi (zákon velkých čísel: ȳ → E[h(X)]).
- Výběrová směrodatná odchylka: s = √1/n − 1 ∑i=1n (yi − ȳ)2 (odhad σ).
- Vrať ȳ a interval ȳ ± 1,96 · s/√n (centrální limitní věta).
Zastavení: po pevném počtu n vzorků; chceme-li danou přesnost, volí se n předem (nebo se vzorkuje, dokud 1,96 · s/√n neklesne pod požadovanou mez).
monte_carlo(h, vzorek, n): # odhad E[h(X)]
pro i = 1 … n:
x ← vzorek() # nezávislý vzorek X
y[i] ← h(x)
odhad ← průměr(y) # zákon velkých čísel: → E[h(X)]
s ← výběrová směrodatná odchylka(y) # odhad σ
vrať odhad ± 1,96 · s / √n # centrální limitní věta: 95% interval
Chyba klesá jako 1/√n bez ohledu na dimenzi úlohy — proto bývá Monte Carlo jediná schůdná cesta u integrálů přes stovky proměnných, kde by mřížka bodů měla astronomický počet uzlů.
Příklad — rozptyl vah při inicializaci sítě
Zjednodušeně: neuron sčítá z = ∑j=1n wj xj, váhy i vstupy jsou nezávislé, váhy mají střední hodnotu 0. Rozptyly nezávislých sčítanců se sčítají:
Var(z) = n · Var(w) · E[x2]
Aby signál neslábl ani nesílil, chceme Var(z) ≈ E[x2] ⇒ Var(w) = 1/n
Pro n = 256 vstupů: Var(w) = 1/256 ≈ 0,0039, směrodatná odchylka vah √1/256 = 1/16 = 0,0625
ReLU vynuluje zhruba polovinu vstupů dalšího neuronu, proto He a kol. (2015) volí Var(w) = 2/n (pro n = 256 směrodatná odchylka ≈ 0,088). Glorot a Bengio (2010, „Xavier“) berou kompromis mezi dopředným a zpětným průchodem, Var(w) = 2/nvst + nvýst. Centrální limitní věta k tomu dodává, že z je přibližně normální, takže stačí hlídat rozptyl.
8. Shrnutí
- Výběrový průměr je náhodná veličina se střední hodnotou μ a směrodatnou odchylkou σ/√n.
- Zákon velkých čísel: s rostoucím n se průměr skoro jistě blíží μ.
- Centrální limitní věta: průměr mnoha nezávislých veličin má přibližně normální rozdělení — ať jsou jednotlivé veličiny rozdělené jakkoli.
- Chyba odhadu průměrem je zhruba ±1,96 · σ/√n; dvakrát přesnější odhad stojí čtyřikrát víc dat.
- Bez konečného rozptylu nebo bez nezávislosti věty neplatí.
Máte na to jiný názor? Napište na support@coden-app.com.