ZEZULA: Musíme nalézat nové způsoby vyhledávání dat

Prof. Ing. Pavel Zezula, CSc. patří mezi přední světové odborníky v oblasti databázových systémů a takzvaného podobnostního vyhledávání, které také vyučuje na Fakultě informatiky. Dlouhodobě působil na řadě zahraničních univerzit a účastnil se více než dvaceti evropských výzkumných projektů. Citace jeho původních vědeckých prací se počítají v tisících. V minulých letech se mu podařilo spolu se spolupracovníky na katedře počítačových systémů a komunikací vydat první knihu na světě, která se zabývá podobnostním hledáním. Získal za ni také cenu rektora Masarykovy univerzity. V souvislosti s přelomovým projektem v oblasti vyhledávání dat nedávno jeho tým obdržel na návrh výzkumné laboratoře IBM v Haifě také prestižní cenu této společnosti.


Dnes jste známý, a to i ve světě, díky podobnostnímu vyhledávání. Dá se nějak jednoduše říct, o co se vlastně jedná?

Začnu trochu zeširoka, protože je to dost komplikovaná věc. Celou svoji profesní kariéru se zabývám zpracováním dat. V době, kdy jsem začínal, tedy koncem 60. let, byly počítače od toho, aby počítaly. Byla v nich uložená nějaká čísla a počítaly se různé algoritmy. Mě už tehdy fascinovalo, že se na počítačích kromě počítání s čísly začaly zpracovávat i další typy dat. To je věc, která nám dnes přijde úplně samozřejmá, ale nebylo tomu tak zdaleka od počátku.

Takže se dá říct, že vás fascinovalo, jak se svět postupně stává digitálním.
Dá se to tak říct. Ještě před nějakými dvaceti lety nikoho nenapadlo, že data na počítači mohou být něco jiného než číslo nebo řetězec. Nic jiného totiž počítače neuměly pořádně zpracovat a nepřipadalo nám to nijak zvláštní. Hudba, video a další takové věci byly prostě analogová záležitost. Dneska naopak máme pocit, že všechno má být digitální. Cokoliv dnes moderní člověk říká, slyší, vidí a čte, totiž je nebo alespoň může být digitální. Ze dvou datových typů – z čísla a řetězce – jsme se najednou dostali k potenciálně nekonečné množině.

Problém je v tom, jak data organizovat.
Přesně tak. Ta původní data se vždycky dala uspořádat. Ale nové datové typy jako třeba obrázky se obyčejně uspořádat nedají – nanejvýš nějakým podvojným způsobem. Můžete si svoje fotky seřadit třeba podle data anebo podle tématu. Ale to je pořád atributové hledisko, které můžete vyjádřit číslem, ale pomocí obsahu fotky uspořádat nejde. Neuděláte žádné uspořádání tak, aby vedle sebe byly vždycky ty nejpodobnější.

A je podobnost pro lidské přemýšlení tak důležité kritérium?
Velmi. Člověk uvažuje na základě podobnosti – když řešíte nějaký problém, hledáte, jak podobný problém řešil někdo před vámi. Tím, jak se zvětšuje množství datových typů, narůstá nám obrovským způsobem objem dat, ve kterých se potřebujeme orientovat, a nejlepší způsob, jak je porovnávat, je na základě nějaké formy podobnosti. Hlavní premisa tedy je, že podobnost je velmi důležitá.


Na podobnostním vyhledávání fungují i běžné vyhledávače, jako je třeba Google?
Ano, ale tyto vyhledávače fungují jen na úrovni psaného textu. Ve vývoji těchto technologií totiž došlo k zajímavému efektu. Podobnostní vyhledávání na úrovni textu se poměrně dobře zvládlo, ale u toho se zůstalo. Všimněte si, co třeba Google dělá při vyhledávání obrázků. On sice tvrdí, že pracuje s vyhledáváním obrázků, ale v podstatě prohledává text, který je k obrázku připojený.

roč se zaměřila pozornost zrovna směrem k psanému textu?
To je celkem logické. Vyhledávání pomocí textů přirozeného jazyka je pro člověka jednoznačně ta nejjednodušší věc. Lidé formulují své poznatky nejčastěji pomocí jazyka a velké množství informací je zaznamenáno tímto způsobem.

Pojďme tedy k původní otázce. Na jakém principu funguje podobnostní vyhledávání. Řekněme teď třeba na příkladu Googlu.
V podstatě všechna vyhledávání, ať už jde o Google nebo Seznam.cz nebo cokoliv jiného, pracují s takzvaným vektorovým modelem podobnosti. To znamená, že se udělá vektor, který může reprezentovat libovolné množství slov. Slova, která se objevují v konkrétním prohledávaném dokumentu, mají ve vektoru informaci, že tam jsou. Když se zjišťuje podobnost, tak se vlastně měří úhel mezi tím, co jste zadali pro vyhledávání, a dokumenty, které jsou k dispozici. Čím je úhel mezi vektory dotazu a dokumenty menší, tím jsou si podobnější.

