Dobrý hostinský se od těch průměrných odlišuje v mnoha věcech, ale jednou z hlavních je to, že zná svého zákazníka. Ví o něm, kdy přichází a zda chce večeři s vínem nebo si jen přečíst noviny u kafe. Ví, zda rád poslouchá živý jazz nebo se radši dívá na hokej. Ví, kdo chce jedno pivo za večer a komu má bez ptaní nalít další. Podobně je tomu u dobrého hoteliéra nebo pekaře.

Dat je příliš

Jenže dnešní velké firmy jako Tesco, McDonald’s, nebo Potrefená husa mají tolik zákazníků, že je při nejlepší vůli nemůžou znát všechny. Mnohé organizace jako Česká televize, T-mobile nebo mBanka se se svými zákazníky často vůbec tváří v tvář nesetkají. Navíc nejde o rodinné podniky ale organizace s mnoha tisíci zaměstnanci, často v několika zemích s různými úvazky, a předávání osobních zkušeností se zákazníkem je tak poněkud složitější.

man-791049_1280

Firmy se proto snaží poznat své zákazníky jinými způsoby. Sbírají data o jejich chování prostřednictvím různých věrnostních karet, soutěží, dotazníků a people-metrů. Kromě toho se ale stále častěji dívají i na to, jak je lidé komentují na facebooku, co tweetnou na twitteru a co se o nich píše v různých online fórech. Na rozdíl od zákaznických karet se tak mohou dozvědět nejenom o názorech zákazníků svých, ale i o názorech zákazníků konkurence, nebo dokonce těch, kteří teprve zákazníci budou.

Jedna z věcí, se kterou se musí vypořádat, je množství dat. Před třiceti lety si stačilo zaplatit výstřižkovou službu a firma se dozvěděla o všem, co o ní bylo veřejně napsáno. S příchodem blogů a sociálních sítí, tedy takzvaného Webu 2.0, začalo množství existujících textů narůstat exponenciálně. Odhady se liší, ale není daleko od pravdy, když řekneme, že množstvi existujících dat se zdvojnásobuje každých pár let, čili že za následující dva tři roky shromáždíme více nových informacích než za celou dosavadní existenci lidstva. Americká analytická firma IDC odhaduje, že v roce 2020 bude na internetu přes 40 zetta bytů informací, čili 4 x 1022 bytů neboli 40 000 000 000 000 000 000 000 bytů. Pokud bychom takové množství informací nahráli na CD a položili všechna ta CD na sebe, mohli bychom spojit Zemi s Měsícem 160krát. Přitom celé dílo Shakespeara se na jediné CD vejde 350krát.

Samozřejmě většinu příspěvků na facebooku a diskuzních fórech nepsal ani Shakespeare ani Božena Němcová. A to je taky jeden z problémů současné informační exploze – naprostá většina dostupných textů je prakticky bezcenná. V této bezcenné kupě se ovšem často skrývá důležitá informace. Vzhledem k množství dat ji ovšem nejde běžnými prostředky najít.

A právě proto se v poslední době začal velkou rychlostí rozvíjet obor textové analytiky. Americký časopis Time o ní mluvil jako o možné další „velké věci v roce 2012, The Economist mluví o zlaté žíle. Do textové analytiky investují firmy od gigantů jako je Google, Microsoft a Facebook až po startupy ve Skandinávii. Po celém světě se také zpracováním jazyka zabývají stovky univerzit, od Stanfordu přes MIT až po Karlovu a Masarykovu univerzitu. A pak jsou tu samozřejmě armáda a tajné služby. Pojdmě se ale podívat trochu do historie.

Historie zpracování jazyka

Zpracováním jazyka se zaobírá věda nazývaná počítačová lingvistika nebo též strojové zpracování jazyka. Většinou se používá zkratka NLP z anglického Natural Language Processing. Využití NLP pro analýzu dat například ve firmách se potom říká textová analytika.

book-926095_12801

V programátorsko-manažerské hantýrce se textům říká nestrukturovaná data. Tím se mají odlišit od strukturovaných dat uložených ve sloupečcích různých databází. Striktně vzato je to samozřejmě nesmyslné pojmenování. Právě proto, že text strukturu má, mohou školy (často samoúčelně) zkoušet děti z toho, jestli jsou schopné udělat jazykový rozbor. Klidně by mohli analyzovat věty typu Včera mě internetové bankovnictví banky X skutečně vytočilo a výsledek zapisovat místo na tabuli do Excelu se sloupečky nadepsanými kdo, kdy, komu, co. Pojem nestrukturovaná data se používá, protože struktura informace není viditelná na první pohled – zatímco lidé rozumějí jazyku více méně automaticky a aniž by o tom přemýšleli, pro počítače je to mnohem složitější.

