O strojovém učení jste toho jistě slyšeli hodně. V jádru tohoto konceptu spočívá schopnost počítačů učit se ze zkušeností a zdokonalovat své výkony bez explicitního programování. Jak ale funguje a jaké jsou jeho typy?
Bez strojového učení by bylo nutné naprogramovat každé pravidlo a každou odchylku od programu zvlášť, což by bylo značně zdlouhavé. Takto přitom byla AI vyvíjena ještě v 80. letech 20. století, kdy se mluvilo o tzv. expertních systémech. Avšak tato “kuchařková metoda”, kdy stroji manuálně zadáváme všechny pokyny, začíná být pracná už i při jednoduchém úkolu jako je rozpoznávání číslic. Většina pravidel, kterým my lidé automaticky rozumíme, by totiž nebyla dostatečně konkrétní. Nestačilo by např. říci, že osmička je “smyčka”, neboť každá osmička, na níž bychom narazili, by se svojí “smyčkovitostí” trochu lišila. V takový okamžik nastupuje na řadu strojové učení, které šikovně využívá statistiku či Baysovskou pravděpodobnost k automatičtějšímu rozpoznávání vzorců.
O Baysovské pravděpodobnosti jsme psali minule, nyní můžeme rychle zmínit jeden ze základních prvků statistiky, lineární regresi. Jistě jste již mnohokrát viděli karteziánskou soustavu souřadnic s rozptylem mnoha bodů (vstupních dat), přičemž středem těchto bodů vedla přímka, tedy lineární funkce. Právě schopnost spočítat ze získaných dat jednu definitivní přímku je práce lineární regrese. Jinými slovy, lineární regrese se snaží najít nejlepší přímku, která co nejlépe reprezentuje vztah mezi zadanými daty. Lineární regrese je velmi užitečná pro strojové učení, neboť nám umožňuje z množství vstupních dat (např. obrázků) klasifikovat určité vzory. Funkce používané hlubokým učením jsou samozřejmě mnohem komplikovanější než jednoduchá lineární regrese, přesto však v principu vychází ze stejného matematického základu, jak upozorňuje Elements of AI.
Strojové učení lze rozdělit do několika hlavních kategorií, z nichž každá nabízí jedinečné přístupy k řešení problémů. Učení pod dohledem (Supervised Learning) je přístup, při kterém je model trénován na označených datech. To znamená, že každý vstup do algoritmu je spojen s odpovídající označenou výstupní hodnotou. Model se poté učí identifikovat vzory a vztahy mezi vstupy a výstupy. Například při trénování modelu na obrázcích psů a koček by mu byly poskytnuty snímky označené jako „pes“ nebo „kočka“, a cílem je, aby model dokázal správně klasifikovat nové, neoznačené obrázky. Bohužel se někdy stává, že jsou podsunuté snímky v malém a nepříliš obecném množství, čímž je kapacita vzniklé AI pokřivena. Jedni vývojáři např. nechali rozlišovat AI rozdíl mezi ledními medvědy a vlky, ale zapomněli na fakt, že na žádném z poskytnutých snímků vlka se nevyskytoval vlk na sněhu, kvůlikvůly čemuž stroj označil toto zvíře v zasněžené krajině pokaždé jako mědvěda.
Takových chyb může vzniknout hodně, a i proto může být pro vědce lepší se uchýlit k učení bez dohledu, v němž algoritmus sám hledá vzory a seskupuje je do logických kategorií. Dalším přístupem je metoda zpětné vazby: Reinforcement Learning. V ní je model “odměňován” za pozitivní akce a trestán za negativní. Právě na základě reinforcement learningu vznikla většina dnešních velkých jazykových modelů, třebaže s jedním důležitým rozdílem. Po ukončení tréninku AI prochází cenzurováním nevhodného obsahu. Není bez zajímavosti, že k vytvoření bezpečnostního systému využívala společnost OpenAI externí pracovníky z Keni, kteří vydělávali méně než 2 dolary na hodinu, aby manuálně označovali nebezpečný obsah. Na kauzu upozornil časopis Time.
Tím jsme však jen lízli povrch strojového učení a metod, které využívá. Oblast má mnohem více co nabídnout a dobrým místem kde začít, je třeba bezplatný kurz Elements of AI, který se strojovým učením také zabývá.