„Studentka Matematicko-fyzikální fakulty se ráda dobře obléká a samozřejmě k tomu využívá i nové metody umělé inteligence,“ představuje Iveta Mrázová, vedoucí katedry teoretické informatiky a matematické logiky MFF UK, počítačový program, jenž dokáže ze vzorků kousků oblečení či individuálního šatníku navrhnout elegantní outfit. Vytvořila ho její bývalá studentka Monika Švaralová, jež od loňska působí v pobočce Googlu v Curychu. Iveta Mrázová popisuje, jak s těmito nástroji pracovat při výuce a kde všude je mohou absolventi využít v praxi.
Dokáže program vytvořit lepší kombinaci oblečení, než bychom vymysleli ráno před zrcadlem?
Přesně to je jeho cílem. Představte si, jak složitě byste sama vytvářela varianty outfitů i s velmi minimalistickou verzí šatníku o dvou tričkách, halence, svetříku, jedněch kalhotách a dvou sukních, dvou párech bot, batůžku a kabelce. Dohromady byste musela vyzkoušet osmačtyřicet různých outfitů, což je v praxi nereálné. Právě tady nám mohou pomoci nové metody umělé inteligence, v našem případě zejména neuronové sítě a genetické algoritmy.
Genetické algoritmy fungují na principu DNA?
Ano, dovedou kousky oblečení různě křížit – vyměnit například kabelku nebo sukni. Umělá inteligence není tak geniální, že by měla vlastní vkus. Ale dokáže se ho naučit. K tomu je zapotřebí mít takzvanou trénovací množinu ohodnocených vzorků – kladně, záporně či stupnicí, na jejímž základě si daný model, v našem případě neuronová síť, přizpůsobí své parametry. Naučená neuronová síť pak dokáže ohodnotit, jak by se zvolený outfit sestavený z databáze jednotlivých kousků oblečení mohl líbit, případně umí navrhnout jeho dokonalejší obměnu.
Poprvé jsem se setkala s problematikou umělé inteligence a neuronovými sítěmi v bakalářském studiu a začala jsem uvažovat nad novými možnostmi aplikace s využitím dostupných dat - například právě v oblasti módy, kde lidé v současnosti generují jejich obrovské množství na sociálních sítích a blozích. Zároveň mě už delší dobu zajímal minimalismus v oblékání, na který lze pohlížet jako na optimalizační problém (minimalistický šatník a z něj vytvořeno maximum kombinací, jež by odpovídaly osobnímu stylu). Navrhla jsem téma diplomové práce paní Mrázové, kterou rovněž zaujalo. Pokusily jsme se vytvořit program, který by dokázal kombinovat oblečení z virtuálního šatníku do stylového outfitu. Problém osobního stylu, kterým jsme se zabývaly, je velmi subjektivní záležitost. Zakládá se na malých detailech, a proto je poměrně těžké naučit toto neuronovou síť rozlišovat. Zároveň nebyl tento problém téměř vůbec prozkoumán. Nakonec se to podařilo a náš program dokázal vygenerovat pěkné a nositelné outfity. Práce na tomto projektu mi potvrdila, že strojové učení je fascinující oblast, jež se velmi ubírá kupředu, a stojí zato vymýšlet mnoho dalších aplikací, které lze využít v praxi.
Mgr. Monika Švaralová vystudovala aplikovanou informatiku na Univerzitě Komenského v Bratislavě a už při studiu se věnovala vývoji webových aplikací a web designu. Brzy se rozhodla zaměřit na oblast umělé inteligence a strojového učení a absolvovala magisterské studium na MFF UK. Poslední rok pracuje jako softwarová inženýrka v Google-YouTube v Curychu, kde se věnuje problematice strojového učení a jeho využití pro klasifikaci videí v YouTube. |
Jak přesně umělá neuronová síť pracuje?
Skládá se z takzvaných formálních neuronů, které jsou navzájem hustě propojené a fungují na principech, jež lze najít v biologických neuronových sítích. K jejich hlavním přednostem patří schopnost učit se a naučené znalosti správně zobecňovat. Učení v našem případě znamená nastavení parametrů neuronové sítě tak, aby ona sama dokázala správně odhadnout atraktivitu nově vygenerovaných outfitů, které nikdy předtím neviděla. Obecný model neuronové sítě je znám již zhruba padesát let. Tehdy ovšem nebyly k dispozici ani teoretické, ani technické prostředky, které by v reálném čase byly schopné naučit neuronovou síť požadované znalosti z větších sad předem ohodnocených vzorků. To se změnilo až před pár lety s podporou nadnárodních výzkumných programů a s rozvojem velkých internetových firem, jimž dávají potřebná data k dispozici uživatelé sami.
Neuronová síť pak čerpá z těchto informací, které jsou často volně dostupné, a vytváří z nich ohodnocené vzorky pro svou vlastní trénovací množinu.
Konvoluční neuronové sítě, které se aktuálně používají k analýze obrazových dat, ani nepotřebují nějak složitě zjišťovat charakteristické rysy zpracovávaných objektů. V roce 2011 probíhala v USA programovací soutěž v tom, jak naučit auta rozpoznávat dopravní značky. Trénovací množinou byla právě databáze desetitisíců jejich vzorků / obrázků. Konvoluční neuronovou síť se tehdy podařilo naučit pracovat tak, že překonala lidský mozek.
Nebylo tedy třeba do programu manuálně zadávat příznaky typu toto je kolečko, toto trojúhelník?
Modely neuronových sítí se to dovedou naučit samy, a přestože jim to déle trvá, je to ve výsledku mnohem výhodnější, protože specifikovat třeba u oblečení, zda se bude jednotlivý outfit někomu líbit, či ne, je velice těžká subjektivní úloha. Navíc navrhnout správný příznak se může zdát jednoduché, ale ve skutečnosti se za ním skrývá spousta zádrhelů. Mohu uvést příklad z robotické soutěže, jež probíhala před pár lety v parku Stromovka. Soutěžící týmy robotiků měly naprogramovat dva roboty, jež měli do cíle odvézt určitý nálad – v tomto případě sud piva. Jeden robot byl malý a inteligentní, takže cestu do cíle zvládl najít, jenže kvůli své konstituci nedokázal převézt náklad. Naopak jeho společník byl velký, takže sud piva uvezl, ale zase nevěděl kam.
Jak se problém vyřešil?
Jeden z týmů navrhl krásné řešení označkovat malého chytrého robota výraznou barvou, červeným tričkem, aby ho ten velký nepříliš chytrý dokázal rozpoznat a jel s nákladem za ním. Všechno dobře fungovalo, dokud se v parku nezačali objevovat reální lidé. Po Stromovce kráčely dvě slečny a jedna byla oblečena do trička svítivě červené barvy…
To snad ne!
Přesně tak, velký robot rázem zapomněl na malého a vyrazil za ní. Slečna se vyděsila a začala před robotem utíkat. Jenže robot byl naprogramován, aby udržoval stále stejnou vzdálenost, tudíž také zrychlil. Soutěžní tým na slečnu volal, aby si tričko svlékla…
Jak to dopadlo?
Dobře. Schovala se za kamarádku a velký robot s pivem vyrazil opět za svým menším kolegou, protože žádná jiná červená už v dohledu nebyla.
Je běžné, že vaši studenti vyvíjejí takto zábavné počítačové programy?
Toto byla veřejná soutěž, do níž se mohl přihlásit každý zájemce o robotiku. Ale pokud se vrátíme k projektu „Co nosí slečna matfyzák?“, pak ano. Studenti se chtějí věnovat úlohám, jež mají praktické využití. A vtipné či originální jsou právě proto, že je samotné práce na nich baví. Vedle návrhů outfitů vymýšlí například aplikace týkající se hudby, vaření, konkrétně se může jednat třeba o techniky určené pro analýzu nákupního košíku, kdy zjišťují, o jaké suroviny je v internetových obchodech největší zájem, respektive jaké ingredience si lidé pořizují v rámci jednoho nákupu.
Možná překvapivě toto téma láká spíš studenty-muže. Vedle toho se rádi věnují problematice spojené s automobilovým průmyslem, kdy shromažďují a analyzují třeba data o tom, jací lidé preferují a následně kupují určitý typ auta. Neuronové sítě lze ale uplatnit téměř v jakémkoli oboru od zdravotnictví přes sociologii, návrhy počítačových her až po opravdu specializované programy k zajištění bezpečnosti. Využívají jich banky, pojišťovny, mezinárodní instituce a podobně.
Doc. RNDr. Iveta Mrázová, CSc. |
Studovala na Univerzitě Friedricha Schillera v německé Jeně, dále působila v Ústavu informatiky AV ČR. Od roku 1992 vyučuje na MFF UK, nyní je zde vedoucí katedry teoretické informatiky a matematické logiky. „Je to skvělé, že se dívky začínají vracet na naši fakultu, protože absolventky Matfyzu mají skvělé uplatnění v praxi a do výuky vnáší ženský pohled na řešení problémů.“ Za svou práci ve vědě obdržela řadu ocenění, mimo jiné stipendium Fulbrightovy komise, výroční cenu Bolzanovy nadace či cenu prof. Babušky, již udílí Jednota českých matematiků a fyziků a Česká společnost pro mechaniku. |