Ximilar: Učíme stroje dívat se na svět jako lidi

Pojem strojové učení údajně zavedl průkopník umělé inteligence a počítačových her Arthur Samuel z IBM zhruba v roce 1959. O padesát let později začíná v Brně jiný příběh. Právě v roce 2009 totiž získal mezinárodní ocenění IBM Shared University Research Award nadnárodní projekt SAPIR řešený na FI MU. Ten se týkal takzvaného počítačového vidění a pracoval na něm i David Novák. S tímto úspěchem v zádech zakládá v roce 2017 firmu Ximilar, která zákazníkům z celé Evropy, USA nebo Brazílie pomáhá prostřednictvím strojového učení co nejlépe využít fotografie produktů, materiálů nebo třeba snímky z mikroskopu. Jak trénují svoji umělou inteligenci, v jakých oblastech je použitelná, nebo proč nechtějí investora zvenku, nám v rozhovoru prozradil právě David Novák.

V Ximilar sezaměřujete na módní e-shopy nebo srovnávače cen, pro které nabízíte rozpoznávání různých druhů oblečení. Jak to celé vlastně funguje?

V oblasti módy jsou vizuální vjemy klíčové, fashion e-commerce je proto naše nejsilnější oblast. Představte si, že se vám na nějakém velkém e-shopu líbí nějaké šaty. Základní systém, který nabízíme, automaticky najde vizuálně podobné alternativy.

Ve kterém e-shopu se s tím třeba můžeme setkat?

Naším největším klientem v této oblasti je módní katalog Glami, který sdružuje všechny možné světové značky na jednom místě. Naše novější aplikace jde pak ještě o krok dál. Složitější, než zpracovávat produktové fotografie, je pracovat s těmi reálnými.

V čem přesně?

Vysvětlím to na příkladu: na sociálních sítích nebo třeba na kamarádce vidíte šaty, které se vám líbí. Vyfotíte si je a náš systém vám dohledá na e-shopu šaty stejné nebo velmi podobné. V tomto případě je tedy vstupem běžná, nikoliv produktová, fotka. Trvalo nám několik let, než jsme dosáhli dostatečné přesnosti a kvality, aby byl náš systém takto aplikovatelný. V loňském roce ho v testovacím režimu nasadil Mall Group.

Zákazníky máte i z jiných oblastí: média, sociální sítě, výrobní firmy, medicína nebo biologie. Jak vaši technologii využívají tam?

V oblasti biologie máme tři projekty, na které jsme velmi hrdí, spočívající v rozpoznávání dat na snímcích z rentgenu a mikroskopů. S jednou nadnárodní korporací jsme společně vyvinuli systém, který umí rozpoznávat vlákna či bakterie, což se dá využívat třeba při ošetřování vody. Funguje to tak, že v oblasti, kde je složité se dostat k čisté vodě, naberete vzorek, vložíte ho do malého ručního mikroskopu, přiložíte telefon a vyfotíte snímek, který se pošle na náš cloud. Naše neuronové sítě zjistí, o jaké znečištění se jedná. Vy díky tomu zjistíte, jakým způsobem musíte vodu ošetřit, aby byla pitná.

Kromě vizuálního a podobnostní vyhledávání máte tedy ještě jednu technologii, která není o vyhledávání, ale o rozpoznávání, rozumím tomu správně?

Ano, je potřeba rozlišovat mezi vyhledáváním v kolekci dat – například fotografií – a rozpoznáváním nějakých vlastností nebo detekováním objektů na jedné fotografii. V roce 2018 jsme převzali značku Vize.ai a spolu s ní i její Machine Learning as a Service koncept. Naše webová aplikace nyní umožňuje komukoliv vytvořit a natrénovat si vlastní kategorizační nebo detekční model, který bude rozpoznávat specifické vlastnosti či prvky na fotografiích.

Z akademika podnikatelem

Když se ještě vrátíme o pár let zpátky, jak jste se vlastně z Fakulty informatiky Masarykovy univerzity dostal k podnikání?

Po dokončení doktorátu jsem se ještě několik let na univerzitě věnoval vědecké práci. Měl jsem to štěstí, že jsem se dostal do skupiny profesora Pavla Zezuly, která se zabývala velmi zajímavou oblastí zpracování dat, a sice právě podobnostním vyhledáváním. V roce 2009 jsme v rámci spolupráce na jednom nadnárodním projektu dostali od firmy IBM cenu, která měla velkou publicitu. A v tu chvíli nás začaly oslovovat firmy s tím, že by byla zajímavá aplikace našeho výzkumu v praxi. Od té doby mě čím dál více lákalo pracovat na podobných zajímavých problémech, ale vnímat je více z praktického než akademického úhlu pohledu.

Jak vlastně učíte umělé neuronové sítě přemýšlet? Je cílem naučit je to tak, jak to dělá člověk?

