Přeskočit na obsah
coden

Jak číst matematický zápis: symboly, indexy, sumy a kvantifikátory

Slovníček asi čtyřiceti symbolů, se kterým přečtete každou definici v sérii Základy AI — od indexů a řeckých písmen přes ∑ a argmin po ∀ a ∃. S tahákem na konci.

12 minut Matěj Žalmánek 2026-10-15

Série Základy AI Díl 4 z 83
  1. Mapa umělé inteligence: co je co a jak to do sebe zapadá
  2. Stručná historie umělé inteligence: od Turinga po jazykové modely
  3. Data, model, trénink, inference: základní pojmy na jednom příkladu
  4. Jak číst matematický zápis: symboly, indexy, sumy a kvantifikátory
  5. Množiny a relace: stavebnice, ze které se skládají definice v AI
  6. Funkce a zobrazení: proč je každý model v AI funkce
  7. Logika a důkazy: pravidla, podle kterých se v AI uvažuje
  8. Grafy a stromy: struktura, na které stojí hledání i neuronové sítě
  9. Lineární algebra pro strojové učení: vektory, matice a proč AI hlavně násobí
  10. Derivace, gradient a řetízkové pravidlo: jak model zjistí, kterým směrem se učit
  11. Gradientní sestup: jak se model učí
  12. Co je pravděpodobnost: od hodu kostkou ke Kolmogorovovým axiomům
  13. Podmíněná pravděpodobnost a Bayesova věta: jak změnit odhad, když se dozvíte něco nového
  14. Náhodná veličina a distribuční funkce: jedna funkce, která o rozdělení řekne všechno
  15. Funkce hustoty a pravděpodobnostní funkce: proč má spojitá veličina v bodě pravděpodobnost nula
  16. Střední hodnota, rozptyl a kovariance: kde rozdělení leží, jak je široké a co s čím souvisí
  17. Přehled pravděpodobnostních rozdělení: Bernoulli, binomické, Poisson, rovnoměrné, normální a exponenciální
  18. Zákon velkých čísel a centrální limitní věta: proč se průměry chovají tak předvídatelně
  19. Statistika a odhady parametrů: maximální věrohodnost, MAP a intervaly spolehlivosti
  20. Teorie informace: entropie, křížová entropie a KL divergence — odkud se berou ztrátové funkce
  21. Prohledávání stavového prostoru: BFS, DFS, UCS a A* s animacemi
  22. Hry a protivník: minimax, alfa-beta ořezávání a Monte Carlo tree search
  23. Splňování omezujících podmínek: backtracking, propagace omezení a AC-3 na sudoku a mapě krajů
  24. Logika a znalostní systémy: dopředné a zpětné řetězení, rezoluce a expertní systémy
  25. Plánování: STRIPS, svět kostek, heuristiky z relaxace a plánování v AI agentech
  26. Lokální hledání a simulované žíhání: obchodní cestující přes krajská města
  27. Genetické algoritmy: populace, křížení, mutace a výběr na batohu na výlet
  28. Evoluční strategie a genetické programování: od pravidla jedné pětiny po Keplerův zákon
  29. Optimalizace mravenčí kolonií: jak feromonová stopa najde krátkou cestu
  30. Optimalizace hejnem částic: setrvačnost, vlastní zkušenost a zkušenost hejna
  31. Neuroevoluce: evoluce vah i tvaru neuronových sítí a algoritmus NEAT
  32. Fuzzy množiny a funkce příslušnosti: jak zapsat „trochu teplo“
  33. Fuzzy logika a pravděpodobnost: proč „trochu teplo“ neznamená „pravděpodobně teplo“
  34. Fuzzy logika: t-normy, implikace a pravidla KDYŽ–PAK
  35. Fuzzy řízení: Mamdani a Sugeno od ventilátoru po kyvadlo na vozíku
  36. Fuzzy shlukování: algoritmus fuzzy c-means a body mezi shluky
  37. Neuro-fuzzy systémy (ANFIS): fuzzy pravidla, která se učí z dat
  38. Markovovy řetězce: přechodová matice, stacionární rozdělení a PageRank
  39. Skryté Markovovy modely: Viterbiho algoritmus a nepoctivé kasino
  40. Bayesovské sítě: proč je tráva mokrá a co z toho plyne pro postřikovač
  41. Kalmanův filtr: jak z nepřesných měření odhadnout, kde auto je a jak rychle jede
  42. Druhy strojového učení: s učitelem, bez učitele, s částečným učitelem a další
  43. Přeučení a regularizace: proč model, který zná data nazpaměť, selže
  44. Vyhodnocení modelu: křížová validace, F1 a křivka ROC
  45. Shlukování a snížení dimenze: k-means, PCA a t-SNE
  46. Klasifikace a regrese: dvě úlohy učení s učitelem
  47. Lineární regrese: nejmenší čtverce geometricky i maticově
  48. Polynomiální a nelineární regrese: jak přímku ohnout
  49. Logistická regrese: sigmoida, šance a křížová entropie
  50. Vícetřídní klasifikace a softmax: od dvou tříd k mnoha
  51. Naivní Bayesův klasifikátor: spamový filtr, který funguje lépe, než by měl
  52. Ztrátové funkce: co přesně model minimalizuje
  53. Rozhodovací stromy a k nejbližších sousedů: modely bez vzorců
  54. Ansámbly: náhodný les a gradient boosting
  55. SVM a jádrový trik: nejširší hranice a jak ji ohnout
  56. Signál a vzorkování: proč platí Nyquistův teorém
  57. Fourierova transformace: rozklad signálu na frekvence
  58. Filtry a konvoluce: vyhlazení, hrany a odstranění šumu
  59. Zvuk a řeč: spektrogram, melová škála a MFCC
  60. Obraz jako signál: pixely, barvy, konvoluce a hrany
  61. Perceptron a umělý neuron: nejjednodušší neuronová síť a co neumí
  62. Neuronová síť od nuly: zpětné šíření chyby krok za krokem
  63. Aktivace, inicializace a normalizace: drobnosti, na kterých hluboká síť stojí
  64. Konvoluční sítě: jak síť poznává obrázky
  65. Rekurentní sítě: paměť pro posloupnosti a mizející gradient
  66. LSTM a GRU: brány, které rozhodují, co si síť zapamatuje
  67. Autoenkodéry: síť, která se učí data stlačit a zase rozbalit
  68. Embeddingy a word2vec: jak se slovo stane vektorem
  69. Mechanismus pozornosti: jak se model naučí, kam se dívat
  70. Transformery a velké jazykové modely: architektura krok za krokem
  71. Tokenizace: jak se text rozseká na kousky pro model
  72. Předtrénování a škálování: proč větší model a víc dat funguje
  73. Doladění a RLHF: jak se z doplňovače textu stane asistent
  74. Prompty, kontext a RAG: jak modelu dát správné informace
  75. Variační autoenkodéry (VAE): nové obrázky ze spojitého latentního prostoru
  76. Generativní adversariální sítě (GAN): padělatel proti detektivovi
  77. Difúzní modely: jak se z čistého šumu stane obrázek
  78. Markovovy rozhodovací procesy: stavy, akce, odměny a Bellmanovy rovnice
  79. Q-learning a DQN: učení hodnoty akcí od tabulky po neuronovou síť
  80. Policy gradient a PPO: učení přímo strategie
  81. Jak funguje AI agent: jazykový model ve smyčce s nástroji
  82. Programování s AI agenty: zadání, testy a kontrola
  83. 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 si odnesete
  • Jak přečíst indexy, řecká písmena, ∑, argmin, ∀ a ∃ — a co obvykle znamenají v AI.
  • Postup, kterým rozeberete jakoukoliv definici na části a přeložíte ji do slov.
  • Tahák všech symbolů, které v sérii potkáte.

