# Slovníček

Zkratky a pojmy, na které narazíš. Řazeno abecedně.

**A\*** - informovaná prohledávací metoda s hodnotící funkcí `f(n) = g(n) + h(n)`. Optimální při přípustné heuristice. Viz [informované prohledávání](Informovane-prohledavani).

**Accuracy (přesnost)** - podíl správně klasifikovaných vzorků. U nevyvážených dat zavádějící. Viz [metriky](Metriky-a-vyhodnoceni).

**Adam** - adaptivní optimalizátor pro trénování sítí, dnes výchozí volba. Viz [MLP](MLP-a-backpropagation#problémy-při-trénování).

**Agent** - cokoliv, co vnímá prostředí senzory a ovlivňuje ho akčními členy. Viz [inteligentní agenti](Inteligentni-agenti).

**Agentová funkce** - abstraktní tabulka `V* → A` popisující chování agenta. Realizuje ji agentový program.

**Aktivační funkce** - nelinearita na výstupu neuronu. Sigmoida, tanh, ReLU. Viz [neuron](Neuron-a-perceptron#aktivační-funkce).

**AlexNet** - konvoluční síť, která v roce 2012 vyhrála ImageNet a snížila chybu z 26 % na 15 %. Viz [CNN](Konvolucni-site).

**Alfa-beta prořezávání** - zrychlení minimaxu, které nemění výsledek. Při dobrém uspořádání tahů `O(b^(m/2))`. Viz [hry](Hry-a-herni-strom#alfa-beta-prořezávání).

**AND/OR graf** - graf, kde AND uzel vyžaduje vyřešení všech následníků a OR uzel jednoho. Viz [dekompozice](Dekompozice-a-AND-OR-grafy).

**Anaconda / Conda** - distribuce Pythonu a správce balíků, který řeší i ne-pythonovské závislosti (CUDA). Viz [nástroje](Nastroje-pro-UI#anaconda-a-správa-prostředí).

**Apriorní pravděpodobnost `P(ω)`** - pravděpodobnost třídy před pozorováním dat. Viz [Bayes](Bayesova-klasifikace).

**Aposteriorní pravděpodobnost `P(ω|x)`** - pravděpodobnost třídy po pozorování dat.

**Augmentace dat** - umělé rozšíření trénovací množiny otočením, posunutím či zašuměním. Nástroj proti přeučení.

**Autograd** - automatické derivování v PyTorchi. Ušetří ruční psaní [backpropagation](MLP-a-backpropagation).

**`b` (faktor větvení)** - průměrný počet následníků uzlu. V šachách zhruba 35, v go 250.

**Backpropagation** - algoritmus zpětného šíření chyby (Rumelhart, Hinton, Williams, 1986). Viz [MLP](MLP-a-backpropagation#backpropagation).

**Bag of Words** - reprezentace textu četnostmi slov bez ohledu na pořadí. Viz [příznakové metody](Priznakove-metody#příznakový-vektor).

**Bayesův vzorec** - `P(ω|x) = p(x|ω)·P(ω) / p(x)`. Viz [Bayesova klasifikace](Bayesova-klasifikace#bayesův-vzorec).

**BFS** - prohledávání do šířky. Úplné a optimální podle délky cesty, ale paměť `O(b^d)`. Viz [neinformované prohledávání](Neinformovane-prohledavani#bfs-nejkratší-cesta-za-cenu-kterou-nezaplatíš).

**BMU (Best Matching Unit)** - vítězný neuron v [Kohonenově mapě](Kohonenovy-mapy), tedy ten s nejmenší vzdáleností ke vstupu.

**CART** - klasifikační a regresní strom. Interpretovatelný *white-box* model. Viz [příznakové metody](Priznakove-metody#klasifikační-a-regresní-strom-cart).

**Cell state** - „dopravníkový pás" v [LSTM](Rekurentni-site-a-LSTM#lstm), kterým prochází informace časem s minimem změn.

**Chromozóm** - zakódované řešení v [genetickém algoritmu](Geneticke-algoritmy). Binární, permutační, znakový nebo stromový.

**CNN** - konvoluční neuronová síť pro data s mřížkovou strukturou. Viz [konvoluční sítě](Konvolucni-site).

**Cutoff test** - ořezávací test nahrazující koncový test při časovém omezení v [herním stromu](Hry-a-herni-strom#časové-omezení-a-minimax-cutoff).

**`d`** - hloubka nejmělčího cíle ve stavovém prostoru.

**DBSCAN** - shlukování podle hustoty. Nevyžaduje `k`, najde libovolný tvar, detekuje šum. Viz [shlukování](Shlukovani#dbscan).

**Dendrogram** - stromový výstup hierarchického shlukování. Počet shluků se volí až jeho přeříznutím.

**DFS** - prohledávání do hloubky. Paměť `O(b·m)`, ale není úplné ani optimální. Viz [neinformované prohledávání](Neinformovane-prohledavani#dfs-zásobník-a-nekonečná-větev).

**Diskriminační funkce `gi(x)`** - funkce přiřazená třídě; klasifikuje se `arg max`. Viz [klasifikace](Klasifikace-a-rozpoznavani#diskriminační-funkce).

**DLS** - prohledávání do hloubky s limitem `ℓ`. Neúspěch má dvojí výklad.

**Dopředná síť (feed-forward)** - síť bez zpětných vazeb, tedy bez paměti. Viz [topologie](Topologie-a-uceni-siti).

**Dropout** - náhodné vypínání neuronů během trénování jako obrana proti přeučení.

**Elitismus** - přenos nejlepších jedinců přímo do nové generace v [GA](Geneticke-algoritmy#selekce). Používej vždycky.

**Epocha** - jeden průchod celým trénovacím datasetem.

**Etalon** - vzorový obraz reprezentující třídu u [klasifikátoru minimální vzdálenosti](Priznakove-metody#klasifikátor-na-principu-minimální-vzdálenosti).

**Expectimax** - varianta minimaxu pro hry s náhodou. V uzlu s kostkou se počítá vážený průměr.

**F1 (F-míra)** - harmonický průměr precision a recall. Tvrdě trestá nerovnováhu. Viz [metriky](Metriky-a-vyhodnoceni#precision-recall-f-míra).

**Fitness funkce** - hodnotící funkce chromozómu v [genetickém algoritmu](Geneticke-algoritmy#fitness-funkce).

**FN (false negative)** - prošvihnutý pozitiv. U diagnostiky ta dražší chyba.

**FP (false positive)** - falešný poplach. U spamového filtru ta dražší chyba.

**Freemanův řetězový kód** - popis obrysu posloupností osmi směrů. Invariantní vůči posunu. Viz [strukturální rozpoznávání](Strukturalni-rozpoznavani#freemanův-řetězový-kód).

**`g(n)`** - cena cesty z počátku do uzlu `n` v [A*](Informovane-prohledavani).

**GA** - genetický algoritmus. Viz [genetické algoritmy](Geneticke-algoritmy).

**Gradient clipping** - oříznutí gradientu na maximální normu. Řeší explodující gradient v [RNN](Rekurentni-site-a-LSTM#problém-dlouhodobých-závislostí).

**Gradientní sestup** - `w ← w − η·∂E/∂w`. Viz [MLP](MLP-a-backpropagation#ztrátová-funkce-a-gradientní-sestup).

**GRU** - zjednodušené LSTM se dvěma hradly (Cho et al., 2014). Často stačí místo LSTM.

**`h(n)`** - heuristická funkce, odhad ceny z `n` do cíle. Viz [informované prohledávání](Informovane-prohledavani#heuristická-funkce).

**Hebbovo pravidlo** - `wij ← wij + α·yi·yj`. Nejjednodušší učení bez učitele (1949).

**Heuristika, přípustná (admissible)** - splňuje `0 ≤ h(n) ≤ h*(n)`. Podmínka optimálnosti A*.

**Hill Climbing** - horolezecký algoritmus. Uvízne v lokálním maximu, na plošině a na hřebeni. Viz [lokální prohledávání](Lokalni-prohledavani#hill-climbing).

**Horizon effect** - jev, kdy program odsouvá nevyhnutelnou ztrátu za hranici prohledávané hloubky.

**Hradlo (gate)** - sigmoidální ventil v [LSTM](Rekurentni-site-a-LSTM#lstm). Tři druhy: forget, input, output.

**IDA\*** - iterativně prohlubované A*. Řeší exponenciální paměť A*.

**IDS** - iterativní prohlubování. Čas jako BFS, paměť jako DFS, přitom úplné i optimální. Viz [neinformované prohledávání](Neinformovane-prohledavani#ids-metoda-která-opakuje-práci-a-vyplatí-se-to).

**Induktivní úloha** - `(X, Y, ?)`, hledají se pravidla. Je to celé strojové učení. Viz [stavový prostor](Stavovy-prostor#tři-druhy-úloh-podle-toho-co-neznáš).

**k-means** - shlukování podle vzdálenosti k těžišti. Předpokládá sférické shluky. Viz [shlukování](Shlukovani#algoritmus-k-means).

**k-means++** - inicializace k-means, která středy rozprostře. Dnes výchozí.

**k-NN** - klasifikace podle `k` nejbližších sousedů. Bez trénování, ale drahá při klasifikaci. Viz [příznakové metody](Priznakove-metody#k-nejbližších-sousedů-k-nn).

**Keras** - vysokoúrovňové deklarativní rozhraní TensorFlow. Viz [nástroje](Nastroje-pro-UI#tensorflow-a-keras).

**Kosinová podobnost** - podobnost podle úhlu vektorů, ignoruje délku. Pro texty. Viz [metriky](Metriky-a-vyhodnoceni#metriky-vzdálenosti).

**Kritika** - komponenta [učícího se agenta](Inteligentni-agenti#učící-se-agent), která převádí vjemy na hodnocení. Bez ní se agent nemá z čeho učit.

**Křížení (crossover)** - kombinace dvou chromozómů v [GA](Geneticke-algoritmy#křížení). Jediná přidaná hodnota metody.

**Křížová validace** - `k`-násobné trénování s rotující testovací částí. Viz [metriky](Metriky-a-vyhodnoceni#křížová-validace).

**LBP (lokální binární vzory)** - texturní příznak invariantní vůči osvětlení. Viz [příznakové metody](Priznakove-metody#lokální-binární-vzory).

**LeNet** - klasická architektura CNN: Conv-ReLU-Pool opakovaně, pak FC a softmax.

**Likelihood `p(x|ω)`** - rozložení dat uvnitř třídy. Nezaměňovat s `P(ω|x)`.

**Local Beam Search** - `K` současných stavů, které spolu komunikují sdíleným výběrem. Viz [lokální prohledávání](Lokalni-prohledavani#local-beam-search).

**Loebnerova cena** - soutěž ve strojové konverzaci, běžela od roku 1990.

**LSTM** - Long Short-Term Memory (Hochreiter a Schmidhuber, 1997). Viz [rekurentní sítě](Rekurentni-site-a-LSTM).

**`m`** - maximální hloubka větve ve stavovém prostoru, může být nekonečná.

**Manhattanská vzdálenost** - součet absolutních rozdílů. Odolnější vůči odlehlým hodnotám než euklidovská.

**MAP (maximum a posteriori)** - rozhodovací pravidlo `arg max p(x|ω)·P(ω)`.

**Matice záměn (confusion matrix)** - tabulka skutečných proti predikovaným třídám. Viz [metriky](Metriky-a-vyhodnoceni#matice-záměn).

**Minimax** - algoritmus optimální hry proti optimálnímu soupeři. Viz [hry](Hry-a-herni-strom#minimax).

**Mizející gradient** - gradient se při zpětném průchodu násobí a po mnoha krocích zmizí. Důvod vzniku LSTM i vítězství ReLU.

**MI (vzájemná informace)** - míra odchylky od nezávislosti, používá se k výběru příznaků.

**MLP** - vícevrstvý perceptron. Viz [MLP a backpropagation](MLP-a-backpropagation).

**MNČ (metoda nejmenších čtverců)** - minimalizace součtu čtverců reziduí. Viz [lineární regrese](Linearni-regrese#metoda-nejmenších-čtverců).

**Momentum** - přimíchání části předchozího kroku do gradientního sestupu. Vyhladí oscilace.

**Mutace** - náhodná změna bitu v chromozómu. Pojistka proti zamrznutí v lokálním optimu.

**Naivní Bayes (NBC)** - Bayesův klasifikátor s předpokladem podmíněné nezávislosti příznaků. Viz [Bayes](Bayesova-klasifikace#naivní-bayes).

**Negamax** - zápis minimaxu s jednou větví využívající `−minimax(potomek)`.

**NumPy** - knihovna pro numerické výpočty, typ `ndarray`. Viz [nástroje](Nastroje-pro-UI#numpy).

**Overfitting (přeučení)** - model si zapamatuje trénovací data a selhává na nových.

**Pandas** - tabulkové struktury `Series` a `DataFrame` nad NumPy.

**PEAS** - Performance, Environment, Actuators, Sensors. Způsob zadání agentové úlohy. Viz [agenti](Inteligentni-agenti#peas-jak-se-úloha-zadá).

**Perceptron** - jednovrstvá síť (Rosenblatt, 1958) definující nadrovinu. Viz [neuron](Neuron-a-perceptron#perceptron).

**Pooling** - redukce prostorové velikosti map příznaků v [CNN](Konvolucni-site#pooling). Nejčastěji max-pooling `2×2`.

**Precision** - kolik z označených bylo správně, `TP/(TP+FP)`.

**Primitivum** - základní strukturální element objektu ve [strukturálním popisu](Strukturalni-rozpoznavani).

**PyTorch** - framework pro hluboké učení s dynamickým grafem (Meta, 2016).

**Racionální agent** - agent maximalizující **očekávanou** míru výkonu. Není totéž co vševědoucí.

**Recall** - kolik z existujících pozitivů model našel, `TP/(TP+FN)`.

**ReLU** - `f(x) = max(0, x)`. Dnes nejpoužívanější aktivační funkce v hlubokých sítích.

**Receptivní pole** - oblast vstupu, ze které čerpá jeden výstupní bod konvoluční vrstvy.

**RNN** - rekurentní neuronová síť se zpětnou vazbou. Viz [rekurentní sítě](Rekurentni-site-a-LSTM#rekurentní-síť).

**Ruletové kolo** - selekce s pravděpodobností úměrnou fitness.

**Sdílení vah** - tentýž filtr se v CNN používá na všech pozicích. Zdroj úspory parametrů.

**Sigmoida** - `f(x) = 1/(1+e^(−x))`, derivace `f(1−f)`. Diferencovatelná, proto použitelná pro backpropagation.

**Simulované žíhání** - lokální prohledávání povolující zhoršující tahy s pravděpodobností `e^(ΔE/T)`. Viz [lokální prohledávání](Lokalni-prohledavani#simulované-žíhání).

**Scikit-learn** - hlavní knihovna klasického strojového učení. Jednotné API `.fit()`, `.predict()`, `.score()`.

**Softmax** - normalizace výstupů do pravděpodobnostního rozdělení přes třídy.

**SOM** - Self-Organizing Map, Kohonenova mapa (1982). Viz [Kohonenovy mapy](Kohonenovy-mapy).

**Stavový prostor** - množina stavů propojených operátory. Viz [stavový prostor](Stavovy-prostor).

**Strukturální popis** - popis objektu primitivy a relacemi místo čísel. Viz [strukturální rozpoznávání](Strukturalni-rozpoznavani).

**Supervised / unsupervised / reinforcement** - učení s učitelem, bez učitele a posilované. Viz [topologie a učení](Topologie-a-uceni-siti#tři-druhy-učení).

**TF-IDF** - váha termínu: častý zde, vzácný jinde. Viz [příznakové metody](Priznakove-metody#tf-idf).

**TP / TN** - správně označený pozitiv, respektive negativ.

**Transfer learning** - použití předtrénované sítě s dotrénovanou poslední vrstvou. Dnes výchozí postup u obrázků i textu.

**Transformer** - architektura, která nahradila LSTM u generování textu. Vyhrála díky paralelizaci.

**TSP** - problém obchodního cestujícího. Ukázková úloha pro [GA](Geneticke-algoritmy#tsp-obchodní-cestující) s permutačním kódováním.

**Turingův test** - rozlišení stroje od člověka podle chování (1950). Za splněný označen v roce 2023.

**UCS** - prohledávání podle ceny, prioritní fronta podle `g(n)`. Optimální při cenách `≥ ε`.

**Univerzální aproximační teorém** - síť s jednou skrytou vrstvou aproximuje libovolnou spojitou funkci (Cybenko, 1989). Důkaz existence, ne návod.

**U-matice** - dokreslení skutečných vzdáleností do Kohonenovy mapy. Bez ní se mapa čte špatně.

**Učební křivka** - závislost chyby na velikosti trénovací množiny. Odhalí podtrénování i přeučení.

**Utilita** - reálné číslo přiřazené stavu, umožňuje volbu mezi konfliktními cíli. Viz [agenti](Inteligentni-agenti#agent-s-žádostmi-utility-based).

**Vyhlazování (Laplaceovo)** - přičtení konstanty k čítačům, aby žádná pravděpodobnost nebyla nulová. U naivního Bayese povinné.

**XOR** - funkce, kterou jeden neuron nedokáže realizovat. Minsky a Papert, 1969. Viz [neuron](Neuron-a-perceptron#xor-limit-který-zastavil-obor).

**`η` (éta)** - rychlost učení v gradientním sestupu. Nejdůležitější parametr trénování.

**`Θ` (théta)** - práh neuronu. Schovává se do vah jako `w0 = −Θ`.

**⊙** - prvkové (Hadamardovo) násobení. Používá se v rovnicích [LSTM](Rekurentni-site-a-LSTM#aktualizace-buněčného-stavu).