Pojďme začít od toho, jak se učí lidé. Díváte se kupříkladu na židli. Přestože jste nikdy v životě takovou židli neviděla, je vám jasné, že je to židle. Psychologové se shodují na tom, že koncept židle se v našem mozku skládá postupně díky tomu, že jsme v průběhu života viděli těch židlí mnoho. Malé dítě nemá v hlavě exaktní definici, že židle je kus nábytku, který stojí na zemi, může se na něm sedět a má většinou čtyři nohy, ale když takovou věc uvidí, ví, že je to židle.

Ten koncept tedy nemáme v hlavě nijak definovaný a pochopíme ho jen tím, že se opakovaně díváme na různé židle?

Přesně tak. A tím se dostáváme k podobnosti. Podle psychologů je koncept podobnosti v samém základu lidského vnímání a učení. Vidíte dva lidi. Intuitivně víte, že jsou si buď hodně podobní, méně podobní, anebo vůbec. Opět to není nic, co by nám někdo explicitně definoval, je to jen na základě naší zkušenosti – na základě toho, že jsme viděli spoustu příkladů více a méně podobných lidí. A úplně stejným způsobem učíme naše neuronové sítě, co je podobné a co ne. Ukážeme naší neuronové síti dvojice obrázků. Řekneme, že tyhle dva jsou si hodně podobné. Pak jí předložíme další a řekneme, že tyto si vůbec podobné nejsou. Samozřejmě to hodně zjednodušuji, ale pokud té síti ukážeme hodně obrázků, tak to pochopí. Pokud jí pak dáme k posouzení dvojici obrázků, které nikdy předtím neviděla, dokáže ten naučený koncept podobnosti použít správně a simulovat rozhodování člověka. Také si uvědomme, že existuje nepřeberné množství různých druhů podobnosti: jinak posuzujeme podobnost obličejů, obecných fotografií nebo specifických snímků z mikroskopu.

Kolik takových obrázků musíte své síti ukázat, aby to pochopila? Tisíce, statisíce, miliony?

Hodně záleží na typu problému, který se má pomocí strojového učení vyřešit, a na datech, která má klient k dispozici. Určitě se bavíme o tisících obrázků, desetitisíce jsou lepší, statisíce většinou zbytečné. Ve chvíli, kdy máme o daném případu více informací, dokážeme říct, jestli potřebujeme deset tisíc nebo padesát tisíc obrázků.

Chceme stavět finančně zdravou firmu bez investorů

Zákazníky máte od Japonska po Chile, přesto jste malá firma o deseti lidech. Neplánujete rozšiřovat tým?

Naším cílem není výrazný růst, nepředstavuji si, že nás bude za rok, za dva třeba třicet. Naopak jsem si ověřil, že v malém kompaktním týmu dobře motivovaných a schopných lidí se dá udělat byznys, který má celosvětový záběr. V roce 2017 jsme začínali s Michalem Lukáčem stavět firmu odspodu. Ani tehdy, ani dnes nemáme žádnou externí investici. Chceme vybudovat finančně zdravou firmu. V prvním roce jsme spolu se dvěma společníky (a později v pěti) do naší práce investovali spoustu času i přímo nějaké vlastní finanční prostředky. Zvykli jsme si na to, že si nemůžeme koupit nic, na co jsme si nevydělali. Od té doby rosteme asi o jednoho až dva lidi ročně.

V roce 2019 jste žádali o evropskou dotaci v rámci programu SME Instrument. Byli jste úspěšní z hlediska dosažených bodů, ale dotaci jste nakonec získali až od města Brna a kraje.

Ano, v roce 2019 bylo peněz v programu výrazně méně. Dostali jsme od Evropské unie takzvanou Seal of Excellence, což je takový krásný papír, který říká, že jsme šikovní, peníze bychom si zasloužili, ale bohužel nám žádné dát nemohou (smích). V tu chvíli nám moc pomohl Jihomoravský kraj a Brno, protože měli program SME Instrument Brno pro projekty se Seal of Excellence. Díky tomu jsme prošli jen krátkým výběrovým řízením a dostali jsme dotaci od města a kraje. Sice šlo o trochu nižší částku, projekt jsme ale mohli realizovat. A nyní jsme získali projekt od TAČR v programu TREND – Technologičtí lídři.

V čem konkrétně je vývoj strojového učení tak finančně náročný?

Fungujeme na principu Software as a Service, což znamená, že veškeré naše systémy běží na našem hardwaru, v našem cloudu. Zákazníci přistupují k tomuto softwaru přes aplikační rozhraní. Pošlou nějaký obrázek a náš systém jim vrátí informace o daném obrázku nebo třeba vizuálně podobné alternativy. Kolekce vizuálních dat od zákazníků jsou tedy uložené u nás, což je samo o sobě výzva.

To musí být poměrně náročné.

Nejdřív je potřeba vyvinout srdce systému – základní algoritmy a modely strojového učení. Aby celý systém fungoval spolehlivě, je třeba mít velmi profesionálně napsanou aplikační vrstvu, která musí zvládat i několik set dotazů přes aplikační rozhraní za vteřinu. Na naše servery jich za vteřinu chodí i 200–300. A nad aplikační vrstvou je třeba mít i velmi kvalitní grafické rozhraní, které musí být intuitivní a zároveň také dostatečně mocné.