Když dám ale pouze dvouslovný dotaz, výsledkem je ohromné množství podobných dokumentů.
To je ten problém. Zkušenost je, že uživatelé používají k vyjádření svého dotazu dvě až tři slova, což je neúměrně málo v porovnání s velikostí dokumentů, se kterými se dotaz srovnává. Takže vám vyhledávač najednou zjistí, že blízkých vektorů je ohromné množství. Vyhledávání probíhá třeba na miliardách stránek, takže pro váš jednoduchý dvouslovný dotaz se kvalifikují i miliony dokumentů.

Jak se řeší výběr z tak velkého množství výsledků?
Zatím jsme mluvili o měření takzvanou kosínovou vzdáleností, což není vynález Googlu, to se používá už dlouho. Úspěch Googlu spočívá v tom, že uměl indexovat velkou část světové sítě a uměl upřednostnit to, co bylo relevantní. To se jim povedlo zavedením takzvaného PageRank, který z těch desítek nebo milionů vektorů, které se kvalifikují, vystrčí dopředu několik vybraných. PageRank vychází z principu, že webové stránky na sebe různě odkazují – čím víc stránek na vaši stránku ukazuje a čím důležitější ta stránka je, tím větší PageRank tato stránka dostává. Takže Google dělá analýzu celé sítě, sleduje, jak kdo na koho ukazuje, a počítá PageRank jako jakousi míru důležitosti. Nepracuje ovšem s obsahem. Proto se vám třeba může stát to, že obsahově relevantnější stránka se může umístit ve výsledku níže, protože má třeba malý PageRank. Všeobecně to však funguje velmi dobře.

Ale vlastně se tímto způsobem obchází nedokonalost technologie?
V podstatě ano. Výhodou této technologie je ale fakt, že pro ni existuje velmi efektivní počítačová implementace. Jenže jak jsem naznačil, jakmile se pracuje s jinými typy dat, nastávají problémy.

Jaké jsou současné trendy ve vyhledávání?
Trendů je celá řada. Komerční firmy se snaží hodně maximalizovat využití existujících technologií. Oni samozřejmě vědí, že existuje digitální obrázek a digitální video, ale mají skvělé technologie na vyhledávání pomocí psaného textu, tak využívají toho. Když je u obrázků text, hledají podle něho a dále vyzývají uživatele, aby textem anotovali prohlížené fotografie. To je ale věc, která podle mě dlouhodobě fungovat nemůže.

Přiznejme si – kdo z nás píše popisky k fotografiím vystaveným na internetu?
Vyhledávání jiných typů dat za pomocí textu je tedy vlastně taková berlička, protože nejsou lepší technologie?
Určitě to nemyslím tak, že bych proti vyhledávání pomocí psaného textu něco měl. Na světě není vymyšleného nic lepšího k formalizovaní povšechné znalosti než přirozený jazyk. Ale jsou takové trendy, jako právě to, čím se zabýváme my na Fakultě informatiky. Totiž vyhledávání obrázků na základě obsahu. Představte si, že máte třeba obrázek delfína a chcete najít víc delfínů. Co dneska uděláte? Když máte u obrázků popsáno, že jsou to delfíni, tak celkem nemáte problém je najít současnými vyhledávači. To co děláme my, ale dokáže takové obrázky najít pomocí vašeho vstupního obrázku.

Jak takové vyhledávání obrázků funguje?
Z obrázku vyextrahujeme určité vlastnosti – třeba barevné spektrum, rozložení barev, tvarů, textury a tak podobně. Na základě takto analyzovaných vlastností pak program pro každý obrázek určí bod ve vícedimenzionálním prostoru. Problém podobnosti tím převedete do roviny, že hledáte, jak blízko leží v tom vašem prostoru obrázky vedle sebe. Čím blíž budou umístěné, tím podobnější si budou i obrázky. Pro náš příklad – čím blíž k sobě budou, tím pravděpodobnější bude, že je na těch dalších fotkách také delfín.

A funguje takové podobnostní hledání dostatečně spolehlivě?
Je problém, že vám to najde obrázky podobné z hlediska metriky. Když si kliknete, že chcete najít obrázek podobný třeba obrázku letícího ptáka vyfoceného proti modré obloze, tak vám to vyhledá nejen další ptáky na modrém pozadí, ale třeba taky letadla. Systém samozřejmě nemůže být schopen vidět ptáka – vidí určitou strukturu a rozložení barev. A letadlo se v takovém vidění ptákovi docela dost podobá.

