Obecný úvod do umělé inteligence — kapitola 7

Bez dat by to nešlo

Obrázek v hlavičce byl vygenerován programem Midjourney. Prompt: Hundreds of wires strung between columns of smoke, data

Algoritmy strojového učení vyžadují velké soubory dat, ze kterých se učí řešit problémy a kterými testujeme jejich úspěšnost. Jaká data potřebují a proč? Odkud se berou? A jak poznáme dobrá data od špatných? To probereme v této kapitole.

Proč potřebujeme data?

Systémy umělé inteligence jsou přímo závislé na datech, které jsou jim poskytnuty. Metody strojového učení potřebují ke svému fungování datové sady, na kterých se nejen učí, ale také testují. Dostupnost dat má tedy zásadní vliv na jejich výslednou kvalitu. Strojové učení hledá vzorce v nesmírném množství dat a snaží se v nich nacházet smysl.

Typy dat

Než se podíváme na některé typy dat používaných při vývoji AI systémů, je důležité si říct o dvou formách, ve kterých se mohou data obecně nacházet — strukturovaná a nestrukturovaná.

Strukturovaná data jsou ta, která zapadají do předem definované struktury, tj. jsou převedena do formátu, který odpovídá vstupům modelu. Strukturovaná data jsou jednoduše organizovaná, což usnadňuje jejich analýzu. Příkladem může být tabulka pacientů a příznaků, které vykazují, a odpovídajících diagnóz.

Naopak nestrukturovaná data nejsou organizována podle žádného již existujícího systému. Mohou mít podobu obrázků, videí, textu a zvuku a je časově náročné je analyzovat. Technický pokrok v oblasti strojového učení úzce souvisí s rostoucí dostupností dat, nicméně naše schopnost data shromažďovat není úměrná naší schopnosti je analyzovat.

Jednou z možností, jak přinést pochopení a smysl z nestrukturovaných dat je učení bez učitele rozvedené v kapitole o strojovém učení. Příkladem takových dat může být například „slepenec“ všech textů volně dostupných na české Wikipedii, ze kterého se mnoho dnešních jazykových modelů učí porozumět češtině.

Další dělení typů dat

Různé systémy umělé inteligence a různé techniky strojového učení vyžadují různé typy dat. Pokud vytváříme například systém na doporučování zboží v internetovém obchodě (prediktivní analýza), trénovací sada bude obsahovat data o proklicích uživatelů na webu (tzv. historická data). Naopak systém pro odhalování podvodů v bance (detekce anomálií) může obsahovat třeba seznam transakcí na zablokovaných účtech.

Data můžeme roztřídit do nepřeberného množství různých kategorií, například podle toho, jakou mají formu — jestli jsou textová, obrazová nebo zvuková. Můžeme také rozlišovat odkud data pocházejí — jestli je ručně vytvořil člověk (příspěvek na internetovém fóru) nebo byla získána pozorováním (aktivace polohy na mobilních zařízeních). Kategorií je opravdu mnoho.

V případě, že nemáme pro daný úkol k dispozici dostatek dat vytvořených lidmi, umíme si je vytvořit uměle. Syntetická data jsou zcela nebo částečně uměle vytvořena. Takže nezaznamenávají jevy reálného světa, ale jeho simulace. Učíme-li například model rozpoznávat zvířata na nedostatečném množství fotografií, můžeme velikost dat zdvojnásobit přidáním zrcadlové kopie každé z fotek.

Anotace dat

Anotace, neboli označování dat, je klíčovou součástí přípravy trénování modelu při učení s učitelem. Modelům strojového učení jsou během trénování ukazována vstupní data (například obrázky ptáků), společně s informací o požadovaném výstupu (obrázkům jsou přiřazovány informace, například názvy druhů ptáků). Model se tak naučí, které vstupy patří ke kterým výstupům.

Po natrénování díky tomu dokáže reagovat na vstupy, které nikdy předtím neviděl, na základě jejich podobností.
Aby učení s učitelem fungovalo a dělalo správná rozhodnutí, potřebujeme anotovanou sadu dat, ze které se model může učit.

Označování dat typicky začíná tím, že lidé roztřídí neoznačená data, například manuálním označením všech obrázků v datové sadě, které obsahují fotografie ptáků.

Formát anotace může být velmi jednoduchý (ano/ne), i velmi podrobný (např. identifikace pixelů na fotografii). Model strojového učení se na základě těchto dat během trénování naučí základní vzorce v lidském rozhodování. Výsledkem je natrénovaný model, který lze použít k předpovědi nových dat.

Vytváření anotovaných dat je časově (a mnohdy finančně) náročný proces, při kterém je přiřazován smysluplný a informativní „štítek“ každému datovému příkladu, aby se z něj model strojového učení mohl učit.

Trénovací, validační a testovací sada dat

Když máme data správně anotována, je třeba je rozdělit do tří částí — na trénovací, validační a testovací sadu dat.

Největší soubor obvykle tvoří trénovací data, ta slouží k tomu, aby se v nich umělá inteligence naučila najít opakující se vzorce použitelné k určení správného výsledku. Trénovací data má systém plně k dispozici (včetně anotací), zatímco validační a testovací data jsou mu skryta.​

V přestávkách mezi trénováním přichází na řadu validační data pro „ladění“ systému. Validační data by neměla obsahovat stejné vzorky jako data trénovací. Validace modelu nám totiž říká, jestli se model doopravdy naučil danou úlohu řešit, nebo zná jen zpaměti anotace všech dat (podobným případům v oboru říkáme „přeučení“ — overfitting).

Po natrénování modelu a výběru nejlepšího řešení pomocí validace přichází testovací fáze. Pomocí testovací sady dat (která opět neobsahuje vzorky použité pro trénování ani pro validaci), pak odhadujeme, jaké úspěšnosti dosahuje výsledný model v reálném světě. Například jako procento odpovědí modelu shodných s naší anotací.

Jak vypadají ta správná data pro AI

Pokud se jedná o data, kvantita nemusí nutně odpovídat kvalitě. Nejdůležitější je, aby byla data dostupná, spolehlivá, reprezentativní a na správné úrovni detailů. Jedním z problémů, kterému se v poslední době věnuje velká pozornost, je předpojatost dat (viz následující kapitola Proč umělá inteligence diskriminuje).

Aby se systém umělé inteligence choval férově a nediskriminoval, je nutné mít nezaujatá data. Proto je důležité data i techniky jejich sběru pravidelně kontrolovat. Model při svém trénování nerozezná nepřesnosti, myšlenkové zkratky a předsudky v datech, ale zvýší-li to jeho úspěšnost, přijme je za své.

Autor textu: Marta Slepánková
Editoři: Herbert Ullrich, Vojtěch Jindra
Odborní garanti: Pavel Kordík, Jiří Materna, Antonín Král
Datum poslední revize: 09/22

Máte dotaz nebo hledáte podporu? Zeptejte se komunity či správců v naší FB skupině.

Pilotní vzdělávací program Umělá inteligence do základních škol 2022/23 realizuje Pražský inovační institut
v rámci projektu iKAP II — Inovace ve vzdělávání. Registrační číslo: CZ.02.3.68/0.0/0.0/19_078/0021106.

AI dětem © 2022. Využíváme cookies pro měření návštěvnosti webu.
Všechny vznikající metodiky podléhají licence Creative Commons 4.0 Mezinárodní Licence

Licence Creative Commons