Základy a algoritmy strojového učení (ML): lineární regrese a rozhodovací stromy

Základy a algoritmy strojového učení (ML): Lineární regrese, rozhodovací stromy

Účel článku a co považujeme za strojové učení

Tento odborný článek systematicky shrnuje základy strojového učení (ML) a klíčové algoritmy napříč paradigmaty – od učení s učitelem a bez učitele přes pravděpodobnostní, geometrické i neuronové modely až po hodnocení, regularizaci, škálování tréninku a provozní nasazení (MLOps). Důraz je kladen na prakticky využitelné principy: práci se ztrátovou funkcí, kompromis bias–variance, strategie validace, interpretovatelnost a robustnost.

Formální rámec: data, prostor hypotéz a ztráta

  • Data: nezávislé a identicky rozdělené vzorky D = {(xi, yi)} pro učení s učitelem; pouze xi pro učení bez učitele; sekvence pro časové řady; interakce agenta s prostředím pro RL.
  • Prostor hypotéz &mathcal;H: množina funkcí f: Χ→γ (např. lineárních, stromových, neuronových). Kapacita modelu ovlivňuje zobecňování.
  • Ztráta ℓ(y, f(x)): MSE/MAE pro regresi; log-loss (cross-entropy) pro klasifikaci; marginové ztráty (hinge) pro SVM; specializované ztráty pro řazení, segmentaci atd.
  • Empirické riziko: R̂(f) = (1/n) ∑i ℓ(yi, f(xi)) – minimalizuje se během tréninku s regularizací, která omezuje přeučení.

Kompromis bias–variance a regularizace

  • Kompromis bias–variance: vysoký bias → podučení; vysoká variance → přeučení. Cílem je najít rovnováhu volbou kapacity, regularizace a objemu dat.
  • Regularizace: L2 (Ridge) přidává λ‖θ‖22, L1 (Lasso) λ‖θ‖1 a podporuje řídkost; Elastic Net obě metody kombinuje. U neuronových sítí se používají dropout, weight decay, early stopping a augmentace dat.
  • Normalizace: standardizace příznaků (nulový průměr, jednotkový rozptyl) škáluje gradienty a urychluje konvergenci; u neuronových sítí se používá také batch/layer norm.

Validace, dělení dat a prevence úniku dat (leakage)

  • Dělení: train/validation/test (např. 70/15/15). U malých datasetů se používá k-fold (obvykle 5–10) nebo stratifikované k-fold při nerovnováze tříd.
  • Leakage: všechny transformace (škálování, výběr příznaků) natrénujte pouze na trénovací množině; na validační/testovací množině data transformujte již naučeným operátorem.
  • Časové řady: time-series split s rostoucím tréninkovým oknem; backtesting; vyvarujte se „pohledu do budoucnosti“.

Základní algoritmy učení s učitelem (supervised)

  • Lineární regrese: OLS minimalizuje MSE; s L2 jde o Ridge, s L1 o Lasso (výběr příznaků); robustní variantou je Huberova/kvantilová regrese.
  • Logistická regrese: modeluje P(y=1|x) = σ(θTx); optimalizuje se gradientním sestupem (GD/SGD), hodnotí se pomocí log-loss, AUC, F1.
  • k-nejbližších sousedů (kNN): líný učicí algoritmus, metrika (eukleidovská, kosinová); citlivý na škálování a rozměrnost.
  • Naivní Bayes: předpoklad podmíněné nezávislosti příznaků; varianty Gaussian/Multinomial/Bernoulli; rychlý výchozí model.
  • Podpůrné vektorové stroje (SVM): maximalizace marginu; lineární i s jádry (RBF, poly); hinge loss + C; pro regresi SVR (ε-insensitive).
  • Rozhodovací stromy: chamtivé dělení (Gini/entropie/rozptyl); snadná interpretace, náchylnost k přeučení → omezujte hloubku a minimální počet vzorků.
  • Ensembles: Bagging (Random Forest), Boosting (AdaBoost, Gradient Boosting, XGBoost/LightGBM/CatBoost); často dosahují nejlepších výsledků na tabulkových datech.
  • Neuronové sítě: MLP pro tabulková data; CNN pro obrazy (konvoluce, pooling); RNN/LSTM/GRU pro sekvence; Transformer (self-attention) pro text, obraz i tabulková data.