Matematický zápis vypadá jako šifra, ale je to jen zkratka. Věta „sečti druhé mocniny všech čísel v seznamu“ se dá napsat jako ∑i xi2 a znamená přesně totéž — jen je kratší a nedá se vyložit dvojím způsobem.

Symbolů, které potkáte v článcích o umělé inteligenci, je překvapivě málo — asi čtyřicet. Tady je projdeme po skupinách, u každého řekneme, jak se čte, a na konci přečteme pár skutečných definic z dalších dílů. Tahák všech symbolů najdete v poslední kapitole.

1. Proč matematika používá symboly

Přirozený jazyk je dvojznačný. „Každý student přečetl nějakou knihu“ může znamenat, že každý přečetl jinou knihu, nebo že všichni přečetli tutéž. V zápisu ∀s ∃k a ∃k ∀s jde o dvě různé věty a nikdo si je nesplete. Zápis je přesný, krátký a mezinárodní — vzorec z čínské učebnice přečtete stejně jako z české.

Laicky řečeno

Vzorec se nečte naráz jako obrázek, ale jako věta — zleva doprava, symbol po symbolu. Když narazíte na neznámý symbol, stačí ho najít v taháku a „přeložit“ do slov. Po pár definicích to půjde samo.

2. Proměnné, indexy a řecká písmena

