Funkce hustoty a pravděpodobnostní funkce: proč má spojitá veličina v bodě pravděpodobnost nula
Pravděpodobnostní funkce, hustota pravděpodobnosti a plocha pod křivkou — proč hustota není pravděpodobnost, může být větší než 1 a jak ji z dat odhadne histogram.
Série Základy AI Díl 15 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
- Co je pravděpodobnostní funkce diskrétní veličiny a jak souvisí s distribuční funkcí.
- Co je hustota, proč je pravděpodobnost intervalu plocha pod ní a proč hustota může být větší než 1.
- Jak z dat odhadnout hustotu histogramem a k čemu hustoty slouží v umělé inteligenci.
Co se hodí znát předem: Náhodná veličina a distribuční funkce: jedna funkce, která o rozdělení řekne všechno, Derivace, gradient a řetízkové pravidlo: jak model zjistí, kterým směrem se učit
V dílu o náhodné veličině jsme skončili paradoxem: že na autobus budete čekat přesně 3 minuty, má pravděpodobnost nula — a přesto nějakou přesnou dobu čekat budete. Distribuční funkce s tím počítat umí, ale není moc názorná. Tenhle díl ukáže dvě funkce, které se kreslí a čtou mnohem snáz: pravděpodobnostní funkci pro diskrétní veličiny a hustotu pro spojité.
1. Pravděpodobnostní funkce
Definice — pravděpodobnostní funkce
Nechť (Ω, 𝓕, P) je pravděpodobnostní prostor a X : Ω → ℝ diskrétní náhodná veličina (viz díl Náhodná veličina), tj. existuje nejvýš spočetná množina navzájem různých hodnot H = {x1, x2, …} ⊆ ℝ s P(X ∈ H) = 1. Pravděpodobnostní funkce veličiny X je funkce pX : ℝ → [0, 1],
pX(x) = P(X = x) = P({ω ∈ Ω : X(ω) = x}) pro x ∈ ℝ.
Hodnota pX(x) je tedy pravděpodobnost, že X vyjde přesně x; pro x ∉ H je nulová.
Ke každé hodnotě napíše, s jakou pravděpodobností padne. Pro součet dvou kostek je p(7) = 6/36 ≈ 0,167, p(2) = 1/36 a p(7,5) = 0 — součet 7,5 padnout nemůže. Anglicky se jí říká probability mass function, zkráceně PMF: pravděpodobnost je „hmota“ soustředěná do jednotlivých bodů.
Věta — vlastnosti pravděpodobnostní funkce
Nechť X je diskrétní náhodná veličina, H = {x1, x2, …} ⊆ ℝ nejvýš spočetná množina navzájem různých hodnot s P(X ∈ H) = 1, p : ℝ → [0, 1] pravděpodobnostní funkce a F : ℝ → [0, 1] distribuční funkce veličiny X. Pak
- p(x) ≥ 0 pro každé x ∈ ℝ;
- ∑i p(xi) = 1;
- F(x) = ∑i : xi ≤ x p(xi) pro každé x ∈ ℝ.
Body 2 a 3 plynou z aditivity: jevy {X = xi} jsou navzájem neslučitelné a jejich sjednocení je {X ∈ H}, resp. {X ∈ H, X ≤ x}, které se od {X ≤ x} liší jen o jev s pravděpodobností 0.
Sloupky nejsou záporné a dohromady dají jedničku. Distribuční funkce z minulého dílu je jen průběžný součet sloupků zleva: F(7) = 1/36 + 2/36 + … + 6/36 = 21/36. Obráceně p(x) je výška schodu, který F v bodě x udělá.
Příklad — pravděpodobnostní funkce součtu dvou kostek jedním vzorcem
Všech 36 dvojic (a, b) je stejně možných. Součet k dává dvojice (a, k − a), kde 1 ≤ a ≤ 6 a zároveň 1 ≤ k − a ≤ 6, tedy max(1, k − 6) ≤ a ≤ min(6, k − 1). Takových a je
min(6, k − 1) − max(1, k − 6) + 1 = 6 − |k − 7|, k = 2, 3, …, 12,
p(k) = 6 − |k − 7|/36: p(2) = 6 − 5/36 = 1/36, p(7) = 6 − 0/36 = 6/36, p(10) = 6 − 3/36 = 3/36.
Kontrola druhé vlastnosti: 1 + 2 + 3 + 4 + 5 + 6 + 5 + 4 + 3 + 2 + 1 = 36, takže ∑ p(k) = 36/36 = 1.
Sloupky rostou o 1/36 až k sedmičce a pak stejně klesají — proto je graf trojúhelník.
2. Proč spojitá veličina nemá pravděpodobnost v bodě
Vezměme spojitou veličinu: dobu X v minutách, než vám přijde další e-mail, když v průměru chodí jeden za 2 minuty. Takové čekání má exponenciální rozdělení s distribuční funkcí F(x) = 1 − e−0,5x pro x ≥ 0 (proč zrovna takovou, ukáže díl o rozděleních). Pravděpodobnostní funkce tu nepomůže — v každém bodě by byla nula. Zkusme tedy místo bodu interval [2, 2 + h] a zužovat ho:
Definice — exponenciální rozdělení
Nechť λ ∈ ℝ, λ > 0, a X je náhodná veličina s distribuční funkcí F : ℝ → [0, 1]. X má exponenciální rozdělení s parametrem (intenzitou) λ, právě když pro každé x ∈ ℝ
F(x) = 1 − e−λx pro x ≥ 0 a F(x) = 0 pro x < 0.
Číslo e = limn→∞ (1 + 1/n)n ≈ 2,718 je základ přirozeného logaritmu. Veličina tedy nabývá jen nezáporných hodnot a pravděpodobnost, že přesáhne x ≥ 0, je 1 − F(x) = e−λx.
λ je, kolik událostí přijde v průměru za jednotku času — u e-mailů jeden za 2 minuty, tedy λ = 0,5 za minutu. Pravděpodobnost, že budete čekat déle než x, je 1 − F(x) = e−λx: každá další minuta ji vynásobí stejným číslem e−0,5 ≈ 0,61.
| šířka h | P(2 < X ≤ 2 + h) | P / h |
|---|---|---|
| 2 | 0,2325 | 0,1163 |
| 1 | 0,1447 | 0,1447 |
| 0,5 | 0,0814 | 0,1627 |
| 0,1 | 0,0179 | 0,1794 |
| 0,01 | 0,0018 | 0,1835 |
| → 0 | → 0 | → f(2) ≈ 0,1839 |
Pravděpodobnost intervalu jde k nule — 0,2325, 0,1447, …, 0,0018 —, a proto v jediném bodě vyjde nula. Ale pravděpodobnost na jednotku délky, tedy P/h, se ustálí: 0,1163, 0,1447, 0,1627, 0,1794, 0,1835 … a blíží se k 0,1839. Tohle číslo už o bodě 2 něco říká: kolik pravděpodobnosti připadá na minutu kolem druhé minuty. Je to hustota.
f(x) = limh → 0+ P(x < X ≤ x + h)/h
- f(x)
- hustota v bodě x — číslo, které má o jednom bodě něco říct, i když jeho pravděpodobnost je nula
- limh → 0+
- zužování intervalu — dokud má interval nenulovou šířku, popisuje celý úsek, ne bod x; v limitě zbude jen bod
- P(x < X ≤ x + h)
- pravděpodobnost úzkého intervalu za bodem — sama jde k nule, proto ji nemůžeme vzít přímo
- h
- šířka intervalu — dělením z pravděpodobnosti uděláme pravděpodobnost na jednotku délky, a ta se k nule neblíží
Příklad — první řádek tabulky a limita
P(2 < X ≤ 3) = F(3) − F(2) = (1 − e−1,5) − (1 − e−1) = e−1 − e−1,5 ≈ 0,3679 − 0,2231 = 0,1447
h = 1, takže P/h = 0,1447/1 = 0,1447
V limitě h → 0+ je to derivace F v bodě 2: (1 − e−0,5x)′ = 0,5 · e−0,5x, f(2) = 0,5 · e−1 ≈ 0,1839
(barvy podle vzorce výše)
Věta — spojitá veličina má v každém bodě pravděpodobnost nula
Nechť X je náhodná veličina, jejíž distribuční funkce F : ℝ → [0, 1] je spojitá v každém bodě ℝ. Pak
∀x ∈ ℝ : P(X = x) = 0.
Důkaz. Pro každé h > 0 je jev {X = x} částí jevu {x − h < X ≤ x}, takže 0 ≤ P(X = x) ≤ F(x) − F(x − h). Pravá strana jde pro h → 0 ze spojitosti F k nule, a proto P(X = x) = 0. ∎
3. Plocha pod křivkou: určitý integrál
Definice — určitý integrál
Nechť a, b ∈ ℝ, a < b, a f : [a, b] → ℝ je funkce. Pro n ∈ ℕ, n ≥ 1, rozdělme [a, b] na n dílků [ti−1, ti], i = 1, …, n, kde
Δx = b − a/n, ti = a + i · Δx (i = 0, 1, …, n),
a v každém dílku zvolme libovolný bod xi ∈ [ti−1, ti]. Funkce f je (riemannovsky) integrovatelná na [a, b], právě když existuje číslo I ∈ ℝ takové, že při každé volbě bodů xi (pro každé n zvlášť) platí
limn→∞ ∑i=1n f(xi) · Δx = I.
Číslo I je pak určitý integrál funkce f od a do b a značí se ∫ab f(x) dx. Integrál je tedy limita součtů ploch obdélníků, pokud existuje a nezávisí na tom, kde v dílcích výšku měříme. (Obvyklá Riemannova definice připouští i nestejně široké dílky, jejichž největší šířka jde k nule; dává stejný pojem.) Pro x ∈ ℝ a funkci integrovatelnou na každém [a, x] se definuje nevlastní integrál ∫−∞x f(t) dt = lima→−∞ ∫ax f(t) dt, pokud limita existuje; obdobně ∫a∞ a ∫−∞∞.
Integrál je plocha pod grafem funkce mezi a a b. Rozkrájíte ji na úzké obdélníky „výška krát šířka“, sečtete je a čím užší obdélníky, tím přesnější výsledek. Je to opačná operace k derivaci: derivace říká, jak rychle něco přibývá, integrál sečte, kolik toho přibylo celkem.
∫ab f(x) dx = limn→∞ ∑i=1n f(xi) · Δx
- ∫ab f(x) dx
- plocha pod grafem mezi a a b — to, co chceme; znak ∫ je protažené S jako „suma“
- limn→∞
- čím víc dílků, tím užší obdélníky a tím méně přečnívají přes křivku nebo pod ní chybějí; přesná plocha je to, k čemu se součty blíží
- ∑i=1n
- sečtení všech dílků — plocha celku je součet ploch kousků
- f(xi)
- výška obdélníku — funkce na úzkém dílku skoro nemění hodnotu, takže ji nahradíme jednou hodnotou uvnitř dílku
- Δx
- šířka dílku — výška krát šířka je plocha obdélníku; v zápisu integrálu z ní zbude dx
Definice je zároveň návod, jak integrál spočítat počítačem — obdélníková metoda bere výšku ve středu každého dílku:
def integral(f, a, b, n):
dx = (b - a) / n
plocha = 0
for i in range(n):
x = a + (i + 0.5) * dx # střed i-tého dílku
plocha += f(x) * dx # výška krát šířka
return plocha
Příklad — plocha pod hustotou čekání mezi 1 a 3 čtyřmi obdélníky
f(x) = 0,5 · e−0,5x, a = 1, b = 3, n = 4, Δx = 3 − 1/4 = 0,5
středy dílků xi = 1,25; 1,75; 2,25; 2,75 → výšky f(xi) = 0,2676; 0,2084; 0,1623; 0,1264
(0,2676 + 0,2084 + 0,1623 + 0,1264) · 0,5 = 0,7647 · 0,5 ≈ 0,3824
s 10 dílky 0,3832, se 100 dílky 0,3834 — přesná hodnota (spočítáme ji níž) je 0,3834 (barvy podle vzorce výše)
Věta — Newtonova–Leibnizova formule
Nechť a, b ∈ ℝ, a < b, f : [a, b] → ℝ je spojitá funkce a F : [a, b] → ℝ je funkce, pro kterou F′(x) = f(x) pro každé x ∈ [a, b] (v krajních bodech jednostranná derivace); taková F se nazývá primitivní funkce k f. Pak je f integrovatelná na [a, b] a
∫ab f(x) dx = F(b) − F(a).
Když znáte funkci, jejíž derivace je f, nemusíte sčítat obdélníky: plocha je rozdíl jejích hodnot na koncích. Rychlost auta integrovaná přes čas dá ujetou dráhu — a tu přečtete jako rozdíl dvou stavů tachometru.
4. Funkce hustoty
Definice — hustota pravděpodobnosti
Nechť X je náhodná veličina s distribuční funkcí FX : ℝ → [0, 1] a f : ℝ → [0, ∞) funkce integrovatelná na každém omezeném intervalu. f je hustota veličiny X, právě když
∀x ∈ ℝ : FX(x) = ∫−∞x f(t) dt,
kde vpravo je nevlastní integrál z definice výše. Veličině, která hustotu má, se říká absolutně spojitá; její distribuční funkce je spojitá, takže je spojitá i ve smyslu dílu Náhodná veličina. Hustota není určena jednoznačně: změníme-li f v konečně mnoha bodech, integrály se nezmění.
Hustota je křivka, pod kterou leží celá pravděpodobnost. Plocha pod ní nalevo od x je pravděpodobnost, že veličina vyjde nejvýš x. Kde je křivka vysoko, tam hodnoty padají často; kde je nízko, zřídka. U čekání na e-mail je nejvyšší u nuly a pak klesá — krátká čekání jsou častá, dlouhá vzácná.
Věta — pravděpodobnost jako plocha
Nechť X je náhodná veličina s distribuční funkcí F a hustotou f. Pak
- pro všechna a, b ∈ ℝ, a < b, platí P(a < X ≤ b) = ∫ab f(x) dx = F(b) − F(a);
- ∫−∞∞ f(x) dx = 1;
- je-li f spojitá v bodě x ∈ ℝ, pak je F v bodě x diferencovatelná a F′(x) = f(x).
Důkaz. 1: F(b) − F(a) = ∫−∞b f − ∫−∞a f = ∫ab f a podle věty o pravděpodobnosti intervalu je to P(a < X ≤ b). 2: ∫−∞∞ f = limx→∞ F(x) = 1. 3: F(x + h) − F(x)/h = 1/h ∫xx+h f(t) dt je průměr f na intervalu délky |h|, a ten jde ze spojitosti f v x k f(x). ∎
Pravděpodobnost intervalu je plocha pod hustotou nad tím intervalem a celá plocha je 1. Hustota je derivace distribuční funkce — přesně to, k čemu se blížil poměr P/h v tabulce. Pro čekání na e-mail vyjde f(x) = 0,5 · e−0,5x.
Příklad — hustota exponenciálního rozdělení a plocha pod ní
Pro x > 0: f(x) = F′(x) = (1 − e−λx)′ = 0 − (−λ) · e−λx = λ · e−λx; pro x < 0 je f(x) = 0.
Celková plocha: ∫0∞ λ e−λx dx = limb→∞ (F(b) − F(0)) = limb→∞ (1 − e−λb) − 0 = 1
Pro λ = 0,5: f(0) = 0,5, f(2) ≈ 0,1839, f(4) ≈ 0,0677 — každé 2 minuty hustota klesne na e−1 ≈ 37 %.
Že e-mail přijde mezi první a třetí minutou, je plocha pod křivkou mezi 1 a 3. Podle Newtonovy–Leibnizovy formule ji nemusíme sčítat po obdélnících: F(3) − F(1) = (1 − e−1,5) − (1 − e−0,5) = e−0,5 − e−1,5 ≈ 0,6065 − 0,2231 ≈ 0,383.
5. Hustota není pravděpodobnost
Hodnota hustoty v bodě není pravděpodobnost — je to pravděpodobnost na jednotku. Pravděpodobnost dostanete, až ji vynásobíte šířkou intervalu: pro úzký interval platí P(x < X ≤ x + h) ≈ f(x) · h. Pro x = 2 a h = 0,1 je to 0,1839 · 0,1 ≈ 0,0184, skutečně 0,0179 (barvy podle vzorce níže).
P(x < X ≤ x + h) ≈ f(x) · h
- P(x < X ≤ x + h)
- skutečná pravděpodobnost — přesně je to plocha pod hustotou nad úzkým intervalem
- f(x)
- hustota — pravděpodobnost na jednotku délky; na úzkém intervalu se skoro nemění, takže ji bereme jako výšku obdélníku
- h
- šířka intervalu — teprve vynásobením délkou se z „na jednotku“ stane pravděpodobnost; proto může být f velká a součin přesto malý
Proto hustota může být větší než 1. Když dojdete na zastávku, kam autobus jezdí každou půlminutu, čekání je rovnoměrné na intervalu [0; 0,5] a hustota je tam všude 2 — plocha obdélníku 0,5 × 2 je pořád 1. Je to jako hustota zalidnění: 2 000 obyvatel na km² neříká, kolik lidí bydlí v jednom domě — počet dostanete, až hustotu vynásobíte plochou.
Definice — rovnoměrné rozdělení
Nechť a, b ∈ ℝ, a < b, a X je náhodná veličina. X má rovnoměrné rozdělení na intervalu [a, b], právě když má hustotu f : ℝ → [0, ∞),
f(x) = 1/b − a pro x ∈ [a, b], f(x) = 0 pro x ∉ [a, b].
Integrací dostaneme F(x) = x − a/b − a pro x ∈ [a, b], 0 vlevo a 1 vpravo — tatáž distribuční funkce jako v definici z dílu Náhodná veličina, obě definice se tedy shodují.
Všechny hodnoty v intervalu jsou „stejně husté“ a celá jednička se rozprostře na délku b − a. Pro autobus po půl minutě je f = 1/0,5 − 0 = 2; pro autobus po 10 minutách by to bylo 1/10 = 0,1. Čím kratší interval, tím vyšší hustota — plocha musí zůstat 1.
6. Odhad hustoty z dat: histogram
Definice — histogram jako odhad hustoty
Nechť n ∈ ℕ, n ≥ 1, x1, …, xn ∈ ℝ jsou data, w > 0 šířka koše a c ∈ ℝ počátek. Koše jsou intervaly
Bk = [c + kw, c + (k + 1)w), k ∈ ℤ;
navzájem se nepřekrývají a pokrývají celé ℝ, takže každé x ∈ ℝ leží v právě jednom koši B(x). Pro koš B označme nB = |{i ∈ {1, …, n} : xi ∈ B}| počet dat v něm. Histogram (odhad hustoty) je funkce f̂ : ℝ → [0, ∞),
f̂(x) = nB(x)/n · w pro x ∈ ℝ.
Na každém koši je tedy histogram konstantní a rovný podílu dat v koši dělenému šířkou koše.
Spočítáte, kolik měření padlo do každého koše, a vydělíte to počtem měření i šířkou koše — pak je celková plocha sloupků přesně 1 a histogram je odhad hustoty. Je to totéž, co poměr P/h, jen místo skutečné pravděpodobnosti použijete podíl dat.
f̂(x) = nB/n · w
- f̂(x)
- odhad hustoty v bodě x — stříška říká „spočítáno z dat“, ne skutečná f
- nB
- počet měření v koši B, do kterého x padne — čím víc dat v okolí x, tím je tam hustota vyšší
- n
- počet všech měření — z počtu udělá podíl nB/n, odhad pravděpodobnosti koše; jinak by víc dat dalo vyšší sloupky
- w
- šířka koše — z pravděpodobnosti koše udělá pravděpodobnost na jednotku délky, stejně jako h v poměru P/h; bez něj by širší koše dávaly vyšší sloupky
Data k histogramu jsme si vyrobili. Počítač umí losovat jen rovnoměrně z intervalu [0, 1); exponenciální čekání z toho dostaneme takovým převodem:
Věta — metoda inverzní transformace
Nechť λ ∈ ℝ, λ > 0, a U : Ω → [0, 1) je náhodná veličina s rovnoměrným rozdělením na [0, 1] (hodnota 1 má pravděpodobnost 0, takže ji smíme vynechat). Pak náhodná veličina
X = −ln(1 − U)/λ
má exponenciální rozdělení s parametrem λ.
Důkaz. Protože 1 − U ∈ (0, 1], je ln(1 − U) ≤ 0 a X ≥ 0, takže pro x < 0 je P(X ≤ x) = 0. Pro x ≥ 0 je −ln(1 − U)/λ ≤ x ⇔ 1 − U ≥ e−λx ⇔ U ≤ 1 − e−λx, takže P(X ≤ x) = P(U ≤ 1 − e−λx) = 1 − e−λx = F(x). ∎
Vylosované číslo u berete jako „hladinu“ distribuční funkce a hledáte, kde ji F dosáhne: x = F−1(u). Padne-li u = 0,5, je to −ln 0,5/0,5 ≈ 1,39 minuty — medián čekání. Stejně se dá losovat z každého rozdělení, jehož distribuční funkci umíme obrátit.
def histogram(n, lam=0.5, w=0.5, konec=10):
pocty = [0] * int(konec / w)
for _ in range(n):
u = nahodne() # rovnoměrně z [0, 1)
x = -log(1 - u) / lam # inverzní transformace
if x < konec:
pocty[int(x / w)] += 1 # do kterého koše padne
return [c / (n * w) for c in pocty] # výšky: plocha sloupků je 1
Takhle jsme nasimulovali 100, 1 000 a 10 000 čekání na e-mail (s košem 0,5 minuty) a přes histogramy nakreslili skutečnou hustotu:
Ze 100 čekání se sloupek od skutečnosti liší až o 0,098, z 1 000 o 0,017 a z 10 000 o 0,008. Podíl čekání do jedné minuty vyšel 0,440, 0,397 a 0,390 — skutečná pravděpodobnost je F(1) ≈ 0,393. S přibývajícími daty se histogram přimkne k hustotě, stejně jako se empirická distribuční funkce přimkla ke skutečné.
Příklad — první sloupek histogramu
Koš [0; 0,5), w = 0,5. Ze 100 čekání jich do něj padlo 27: f̂ = 27/100 · 0,5 = 0,54
Z 10 000 čekání jich padlo 2 172: f̂ = 2 172/10 000 · 0,5 ≈ 0,434 (barvy podle vzorce výše)
Histogram odhaduje průměrnou hustotu na koši: F(0,5) − F(0)/0,5 = 1 − e−0,25/0,5 ≈ 0,442
Ze 100 čekání je první sloupek o 0,098 vyšší, než má být — to je ta největší odchylka z textu výše.
7. Diskrétní a spojité vedle sebe
| Diskrétní veličina | Spojitá veličina | |
|---|---|---|
| Popisuje ji | pravděpodobnostní funkce p(x) | hustota f(x) |
| P(X = x) | p(x) | 0 |
| Hodnoty | mezi 0 a 1 | ≥ 0, mohou být i větší než 1 |
| Celkem | ∑ p(xi) = 1 | ∫ f(x) dx = 1 |
| P(a < X ≤ b) | součet sloupků | plocha pod křivkou |
| Distribuční funkce | schodiště, skoky o p(x) | spojitá, sklon f(x) |
8. Hustoty a pravděpodobnostní funkce v umělé inteligenci
- Klasifikátor a jazykový model vracejí pravděpodobnostní funkci. Poslední vrstva (softmax) dá ke každé třídě nebo každému slovu číslo mezi 0 a 1 a všechna dohromady dají 1 — přesně vlastnosti pravděpodobnostní funkce.
- Věrohodnost. Model se učí tak, aby trénovací data měla co největší pravděpodobnost (u diskrétních dat) nebo hustotu (u spojitých). Záporný logaritmus toho čísla je běžná ztrátová funkce.
- Hledání anomálií. Model odhadne hustotu běžného provozu; transakce nebo měření v místě s velmi malou hustotou je podezřelé.
- Generativní modely se učí hustotu obrázků, zvuků či textů — a nový obrázek je vzorek z té naučené hustoty.
Věrohodnost na příkladu
Definice — věrohodnost a záporná logaritmická věrohodnost
Nechť Θ je množina parametrů a pro každé θ ∈ Θ je fθ : ℝ → [0, ∞) hustota (nebo pravděpodobnostní funkce) nějakého rozdělení — model. Nechť n ≥ 1 a x1, …, xn ∈ ℝ jsou data, která považujeme za hodnoty nezávislých náhodných veličin X1, …, Xn se stejným rozdělením. Věrohodnost je funkce L : Θ → [0, ∞),
L(θ) = ∏i=1n fθ(xi) = fθ(x1) · fθ(x2) · … · fθ(xn).
Pro θ s L(θ) > 0 je záporná logaritmická věrohodnost (NLL)
NLL(θ) = −ln L(θ) = −∑i=1n ln fθ(xi).
Odhad metodou maximální věrohodnosti je θ̂ ∈ Θ, pro které L(θ̂) ≥ L(θ) pro všechna θ ∈ Θ (pokud takové existuje). Protože −ln je klesající, je to totéž jako NLL(θ̂) ≤ NLL(θ) pro všechna θ s L(θ) > 0 — metoda volí parametry, které NLL minimalizují.
Hustoty jednotlivých měření se násobí, protože data jsou nezávislá. Součin mnoha malých čísel je v počítači nepoužitelně malý, logaritmus z něj udělá součet a minus z maximalizace minimalizaci — aby to byla ztráta, kterou zmenšuje gradientní sestup.
Naměřili jsme tři čekání na e-mail: 1, 2 a 3 minuty. Jakou intenzitu λ mají? Pro exponenciální hustotu je ln(λ e−λx) = ln λ − λx, takže
NLL(λ) = −n · ln λ + λ · ∑i xi
- NLL(λ)
- ztráta — čím menší, tím vyšší hustotu dává model naměřeným datům
- −n · ln λ
- výška hustoty u nuly je λ — tenhle člen tlačí λ nahoru, protože vyšší křivka dá datům vyšší hustotu
- λ · ∑i xi
- pokuta za dlouhá čekání — s velkým λ hustota rychle padá a naměřená delší čekání by byla nepravděpodobná; tlačí λ dolů
Příklad — ztráta pro tři čekání 1, 2 a 3 minuty
n = 3, ∑ xi = 6
NLL(0,25) = −3 · ln 0,25 + 0,25 · 6 ≈ 4,159 + 1,5 = 5,659
NLL(0,5) = −3 · ln 0,5 + 0,5 · 6 ≈ 2,079 + 3 = 5,079
NLL(1) = −3 · ln 1 + 1 · 6 = 0 + 6 = 6,000 (barvy podle vzorce výše)
minimum: λ̂ = 3/6 = 0,5 — jeden e-mail za 2 minuty, přesně průměr dat
9. Shrnutí
- Diskrétní veličinu popisuje pravděpodobnostní funkce p(x) = P(X = x); sloupky dají dohromady 1.
- Spojitá veličina má v každém bodě pravděpodobnost 0; smysl má pravděpodobnost na jednotku délky — hustota.
- Hustota f je derivace distribuční funkce a pravděpodobnost intervalu je plocha pod ní — integrál.
- Hustota není pravděpodobnost a může být větší než 1; celková plocha pod ní je vždy 1.
- Histogram vydělený počtem dat a šířkou koše odhaduje hustotu z dat.
Máte na to jiný názor? Napište na support@coden-app.com.