Učení bez učitele (unsupervised) a s částečným učitelem

  • Clustering: k-means (Lloydův algoritmus; je nutné zvolit k), GMM (algoritmus EM; měkké přiřazování), DBSCAN/HDBSCAN (hustotní; zvládají odlehlé hodnoty), spectral clustering.
  • Dimenzionalita: PCA (ortogonální projekce maximalizující rozptyl), ICA (nezávislé komponenty), NMF (faktorizace nezáporných matic), t-SNE/UMAP (nelineární vizualizace; bez uvážení je nepoužívejte v tréninkové pipeline).
  • Anomálie: One-Class SVM, Isolation Forest, autoenkodéry; volba metriky (precision@k, PR-křivky při extrémní nerovnováze).
  • Self-/semi-supervised: pseudooznačování, regularizace konzistence, kontrastivní učení (SimCLR, MoCo), slabě supervidované učení.

Optimalizace a učení parametrů

  • Gradientní metody: GD/SGD, momentum, Nesterov; adaptivní metody: AdaGrad, RMSProp, Adam/AdamW; výběr rychlosti učení (warmup, decay, cyklické schéma).
  • Konvexita versus nelinearita: lineární modely s L2 jsou konvexní → globální optimum; hluboké sítě jsou nelineární → lokální minima/plošiny – v praxi stačí „dobrá“ řešení.
  • Regularizační techniky: early stopping, dropout, label smoothing, augmentace dat (flip/crop/noise, mixup, CutMix).

Výběr příznaků a tvorba proměnných

  • Kategorizace: one-hot, target encoding (s opatrností kvůli leakage), naučené embeddingy.
  • Číselné příznaky: škálování (standardní/robustní/min–max), power transform; binning je u stromových modelů obvykle zbytečný.
  • Interakce a polynomy: explicitní generování (poly features) versus modely, které je „umějí“ zachytit implicitně (stromy, sítě).
  • Výběr příznaků: filtrační (vzájemná informace), wrapper (RFE), embedded (L1, významy příznaků u stromů); pozor na stabilitu a kolinearitu.

Hyperparametry a automatizace hledání

  • Grid search versus random search: random search je efektivnější v prostoru s „aktivními“ dimenzemi.
  • Bayesovská optimalizace: TPE/GP, bandity, sekvenční návrhy; early stopping a multi-fidelity (Hyperband/ASHA) pro škálování.
  • Pipelines: zachycení transformací a modelu v jednom objektu pro reprodukovatelnost a prevenci leakage.

Hodnocení modelů a metriky

  • Klasifikace: accuracy (zrádná při nerovnováze), precision/recall/F1, AUC-ROC/PR, log-loss, Brier score, kalibrace pravděpodobností (Platt/Isotonic).
  • Regrese: RMSE/MAE/R2, MAPE (pozor na nuly), pinball loss pro kvantilovou regresi.
  • Řazení a doporučování: MAP@k, NDCG, hit@k, pokrytí/rozmanitost.
  • Časové řady: sMAPE, MASE; backtesting s posouváním okna, vícekrokové versus přímé strategie.

Nerovnováha tříd a robustnost

  • Re-sampling: stratifikace, váhy tříd, SMOTE/ADASYN (syntetické vzorky) – kontrolujte přeučení.
  • Robustnost: detekce odlehlých hodnot, stabilita vůči šumu, adversariální testy (u DL), monitorování datového driftu v provozu.

Interpretovatelnost a vysvětlitelnost

  • Globální versus lokální: globální význam příznaků (Permutation/GINI), parciální závislosti (PDP), křivky ICE; lokální metody LIME/SHAP.
  • Matice záměn a analýza chyb: segmentace problémových podmnožin (slicing) → cílené zlepšení.
  • Fairness: metriky parity (demographic parity, equal opportunity), testování zkreslení a jeho zmírňování (reweighing, post-processing).

Pravděpodobnostní modelování a Bayesovský přístup

  • Grafické modely: Bayesovské sítě, Markovovy sítě; inference (propagace přesvědčení, variační metody).
  • Bayesovská regrese/klasifikace: prior–likelihood–posterior; výhodou je kvantifikace nejistoty; aproximace pomocí MCMC/VI.
  • Kalibrace a nejistota: predikční intervaly, epistemická versus aleatorní nejistota; ensembling a MC dropout.