Proměnná je písmeno, které zastupuje číslo nebo jiný objekt: x, y, n. Píše se kurzívou. Když máme hodnot víc, rozlišíme je indexem — malým číslem nebo písmenem vpravo dole:

  • x1, x2, x3 — první, druhá, třetí hodnota („x jedna, x dvě…“),
  • xi — „i-tá“ hodnota, kde i může být kterékoliv číslo,
  • Ai,j — prvek v i-tém řádku a j-tém sloupci tabulky (matice),
  • x(i) — i-tý příklad v datech; závorka odliší index od mocniny x2.

Čárka nebo stříška nad písmenem dělá z jedné proměnné příbuznou: s′ („s s čárkou“) je další stav po s, ŷ („y se stříškou“) je odhad skutečné hodnoty y a x̄ („x s pruhem“) je průměr. Hvězdička značí to nejlepší: θ* jsou optimální parametry, C* optimální cena.

Latinských písmen je málo, a tak si matematika půjčuje řecká. V AI mají některá zavedený význam — když je uvidíte, většinou víte, o co jde:

ZnakČte seObvykle znamená
αalfarychlost učení, krok algoritmu
βbetaparametr (například setrvačnost)
γgamadiskontní faktor — jak moc záleží na budoucnosti
δ, Δdeltamalá změna, rozdíl
εepsilonvelmi malé kladné číslo; pravděpodobnost náhodného průzkumu
ηétarychlost učení v gradientním sestupu
θthétaparametry modelu — ty „knoflíky“, které se učí
λlambdasíla regularizace
μmístřední hodnota, průměr; střed shluku
πpípolitika agenta (a také číslo 3,14…)
σsigmasměrodatná odchylka; sigmoida

3. Množiny v zápisu

Množina je skupina prvků; píše se do složených závorek: {1, 2, 3} nebo {↑, →, ↓, ←}. Velkými dvojitými písmeny se značí známé množiny čísel: ℕ přirozená čísla (1, 2, 3, …), ℤ celá, ℝ reálná. ℝn jsou všechny seznamy n reálných čísel — vektory.

  • x ∈ S — „x patří do S“, je jejím prvkem; x ∉ S — nepatří,
  • A ⊆ B — „A je podmnožinou B“, všechno z A je i v B,
  • A ∪ B — sjednocení (co je aspoň v jedné), A ∩ B — průnik (co je v obou),
  • A × B — kartézský součin: všechny dvojice (a, b),
  • ∅ — prázdná množina, |S| — počet prvků,
  • {x ∈ ℝ : x > 0} — „množina všech reálných x, pro která platí x > 0“; dvojtečka (nebo svislá čára) se čte „pro která platí“.

Kulaté závorky naopak znamenají uspořádanou skupinu, kde záleží na pořadí: (3, 1) není totéž co (1, 3). Tak se píší dvojice, souřadnice a n-tice — například úloha prohledávání jako šestice (S, s0, A, T, G, c). Množinám a relacím se podrobně věnuje samostatný díl.

4. Suma a součin: ∑ a ∏

Definice — suma a součin

Nechť m, n ∈ ℤ jsou celá čísla a ai ∈ ℝ je reálné číslo pro každé celé i s m ≤ i ≤ n. Suma (součet) a součin čísel am, …, an jsou čísla

∑i=mn ai := am + am+1 + … + an,   ∏i=mn ai := am · am+1 · … · an   pro m ≤ n,

∑i=mn ai := 0,   ∏i=mn ai := 1   pro m > n (prázdná suma a prázdný součin).

Tečky „…“ lze nahradit přesným zápisem rekurzí: pro n ≥ m je ∑i=mn ai = (∑i=mn−1 ai) + an a ∏i=mn ai = (∏i=mn−1 ai) · an.

Proměnná pod znakem (i) je sčítací index; postupně nabývá všech celých hodnot od dolní meze m do horní meze n, každé právě jednou.

Laicky řečeno

Velké sigma ∑ je cyklus „pro i od 1 do n přičti“. Velké pí ∏ totéž, jen se násobí. Kdo programuje, zná to jako for i in range(1, n + 1): soucet += a[i].

Vezměme seznam x = (3, 1, 4, 1, 5), tedy x1 = 3, x2 = 1 atd. Pak:

∑i=15 xi = 3 + 1 + 4 + 1 + 5 = 14

∑i=13 xi2 = 32 + 12 + 42 = 9 + 1 + 16 = 26

∏i=13 xi = 3 · 1 · 4 = 12

x̄ = 1/5 ∑i=15 xi = 14/5 = 2,8  — průměr (barvy podle vzorce níže)

Poslední řádek je vzorec, který potkáte nejčastěji: 1/n ∑ je průměr. Když u sumy chybí meze (∑i), sčítá se přes všechna i, která dávají smysl — typicky přes všechny příklady v datech.

