Neuronová síť
Obsah boxu
Šablona:Infobox Umělá inteligence Neuronová síť (celým názvem umělá neuronová síť, anglicky Artificial Neural Network, zkráceně ANN nebo jen NN) je výpočetní model inspirovaný strukturou a fungováním lidského mozku a nervové soustavy. Jedná se o klíčovou komponentu hlubokého učení a je základem většiny moderních průlomů v oblasti umělé inteligence.
---
Struktura a princip fungování
Základní stavební jednotkou neuronové sítě je umělý neuron (nebo uzel), který je volně inspirován biologickým neuronem. Umělé neurony jsou uspořádány ve vrstvách a vzájemně propojeny.
Typická neuronová síť se skládá z minimálně tří typů vrstev:
- Vstupní vrstva (Input Layer): Přijímá syrová data (např. pixely obrázku, slova z textu, numerické hodnoty). Každý neuron ve vstupní vrstvě obvykle reprezentuje jednu vlastnost vstupních dat.
- Skryté vrstvy (Hidden Layers): Jedna nebo více vrstev mezi vstupní a výstupní vrstvou. Zde probíhá většina výpočtů a učení komplexních vzorců.
- Výstupní vrstva (Output Layer): Produkuje konečný výsledek sítě (např. klasifikaci, regresní hodnotu, vygenerovaný text nebo obrázek).
Propojení a váhy
Každé spojení mezi neurony má přiřazenou váhu (weight), což je číslo, které určuje sílu a směr vlivu jednoho neuronu na druhý. Během tréninku sítě se tyto váhy postupně upravují, aby model dosahoval co nejpřesnějších výsledků. Každý neuron má také bias (práh aktivace), což je dodatečná hodnota přidaná k váženému součtu vstupů.
Aktivační funkce
V každém neuronu (kromě vstupní vrstvy) se vážený součet všech vstupů s přidaným biasem předává přes aktivační funkci. Tato funkce zavádí do sítě nelinearitu, což jí umožňuje učit se složité a nelineární vztahy v datech. Bez aktivačních funkcí by neuronová síť byla jen složitou lineární regresí. Běžné aktivační funkce jsou ReLU (Rectified Linear Unit), Sigmoid nebo Softmax.
---
Jak se neuronová síť učí (trénink)
Trénink neuronové sítě je iterativní proces, který zahrnuje několik kroků:
1. Dopředná propagace (Forward Propagation): Vstupní data jsou předána přes síť zleva doprava (od vstupní vrstvy přes skryté vrstvy až po výstupní vrstvu). Každý neuron provede výpočet (vážený součet vstupů + bias, aplikuje aktivační funkci) a předá výsledek dalším neuronům v následující vrstvě. Na konci je generován výstup sítě. 2. Výpočet ztráty (Loss Calculation): Výstup sítě je porovnán se skutečným (očekávaným) výstupem pomocí ztrátové funkce (loss function). Ztrátová funkce kvantifikuje chybu nebo rozdíl mezi predikcí sítě a skutečností. 3. Zpětná propagace (Backpropagation): Vypočítaná chyba je šířena zpět sítí (od výstupní vrstvy směrem ke vstupní). Algoritmus vypočítává, jak moc každý parametr (váha a bias) přispěl k celkové chybě. To se děje pomocí gradientního sestupu. 4. Aktualizace vah (Weight Update): Váhy a bias jsou upraveny malými kroky ve směru, který minimalizuje ztrátovou funkci. Tento proces se opakuje po mnoho iterací (epoch), dokud se síť nenaučí provádět přesné predikce.
---
Typy neuronových sítí
Existuje mnoho architektur neuronových sítí, z nichž každá je optimalizována pro různé typy dat a úloh:
- Feedforward sítě (FFNN) / Multilayer Perceptron (MLP): Nejjednodušší typ, kde informace proudí pouze jedním směrem (dopředu), bez cyklů. Základ pro mnoho aplikací.
- Konvoluční neuronové sítě (Convolutional Neural Networks – CNNs): Specializované pro zpracování obrazových dat. Využívají konvoluční vrstvy pro automatickou extrakci rysů.
- Rekurentní neuronové sítě (Recurrent Neural Networks – RNNs): Určené pro sekvenční data (např. text, řeč), protože mají vnitřní "paměť" pro informace z předchozích kroků.
- Transformery: Moderní architektura, která využívá mechanismus pozornosti a je dominantní v NLP (např. LLM) a nyní i v jiných oblastech.
- Generativní adversární sítě (GANs): Skládají se ze dvou spolupracujících sítí (generátor a diskriminátor) a používají se pro generování nového, realistického obsahu.
- Diferenční modely: Novější generativní modely, které se učí generovat data postupným odstraňováním šumu.
---
Aplikace neuronových sítí
Neuronové sítě jsou srdcem většiny moderních AI systémů a využívají se v:
- Rozpoznávání obrazu: Rozpoznávání tváří, autonomní řízení, lékařská diagnostika.
- Zpracování přirozeného jazyka (NLP): Strojový překlad, chatboti, generování textu, analýza sentimentu.
- Rozpoznávání řeči: Hlasoví asistenti, přepis mluveného slova.
- Doporučovací systémy: Personalizované doporučení obsahu.
- Medicína: Diagnostika nemocí, objevování léků.
- Finance: Detekce podvodů, algoritmické obchodování.
- Generativní AI: Tvorba uměleckých obrazů, realistických videí a hudby.
---
Neuronová síť pro laiky
Představte si, že chcete naučit počítač poznávat psy na fotkách. Jak by to udělal lidský mozek? Miliony buněk spolupracují.
Neuronová síť je zjednodušená verze takového "mozku" pro počítač:
- Buňky (neurony): Představte si tisíce malých "buněk" uvnitř počítače.
- Vrsty: Tyto "buňky" jsou uspořádány do vrstev. Některé jsou na začátku (vstupní vrstva – sem jdou pixely z fotky), některé uprostřed (skryté vrstvy – tady probíhá to pravé myšlení) a jedna na konci (výstupní vrstva – ta řekne, jestli je to pes nebo kočka).
- Spojení: Každá "buňka" je propojena s mnoha dalšími v další vrstvě. Ta propojení mají "sílu" (říkáme jí váha).
- Učení: Když počítači ukážete fotku psa, informace putuje od vstupní vrstvy přes všechny vrstvy. Každá "buňka" si spočítá něco malého a předá to dál. Nakonec výstupní vrstva řekne svůj tip.
- Zlepšování: Pokud se počítač spletl (řekl kočka, když to byl pes), tak se "síla" propojení (váhy) trochu upraví. Tohle se opakuje miliardkrát s miliardami fotek, dokud se síť nenaučí poznávat psy (a kočky) s velkou přesností.
Hluboké učení je pak jen termín pro neuronové sítě s mnoha (mnoha!) skrytými vrstvami, které jim umožňují učit se neuvěřitelně složité věci.
---
Viz také
- Hluboké učení
- Strojové učení
- Umělá inteligence
- Neuron (umělá inteligence)
- Aktivační funkce
- Zpětné šíření chyb
- Konvoluční neuronová síť
- Rekurentní neuronová síť
- Transformer (model strojového učení)
- Generativní adversární síť
- Diferenční modely
- Velký jazykový model
---
Odkazy
- IBM – What are neural networks? (anglicky)
- Investopedia – Neural Network (anglicky)
- Simplilearn – What is a Neural Network? (anglicky)
- Wikiskripta – Umělá neuronová síť (česky)