Zní to trochu jako science fiction. Jak to, že ještě není takový systém rozšířený?
Dlouho neexistoval systém, který by dokázal něco takového spočítat dostatečně rychle – třeba tak rychle, jak běžně Google zpracuje váš dotaz. Jsou tu systémy, které pracují spolehlivě dejme tomu do milionu obrázků, což je směšné množství. My zatím pracujeme asi na padesáti milionech s dobou odezvy kolem půl vteřiny a v zásadě máme řešení, které je schopné pracovat do miliardy určitě.

Takže řešení už máte. Nezkoušeli jste ho třeba nabízet nějakým komerčním subjektům?
On je problém, že když chcete něco takového protlačit do praxe, musíte se dostat ke správným lidem a to je někdy dost obtížné. O tom bych ale nerad moc mluvil. Další obtíž je, že chování komerčních subjektů se řídí ziskem. Vybudovat nějakou takovou aplikaci a rozjet ji znamená velkou investici. A když se společnostem daří dobře s tím, co už mají, tak nemají moc důvod dělat něco nového. To máte třeba jako v automobilovém průmyslu. Automobilky samozřejmě mají k dispozici spoustu nových technologií, ale dokud nevidí, že se s něčím takovým chystá přijít konkurence nebo že na ně tlačí zákazníci, tak nebudou zbytečně investovat do inovací, když se ty staré věci stále dobře prodávají.

To je dost škoda.
Ale my nejsme žádní obchodníci. Nás to baví. Navíc to vypadá, že přece jenom nějakým způsobem prorazíme na veřejnost. Spolupracujeme s IBM a získali jsme od nich poměrně prestižní cenu Shared University Research, zkráceně SUR. Šlo o ocenění formou hardwaru, se kterým můžeme pracovat, ale hlavně IBM má zájem udělat z našeho systému veřejně dostupnou službu, kterou bude propagovat, aby se dostala do širšího povědomí.

Může mít vaše technologie i jiné využití než jen pro vyhledávání obrázků?
Ano a vidíme v tom velkou budoucnost našeho systému. V matematice existuje obrovská škála podobnostních funkcí, které jsou takzvaně metrické, a naše technologie, které říkáme MUFIN, je schopna pracovat s kteroukoliv z nich. Jedním nástrojem můžeme řešit velké množství problémů. Jdeme daleko čistší cestou, tedy ne tou, že pomocí jednoho modelu na vyhledávání textu se snažíte vyhledávat všechno možné včetně obrázků. Naše technologie funguje na libovolných datech porovnávaných metrickými funkcemi.

Jaké jsou konkrétní příklady takového využití?
Dá se to využít třeba v biologii pro hledání podobných DNA sekvencí. Nebo v oblasti biometrických měření – od porovnávání otisků prstů, stop a všemožných obrysů až po rozpoznávání obličejů. Lze pracovat s geografickými daty. Můžete systém využít jako software pro vyhledávání přebytečných kopií a na data cleaning – tedy odstraňování duplikátů. Můžete pracovat s audiovizuálními typy dat. Na to všechno můžete využít naši technologii v podstatě hned, když k ní připojíte vhodný doplňující software na extrakci potřebných vstupních dat a definujete způsob měření podobnosti. Musíme nalézat tyto nové způsoby vyhledávání dat, protože množství informací se stále nafukuje nejen co do objemu, ale také co do typů. Pokud by se pro každý typ dat měla budovat od začátku vlastní technologie, jako se to udělalo s psaným textem, bylo by to hrozně neefektivní a zdlouhavé.

Jaký máte vůbec vztah k počítačům? Spousta informatiků je ráda nemívá.
V zásadě mám počítače rád. Snažím se však striktně oddělovat svůj soukromý život a zaměstnání. Mám samozřejmě počítač i doma a pravidelně kontroluju poštu z domova. Pracovní úkoly, jako řízení projektů, organizace výzkumu, psaní článků, technických zpráv a podobně se snažím řešit na fakultě. Na druhé straně, domácí prostředí je pro mne ideální nejen pro relaxaci, ale i pro studium odborné literatury. Většina dobrých nápadů pak přichází při práci na zahradě, která je mým koníčkem.

Vy ale nejste člověk, který by moc odpočíval od práce.
Nejsem zrovna dobrý příklad (směje se). Nejméně takových patnáct let jsem neměl regulérní dovolenou a aspoň na těch pár hodin do práce vždycky zajdu. Mě totiž děsí už jenom to, že bych se týden nepodíval na mail. Třeba letošní prázdniny jsem v práci nebyl snad jenom jeden den.
Masarykova univerzita | Masaryk university