x̄ = 1/n ∑i=1n xi

x̄
průměr — pruh nad písmenem říká „z hodnot x spočítané jedno typické číslo“
1/n
vydělí součet počtem hodnot; bez něj by „průměr“ rostl s každou přidanou hodnotou a dva seznamy různé délky by nešly srovnat
∑i=1n
projde všechny indexy od 1 do n — meze zaručí, že žádná hodnota nechybí a žádná se nezapočítá dvakrát
xi
právě sčítaná hodnota; index i se v každém kroku sumy posune
Pro x = (3, 1, 4, 1, 5): x̄ = 1/5 · (3 + 1 + 4 + 1 + 5) = 1/5 · 14 = 2,8.
Věta — počítání se sumou

Nechť n ∈ ℕ, c ∈ ℝ a ai, bi ∈ ℝ pro i = 1, …, n. Pak platí

∑i=1n (c · ai + bi) = c · ∑i=1n ai + ∑i=1n bi   a   ∑i=1n c = n · c.

Důkaz. Rozepište sumu na n sčítanců, přeskupte je (sčítání je asociativní a komutativní) a z každého c · ai vytkněte c. Konstanta sečtená nkrát je n · c. ∎

Příklad. Pro x = (3, 1, 4, 1, 5): ∑i=15 (2xi + 1) = 2 · 14 + 5 · 1 = 33. Přímo: 7 + 3 + 9 + 3 + 11 = 33.

Pozor: mocninu ani jinou nelineární funkci takhle ze sumy vytknout nejde — ∑ xi2 není (∑ xi)2. Pro našich pět hodnot: 9 + 1 + 16 + 1 + 25 = 52, kdežto 142 = 196.

Laicky řečeno

Když všem v seznamu zdvojnásobíte plat a přidáte korunu, celkový součet je dvojnásobek původního plus tolik korun, kolik je lidí. Na tomhle pravidle stojí většina úprav vzorců v dalších dílech — třeba proč průměr chyb můžeme derivovat člen po členu.

5. Funkce, šipky a argmin

f(x) čteme „f od x“ — hodnota funkce f pro vstup x. Zápis f : X → Y („f z X do Y“) říká, odkud funkce bere vstupy a kam patří výstupy: f : ℝ2 → {0, 1} bere dvojici čísel a vrací 0 nebo 1 — to je klasifikátor bodů v rovině.

Definice — funkce a složení funkcí

Nechť X a Y jsou množiny. Funkce (zobrazení) f z X do Y, psáno f : X → Y, je množina dvojic f ⊆ X × Y (relace, viz díl Množiny a relace), pro kterou platí

∀x ∈ X ∃! y ∈ Y : (x, y) ∈ f,

kde ∃! čteme „existuje právě jedno“. Tento jediný prvek y značíme f(x). Funkce tedy přiřazuje každému prvku x ∈ X právě jeden prvek f(x) ∈ Y. Množina X je definiční obor, Y cílová množina (často se jí říká i obor hodnot).

Nechť X, Y, Z jsou množiny a f : X → Y, g : Y → Z funkce. Složení funkcí f a g je funkce

g ∘ f : X → Z,   (g ∘ f)(x) := g(f(x)) pro každé x ∈ X.

Příklad. f(x) = x + 1, g(x) = x2. Pak (g ∘ f)(3) = g(4) = 16, ale (f ∘ g)(3) = f(9) = 10 — na pořadí záleží.

Laicky řečeno

Funkce je automat: hodíte do něj vstup a vypadne vždycky stejný výstup — nikdy dva, nikdy žádný. Složení je zapojení automatů za sebe. Neuronová síť není nic jiného než dlouhý řetěz takhle složených funkcí, jedna vrstva za druhou.

  • x ↦ x2 — „x se zobrazí na x na druhou“; popis funkce bez jména,
  • fθ(x) — funkce, jejíž chování určují parametry θ („f s parametry théta“),
  • g ∘ f — složení: nejdřív f, pak g, tedy g(f(x)),
  • θ ← θ − η ∇J — šipka doleva je přiřazení v algoritmu: „nová hodnota θ je…“; := znamená „definujeme jako“.

Poslední řádek je nejdůležitější zápis celé série — krok gradientního sestupu. Rozebraný:

θ ← θ − η ∇J(θ)

θ
parametry modelu; vpravo stará hodnota, vlevo nová — stejné písmeno, protože jde o tutéž proměnnou v různém čase
←
přiřazení, ne rovnost: θ = θ − … by platilo jen pro nulový krok, kdežto ← říká „přepiš“
−
gradient ukazuje do kopce, my chceme chybu zmenšit, a tak jdeme opačně
η
rychlost učení — malé kladné číslo; gradient je jen místní informace, s dlouhým krokem bychom kopec přeskočili
∇J(θ)
gradient chyby J v aktuálním bodě — kterým směrem chyba roste nejrychleji a jak moc
Příklad — tři kroky gradientního sestupu