Neuronové architektury a moderní techniky DL

  • CNN: konvoluce, kernel/stride/padding, reziduální spojení (ResNet), attention v obrazech (ViT).
  • RNN/LSTM/GRU: sekvenční data, dlouhodobé závislosti; masking, teacher forcing.
  • Transformery: self-attention, multi-head, poziční kódování; škálují se lépe než RNN; předtrénování + fine-tuning.
  • Optimalizace u DL: smíšená přesnost, gradient clipping, plánování rychlosti učení (cosine, one-cycle), checkpointing.

Zesílené učení (Reinforcement Learning) v kostce

  • Prvky RL: stav s, akce a, odměna r, politika π, hodnotová funkce V, akční hodnota Q.
  • Metody: value-based (Q-learning, DQN), policy gradient (REINFORCE), actor–critic (A2C/A3C, PPO), model-based (MCTS, World Models).
  • Exploration versus exploitation: ε-greedy, UCB, bonus za entropii.

Časové řady a predikce

  • Klasické metody: ARIMA/SARIMA, ETS; exogenní proměnné (ARIMAX).
  • ML/DL: gradient boosting nad zpožděnými hodnotami a klouzavými příznaky, LSTM/Transformer (Temporal Fusion, Informer). Pozor na leakage při tvorbě příznaků.

Od prototypu k produkci: MLOps

  • Reprodukovatelnost: správa verzí dat, seedů a prostředí (containers), deklarativní pipelines.
  • Nasazení: batch versus online inference, latence a škálování; feature store pro zajištění konzistence mezi tréninkem a inferencí.
  • Monitoring: datový/skórovací drift, výkonnost (latence, propustnost), metriky kvality; strategie upozorňování a návratu k předchozí verzi (rollback).
  • Etika a soulad: privacy-by-design, minimalizace osobních údajů, auditovatelnost rozhodnutí.

Praktický návrhový postup (end-to-end)

  1. Formulace cíle: jasná metrika úspěchu (např. F1@0.5, RMSE < X), omezení (latence, paměť, fairness).
  2. Data a EDA: kvalita, chybějící hodnoty, nerovnováha, drift; datové protokoly a dokumentace.
  3. Baseline: jednoduchý model (logit/GBM) a realistická validace; stanovení referenčního výkonu.
  4. Feature pipeline: škálování, encoding, agregace; zabalení do reprodukovatelné pipeline.
  5. Model a tuning: výběr rodiny modelů (stromy versus NN), hyperparametry (random/Bayes), regularizace a early stopping.
  6. Hodnocení a interpretace: více metrik, analýza chyb, SHAP/PDP, testy fairness.
  7. Zodolnění a nasazení: robustnost vůči šumu, testy out-of-distribution, monitoring; CI/CD a rollback.

Časté chyby a jak se jim vyhnout

  • Leakage: fitování transformací na celém datasetu; řešení: důsledné oddělení train/val/test a použití pipelines.
  • Nevhodná metrika: optimalizace accuracy při nerovnováze → používejte PR-křivky, F1, cost-sensitive loss.
  • Přeučení na validaci: opakované ladění podle stejného validačního rozdělení; řešení: nested CV, testovací množinu ponechte „uzamčenou“.
  • Nestabilní trénink: neškálovaná data, nevhodný LR, chybějící regularizace; řešení: standardizace, plánovač rychlosti učení, weight decay.

Rychlý přehled výběru algoritmu

  • Tabulková data: Gradient Boosting / Random Forest → výchozí model; u velkých dat přidejte regularizaci a výběr příznaků.
  • Obrazy: CNN/ViT s transfer learningem; augmentace, mixup, label smoothing.
  • Text: Transformer (typu BERT) s fine-tuningem; tokenizace, pečlivá validace.
  • Časové řady: GBM nad vytvořenými příznaky / LSTM/Transformer; backtesting.
  • Anomálie: Isolation Forest / Autoencoder / One-Class SVM podle povahy dat.

Závěr

Základy strojového učení stojí na správné formulaci problému, kvalitní práci s daty, rozumném výběru algoritmu a důsledné validaci. Regularizace, interpretovatelnost a robustní provozní procesy jsou klíčové k tomu, aby model nejen dosahoval vynikajících výsledků při tréninku, ale také spolehlivě zobecňoval v reálném světě. Tento rámec umožňuje efektivně přistupovat jak ke klasickým úlohám s tabulkovými daty, tak k moderním hlubokým architekturám pro obraz, text a sekvence.