Jak neuronová síť rozpoznává číslice
Nakreslete číslici a sledujte, jak ji skutečná neuronová síť vyhodnotí. Uvidíte, které neurony se rozsvítí, co který z nich hledá a jak se ze 784 pixelů stane jedna odpověď. Vše běží ve vašem prohlížeči.
Nakreslete číslici
Síť odhaduje3jistota 100 %
Z 10 000 testovacích číslic, které při učení neviděla, jich pozná správně 97,8 %.
Uvnitř sítě
Projděte čtyři kroky, nebo klikněte na kterýkoli neuron a uvidíte, jak počítá.
- Sytější barva = neuron víc svítí
- Zvyšuje další součet
- Snižuje další součet
Krok 4: výstup pro číslici 3
Každý z 10 výstupů sčítá stejně 16 neuronů vrstvy 2. Čím vyšší součet výstup má, tím víc se síť přiklání k jeho číslici.
Co nejvíc přidalo a ubralo
Součet tohoto výstupu je 14,97. Softmax z něj udělá podíl 100 % (viz níže).
Posun (bias) je vlastní číslo neuronu, naučené stejně jako váhy: neuron se díky němu rozsvěcí snáz, nebo hůř.
Z 10 součtů jedna odpověď
Softmax převede 10 součtů na podíly, které dají dohromady 100 %. Nejvyšší součet dostane největší podíl: když je jeden součet vyšší než jiný o 1, jeho podíl je asi 2,7krát větší. Odpovědí je číslice s největším podílem. Podíl ukazuje, jak moc se síť k číslici přiklání, ne jak pravděpodobně má pravdu.
| Číslice | Součet | Podíl |
|---|---|---|
| 0 | -5,37 | 0 % |
| 1 | -0,27 | 0 % |
| 2 | 2,32 | 0 % |
| 3 | 14,97 | 100 % |
| 4 | -6,86 | 0 % |
| 5 | 4,38 | 0 % |
| 6 | -10,56 | 0 % |
| 7 | 1,13 | 0 % |
| 8 | -1,01 | 0 % |
| 9 | 1,46 | 0 % |
Ukázka pro pochopení; nic z toho, co nakreslíte, neopouští váš prohlížeč. Jak se počítá a odkud jsou data
Jak neuronová síť pozná číslici
Neuronová síť se skládá z jednoduchých jednotek, neuronů, uspořádaných do vrstev. Každý neuron dělá jen jednu věc: sečte čísla, která do něj přicházejí, každé vynásobené vlastní vahou, přičte svůj posun a výsledek pošle dál, pokud je kladný. Chytrost není v žádném jednotlivém neuronu, ale ve vahách.
Tahle síť dostane vaši kresbu jako 784 čísel, jedno za každý pixel. Vrstva 1 má 32 neuronů a každý reaguje na krátký tah na určitém místě, jak je vidět na jejich vzorech. Vrstva 2 má 16 neuronů, které tyto tahy skládají do větších částí. 10 výstupů, jeden pro každou číslici, sčítá vrstvu 2 a vyhrává ten nejvyšší.
Váhy nikdo nenastavoval ručně. Na začátku byly náhodné a síť hádala naslepo. Pak dostala 60 000 ručně psaných číslic se správnými odpověďmi a po každé malé dávce se každá váha kousek posunula směrem, který chybu zmenšuje (zpětné šíření chyby a gradientní sestup). Po 30 průchodech všemi číslicemi se jejích zhruba 26 000 vah ustálilo ve vzorech, které vidíte.
Proto se síť plete jinak než člověk. Naučila se, jak vypadají číslice z MNIST, ne co číslice je. Nakreslete číslici hodně tenkou, useknutou nebo nezvykle, a součty se mohou přiklonit jinam. Zkuste to: nakreslete čtyřku s otevřeným vrškem, sedmičku s příčkou nebo písmeno a sledujte, které neurony zareagují.
Stejné stavební kameny, jen v mnohem větším počtu a jinak uspořádané, jsou uvnitř sítí, které rozpoznávají řeč, překládají nebo píšou text. Princip zůstává stejný: obrovské množství vážených součtů s vahami naučenými z příkladů.
Časté otázky
Je to opravdová neuronová síť?
Ano. Je to malá, ale úplná síť, naučená na skutečných ručně psaných číslicích, a ve vašem prohlížeči počítá přesně tak, jak ukazuje schéma. Každé číslo ve schématu je skutečná hodnota z výpočtu.
Posílá se moje kresba někam?
Ne. Síť běží ve vašem prohlížeči. Kresba se ukládá jen do úložiště prohlížeče, abyste ji našli, až se vrátíte.
Proč moji číslici nepoznala?
Zná jen číslice, které vypadají jako ty z MNIST: jedna číslice, nakreslená uprostřed, s čarami běžné tloušťky. Váš rukopis nikdy neviděla a neumí odpovědět „nevím“. Zkuste číslici nakreslit větší a jednodušeji, nebo se podívejte, které neurony vrstvy 1 se rozsvítily a kterým výstupům přidaly.
Jak je přesná?
Na 10 000 testovacích číslicích MNIST, které při učení neviděla, odpoví správně zhruba v 98 případech ze 100; přesný podíl je uvedený pod plochou na kreslení. Číslice kreslené myší vypadají jinak než tahy perem na papíře, takže s nimi to může být horší.
Co je MNIST?
Sbírka 70 000 ručně psaných číslic, kterou v 90. letech sestavili Yann LeCun, Corinna Cortes a Christopher Burges z amerických vzorků rukopisu. Dlouho je to první věc, na které se zkoušejí nové metody, takové „hello world“ strojového učení.
Související články
Jak se počítá a odkud jsou data
Jak se výsledek počítá
- Kresba se znovu vykreslí tak, jak MNIST připravil své číslice: tahy perem širokým asi 3 pixely, zmenšené do rámečku 20 × 20 se zachováním tvaru a posunuté tak, aby těžiště inkoustu bylo uprostřed obrázku 28 × 28. Každý pixel je číslo od 0 do 1.
- Síť má 784 vstupů, 32 neuronů ve vrstvě 1, 16 ve vrstvě 2 a 10 výstupů. Každý neuron sečte své vstupy, každý vynásobený jeho vahou, a přičte posun (bias). Ve dvou skrytých vrstvách se záporný součet mění na 0 (ReLU); 10 součtů výstupů prochází funkcí softmax, která z nich udělá podíly dávající dohromady 100 %.
- Síť jsme naučili na 60 000 tréninkových číslicích MNIST: 30 průchodů gradientního sestupu s momentem po dávkách 64 číslic, každou číslici náhodně posunutou, pootočenou, zkosenou a ztenčenou či zesílenou, aby síť poznala i číslice kreslené myší.
- Přesnost je změřená na 10 000 testovacích číslicích MNIST, které síť při učení neviděla, stejným kódem a se stejnými vahami, jaké používá stránka. Výsledek je uvedený pod plochou na kreslení.
- Váhy jsou uložené na 8 bitech; přesnost výše je změřená až po tomto zaokrouhlení. Neuron skryté vrstvy má tak sytou barvu, jak velká je jeho hodnota oproti vysoké hodnotě jeho vrstvy (95. percentil přes testovací číslice).
Předpoklady a omezení
- Síť zná jen číslice 0 až 9 a vždy odpoví jednou z nich, i u písmene nebo čmáranice, někdy i s velkým podílem.
- Číslice MNIST psali zaměstnanci amerického statistického úřadu (Census Bureau) a američtí středoškoláci. Jiný rukopis, třeba jednička s dlouhou nožkou nebo přeškrtnutá sedmička, může síť poznat hůř.
- Je to malá síť, postavená tak, aby se dala sledovat. Konvoluční síť popsaná v článku LeCun a kol. (1998) se na stejných testovacích číslicích spletla u méně než 1 %; sítě používané dnes v praxi jsou ještě mnohem větší.
- Síť si nepamatuje předchozí kresby a z vašich se neučí.
Ukázkové číslice jsou ručně psané číslice z testovací části MNIST. Čísla ve schématu sítě jsou skutečné hodnoty výpočtu, ne naše příklady.
Zdroje dat a období, pro které platí
Každé číslo, ze kterého kalkulačka vychází nebo se kterým začíná, pochází z jednoho ze zdrojů níže. Názvy řad uvádíme tak, jak je pojmenoval vydavatel. U každého řádku je období, ke kterému se data vztahují, a tam, kde si ho zaznamenáváme, den stažení. Oficiální data bývají v době zveřejnění stará i několik měsíců, proto si před rozhodnutím ověřte aktuální hodnotu.
- Oficiální
- Zveřejnila ji centrální banka, statistický úřad, Evropská unie nebo jiný veřejný orgán.
- Odborná nebo oborová data
- Datová sada univerzity, poskytovatele indexů, oborového sdružení nebo dodavatele dat.
- Z tisku
- Údaj oficiálního orgánu, který známe jen z tisku a neověřili jsme ho v původním zdroji. Berte ho jako přibližný.
- Příklad
- Naše zaokrouhlené číslo, žádná statistika. Nahraďte ho vlastním.
Ručně psané číslice pro učení sítě
| Zdroj | Období | Druh |
|---|---|---|
Yann LeCun, Corinna Cortes, Christopher J. C. BurgesThe MNIST database of handwritten digits: 60,000 training and 10,000 test images of 28 × 28 pixels, size-normalized to a 20 × 20 box and centered by the center of mass (files from the torchvision mirror, checked against its MD5 sums) | 1998staženo 2026-10-17 | Odborná nebo oborová data |
Y. LeCun, L. Bottou, Y. Bengio, P. HaffnerGradient-based learning applied to document recognition, Proceedings of the IEEE 86 (11), 2278–2324 | 1998 | Odborná nebo oborová data |
Text metodiky naposledy zkontrolován 2026-10-06. Data naposledy stažena 2026-10-17. Jak pracujeme s daty a zdroji