Hledáme argmin J(θ) = (θ − 2)2. Derivace je J′(θ) = 2(θ − 2). Začneme v θ = 5 s η = 0,25:

krok 1: θ ← 5 − 0,25 · 2 · (5 − 2) = 5 − 1,5 = 3,5

krok 2: θ ← 3,5 − 0,25 · 2 · (3,5 − 2) = 3,5 − 0,75 = 2,75

krok 3: θ ← 2,75 − 0,25 · 2 · (2,75 − 2) = 2,75 − 0,375 = 2,375

(Barvy podle vzorce výše: η, gradient J′(θ), stará a nová hodnota θ.)

Vzdálenost od minima 2 se každým krokem přesně půlí (3; 1,5; 0,75; 0,375), protože po kroku je nová vzdálenost (θ − 2η(θ − 2)) − 2 = (1 − 2η)(θ − 2) a 1 − 2 · 0,25 = 0,5. S η = 0,5 bychom byli v cíli jedním krokem, s η > 1 by se vzdálenost zvětšovala.

Definice — min, max, argmin, argmax

Nechť X je neprázdná množina a f : X → ℝ funkce. Argument minima funkce f na X je množina

argminx ∈ X f(x) := {x* ∈ X : ∀x ∈ X : f(x*) ≤ f(x)}.

Je-li tato množina neprázdná a x* je libovolný její prvek, je minimum funkce f na X číslo

minx ∈ X f(x) := f(x*)

(nezáleží na tom, který prvek vybereme — všechny dávají stejnou hodnotu). Minimum je tedy nejmenší hodnota, které f na X nabývá, argmin množina všech míst, kde jí nabývá. Má-li argmin jediný prvek x*, píše se zkráceně argminx ∈ X f(x) = x*. Na nekonečné množině nemusí minimum existovat: f(x) = x na intervalu (0, 1) se k nule libovolně blíží, ale nikdy jí nenabude, a argmin je prázdný.

argmax a max se definují stejně, jen s nerovností f(x*) ≥ f(x).

Laicky řečeno

min odpovídá na otázku „jak nízko se dá dostat?“, argmin na otázku „kde to je?“. Pro f(x) = (x − 2)2 je min f = 0, ale argmin f = 2. Trénink modelu je hledání argmin — nezajímá nás, jak malá je chyba, ale které parametry ji dávají.

Na konečné množině se argmin najde prostým projitím. Pro f(x) = (x − 2)2 na X = {0, 1, 2, 3, 4} jsou hodnoty 4, 1, 0, 1, 4, takže min = 0 a argmin = 2. Na X = {0, 1, 3, 4} (bez dvojky) je min = 1, ale argmin = {1, 3} — dvě místa se stejnou hodnotou, proto definice mluví o množině.

def argmin(f, X):
    nejlepsi, hodnota = [], float("inf")   # zatím nic, „nekonečně špatné“
    for x in X:
        if f(x) < hodnota:                 # nové minimum: zapomeň dosavadní
            nejlepsi, hodnota = [x], f(x)
        elif f(x) == hodnota:              # remíza: přidej do množiny
            nejlepsi.append(x)
    return nejlepsi, hodnota               # argmin a min najednou

6. Logické spojky a kvantifikátory

ZápisČte sePříklad
¬Pne P¬(x > 3) je totéž co x ≤ 3
P ∧ QP a Qx > 0 ∧ x < 1 — x leží mezi 0 a 1
P ∨ QP nebo Q (nebo obojí)x < 0 ∨ x > 1
P ⇒ Qjestliže P, pak Qx > 2 ⇒ x2 > 4
P ⇔ QP právě tehdy, když Qx2 = 0 ⇔ x = 0
∀x : P(x)pro každé x platí P∀x ∈ ℝ : x2 ≥ 0
∃x : P(x)existuje x, pro které platí P∃x ∈ ℕ : x > 100
Věta — negace kvantifikátorů

Nechť X je množina a P(x) výrok o prvku x, který je pro každé x ∈ X buď pravdivý, nebo nepravdivý. Pak platí

¬(∀x ∈ X : P(x)) ⇔ ∃x ∈ X : ¬P(x),

¬(∃x ∈ X : P(x)) ⇔ ∀x ∈ X : ¬P(x).

Negace tedy prohodí ∀ a ∃ a přesune se k výroku P. Jde o tvrzení plynoucí přímo z významu kvantifikátorů: „neplatí pro všechna“ znamená právě „pro aspoň jedno neplatí“.