O počítačovém zpracování jazyka se zmiňoval již Alan Turing, anglický matematik, když navrhl test, pomocí kterého by se mohlo poznat, zda je počítač inteligentní. Dnes se tomuto testu říká Turingův test. Mimochodem Turing taky navrhl jeden z prvních modelů počítače a sehrál hlavní roli v prolomení německých válečných šifer. V padesátých letech pak následovala revoluce v jazykovědě způsobená americkým profesorem Noamem Chomskym, který ukázal, že jazyk lze analyzovat exaktně pomocí matematických struktur a pravidel, která jsou navíc v základu shodná pro všechny jazyky.

Velká část výzkumu v počítačovém zpracování jazyka byla financována armádou, jak v USA tak v Sovětském svazu. V roce 1954 přeložil systém vyvinutý společně firmou IBM a Georgetownskou univerzitou přes 60 ruských vět z ruštiny do angličtiny. Autoři systému byli natolik optimističtí, že tvrdili, že strojový překlad bude do tří až pěti let zvládnutý problém (na stránkách firmy IBM si lze přečíst původní tiskovou zprávu). Výsledky se ovšem nedostavily, nadšení vystřídala skepse a s ní přišel i konec masivních investic do výzkumu.

K významnějšímu pokroku došlo až během 80. let, kdy ovšem původní systémy s ručně psanými pravidly nahradily systémy statistické, které se samy učí. V populárním tisku se často mluví o neuronových sítích, ale systémů existuje více druhů. Často se jazyk například modeluje v algebraických prostorech o tisících dimenzí, které se různě deformují a promítají do jiných prostorů. Spočítání podobnosti významu dvou vět je pak do značné míry podobné spočítání vzdálenosti dvou měst na mapě.

Tyto systémy se učí z dat. Těch dat většinou potřebují hodně a navíc se „správnými odpověďmi“. Například běžný systém pro strojový překlad se „trénuje“ na statisících přeložených vět a frází. Podobně systém, který bude třídit emaily na stížnosti a dotazy potřebuje nejdříve „vidět“ stovky až tisíce emailů správně roztříděných.

Jak to (skoro) funguje

Představte si například systém pro monitoring zpráv, jakousi moderní výstřižkovou službu. Zákazník, třeba automobilka, bude chtít dostávat pravidelné zprávy o tom, co se na různých zpravodajských serverech, blogách, facebooku atd. píše o jejích autech i autech konkurence. Takový systém bude používat neustále aktualizovanou databázi webů podobnou té, jakou používají vyhledávače jako Google nebo Seznam. Z té bude pravidelně čerpat nově publikované informace. U každé stránky pak bude muset rozpoznat jazyk a téma (zda jde o recenzi auta, nebo o recept na bábovku). Často bude text třeba „vyčistit“, protože mnohé komentáře jsou psány ve spěchu, obsahují chyby, jsou bez diakritiky, atd. Taky je třeba odstranit reklamy, odkazy na jiné články atd. Z videa je třeba získat obsah pomocí systému pro rozpoznávání řeči. Pak se v textu naleznou jména produktů, firem, osob, atd. a vztahy mezi nimi (Sylvester Stallone přijel ve svém mercedesu). Podobně je důležité, jak se text o těchto produktech a firmách vyjadřuje, takzvaný sentiment. To je samozřejmě jednodušší u krátkého tweetu než u několikastránkového rozhovoru. Taky je důležité vědět, že článek se pochvalně vyjadřuje o akceleraci a vybavení, ale negativně o ceně a spotřebě. A tak dále.

Kromě analýzy jednotlivých stránek je pak třeba taky analyzovat všechny jako celek: zobrazit celkové statistiky, identifikovat nová nosná témata, trendy (spolehlivost je na francouzském facebooku vnímána lépe než před rokem, ale na anglickém hůře). No a vše je třeba správně zobrazit, aby tomu zákazník rozuměl, a aby mu to pomohlo lépe dělat jeho práci, v tomto případě lépe vyrábět a prodávat auta.

Takovýto systém, který by plně automaticky a spolehlivě fungoval napříč tématy a jazyky, je stále ještě hudbou budoucnosti, ale mnohé jeho části jsou dostupné již dnes. Například každý si může vyzkoušet analýzu jednotlivých dokumentů pomocí IBM Watson pro angličtinu. Většina lidí si asi taky všimla, že když hledáme na anglickém Googlu použitá auta pomocí dotazu „used vehecles“, tak Google opraví překlep a navrhne hledání správného „used vehicles“, najde i stránky, kde bude „vehicle“ jen v jednotném čísle, a hlavně najde i stránky, kde se bude místo „vehicle“ používat běžnější „car“. Podobně třeba youtube umí automaticky přidat titulky k anglickým filmům.

 

Jak to bylo dál? Těšte se na další díl Textového zlatokopectví! 🙂