Robert Važan

Programovanie umelej inteligencie pre deti

Umelá inteligencia, neurónové siete a hlboké učenie sú témy prekvapivo prístupné deťom. Nemusíte sa venovať matematickej stránke veci a ak aj áno, nie je to také zložité.

Najlepším spôsobom, ako vysvetliť, čo je umelá inteligencia, je poskytnúť veľa praktických príkladov, ktoré si deti môžu vyskúšať samy: Google prekladač, ChatGPT, asistenti podobní Alexe, Socratic, DALL-E, prevod hlasu na text na akomkoľvek telefóne, Google Lens a malé praktické nástroje ako odstránenie pozadia alebo super-rozlíšenie obrázkov (super-resolution).

Ako tak prezentujete príklady, naskytá sa vám príležitosť porovnať špecializovanú (narrow) a všeobecnú (general) umelú inteligenciu (ktorá už existuje). Môžete vysvetliť, že umelá inteligencia, ktorá sa učí z príkladov, prekonáva obmedzenia algoritmických programov (t.j. takých pozostávajúcich z podmienok, slučiek a funkcií).

Potom môžete pokračovať s jednoduchými nástrojmi špeciálne navrhnutými pre deti:

Vysvetliť, ako umelá inteligencia funguje, je o niečo náročnejšie, no až také ťažké to nie je. Všetky moderné implementácie umelej inteligencie sú neurónové siete a neurón v nich je len vážený súčet vstupov porovnaný s limitom. Môj obľúbený príklad je neurón, ktorý určuje, či má pacient COVID. Všetky vstupy predstavujú dostupné fakty kódované ako logické nuly a jednotky. Stačí vybrať váhy. Napríklad pozitívny test PCR by mal veľmi vysokú váhu. Menej spoľahlivý antigénový test by mal nižšiu váhu. Všeobecné príznaky ako horúčka a bolesť hlavy by mali ešte nižšiu váhu. Niektoré váhy môžu byť negatívne, napríklad pozitívny test na chrípku alebo zajtrajší test z dejepisu :)

Potom môžete vysvetliť, že cieľom učenia v neurónovej sieti je automatické odvodenie váh z množstva príkladov, ktoré pochádzajú od odborníkov (v tomto prípade lekárov). Potom môžete vysvetliť náhodný a gradientový zostup nakreslením nejakých 1D a 2D pohorí a simuláciou oboch algoritmov na nich.

Architektúra neurónových sietí môže byť dosť odstrašujúca, ale nie je potrebné ju podrobne rozoberať. Trik je v tom, že neurónové siete budú fungovať správne a s určitou základnou úrovňou presnosti bez ohľadu na to, ako ich štruktúrujete. Môžete začať s obyčajným viacvrstvovým perceptronom a dosiahnete uspokojivé výsledky. Sieťové architektúry sú relevantné len vtedy, keď chcete vytvoriť najlepší model na svete pre danú úlohu. Môžete vysvetliť niektoré základné stavebné bloky neurónových sietí (vektory, matice, aktivačné funkcie) a povzbudiť deti k experimentovaniu s architektúrou. Vektory budú ľahšie pochopiteľné, ak vysvetlíte, ako sa do nich mapujú obrázky a klasifikačné triedy (a možno aj zvuky a slová).

Nakoniec môžete spomenúť, že v súčasnosti existujú tisíce nástrojov a databáz, ktoré výrazne uľahčujú trénovanie nových modelov. Deťom sa uľaví, keď budú počuť, že pomocou týchto nástrojov môžete vytvoriť decentnú špecializovanú umelú inteligenciu na niekoľkých riadkoch Pythonu.