Laicky řečeno

„Neplatí, že všechny labutě jsou bílé“ znamená „existuje labuť, která bílá není“. Na vyvrácení tvrzení „pro všechna“ stačí jeden protipříklad — a přesně tak se v matematice často dokazuje.

Pozor na implikaci ⇒: tvrdí jen to, že když platí P, platí i Q. O situaci, kdy P neplatí, neříká nic. Z x > 2 ⇒ x2 > 4 neplyne, že x2 > 4 ⇒ x > 2 — stačí vzít x = −3.

Definice — spojky pravdivostní tabulkou

Označme {0, 1} množinu pravdivostních hodnot (1 = pravda, 0 = nepravda) a nechť P, Q ∈ {0, 1}. Logické spojky jsou funkce

¬ : {0, 1} → {0, 1}   a   ∧, ∨, ⇒, ⇔ : {0, 1} × {0, 1} → {0, 1}

dané předpisy

  1. ¬P := 1 − P;
  2. P ∧ Q := min(P, Q) — rovná se 1, právě když P = 1 a zároveň Q = 1;
  3. P ∨ Q := max(P, Q) — rovná se 1, právě když P = 1 nebo Q = 1 (nebo obojí);
  4. P ⇒ Q := max(1 − P, Q) — rovná se 0, právě když P = 1 a Q = 0;
  5. P ⇔ Q := 1, je-li P = Q, a 0 jinak.

Protože {0, 1} má jen dvě hodnoty, je každá spojka plně určená tabulkou:

PQ¬PP ∧ QP ∨ QP ⇒ QP ⇔ Q
1101111
1000100
0110110
0010011

Implikace je nepravdivá v jediném řádku: P platí a Q ne. Proto P ⇒ Q znamená totéž co ¬P ∨ Q (porovnejte sloupce).

Laicky řečeno

„Když bude pršet, vezmu si deštník.“ Slib porušíte jen tehdy, když prší a deštník nemáte. Když neprší, slib platí, ať deštník máte, nebo ne — o téhle situaci nic neříkal.

7. Další značky, které potkáte

  • a/b nebo a / b — dělení, „a lomeno b“ (pro b ≠ 0); oba zápisy znamenají totéž. Lomítko se hodí tam, kde musí vzorec zůstat na jednom řádku (v kódu, v obyčejném textu), zlomek je přehlednější, protože bez závorek ukáže, co přesně se čím dělí: x − μ/σ je totéž co (x − μ) / σ. Na tomhle webu proto sázíme dělení všude jako zlomek,
  • |x| — absolutní hodnota (|−3| = 3); ‖x‖ — délka vektoru (norma),
  • ⌊x⌋, ⌈x⌉ — zaokrouhlení dolů a nahoru (⌊2,7⌋ = 2, ⌈2,1⌉ = 3),
  • ≈ — přibližně rovno; ∝ — úměrné („roste stejně jako“); ≫ — mnohem větší,
  • ∞ — nekonečno; [0, 1] — interval včetně krajních bodů, (0, 1) — bez nich,
  • ∇f („nabla f“) — gradient, směr nejrychlejšího růstu; ∂f/∂x — parciální derivace,
  • O(n2) — „řádově n na druhou“: jak rychle roste čas nebo paměť algoritmu,
  • P(A | B) — pravděpodobnost A, když víme, že nastalo B; 𝔼[X] — střední hodnota,
  • w⊤ — transpozice: z řádku sloupec a naopak; w⊤x je skalární součin.

Norma a skalární součin se dají napsat sumou, kterou už umíme číst:

‖x‖ = √∑i=1n xi2

‖x‖
délka vektoru x ∈ ℝn; dvojité čáry ji odliší od absolutní hodnoty čísla
xi2
čtverec jedné souřadnice — záporná souřadnice přispívá k délce stejně jako kladná
∑i=1n
sečte příspěvky všech souřadnic; to je Pythagorova věta, jen pro libovolný počet rozměrů
√
odmocnina (pruh nad výrazem ukazuje, kam sahá) vrátí výsledek do stejných jednotek jako souřadnice — délka (3, 4) má být 5, ne 25
‖(3, 4)‖ = √32 + 42 = √9 + 16 = √25 = 5.

w⊤x = ∑i=1n wi xi

w⊤x
skalární součin — jedno číslo ze dvou vektorů stejné délky; ⊤ z w udělá řádek, aby šel „řádek krát sloupec“
wi
váha i-tého vstupu — jak moc a kterým směrem (znaménko) na něm záleží
xi
i-tý vstup; násobí se jen se svou vlastní vahou
∑
sečte vážené vstupy do jednoho čísla — tak se v neuronu „hlasuje“
w = (2, −1, 0,5), x = (1, 3, 4): w⊤x = 2 · 1 + (−1) · 3 + 0,5 · 4 = 2 − 3 + 2 = 1. Platí také x⊤x = ‖x‖2.
Definice — velké O

