Co jeden neuron doopravdy počítá
Za slovem „neuron“ se v umělé inteligenci neskrývá nic biologického, jen jedna věta matematiky: vezmi vstupy, každý vynásob jeho váhou, sečti to a porovnej se stanoveným prahem. Když součet práh dosáhne nebo přesáhne, neuron aktivuje (výstup 1), jinak ne (výstup 0). To je celý mechanismus. Žádná paměť, žádné uvažování, jedno porovnání čísla s číslem.
Váha vyjadřuje, jak moc na daném vstupu záleží. Kladná váha znamená, že aktivní vstup pomáhá neuronu se aktivovat, záporná znamená, že mu naopak brání. Práh je laťka, kterou musí vážený součet přeskočit. Ve hře posouváte oba tyhle prvky posuvníky a hned vidíte, jak se mění výsledek pro všechny čtyři kombinace dvou vstupů, i to, jak se posouvá rozhodovací hranice v grafu.
Proč AND, OR a NAND jdou snadno, a co se mění se záporem
U AND stačí kladné váhy a práh nastavený tak, aby ho porazil až součet obou vah dohromady, ne žádná z nich zvlášť. U OR je logika opačná: práh je nižší, takže ho porazí i jediná aktivní váha. Obě funkce mají jedno společné, množina bodů, které mají dát výstup 1, jde oddělit od zbytku jednou přímkou. Přesně to je podmínka, kterou musí splnit každá funkce, kterou jeden neuron vůbec dokáže spočítat.
Se zápornými váhami se otevírá další skupina funkcí. NAND, NOR nebo negace jednoho vstupu fungují na principu, že aktivní vstup součet naopak snižuje. Nejde o žádný speciální trik, jen o to, že váha může být i menší než nula, a neuron se tím chová jako logický obrat toho, co dělal s kladnou váhou. Zajímavější jsou asymetrické případy jako logická implikace „pokud vstup 1, pak vstup 2“, kde je výstup nepravdivý jen v jediné ze čtyř kombinací. I ta se dá jedním neuronem spočítat, jen vyžaduje o něco přesnější kombinaci kladné a záporné váhy, a je to poslední zastávka před tím, než hra narazí na skutečný matematický strop.
Kde je limit, a proč na něm záleží
XOR má vrátit 1 přesně tehdy, když se vstupy liší. V grafu leží cílové body (0,0) a (1,1) na jedné úhlopříčce čtverce vstupů, (0,1) a (1,0) na druhé. Jeden neuron umí rozdělit rovinu jedinou přímkou, a žádná přímka nedokáže oddělit jednu úhlopříčku čtverce od druhé, ať ji nakloníte nebo posunete jakkoli. Matematici tomu říkají, že XOR není lineárně separabilní, a je to jediný typ omezení, který jeden neuron má: nejde o nedostatek dat ani o špatně zvolený práh, je to geometrická vlastnost úlohy samotné.
Tenhle limit popsali formálně Marvin Minsky a Seymour Papert v knize Perceptrons z roku 1969, a jejich práce na dlouho zpomalila zájem o neuronové sítě, právě proto, že limit vypadal jako zásadní strop celého přístupu. Řešení bylo přitom jednoduché, i když ne pro jeden neuron: druhá (skrytá) vrstva, která kombinuje výstupy víc neuronů, dokáže poskládat zakřivenou nebo rozlomenou hranici, kterou jedna přímka nikdy nenakreslí. Přesně tímhle způsobem se z jednotlivých neuronů, které samy o sobě umí jen přímku, staví sítě schopné mnohem složitějších rozhodnutí.
Co z toho plyne, když nakupujete nebo řídíte AI projekt
Praktický důsledek pro firmu, která AI nakupuje nebo si ji nechává postavit, není v tom, že by musela počítat vážené součty. Je v tom, že rozumí, na čem model stojí, když se objeví tvrzení jako „model to prostě neumí rozlišit“. Často to neznamená chybu v datech ani špatně zvolený algoritmus, ale to, že úloha vyžaduje víc vrstev, protože jeden lineární krok geometricky nestačí. Stejně tak rozumí tomu, proč „natrénovaný model“ neznamená nic tajemného: znamená to, že se algoritmicky upravily váhy a prahy podle dat, ne podle ruční úpravy člověka.
Velké jazykové modely jsou z výpočetního hlediska poskládané z miliard takových neuronů do desítek vrstev, s nelineárními aktivačními funkcemi místo ostrého prahu. Základní stavební kámen ale zůstává stejný jako v téhle hře: vážený součet vstupů porovnaný s hranicí. Kdo tuhle jednotku pochopí, má v ruce intuici, která se přenáší i na mnohem větší systémy, aniž by potřeboval jediný vzorec navíc.