Od doporučovacích algoritmů Netflixu přes rozpoznávání obličeje v mobilu až po medicínský diagnostický software, strojové učení proniklo do každodenního života. V článku ukazujeme, jak se liší od klasického programování, jakým způsobem se počítače učí z dat, jaké jsou hlavní typy učení a proč je kvalita dat i vysvětlitelnost výsledků stejně důležitá jako samotná přesnost.
Umělá inteligence je široký pojem, ale většina moderních systémů, které označujeme jako AI, ve skutečnosti využívá strojové učení. Ať už sledujete doporučené filmy na Netflixu, komunikujete s chatbotem v e-shopu, nebo vám telefon rozpozná obličej, za tím vším je algoritmus, který se učil z obrovského množství dat. Jak vysvětluje MIT Sloan, právě strojové učení je dnes již kritickým způsobem, jak se většina AI systémů vyvíjí.
Základní myšlenka je přitom relativně jednoduchá. Místo toho, aby programátoři počítači přesně řekli, co má dělat, nechají ho, aby se to naučil sám z příkladů. To je zásadní rozdíl oproti klasickému programování, kde se každý krok musí ručně definovat. U strojového učení je naopak cílem vytvořit model, který se dokáže přizpůsobit novým situacím a rozhodovat na základě toho, co už dříve viděl.
Strojové učení je tedy spíš jako školení zaměstnance než psaní návodu pro stroj. Nepíšeme konkrétní pravidla, ale poskytujeme data a zpětnou vazbu. Počítač pak zkouší najít vlastní postupy, jak dojít ke správným výsledkům.
Každý systém strojového učení začíná u dat. Těmi může být prakticky cokoliv – texty, čísla, obrázky, zvuk, video, ale třeba i záznamy z čidel nebo transakce z bankovního účtu. Tato data se nejprve zpracují do podoby, se kterou může algoritmus pracovat. Často je nutné je očistit od chyb, sjednotit formát nebo rozdělit na jednotlivé části. V této fázi se také rozhoduje, která data použijeme k trénování modelu a která si necháme na pozdější ověření výsledků.
Následuje volba vhodného modelu. To je vlastně matematický nástroj, který se bude na datech učit rozpoznávat vzory. Někdy si vystačíme s jednoduchými statistickými metodami, jindy je potřeba složitějších neuronových sítí s mnoha vrstvami. V takovém případě mluvíme o hlubokém učení neboli deep learningu. Právě tento přístup stojí za většinou dnešních pokročilých AI systémů od samořiditelných aut až po generativní modely typu ChatGPT. Model se při trénování učí „hádat“ správné odpovědi na základě předchozích příkladů a postupně si ladí svůj vnitřní systém tak, aby se v těchto odhadech zlepšoval.
Během trénování se tedy stroj učí, jak z daných vstupů dojít ke správnému výstupu. Pokud například rozpoznává zvířata na fotografiích, na začátku netuší, co dělá psa psem. Ale s každou další fotkou, kterou vidí, a se správnou odpovědí, kterou dostane, si upravuje vlastní vnitřní představu o tom, co je pro psa typické. Po několika tisících opakováních už dokáže rozpoznat psa i na nové fotografii, kterou dosud neviděl.
Výsledný model pak testujeme na dříve neviděných datech, abychom zjistili, jak dobře generalizuje. Pokud dosahuje dostatečné přesnosti, může být nasazen do provozu, ať už ve formě doporučovacího algoritmu, diagnostického nástroje nebo třeba řízení robotického ramene ve výrobě.
Podle toho, jakým způsobem s daty pracujeme, rozlišujeme tři hlavní přístupy ke strojovému učení.
Výčet oblastí, kde strojové učení nachází využití, je téměř nekonečný. V e-commerce doporučuje produkty podle předchozího chování zákazníků. Ve zdravotnictví pomáhá analyzovat snímky z magnetické rezonance nebo předpovídat riziko nemocí. V bankovnictví odhaluje podvodné transakce a hodnotí úvěrovou bonitu klientů. Ve výrobě predikuje poruchy strojů na základě dat ze senzorů a v podnikání všeobecně může třeba vyhodnocovat a navrhovat marketingové strategie dle hospodářských výsledků.
V běžném životě se s ním setkáváme třeba při používání mobilních aplikací, které rozpoznávají hlas nebo překládají cizí jazyk, u autonomních vozů, nebo na sociálních sítích, kde algoritmy rozhodují, jaké příspěvky uvidíme. Pochopitelně, že také nejznámější chatboti jako ChatGPT, Gemini nebo Copilot jsou také založeni na strojovém učení a tréninku na miliardách vstupních dat.
Přestože jsou výsledky strojového učení často působivé, technologie má své limity. Model se učí jen z toho, co mu dáme. Pokud jsou data neúplná, zkreslená nebo jinak problematická, model může přebírat lidské předsudky a reprodukovat je. Známé jsou případy, kdy algoritmus diskriminoval určité skupiny lidí při rozhodování o hypotékách, nebo upřednostňoval určité typy obsahu na základě náhodných korelací.
Problémem je i takzvaná neinterpretovatelnost modelu. U složitějších systémů, jako jsou hluboké neuronové sítě, je obtížné říct, proč model došel k určitému závěru. To je zvlášť citlivé v oblastech, kde je nutné umět rozhodnutí zpětně vysvětlit, jako například v medicíně nebo v soudním systému.
Další slabinou je náchylnost k manipulaci. Stačí drobná změna v datech, a model může udělat zásadní chybu. Například algoritmus, který měl rozpoznávat psy a kočky, označil psa za pštrosa, protože někdo upravil metadata fotografie.
V neposlední řadě platí, že ne každý problém je vhodný pro strojové učení. V mnoha firmách panuje tendence nasazovat AI tam, kde by postačil jednoduchý skript nebo lidské rozhodnutí. Odborníci proto často radí začínat u problému, ne u technologie. Nejprve je třeba vědět, co chci řešit, a teprve potom zvažovat, zda je strojové učení to správné řešení.
i
Mohlo by vás zajímat
Strojové učení je výkonný nástroj, který umožňuje počítačům učit se z dat, hledat vzory a dělat rozhodnutí bez explicitního programování. Má obrovský potenciál zlepšit efektivitu, kvalitu služeb i schopnost přizpůsobit se potřebám uživatelů. Zároveň ale přináší nová rizika, od předsudků až po špatné interpretace výsledků. Proto je důležité chápat nejen to, co strojové učení dokáže, ale i to, co nedokáže. A pokud se někdy setkáte s tím, že vám AI něco důležitého doporučuje, zamyslete se, z jakých dat asi vychází. Někdy to bude skvěle fungovat. A jindy vám nabídne čokoládový dort s kuřecím masem, jako to udělal jeden slavný experiment s generováním receptů.