Nechť g : ℕ → ℝ je funkce s nezápornými hodnotami (g(n) ≥ 0 pro všechna n ∈ ℕ). Velké O funkce g je množina funkcí

O(g) := {f : ℕ → ℝ : f(n) ≥ 0 pro všechna n ∈ ℕ ∧ ∃c ∈ ℝ, c > 0 ∃n0 ∈ ℕ ∀n ∈ ℕ, n ≥ n0 : f(n) ≤ c · g(n)}.

Pro funkci f : ℕ → ℝ s nezápornými hodnotami tedy f ∈ O(g) (často psáno jen f = O(g)), právě když platí podmínka, kterou rozebereme člen po členu:

∃c > 0 ∃n0 ∈ ℕ ∀n ≥ n0 : f(n) ≤ c · g(n)

∃c > 0
smíme g vynásobit konstantou — velké O nezajímá, jestli je počítač dvakrát rychlejší, jen jak čas roste
∃n0 ∈ ℕ
smíme ignorovat malé vstupy — na nich rozhodují drobnosti, ne tvar růstu
∀n ≥ n0
od té hranice ale už pro všechny větší vstupy, bez výjimky
f(n) ≤ c · g(n)
samotné tvrzení: f neroste rychleji než g — g je horní odhad

Příklad. f(n) = 3n2 + 5n ∈ O(n2), tj. g(n) = n2: zvolíme c = 4 a n0 = 5. Pak 3n2 + 5n ≤ 4n2 ⇔ 5n ≤ n2 ⇔ n ≥ 5 (pro n > 0). Pro n = 10: 350 ≤ 4 · 100 = 400 (barvy podle rozboru výše).

Definice — podmíněná pravděpodobnost a střední hodnota

Nechť (Ω, 𝓕, P) je pravděpodobnostní prostor (viz díl Co je pravděpodobnost) a A, B ∈ 𝓕 jsou jevy, kde P(B) > 0. Podmíněná pravděpodobnost jevu A za podmínky B je číslo

P(A | B) := P(A ∩ B)/P(B).

Nechť dále X : Ω → ℝ je náhodná veličina (viz díl Náhodná veličina), která nabývá jen konečně mnoha navzájem různých hodnot x1, …, xk, a P(X = x) značí P({ω ∈ Ω : X(ω) = x}). Střední hodnota veličiny X je číslo

𝔼[X] := ∑j=1k xj · P(X = xj),

tedy součet všech možných hodnot, každé vážené svou pravděpodobností.

Příklad. Hod kostkou, A = „padla šestka“, B = „padlo sudé číslo“. P(A ∩ B) = 1/6, P(B) = 3/6, takže P(A | B) = 1/6/3/6 = 1/3: když víme, že padlo sudé, zbývají tři stejně možné výsledky. Střední hodnota hodu: 𝔼[X] = (1 + 2 + 3 + 4 + 5 + 6) · 1/6 = 21/6 = 3,5 — hodnota, která sama padnout nemůže, ale je průměrem dlouhé řady hodů.

8. Přečtěte si celou definici

Teď to složíme dohromady. Tohle je definice tréninku modelu z dílu o druzích strojového učení. Každý člen má barvu a pod vzorcem stejnou barvou stojí, proč tam je:

θ* = argminθ 1/n ∑i=1n L( fθ(xi), yi )

θ*
nejlepší parametry modelu — výsledek tréninku; hvězdička je odliší od θ, které během hledání zkoušíme
argminθ
chceme místo minima, ne jeho hodnotu — model pak používáme s parametry, ne s číslem chyby; index θ říká, co smíme měnit (data ne)
1/n ∑i=1n
průměr přes všech n příkladů — model má být dobrý v průměru na všech datech, ne jen na jednom příkladu
L
ztrátová funkce — převede dvojici „odpověď, správná odpověď“ na jedno číslo, kolik chyba stojí; bez ní by nebylo co minimalizovat
fθ(xi)
co model s parametry θ odpoví na i-tý vstup — jediné místo, kde se θ ve vzorci objeví, a tedy jediná cesta, jak chybu ovlivnit
yi
správná odpověď k i-tému vstupu — měřítko, se kterým odpověď modelu srovnáváme
Výrazu za argmin se říká empirické riziko: průměrná ztráta na trénovacích datech.
Celá věta lidsky