Ještě před tím, než firma formálně vznikla, jste prošli i naším konzultačním programem. Jak vám to v začátcích pomohlo?

Na tu dobu vzpomínám moc rád. Pracovala s námi Hanka Šudáková, která nám velmi pomohla v několika rovinách. Ujasnit si, co vlastně chceme dělat a jaký to má potenciál, uvědomit si, co všechno je potřeba pro to, aby vznikala funkční firma. Definovat si, kdo jsou naši potenciální zákazníci, co budeme dělat, když první aplikační oblast nevyjde, a také jaké role je potřeba v rámci firmy pokrýt. Mně konkrétně Hanka otevřela oči třeba v tom, že je fajn, že všechny ty role nemusím a nemám zastávat já (smích). Na to jsem v začátcích nebyl zvyklý. V neposlední řadě jsme byli moc rádi, že jsme mohli sedět v coworku JICu a později si za velmi příjemných podmínek pronajmout kancelář. Po skončení programu jsme se účastnili mnoha různých akcí organizovaných JIC, které nám pomohly rozšířit síť kontaktů a najít další potenciální zákazníky. V neposlední řadě oceňuji práci lidí jako je Zuzana Hadašová nebo Markéta Filipenská, které nám pomáhají s projekty a dotacemi, které sice tvoří jen malou část našich příjmů, ale pomáhají nám posouvat se technologicky dál.

Příliš mnoho rozhodovacích pravomocí jako hrozba

Vy ke své práci využíváte umělou inteligenci – co si myslíte o jejím rychlém vývoji v průběhu posledních let?

Umělá inteligence je v dnešní době buzzword, který laici chápou ne vždy úplně správně. Využití umělé inteligence jde ve dvou liniích. První z nich je takzvaná strong AI. Ta je o snaze vyvinout nějakou umělou entitu, která bude inteligentní stejně jako člověk – nebo ještě víc. Svatým grálem těch, kteří na ní pracují, je tedy „centrální mozek lidstva", který za nás například vyvine léčbu rakoviny. To, čemu se věnujeme my, je takzvaná  week nebo narrow AI. Jde o učící se algoritmy inspirované tím, jak funguje lidský mozek – a to je všechno. Není tam tedy žádná možnost, kterou vídáme ve sci-fi filmech, kde si stroj uvědomí sám sebe a začne konat proti lidstvu. Vlastně mnohem přesnější a lepší termín je opravdu strojové učení.

Takže vzpoury strojů se bát nemusíme?

Osobně ze silné umělé inteligence strach nemám. Z čeho můžeme mít obavy – a už se to i reálně děje – je, že dáme příliš mnoho rozhodovacích pravomocí algoritmům využívajícím slabou umělou inteligenci. Nejvíc do očí bijící jsou případy, kdy automatizované zbraně udělají na základě vizuálního vyhodnocení situace nějaké rozhodnutí, tedy že na nějaké místo vystřelí raketu. Z takových využití AI mám opravdu strach. Myslím, že je potřeba se zamýšlet nad tím, jaké úkoly chceme na rozhodování umělé inteligence nechat, a jaké si ponecháme my jako lidé.

Co konkrétně vás napadá?

Velmi dobrý příklad jsou samořiditelná auta a věčné dilema, jak se takové auto zachová, když může dojít k nehodě. Tohle je otázka, kterou řidič nějak podvědomě, intuitivně vyřeší. Ještě nikdy se ale nikdo nemusel zamýšlet nad všemi důsledky takového rozhodnutí dopředu. S podobnými otázkami se teď budeme setkávat často a je třeba, abychom byli obezřetní.

Řešíte vy v rámci své práce něco, co by už nějak hraničilo s etikou?

Strojové učení a zpracování obrazu se samozřejmě v široké míře používá k rozpoznávání obličejů. My v této oblasti nejsme experti a nesnažíme se jimi stát. Stejně jako všichni sledujeme masivní zneužívání těchto technologií represivními složkami v autoritativních režimech v Číně a v poslední době také například v Rusku. Ve firmě jsme si proto vědomě a nahlas řekli, že rozpoznávání obličejů je oblast, kterou se zabývat nebudeme. Rádi naopak jdeme cestami, ve kterých vidíme smysl, a které nám dělají radost.

Jako třeba?

Třeba právě zmiňovaná úprava vody nám dává velký smysl. Stejně tak práce s RTG snímky nebo chytrá řešení pro průmysl, která zjednodušují lidem práci. Když narazíme na nějakou zajímavou aplikační oblast, vrhneme se do ní po hlavě a jsme schopni využít naše zkušenosti a technologické podhoubí a vyvinout v krátkém čase velmi kvalitní řešení pro  jasně zacílenou aplikaci. To se stává a nás to těší. Uvidíme, co přinese budoucnost.