Základní pojmy strojového učení
- učení s učitelem a bez učitele, zpětnovazební učení
- trénování, generalizace, přeučení, regularizace
- datová distribuce, trénovací/validační/testovací data
Lineární regrese
- analytické řešení
- řešení pomocí stochastic gradient descent (SGD)
Klasifikace
- binární klasifikace pomocí perceptronu
- binární klasifikace pomocí logistické regrese
- klasifikace do více tříd pomocí logistické regrese
- odvození funkcí sigmoid a softmax z principu maximální entropie
- klasifikace pomocí vícevrstevného perceptronu (MLP)
- naivní Bayesův klasifikátor
- binární klasifikátory založené na principu maximum margin
Jádrové metody
- lineární regrese pomocí jader
- metoda podpůrných vektorů (SVM) a její trénování algoritmem Sequencial minimization optimization (SMO)
Rozhodovací stromy
- klasifikační a regresní stromy (CART)
- náhodné lesy
- gradient boosting decision trees (GBDT)
Shluková analýza
- K-Means algoritmus
- Gaussian mixture model
Redukce dimenzionality
- analýza hlavních komponent
Trénování
- příprava dat, volba klasifikačních rysů
- konstrukce ztrátových funkcí pomocí metody maximální věrohodnosti
- gradientní metody prvního řádu (SGD) a metody druhého řádu
- regularizace
Statistické testování
- Studentův t-test
- Chí-kvadrát test
- korelační koeficienty
- párový bootstrap test
Využívané knihovny jazyka Python
- numpy (reprezentace n-rozměrných polí a práce s nimi)
- scikit-learn (konstrukce modelů strojového učení)
- matplotlib (vizualizace)
Strojové učení dosahuje značných úspěchů při řešení komplexních úloh v mnoha oborech. Tento předmět slouží jako úvodní kurz pro seznámení se strojovým učením, a to jak s teoretickými základy, tak s implementací a použitím algoritmů strojového učení, a to v jazyce Python.
Důraz je kladen na schopnosti aplikace popisovaných technik při řešení praktických úloh, ve kterých se studenti snaží dosáhnout řešení s nejvyšší přesností.