⚡ TL;DR – 12 vět, které musíš umět
Kdyby ses nic jiného nenaučil, nauč se tohle. Každý bod je rozepsaný níž.
Minimum na minitest
- 1. Svět modelujeme jako Y = f(X) + ε. f = pevná, ale neznámá funkce (systematická informace, kterou X nese o Y), ε = náhodná chyba, nezávislá na X a se střední hodnotou 0.
- 2. Statistical learning = soubor metod, jak odhadnout f (odhad značíme f̂).
- 3. f odhadujeme ze dvou důvodů: predikce (Ŷ = f̂(X), f̂ smí být černá skříňka) a inference (potřebuju rozumět tvaru f̂).
- 4. Chyba predikce = reducible (mou lepší metodou jde zmenšit) + irreducible = Var(ε) (nejde odstranit nikdy, je to strop přesnosti).
- 5. Parametrické metody předpokládají tvar f (např. lineární) → stačí odhadnout p + 1 koeficientů. Neparametrické nepředpokládají nic, ale potřebují hodně dat.
- 6. Čím flexibilnější metoda, tím hůř interpretovatelná.
- 7. Supervised = ke každému xi mám yi. Unsupervised = žádné Y (např. clustering). Regrese = Y kvantitativní, klasifikace = Y kvalitativní — rozhoduje typ Y, ne X.
- 8. Kvalitu měříme MSE. Zajímá nás test MSE, ne training MSE.
- 9. S rostoucí flexibilitou training MSE monotónně klesá, ale test MSE má tvar U. Overfitting = malé training MSE, velké test MSE (a méně flexibilní model by byl lepší).
- 10. E(y₀ − f̂(x₀))² = Var(f̂(x₀)) + [Bias(f̂(x₀))]² + Var(ε). Flexibilita ↑ ⇒ variance ↑, bias ↓. Pod Var(ε) se nikdy nedostaneš.
- 11. U klasifikace měříme error rate (podíl chyb). Bayesův klasifikátor (vyber nejpravděpodobnější třídu) má nejnižší možnou chybu = Bayes error rate — obdoba irreducible error, v praxi nedosažitelná.
- 12. KNN odhaduje pravděpodobnost z K nejbližších sousedů. Flexibilita = 1/K. K = 1 → training error 0, obrovská variance; velké K → skoro přímka, velký bias.
🔗 Jediný řetěz, který propojuje celou kapitolu 2.2
Když tohle umíš odrecitovat a vysvětlit, máš 2.2 hotovou. Zbytek jsou definice.
- Přečti TL;DR nahoře (3 min).
- Projdi jen obrázky a jejich popisky (10 min) – zkouší se hlavně porozumění, ne vzorce.
- Zkus nahlas odpovědět na typové otázky, teprve pak rozbal odpověď (12 min).
1. Základní rovnice: Y = f(X) + ε
Celá kapitola 2 stojí na téhle jedné rovnici. Kdyby přišla jen jedna otázka, bude nejspíš odsud.
🧠 Polopaticky
Představ si, že chceš vědět, kolik toho firma prodá (to je Y), když dá určité peníze do reklamy v TV, rádiu a novinách (to jsou X). Někde ve vesmíru existuje „pravidlo", které z reklamy dělá prodeje — to pravidlo je funkce f. Ty ho ale neznáš. Navíc prodeje nikdy nevyjdou přesně podle pravidla — zasáhne počasí, nálada lidí, konkurence… to je ε (šum).
Income, 30 lidí). Některá ε jsou kladná (bod nad křivkou), jiná záporná (pod křivkou) — dohromady mají průměr zhruba nula. Tohle si zapamatuj, ptají se na to.📊 n a p – co je co (chytají na tom)
n = počet pozorování (řádků), p = počet prediktorů (sloupců X). xij = hodnota j-tého prediktoru u i-tého pozorování.
| i | X₁ (TV) | X₂ (radio) | X₃ (noviny) | Y (sales) |
|---|---|---|---|---|
| 1 | 230,1 | 37,8 | 69,2 | 22,1 |
| 2 | 44,5 | 39,3 | 45,1 | 10,4 |
| ⋮ | ⋮ | ⋮ | ⋮ | ⋮ |
| n = 200 | p = 3 prediktory | 1 odezva | ||
Data Advertising: 200 různých trhů, prodeje v tisících kusů, rozpočty v tisících dolarů, 3 média: TV, radio, newspaper.
- p ≠ počet sloupců v tabulce. Y se do p nepočítá! (Advertising: 4 sloupce, ale p = 3.)
- ε není „chyba měření". Je to všechno, co X o Y neříká — neměřené proměnné i skutečně neměřitelná náhoda.
- f je pevná (nemění se), jen ji neznáme. Náhodné je ε, ne f.
2. Proč vlastně odhadovat f? Predikce vs. inference
Dva důvody. Kniha je dává hned vedle sebe, takže je to ideální otázka na minitest.
🧠 Polopaticky
Predikce = „nezajímá mě proč, chci správné číslo." Máš X, Y neznáš a chceš ho uhodnout. Je ti fuk, jak model uvnitř funguje — hlavně ať trefí.
Inference = „nezajímá mě předpověď, chci pochopit vztah." Chceš vědět, které X ovlivňují Y, jak moc a jakým směrem. Tady černá skříňka nestačí — musíš vidět dovnitř.
🎯 Predikce (prediction)
- X jsou snadno dostupné, Y se těžko získává.
- f̂ = černá skříňka — tvar nás nezajímá.
- Příklad z knihy: X = vlastnosti krevního vzorku pacienta (snadno změříme v laborce), Y = riziko silné nežádoucí reakce na lék. Když riziko předpovíme, lék rizikovým pacientům nedáme.
- Direct-marketing kampaň: demografické údaje → odpoví člověk kladně na dopis? Firmu nezajímají vztahy, chce jen přesnou předpověď.
🔍 Inference
Chceme rozumět asociaci mezi Y a X₁, …, Xp. Kniha uvádí 3 typické otázky:
- Které prediktory souvisejí s odezvou? (Často jen malý zlomek z nich.)
- Jaký je vztah mezi odezvou a každým prediktorem? (Kladný / záporný; může záviset i na ostatních X.)
- Dá se vztah popsat lineární rovnicí, nebo je složitější?
Příklad z knihy: Advertising — Která média souvisejí s prodeji? Které médium zvedne prodeje nejvíc? O kolik vzrostou prodeje při daném zvýšení TV reklamy?
Příklady z knihy – ke které kategorii patří
| Situace | Cíl | Proč |
|---|---|---|
| Krevní vzorek → riziko reakce na lék | Predikce | Chci jen vědět, komu lék nedat |
| Direct-marketing: kdo odpoví na dopis | Predikce | Firmu nezajímají vztahy, jen přesnost |
| Advertising: které médium zvedá prodeje | Inference | Ptám se „které X a jak moc" |
| Značka produktu podle ceny, slev, konkurence | Inference | Zajímá mě vliv ceny na pravděpodobnost nákupu |
| Nemovitosti: kolik přidá výhled na řeku? | Inference | Ptám se na vliv jedné proměnné |
| Nemovitosti: je tenhle dům pod/nad cenou? | Predikce | Chci jen odhad hodnoty |
| Predikce ceny akcie | Predikce | Interpretovatelnost vůbec neřeším |
Predikce: „predict", „forecast", „will it be a success", „estimate the value of".
Inference: „understand", „which factors affect", „what is the relationship", „association", „how much does X increase Y".
Lineární modely umožňují relativně jednoduchou a interpretovatelnou inferenci, ale nemusí předpovídat tak přesně. Silně nelineární přístupy umí velmi přesné predikce, ale za cenu hůř interpretovatelného modelu, kde je inference obtížnější.
3. Reducible vs. irreducible error
Nejčastější „krátká otázka" z celé sekce 2.1. Umět rovnici (2.3) a umět vysvětlit, proč Var(ε) > 0.
🧠 Polopaticky
Chyba tvé předpovědi má dvě části:
- Reducible (odstranitelná): tvoje f̂ není přesně f. To je tvoje vina — lepší metodou ji můžeš zmenšit.
- Irreducible (neodstranitelná): i kdyby ses trefil přesně (f̂ = f), pořád tam je ε. Y je totiž funkcí i ε, a ε se z definice nedá předpovědět z X.
Analogie: házíš šipky na terč přes zamlžené brýle. Brýle si můžeš vyčistit (reducible). Ale ruka se ti vždycky trochu zachvěje (irreducible).
Kniha dává dva důvody:
- Neměřené proměnné. ε může obsahovat proměnné, které by byly pro predikci Y užitečné — ale protože je neměříme, f je k predikci použít nemůže.
- Neměřitelná variabilita. Např. riziko nežádoucí reakce se u téhož pacienta mění den ode dne — podle výrobních odchylek léku nebo podle toho, jak se ten den cítí.
- Irreducible error není chyba modelu — je to vlastnost dat.
- Víc dat ani lepší algoritmus ho nesníží. Sníží jen reducible část.
- V praxi ho neznáme („this bound is almost always unknown in practice").
- Celá kniha se soustředí na minimalizaci reducible error.
4. Jak odhadnout f: parametrické vs. neparametrické
Druhá nejpravděpodobnější otázka. Umět 2 kroky parametrického přístupu + výhody a nevýhody obou.
🧠 Polopaticky
👔 Parametrické = oblek z konfekce
Předem řekneš „bude to sako velikost 52" a pak už jen doladíš pár čísel (délka rukávů…). Rychlé, jednoduché, málo dat — ale když máš netypickou postavu, nikdy nesedne.
✂️ Neparametrické = oblek na míru
Neřekneš dopředu nic, krejčí obkreslí přesně tvoje tělo. Sedne na jakýkoliv tvar — ale potřebuje mnohem víc měření (dat), a když jich vezme moc, obkreslí i tvoje boule (overfitting).
📐 Parametrické metody – dva kroky
Krok 1: Předpokládej tvar (funkční formu) f
Nejjednodušší předpoklad — f je lineární v X:
Tím se úloha obrovsky zjednoduší: místo odhadu úplně libovolné p-rozměrné funkce stačí odhadnout p + 1 koeficientů β₀, β₁, …, βp.
👉 p + 1, ne p! (To „+ 1" je intercept β₀.) Na tohle se rádi ptají.
Krok 2: Natrénuj model (fit / train)
Najdi konkrétní hodnoty parametrů tak, aby Y ≈ β₀ + β₁X₁ + ⋯ + βpXp.
Nejběžnější způsob: (ordinary) least squares = metoda (obyčejných) nejmenších čtverců. Je to ale jen jedna z mnoha možností, jak lineární model nafitovat.
✅ Výhody
- Odhadnout pár parametrů je mnohem snazší než odhadnout libovolnou funkci.
- Stačí méně dat.
- Bývá interpretovatelné.
❌ Nevýhody
- Zvolený model obvykle neodpovídá skutečnému tvaru f.
- Je-li model od pravdy daleko, odhad bude špatný.
- Řešení = flexibilnější model → ale ten potřebuje víc parametrů → hrozí overfitting.
🌊 Neparametrické metody
Nedělají žádné explicitní předpoklady o funkční formě f. Místo toho hledají odhad, který se dostane co nejblíž k datům, aniž by byl moc drsný nebo klikatý (rough or wiggly).
✅ Výhody
- Umí přesně nafitovat mnohem širší škálu tvarů f.
- Úplně se vyhýbají riziku, že by zvolený tvar byl hodně jiný než skutečná f.
❌ Nevýhody
- Neredukují problém na pár parametrů → potřebují velmi mnoho pozorování (výrazně víc, než stačí parametrickému přístupu).
- Analytik musí zvolit míru hladkosti (level of smoothness) — špatná volba = overfitting.
Příklad z knihy: thin-plate spline na datech Income. Obr. 2.5 = hladký spline → pozoruhodně přesný odhad skutečné f. Obr. 2.6 = tentýž spline s nižší hladkostí → sedí na data úplně přesně (nulová chyba na trénovacích datech), ale je mnohem variabilnější než skutečná f → overfitting.
- Neparametrický ≠ bez parametrů. Znamená to bez předpokladu o tvaru f.
- Flexibilnější ≠ lepší. Obr. 2.6 sedí na trénovací data dokonale a přesto je špatný.
- Lineární model je parametrický, spline je neparametrický.
5. Flexibilita vs. interpretovatelnost
Krátká sekce, ale je z ní obr. 2.7 – ten se zkouší rád, protože se dá nakreslit.
🧠 Polopaticky
Čím víc tvarů umí metoda nakreslit (= flexibilita), tím hůř se pak vysvětluje, co vlastně dělá. Lineární regrese umí jen přímky a roviny → hned vidíš „TV zvedne prodeje o 4,6 na tisíc dolarů". Deep learning umí cokoliv → nikdo ti neřekne, co udělal jeden konkrétní prediktor.
Proč bychom vůbec chtěli méně flexibilní metodu?
- Kvůli inferenci. Restriktivní modely jsou mnohem interpretovatelnější — u lineárního modelu hned chápeš vztah mezi Y a každým X.
- Někdy i kvůli přesnější predikci! Kniha to označuje za překvapivé: „Často dostaneme přesnější predikce použitím méně flexibilní metody." Důvod = overfitting u vysoce flexibilních metod.
- Lasso stojí na lineárním modelu (2.4), ale odhaduje koeficienty restriktivněji a část z nich nastaví přesně na nulu → je méně flexibilní a zároveň interpretovatelnější než lineární regrese (odezva závisí jen na malé podmnožině prediktorů).
- GAM rozšiřují lineární model o jisté nelineární vztahy → flexibilnější, ale hůř interpretovatelné než lineární regrese (každý prediktor je modelovaný křivkou).
- Když jde čistě o predikci (např. cena akcie), interpretovatelnost nás vůbec nezajímá.
6. Supervised / unsupervised, regrese / klasifikace
Nejsnazší body na minitestu. Dvě otázky „zařaď tuhle úlohu" a máš hotovo.
🧠 Polopaticky
Supervised = máš učitele, který u každého příkladu řekl správnou odpověď (Y). Unsupervised = učitel chybí, „pracuješ naslepo" — máš jen X a hledáš v nich strukturu.
👨🏫 Supervised learning
Pro každé pozorování i = 1, …, n máš měření prediktorů xi i odpovídající odezvu yi.
Cíl: model, který váže odezvu na prediktory → buď predikce, nebo inference.
Metody: lineární regrese, logistická regrese, GAM, boosting, SVM. Naprostá většina knihy.
🙈 Unsupervised learning
Pro každé i máš vektor xi, ale žádnou odezvu yi. Lineární regresi nasadit nelze — není co předpovídat.
Říká se tomu „unsupervised", protože chybí proměnná, která by analýzu řídila (supervised).
Nástroj: cluster analysis / clustering — zjistit, zda pozorování spadají do relativně odlišných skupin.
🔀 Regrese vs. klasifikace
Rozhoduje typ odezvy Y:
| Kvantitativní (quantitative) | Kvalitativní / kategorická (qualitative, categorical) | |
|---|---|---|
| Co to je | Číselné hodnoty | Hodnoty v jedné z K tříd (classes) |
| Příklady z knihy | věk, výška, příjem, hodnota domu, cena akcie | rodinný stav (ženatý/ne), značka produktu (A, B, C), nesplácení dluhu (ano/ne), diagnóza rakoviny (AML / ALL / žádná leukémie) |
| Typ úlohy | Regrese | Klasifikace |
| Typická metoda | lineární regrese (nejmenší čtverce) | logistická regrese |
- Logistická regrese je klasifikační metoda, přestože má v názvu „regrese"! (Ale protože odhaduje pravděpodobnosti tříd, dá se na ni dívat i jako na regresi.)
- Rozhoduje typ Y, ne typ X. Kniha výslovně říká, že zda jsou prediktory kvalitativní nebo kvantitativní, se považuje za méně důležité — stačí kvalitativní prediktory správně zakódovat.
- KNN a boosting se dají použít jak pro kvantitativní, tak pro kvalitativní odezvu.
- „Rozdělení není vždy ostré" — kniha to sama přiznává.
7. MSE, training vs. test, overfitting
Nejdůležitější sekce celé povinné četby. Když máš málo času, čti hlavně tohle a bias–variance.
🍽️ „There is no free lunch in statistics"
Proč tolik metod a ne jedna nejlepší? Protože žádná metoda nedominuje všem ostatním na všech možných datech. Na konkrétních datech může být nejlepší jedna metoda, na podobných, ale jiných datech jiná. Proto je volba správné metody pro daná data jedna z nejtěžších částí praxe.
📏 Mean Squared Error (MSE)
U regrese měříme kvalitu fitu pomocí střední kvadratické chyby:
Malé MSE = predikce jsou velmi blízko skutečným hodnotám. Velké MSE = u některých pozorování se predikce a skutečnost výrazně liší.
Mini příklad – spočítej si to jednou a už to nezapomeneš
| i | yi (skutečnost) | f̂(xi) (predikce) | rozdíl | rozdíl² |
|---|---|---|---|---|
| 1 | 10 | 8 | 2 | 4 |
| 2 | 5 | 6 | −1 | 1 |
| 3 | 7 | 3 | 4 | 16 |
| MSE = (4 + 1 + 16) / 3 | = 7 | |||
Proč se umocňuje? Aby se plusy a minusy nevyrušily a velké chyby se trestaly víc.
Training MSE
MSE (2.5) spočtené na trénovacích datech, na kterých se model učil.
Snadno spočitatelné — a skoro nás nezajímá.
Test MSE ← tohle chceme minimalizovat
Průměrná kvadratická chyba na dříve neviděných testovacích pozorováních (x₀, y₀).
- Akcie: model natrénuju na výnosech za posledních 6 měsíců. Ale nezajímá mě, jak dobře předpoví cenu minulý týden — zajímá mě zítřek nebo příští měsíc.
- Diabetes: mám klinická měření pacientů (váha, tlak, výška, věk, rodinná anamnéza) a vím, kdo diabetes má. Nezajímá mě, jak dobře model určí riziko u těchhle pacientů — u nich to už vím! Zajímají mě budoucí pacienti.
Analogie: umět nazpaměť otázky ze cvičného testu ti nepomůže u ostrého testu s jinými otázkami.
Neexistuje záruka, že metoda s nejnižším training MSE bude mít i nejnižší test MSE. Spousta metod totiž koeficienty odhaduje právě tak, aby minimalizovaly training MSE — takže training MSE může být maličké, ale test MSE výrazně větší.
📉 Obrázek 2.9 – ten, který musíš umět nakreslit
Když roste flexibilita metody: training MSE monotónně klesá, ale test MSE má tvar U. Kniha říká, že je to „fundamentální vlastnost statistického učení, která platí bez ohledu na konkrétní data a bez ohledu na použitou metodu."
Overfitting nastane, když metoda dává malé training MSE, ale velké test MSE. Děje se to proto, že procedura „pracuje příliš usilovně" a hledá v trénovacích datech vzory, které jsou jen náhodné, ne skutečné vlastnosti f.
Pozor na přesné znění: training MSE skoro vždy vyjde menší než test MSE (většina metod ho přímo či nepřímo minimalizuje) — to samo o sobě ještě není overfitting. O overfitting jde právě tehdy, když by méně flexibilní model dal menší test MSE.
Obrázky 2.9, 2.10 a 2.11 – tři různé pravdy
| Obr. | Jaká je skutečná f | Jak vypadá test MSE | Kdo vyhraje |
|---|---|---|---|
| 2.9 | nelineární | klasické U | modrý spline (střední flexibilita) |
| 2.10 | skoro lineární | klesne jen lehce, pak rychle roste | oranžová lineární regrese je výrazně lepší než zelená |
| 2.11 | silně nelineární | obě křivky rychle spadnou, pak test MSE roste jen pomalu | flexibilní metody; lineární regrese sedí velmi špatně |
Training MSE spočítáme snadno, ale test MSE se odhaduje těžko, protože testovací data obvykle nemáme. Navíc optimální míra flexibility se mezi datovými sadami hodně liší. Řešení: cross-validation (křížová validace, kap. 5) = metoda, jak odhadnout test MSE pomocí trénovacích dat.
8. Bias–variance trade-off
Kniha sama říká, že je to „jedno z nejdůležitějších opakujících se témat". Nejpravděpodobnější otázka z 2.2.
🧠 Polopaticky
Proč má test MSE tvar U? Protože se v něm perou dvě protichůdné síly:
🎯 Bias (zkreslení)
Chyba z toho, že složitý reálný problém nahrazuješ mnohem jednodušším modelem.
Příklad z knihy: lineární regrese předpokládá lineární vztah. Je nepravděpodobné, že by nějaký reálný problém byl opravdu tak jednoduchý → lineární regrese nutně zavádí nějaký bias.
flexibilita ↑ → bias ↓
🌪️ Variance (rozptyl)
Jak moc by se f̂ změnila, kdybych ji odhadl na jiných trénovacích datech.
Ideálně by se odhad mezi různými trénovacími sadami neměl moc měnit. Má-li metoda vysokou varianci, malé změny v datech způsobí velké změny f̂.
flexibilita ↑ → variance ↑
Konkrétně z obr. 2.9: zelená klikatá křivka má vysokou varianci — změna jediného bodu s ní pořádně zamává. Oranžová přímka má nízkou varianci — posun jednoho bodu s ní hne jen malinko.
Abychom minimalizovali očekávanou testovací chybu, musíme zvolit metodu, která má zároveň nízkou varianci A nízký bias. To je ten trade-off.
🎯 Terče – bias a variance na první dobrou
📈 Obrázek 2.12 – 5 křivek, které umíš nakreslit
Proč má test MSE tvar U – vysvětlení jednou větou
Když zvyšuješ flexibilitu, bias zpočátku klesá rychleji, než roste variance → očekávané test MSE klesá. V určitém bodě už ale zvyšování flexibility na bias skoro nemá vliv a začne výrazně zvedat varianci → test MSE zase roste.
| Případ (obr. 2.12) | Skutečná f | Chování biasu | Výsledek |
|---|---|---|---|
| vlevo (= obr. 2.9) | nelineární | zpočátku klesá rychle | ostrý počáteční pokles test MSE |
| uprostřed (= obr. 2.10) | skoro lineární | klesá jen málo | test MSE klesne jen trochu a pak rychle roste s variancí |
| vpravo (= obr. 2.11) | silně nelineární | dramatický pokles | variance roste jen málo → test MSE výrazně spadne a pak jen mírně vzroste |
Protože je snadné dostat jedno na úkor druhého:
- Extrémně nízký bias, vysoká variance: nakresli křivku, která projde každým jednotlivým trénovacím bodem.
- Velmi nízká variance, vysoký bias: prolož daty vodorovnou přímku.
Umění je najít metodu, kde jsou obě nízké.
- V rovnici (2.7) je bias na druhou, ale variance ne.
- V reálné situaci f neznáme, takže test MSE, bias ani varianci obvykle nejde explicitně spočítat. Přesto na trade-off musíme myslet.
- Flexibilnější metoda negarantuje lepší výsledek: kdyby byla skutečná f lineární, lineární regrese má nulový bias a flexibilnější metodě se ji těžko podaří porazit.
- Naopak když je f silně nelineární a máme dost dat, flexibilní přístup bude lepší.
9. Klasifikace: error rate, Bayes, KNN
Stejné myšlenky jako u regrese, jen místo MSE počítáme podíl chyb. Plus dvě jména: Bayes a KNN.
📊 Error rate místo MSE
Když je y kvalitativní, MSE nedává smysl. Měříme podíl chyb (error rate):
Mini příklad
10 pacientů, model se splete u 2 z nich → error rate = 2/10 = 0,2 = 20 %. Přesnost (accuracy) = 80 %.
👑 Bayesův klasifikátor – nedostižný zlatý standard
Dá se dokázat, že test error (2.9) je v průměru minimalizován velmi jednoduchým klasifikátorem: zařaď každé pozorování do nejpravděpodobnější třídy vzhledem k jeho hodnotám prediktorů.
U dvou tříd to znamená: predikuj třídu 1, když Pr(Y = 1 | X = x₀) > 0,5, jinak třídu 2.
- Produkuje nejnižší možnou testovací chybu = Bayes error rate.
- Pro simulovaná data v knize je 0,133 (u obr. 2.15 uvedeno přesněji 0,1304).
- Je větší než nula, protože se třídy v populaci překrývají → pro některá x₀ je maxj Pr(Y = j | X = x₀) < 1.
- Je obdobou irreducible error z regrese.
- V praxi je nespočitatelný — neznáme podmíněné rozdělení Y při daném X. Slouží jako nedosažitelný zlatý standard, se kterým ostatní metody srovnáváme.
🏘️ K-Nearest Neighbors (KNN)
Bayese spočítat neumíme → musíme podmíněné rozdělení odhadnout. KNN to dělá nejjednodušeji, jak jde: zeptej se K nejbližších sousedů a udělej to, co většina z nich.
Postup: 1️⃣ najdi K nejbližších trénovacích bodů k x₀ (to je N₀) · 2️⃣ spočítej, jaký podíl z nich patří do třídy j · 3️⃣ zařaď x₀ do třídy s největší pravděpodobností.
Vliv K – tohle jsou čísla, která se dají zkoušet
| Metoda | Test error rate | Komentář |
|---|---|---|
| Bayes (ideál) | 0,1304 | nedosažitelné minimum |
| KNN, K = 10 | 0,1363 | ✅ nejlepší – hranice velmi blízko Bayesově |
| KNN, K = 1 | 0,1695 | overfitting: nízký bias, vysoká variance |
| KNN, K = 100 | 0,1925 | underfitting: vysoký bias, nízká variance |
Kniha to shrnuje: „Navzdory tomu, že jde o velmi jednoduchý přístup, dokáže KNN často produkovat klasifikátory překvapivě blízké optimálnímu Bayesovu klasifikátoru." Zároveň ale: ani K = 1, ani K = 100 nedávají dobré predikce.
| Malé K (např. K = 1) | Velké K (např. K = 100) | |
|---|---|---|
| Flexibilita (1/K) | vysoká | nízká |
| Hranice | velmi klikatá | skoro lineární |
| Bias | nízký | vysoký |
| Variance | vysoká | nízká |
| Training error | 0 (u K = 1) | vyšší |
| Riziko | overfitting | underfitting |
- Flexibilita KNN je 1/K, ne K! Velké K = málo flexibilní.
- U K = 1 je training error nula, ale test error může být dost vysoký — mezi training a test error není silný vztah, stejně jako u regrese.
- Bayes error rate neklesá s K — je to konstanta daná daty (na obr. 2.17 černá čárkovaná čára).
- Kniha zmiňuje, že „roztřepanost" křivek na obr. 2.17 je kvůli malé trénovací sadě (jen 200 pozorování).
- V obou režimech (regrese i klasifikace) je volba správné míry flexibility kritická. Jak na to → cross-validation, kap. 5.
❓ Typové otázky + vzorové odpovědi
Odpovídají koncepčním cvičením na konci kapitoly 2. Nejdřív odpověz nahlas, teprve pak rozbal. U hlavních otázek je i anglická verze odpovědi — minitest může být anglicky.
Y = odezva (kvantitativní i kvalitativní). X = (X₁,…,Xp) = prediktory. f = pevná, ale neznámá funkce, která reprezentuje systematickou informaci, kterou X poskytuje o Y. ε = náhodný chybový člen, nezávislý na X, se střední hodnotou nula.
🇬🇧 „f is a fixed but unknown function of X₁,…,Xp, and ε is a random error term which is independent of X and has mean zero. f represents the systematic information that X provides about Y."
Predikce: X máme snadno, Y ne. Zajímá nás jen přesné Ŷ = f̂(X); f̂ může být černá skříňka, její tvar neřešíme.
Inference: chceme rozumět asociaci mezi Y a prediktory. f̂ nemůže být černá skříňka — potřebujeme znát její přesný tvar. Typické otázky: které prediktory souvisejí s odezvou, jaký je vztah (kladný/záporný), a stačí na to lineární rovnice?
🇬🇧 „In prediction we treat f̂ as a black box, provided it yields accurate predictions. In inference we need to know the exact form of f̂, because we want to understand the association between Y and X₁,…,Xp."
E(Y − Ŷ)² = [f(X) − f̂(X)]² (reducible) + Var(ε) (irreducible).
Reducible = nepřesnost odhadu f̂; jde ji zmenšit vhodnější statistickou metodou. Irreducible = rozptyl ε; nejde odstranit ani s dokonalým odhadem f̂ = f, protože ε se z X z definice předpovědět nedá.
Je větší než nula ze dvou důvodů: (1) ε může obsahovat neměřené proměnné, které by Y pomohly předpovědět; (2) ε obsahuje neměřitelnou variabilitu (např. riziko reakce na lék se u téhož pacienta mění den ode dne).
🇬🇧 „The irreducible error provides an upper bound on the accuracy of our prediction for Y, and this bound is almost always unknown in practice."
Parametrický = dvoukrokový, model-based: (1) předpokládám funkční formu f (např. lineární), (2) natrénuju model — odhadnu p + 1 parametrů (typicky metodou nejmenších čtverců). Neparametrický = žádný explicitní předpoklad o tvaru f; hledám odhad co nejblíž datům, ale ne moc klikatý.
Výhody parametrického: odhadnout pár parametrů je mnohem snazší než odhadnout libovolnou funkci; stačí méně pozorování; je interpretovatelnější.
Nevýhody: zvolený model obvykle neodpovídá skutečnému tvaru f, a je-li od pravdy daleko, odhad je špatný. Flexibilnější model to řeší, ale potřebuje víc parametrů a hrozí overfitting (sledování šumu).
Výhody flexibilního: umí nafitovat širší škálu tvarů f → nižší bias; vhodný, když je skutečná f silně nelineární.
Nevýhody: vyšší variance a riziko overfittingu; potřebuje hodně dat; je hůř interpretovatelný (znemožňuje inferenci); má víc parametrů k odhadu.
Flexibilní preferuj, když: skutečný vztah je silně nelineární, máš velké n a malé p, a jde ti jen o predikci.
Méně flexibilní preferuj, když: jde ti o inference / interpretovatelnost, máš malé n nebo velké p, je vysoký rozptyl šumu Var(ε), nebo je skutečný vztah zhruba lineární.
- (a) n je extrémně velké, p malé → flexibilní bude LEPŠÍ. Máme dost dat, aby se flexibilní model nafitoval bez velké variance.
- (b) p je extrémně velké, n malé → flexibilní bude HORŠÍ. Přefituje šum, variance vystřelí.
- (c) vztah mezi prediktory a odezvou je silně nelineární → flexibilní bude LEPŠÍ. Nepružná metoda by měla obrovský bias.
- (d) rozptyl chybových členů σ² = Var(ε) je extrémně vysoký → flexibilní bude HORŠÍ. Flexibilní model by se přizpůsoboval šumu, ne signálu.
Mnemotechnika: flexibilní metoda miluje hodně dat a málo šumu. Jakmile chybí data nebo přebývá šum, prohrává.
(a) 500 největších firem v USA; u každé zisk, počet zaměstnanců, odvětví a plat CEO. Zajímá nás, které faktory ovlivňují plat CEO.
→ Regrese (plat je číslo), inference („understanding which factors affect"), n = 500, p = 3 (zisk, počet zaměstnanců, odvětví).
(b) Chystáme nový produkt a chceme vědět, jestli bude úspěch, nebo neúspěch. Máme data o 20 podobných produktech: úspěch/neúspěch, cena, marketingový rozpočet, cena konkurence a deset dalších proměnných.
→ Klasifikace (úspěch/neúspěch), predikce, n = 20, p = 13 (cena + marketing + cena konkurence + 10).
(c) Predikce % změny kurzu USD/EUR podle týdenních změn světových trhů; týdenní data za celý rok 2012 (% změna USD/EUR, US trh, britský trh, německý trh).
→ Regrese, predikce, n = 52 (týdnů), p = 3.
⚠️ Nejčastější chyba: počítat odezvu do p, nebo u (b) zapomenout na „ten dalších proměnných".
Protože neexistuje záruka, že metoda s nejnižším training MSE bude mít i nejnižší test MSE. Většina metod odhaduje koeficienty právě tak, aby minimalizovala training MSE, takže to jde srazit hodně nízko, ale test MSE pak bývá mnohem vyšší. Zajímá nás výkon na dříve neviděných datech (akcie: zítřejší cena, ne minulý týden; diabetes: budoucí pacienti, ne ti, u kterých už výsledek známe).
Overfitting nastane, když metoda dává malé training MSE, ale velké test MSE. Procedura „pracuje příliš usilovně" a najde v trénovacích datech vzory, které jsou jen důsledkem náhody, ne skutečnou vlastností f.
Přesná definice z knihy: o overfitting jde právě tehdy, když by méně flexibilní model dal menší test MSE. Samotný fakt, že training MSE < test MSE, overfitting není — to platí skoro vždycky.
🇬🇧 „Overfitting refers specifically to the case in which a less flexible model would have yielded a smaller test MSE."
Osa x = flexibilita, osa y = hodnota. Pět křivek (viz graf v sekci 8):
- Bias² (klesá): flexibilnější metoda umí nafitovat víc tvarů, takže chyba ze zjednodušení klesá. Nejdřív rychle, pak se vyrovná.
- Variance (roste): flexibilnější model se víc mění, když dostane jiná trénovací data.
- Training error (monotónně klesá): flexibilnější model se vždy líp přimkne k trénovacím bodům; při dostatečné flexibilitě padne až k nule.
- Test error (tvar U): je součtem bias² + variance + Var(ε). Nejdřív klesá (bias klesá rychleji, než roste variance), pak roste (variance převáží).
- Bayes / irreducible error (vodorovná čára): konstanta nezávislá na flexibilitě. Test error nikdy neklesne pod ni.
Očekávané test MSE se vždy rozloží na tři části: E(y₀ − f̂(x₀))² = Var(f̂(x₀)) + [Bias(f̂(x₀))]² + Var(ε).
Variance = o kolik by se f̂ změnila na jiné trénovací sadě → roste s flexibilitou. Bias = chyba z nahrazení složité reality jednoduchým modelem → klesá s flexibilitou.
Aby bylo test MSE malé, musí být obojí nízké. Jenže jedno se snadno získá na úkor druhého (křivka přes všechny body = nízký bias/vysoká variance; vodorovná přímka = nízká variance/vysoký bias) — proto „trade-off". Protože variance i bias² jsou nezáporné, test MSE nikdy neklesne pod Var(ε).
🇬🇧 „Good test set performance requires low variance as well as low squared bias."
Bayesův klasifikátor zařadí pozorování do třídy, která je nejpravděpodobnější vzhledem k jeho prediktorům — tedy do třídy j s největší Pr(Y = j | X = x₀). U dvou tříd: třída 1, když Pr(Y = 1 | X = x₀) > 0,5. Hranici, kde je pravděpodobnost přesně 50 %, říkáme Bayesova rozhodovací hranice.
Bayes error rate = nejnižší možná testovací chyba, 1 − E(maxj Pr(Y = j | X)). V knize pro simulovaná data 0,133 (resp. 0,1304).
Proč > 0: protože se třídy v populaci překrývají, takže pro některá x₀ platí maxj Pr(Y = j | X = x₀) < 1. Je to obdoba irreducible error. V praxi nedosažitelné — neznáme podmíněné rozdělení Y při daném X, takže Bayesův klasifikátor slouží jen jako zlatý standard pro porovnání.
Pro testovací bod x₀ KNN najde K nejbližších trénovacích bodů (množina N₀) a odhadne pravděpodobnost třídy j jako podíl bodů v N₀, které do třídy j patří: Pr(Y = j | X = x₀) = (1/K) · Σi∈N₀ I(yi = j). Pak zařadí x₀ do třídy s nejvyšší pravděpodobností.
Flexibilita KNN = 1/K. Malé K → velmi klikatá hranice, nízký bias, vysoká variance, u K = 1 je training error nula. Velké K → skoro lineární hranice, nízká variance, vysoký bias.
Na simulovaných datech: K = 10 → test error 0,1363 (téměř Bayes 0,1304); K = 1 → 0,1695; K = 100 → 0,1925. Minimum test error přibližně u K = 10.
| Obs. | X₁ | X₂ | X₃ | Y | Vzdálenost od (0,0,0) |
|---|---|---|---|---|---|
| 1 | 0 | 3 | 0 | Red | √9 = 3,00 |
| 2 | 2 | 0 | 0 | Red | √4 = 2,00 |
| 3 | 0 | 1 | 3 | Red | √10 ≈ 3,16 |
| 4 | 0 | 1 | 2 | Green | √5 ≈ 2,24 |
| 5 | −1 | 0 | 1 | Green | √2 ≈ 1,41 ← nejbližší |
| 6 | 1 | 1 | 1 | Red | √3 ≈ 1,73 |
(b) K = 1 → GREEN. Nejbližší je pozorování 5 (vzdálenost 1,41), to je Green.
(c) K = 3 → RED. Tři nejbližší jsou obs. 5 (1,41 – Green), 6 (1,73 – Red) a 2 (2,00 – Red) → 2/3 Red vs. 1/3 Green.
(d) Pokud je Bayesova hranice silně nelineární, chceme K MALÉ. Malé K = velká flexibilita (1/K) → hranice může být silně zakřivená. Velké K by dalo skoro lineární hranici, tedy velký bias.
Euklidovská vzdálenost od počátku = √(X₁² + X₂² + X₃²).
Klasifikace (Y kategorické):
- Spam filtr: Y = spam/ham, X = slova v mailu, odesílatel → predikce.
- Schvalování úvěru: Y = splatí/nesplatí, X = příjem, historie, věk → predikce (banka může chtít i inferenci kvůli regulaci).
- Diagnóza nemoci: Y = nemoc ano/ne, X = symptomy, krevní testy → predikce.
Regrese (Y číselné):
- Cena bytu podle plochy, lokality, stáří → predikce (nebo inference: „kolik přidá balkon?").
- Spotřeba elektřiny podle teploty a dne v týdnu → predikce.
- Vliv reklamy na prodeje → inference.
Clustering (žádné Y):
- Segmentace zákazníků e-shopu podle nákupního chování.
- Seskupení pacientů podle profilu genové exprese.
- Rozdělení měst podle socioekonomických ukazatelů.
Supervised: ke každému xi máš i yi. Unsupervised: máš jen xi, žádné yi — „pracuješ naslepo", chybí proměnná, která by analýzu řídila. Typický nástroj = clustering. Semi-supervised: m < n pozorování má odezvu, zbytek ne.
Uvnitř supervised rozhoduje typ Y: kvantitativní → regrese, kvalitativní (K tříd) → klasifikace. Typ prediktorů se považuje za méně důležitý — stačí kvalitativní prediktory správně zakódovat.
Pozor: logistická regrese je klasifikační metoda; KNN a boosting zvládnou obojí.
Že žádná jedna metoda nedominuje všem ostatním na všech možných datových sadách. Na konkrétních datech může být nejlepší jedna metoda, na podobných, ale jiných datech jiná. Proto je nutné znát široké spektrum metod a proto je volba nejlepšího přístupu jedna z nejtěžších částí praktického statistického učení.
📘 Slovníček + všechny vzorce
Poslední pohled před testem. Projeď obě tabulky očima a jdi.
🔤 Anglicky → česky (termíny, které kniha zvýrazňuje)
| Anglicky | Česky / význam |
|---|---|
| input variable / predictor / independent variable / feature | vstupní proměnná / prediktor — všechno totéž: X |
| output variable / response / dependent variable | výstupní proměnná / odezva: Y |
| error term (ε) | chybový člen; nezávislý na X, střední hodnota 0 |
| systematic information | systematická informace, kterou X nese o Y = f |
| reducible / irreducible error | odstranitelná / neodstranitelná chyba |
| expected value | střední hodnota (E) |
| variance | rozptyl (Var) |
| training data | trénovací data (n pozorování, na kterých se model učí) |
| test data | testovací data (dříve neviděná) |
| parametric / non-parametric | parametrický (předpokládá tvar f) / neparametrický |
| fit / train | nafitovat / natrénovat model |
| (ordinary) least squares | metoda (obyčejných) nejmenších čtverců |
| flexible / restrictive | flexibilní / restriktivní (málo flexibilní) |
| overfitting / noise | přeučení / šum |
| thin-plate spline / smoothing spline | neparametrické hladké prokládání |
| interpretability | interpretovatelnost |
| lasso / GAM / bagging / boosting / SVM | metody na ose flexibility (obr. 2.7) |
| supervised / unsupervised / semi-supervised | s učitelem / bez učitele / částečně s učitelem |
| cluster analysis / clustering | shluková analýza |
| quantitative / qualitative (categorical) | kvantitativní (číselná) / kvalitativní (kategorická) |
| class / binary | třída / dvouhodnotová (dvě třídy) |
| regression / classification | regrese / klasifikace |
| mean squared error (MSE) | střední kvadratická chyba |
| degrees of freedom | stupně volnosti = míra flexibility křivky |
| cross-validation | křížová validace (odhad test MSE z trénovacích dat, kap. 5) |
| bias / bias-variance trade-off | zkreslení / kompromis mezi zkreslením a rozptylem |
| error rate / indicator variable | chybovost / indikátorová proměnná I |
| conditional probability | podmíněná pravděpodobnost |
| Bayes classifier / decision boundary / error rate | Bayesův klasifikátor / rozhodovací hranice / Bayesova chybovost |
| K-nearest neighbors (KNN) | K nejbližších sousedů |
🧮 Všechny vzorce z kapitoly 2 na jednom místě
| Č. | Vzorec | Lidsky |
|---|---|---|
| 2.1 | Y = f(X) + ε | Základní model: pravidlo + šum |
| 2.2 | Ŷ = f̂(X) | Predikce pomocí odhadnuté f |
| 2.3 | E(Y − Ŷ)² = [f(X) − f̂(X)]² + Var(ε) | Chyba = reducible + irreducible |
| 2.4 | f(X) = β₀ + β₁X₁ + ⋯ + βpXp | Lineární model → p + 1 koeficientů |
| 2.5 | MSE = (1/n) · Σi=1..n (yi − f̂(xi))² | Training MSE |
| 2.6 | Ave(y₀ − f̂(x₀))² | Test MSE — tohle minimalizujeme |
| 2.7 | E(y₀ − f̂(x₀))² = Var(f̂(x₀)) + [Bias(f̂(x₀))]² + Var(ε) | Bias–variance rozklad |
| 2.8 | (1/n) · Σi=1..n I(yi ≠ ŷi) | Training error rate (klasifikace) |
| 2.9 | Ave(I(y₀ ≠ ŷ₀)) | Test error rate |
| 2.10 | Pr(Y = j | X = x₀) → vyber největší | Bayesův klasifikátor |
| 2.11 | 1 − E(maxj Pr(Y = j | X)) | Bayes error rate |
| 2.12 | Pr(Y = j | X = x₀) = (1/K) · Σi∈N₀ I(yi = j) | KNN odhad pravděpodobnosti |
🍀 Poslední minuta před testem
- f je neznámá, ε má průměr 0 a je nezávislé na X.
- Predikce = černá skříňka OK. Inference = musím vidět dovnitř.
- Irreducible = Var(ε), nejde odstranit, je to strop přesnosti.
- Parametrické = p + 1 koeficientů. Neparametrické = hodně dat.
- Flexibilita ↑ ⇒ interpretovatelnost ↓, bias ↓, variance ↑.
- Training chyba jen klesá, test chyba tvar U.
- Overfitting = méně flexibilní model by byl lepší.
- Bayes error ≈ irreducible error u klasifikace.
- KNN: flexibilita = 1/K; K = 1 → training error 0.