Nejlepší parametry modelu jsou ty, se kterými model v průměru přes všechna trénovací data udělá nejmenší chybu mezi tím, co odpoví, a tím, co je správně.

Příklad — empirické riziko s čísly

Data: tři dvojice (xi, yi) = (1, 2), (2, 3), (3, 7). Model fθ(x) = θ · x má jediný parametr, ztráta je čtverec chyby L(ŷ, y) = (ŷ − y)2. Označme průměrnou ztrátu R(θ) = 1/3 ∑i=13 L(fθ(xi), yi). Barvy podle vzorce výše:

θ = 2: odpovědi 2, 4, 6, chyby 0, 1, −1, R = 1/3 (0 + 1 + 1) ≈ 0,667

θ = 2,5: odpovědi 2,5; 5; 7,5, chyby 0,5; 2; 0,5, R = 1/3 (0,25 + 4 + 0,25) = 1,5

Přesné argmin: derivace R′(θ) = 2/3 ∑i=13 (θ xi − yi) xi položená rovna nule dá θ* = ∑ xi yi/∑ xi2 = 2 + 6 + 21/1 + 4 + 9 = 29/14 ≈ 2,071 a R(θ*) ≈ 0,643.

Min je tedy 0,643 (menší chyba s tímhle modelem nejde), argmin je 2,071 — to je naučený model.

A ještě jedna, z dílu o prohledávání — prioritní funkce algoritmu A*:

f(n) = g(n) + h(n)

f(n)
priorita stavu n — A* vždy rozvine stav s nejmenším f; proto musí jedno číslo shrnout celou cestu přes n
g(n)
cena, kterou už jsme do n zaplatili — přesně známá; bez ní by algoritmus zbytečně preferoval stavy blízko cíle, ke kterým vedla drahá cesta
h(n)
odhad, kolik ještě zbývá do cíle (heuristika) — díky němu hledání míří k cíli místo do všech stran; když cenu nikdy nepřecení, najde A* nejlevnější cestu
Stav s g = 4, h = 3 má f = 7 a přijde na řadu dřív než stav s g = 2, h = 6 (f = 8), i když je od startu dál.

Čte se „f od n se rovná g od n plus h od n“: odhad ceny celé cesty přes stav n je cena, kterou už jsme do n zaplatili (g), plus odhad, kolik ještě zbývá (h). Stejný postup funguje pro každou definici: najít hlavní vztah (=, ≤, ⇔), rozebrat obě strany na části a každou přeložit do slov.

9. Tahák

SymbolČte seVýznam
xix i-téi-tý prvek
ŷ, x̄, θ*y se stříškou, x s pruhem, théta s hvězdičkouodhad, průměr, optimum
∈, ∉patří, nepatříje, není prvkem množiny
⊆, ∪, ∩, ×podmnožina, sjednocení, průnik, krátoperace s množinami
ℕ, ℤ, ℝ, ℝnN, Z, R, R na n-toupřirozená, celá, reálná čísla, vektory
a/b, a / ba lomeno bdělení (na webu se sází jako zlomek)
∑, ∏suma, součinsečti, vynásob přes index
f : X → Yf z X do Yfunkce a její vstupy a výstupy
argmin, argmaxargument minima, maximakde je nejmenší, největší hodnota
←, :=přiřaď, definujeme jakonová hodnota, definice
¬, ∧, ∨ne, a, nebologické spojky
⇒, ⇔jestliže–pak, právě tehdy kdyžimplikace, ekvivalence
∀, ∃pro každé, existujekvantifikátory
|x|, ‖x‖absolutní hodnota, normavelikost čísla, délka vektoru
≈, ∝, ≫přibližně, úměrné, mnohem většíporovnání
∇, ∂nabla, parciální derivacegradient, derivace podle jedné proměnné
O(·)velké Ořád růstu času nebo paměti
P(A | B), 𝔼pravděpodobnost A za podmínky B, střední hodnotapravděpodobnost

10. Shrnutí

  • Matematický zápis je zkratka věty: čte se zleva doprava, symbol po symbolu.
  • Indexy rozlišují hodnoty, řecká písmena mají v AI zavedené významy (θ parametry, η rychlost učení, γ diskont).
  • ∑ je cyklus, který sčítá; 1/n ∑ je průměr; dělení se píše zlomkem nebo lomítkem; argmin hledá místo, ne hodnotu.
  • ∀ a ∃ dělají z vlastností přesná tvrzení; na vyvrácení „pro všechna“ stačí jeden protipříklad.

S tímhle slovníkem přečtete všechny definice v sérii. Když narazíte na symbol, který tu chybí, napište nám — doplníme ho.

Máte na to jiný názor? Napište na support@coden-app.com.

Agent na vašem počítači, ovládaný z telefonu