Kapitola 2 Metody porovnávání dokumentů a dotazů
Transkript
97 Kapitola 2 Metody porovnávání dokumentů a dotazů založené na měření podobnosti V obecné teorii zpracování informačních fondů se hovoří o tom, že vyhledávání relevantních dokumentů je řešeno porovnáváním jejich selekčních obrazů se se lekčním obrazem informačního požadavku (dotazu). Přitom způsob tohoto po rovnávání není obvykle blíže specifikován. Může se požadovat rovnost selekčních obrazů, ale každý informační pracovník ví, že to není absolutně nezbytné. In formační pracovník totiž při rešeršní činnosti dokáže intuitivně posoudit, kdy selekční obraz dokumentu dostatečně odpovídá předpokládané potřebě zákaz níka. Nyní se dostáváme k otázce algoritmizace a automatizace této fáze práce s fondy. Porovnávání selekčního obrazu dotazu se selekčními obrazy dokumentů je v praxi téměř vždy podporováno určitou formou pořádání (třídění) těchto se lekčních obrazů. V „klasických" (neautomatizovaných) informačních fondech jde zejména o lístkové katalogy uspořádané podle různých kritérií (např. předmětový katalog). V automatizovaných informačních fondech vlastně úlohu těchto dato vých struktur nejčastěji přebírá indexový soubor vytvořený nad bází (primárních nebo sekundárních) dokumentů. V následující kapitole mimo jiné ukážeme, že i k tomuto způsobu řešení úlohy porovnávání (vyhledávání) existují alternativy. 2.1 Booleovský model vyhledávání a jeho rozsirem V běžných textových databázových systémech a plnotextových systémech, kde je vyhledávání založeno na indexových souborech a dotazovacích jazycích s lo gickými a kontextovými operátory, lze metodu porovnávání dotazu a dokumentů matematicky charakterizovat takto: dotaz představuje (v logickém důsledku, zpravidla ne zcela explicitně) několik alternativ selekčního obrazu, jemuž se musí KAPITOLA 98 2. METODY POROVNÁVÁNÍ . jistým způsobem exaktně rovnat (nebo jej pokrývat ) selekční obrazy hledaných dokumentů. Použijeme-li v dotaze mnohokrát operátor „nebo" výsledný po čet alternativních selekčních obrazů může být značný, stále to však představuje hodnocení všech dokumentů pouze na dvoustupňové škále ODPOVÍDÁ — N E ODPOVÍDÁ. V pododdíle 1.2.3 jsme ovšem ukázali možnosti přiřazovat dokumentům se lekční obrazy ve formě množin selekčních znaků s vahami, vyjadřujícími, nako lik který selekční znak charakterizuje právě daný dokument. Pokud budou tyto váhy ukládány do indexového souboru (jako určité atributy odkazů od selekč ních znaků na jednotlivé dokumenty), je třeba je nějakým způsobem uplatnit v procesu vyhledávání „odpovědi" na dotaz. To ale vlastně znamená, že se na samotný proces vyhledávání potenciálně relevantních dokumentů musíme začít dívat jako na proces hodnocení jejich relevance na spojité škále s koncovými hod notami VŮBEC NEODPOVÍDÁ a PLNĚ ODPOVÍDÁ. Mezi těmito koncovými body se mohou nacházet různé hodnoty podobnosti dokumentů vzhledem k danému dotazu. V 1.2.3 jsme také ukázali, že váhy mohou být připojovány k selekčním zna kům nejen v obrazech dokumentů, ale principiálně i v dotazech. (Může to dělat například explicitně sám uživatel vyhledávacího systému.) Nadále tedy budeme předpokládat, že také součástí dotazů jsou váhy jednotlivých selekčních znaků. Pokud by nebyly explicitně vyjádřeny ani žádným způsobem automaticky počí tány, můžeme to považovat za specifický případ, kdy jsou všechny rovné nějaké zvolené konstantě, např. 1. 1 2 3 Předpokládejme nyní, že je zadán dotaz Q spojující selekční znaky (hledané termíny) ij a i logickým operátorem OP (za OP konkrétně dosadíme buď O R nebo A N D ) a zároveň jim přiřazující (jakékoli nenulové) váhy — po řadě Vj a v^: k ij : Vj OP i : v k k Nechť dokumentu D byly přiřazeny stejné selekční znaky s vahami Wj a w . (Pokud např. ij vůbec nebyl přiřazen dokumentu D , dívejme se na to tak, že Wj = 0. Případné jiné selekční znaky přiřazené dokumentu D nás teď nezajímají.) Označme symbolem R(D, Q) míru relevance (podobnosti) dokumentu D vzhledem k dotazu Q. Tzv. fuzzy rozšíření booleovského modelu vyhledávání definuje k R(D, Q) = max(i;j • Wj, v • w ) k k Obvykle se připouští, aby vyhledané dokumenty obsahovaly i něco navíc, nejen to, co je právě hledáno! Nebudeme se zde raději snažit ten „jistý způsob exaktní rovnosti" formálně definovat — vzhledem ke kontextovým operátorům by to bylo dost složité. Zvídavější čtenář si to ovšem může zkusit sám: je t ř e b a vyjít z představy selekčního obrazu jako matice selekčních znaků a jejich pozic — skutečných pro selekční obraz dokumentu, požadovaných pro selekční obraz dotazu. Pokud bychom nepřipouštěli kontextové operátory, je naopak situace naprosto triviální — odpovídá popisu v úvodu oddílu 1.1 (s. 10). „Odpovědí" samozřejmě rozumíme množinu dokumentů, které byly shledány (potenciálně, nezanedbatelně) relevantními). 1 2 3 BOOLEOVSKÝ MODEL VYHLEDÁVÁNÍ 99 pro OP = O R a R(D, Q) = mm(vj • Wj, v • w ) k k pro OP = A N D . Toto rozšíření je konzervativní v tom smyslu, že dosadíme-li za všechny váhy pouze jedničky (s interpretací „požadován/přiřazen") a nuly (s interpretací „ne požadován/nepřiřazen"), dostaneme stejné výsledky jako v původním booleov ském modelu bez tohoto rozšíření. Je ovšem zajímavé, že praktické experimenty nesvědčí vždy o zlepšení kvality vyhledávacího systému aplikací tohoto rozšíření. [51] Tzv. geometrické rozšíření booleovského modelu vyhledávání definuje (Vj • Wj) + (v • w ) 2 R(D,Q) = 2 k k v] + v\ pro OP = O R a R(D,Q) = 1 \ v] + v\ pro OP = A N D . Případným dosazením jedniček a nul za všechny váhy do výše uvedených vzorců nedostaneme stejné výsledky jako v původním booleovském modelu — a právě v tom je možná klíč k vysvětlení obecné výhodnosti tohoto rozšíření: někdy se to formuluje tak, že geometrické rozšíření jaksi „rozostřuje rozdíl mezi A N D a O R v klasickém booleovském modelu". Existuje celá řada dalších variant rozšíření booleovského modelu vyhledávání pro práci s vahami — viz např. [45]. Otázky kolem nich a odpovědi praxe na ně, jak jsme je zde naznačili pro fuzzy rozšíření a geometrické rozšíření, nicméně v konečných důsledcích mohou vést až k otázce, nakolik je v ů b e c b o o l e o v s k ý model v y h l e d á v á n í ve své p o d s t a t ě v h o d n ý . (Booleovské operátory jsou původně určeny k formulaci exaktních podmínek — ale to prostě není případ vyhledávání dokumentů!) Jsou-li dokumentům (a případně, ne nutně, i informačním požadavkům) při řazovány selekční znaky s vhodně počítanými (resp. uživatelem určovanými) va hami, může být jednodušší a zároveň efektivnější „zapomenout" na explicitní užívání jakýchkoli operátorů a použít vektorový model vyhledávání. KAPITOLA 100 2.2 2. METODY Základní pojmy a nástroje modelu vyhledávání 2.2.1 POROVNÁVÁNÍ ... vektorového Informační vektor Předpokládejme nyní, že zvolený selekční jazyk S má přesně M prvků. Označme tyto prvky (selekční znaky) ii, . . . ,ÍM- Zobecněme nyní selekční obraz libovol ného textu T do podoby matice 4 / i \ J(T) \ J WM,T ÍM — WJ,T J váha přiřazená selekčnímu znaku ij v textu T, resp. 0, pokud text T nebyl i n d e x o v á n selekčním znakem ij. V tomto pojetí jsou všechny selekční obrazy představovány maticemi stejných rozměrů, což samozřejmě usnadní nejen jejich mechanické porovnávání jako takové, ale i nejrůznější výpočty s nimi. Navíc však vidíme, že první sloupec je ve všech takovýchto maticích stejný, a proto je zbytečné ho zapisovat! Vypustíme-li ho, dostaneme selekční obraz v podobě sloupcového vektoru: e / w liT \ J(T) = Takový vektor nazveme informačním vektorem textu T. (Informační vektor je tedy selekční obraz textu převedený do podoby posloupnosti čili vektoru vah přiřazených při indexování textu postupně prvnímu, druhému atd. až M-tému prvku selekčního jazyka. Nulová váha přitom znamená, že text vůbec nebyl inde xován daným selekčním znakem.) V následujícím textu v zájmu typografického zjednodušení nahradíme sloupcové vektory řádkovými, zapisovanými nejběžnějším matematickým způsobem. Rekneme-li tedy, že textu byl přiřazen informační vektor např. w = (wi,.. .,w ) M , myslíme tím, že selekčnímu znaku i\ byla při indexování textu přiřazena váha W\, selekčnímu znaku i váha w atd., až selekčnímu znaku ÍM váha WM2 2 U v ě d o m m e si zároveň, že vůbec nemusí být snadné, ba ani možné, zjistit konkrétní číslo M pro daný informační systém. (Záleží to mimo jiné i na tom, jakého druhu je selekční jazyk S — je-li to např. jazyk jednotlivých slov, nebo jazyk „koherentních agregátů" vyhledávaných v textu metodou MOZAIKA...) Pro následující popisy metod však potřebujeme alespoň před pokládat, že nějaké takové M objektivně existuje. Jak se vyrovnat s tím, že někdy neznáme hodnotu M, uvidíme později (v pododdíle 2.2A). 4 2.2 VEKTOROVÝ 2.2.2 MODEL 101 Intuitivní vymezení podobnosti informačních vek torů a jejího využití Máme-li dva informační vektory libovolných textů, určitě jsme schopni něco říci čistě intuitivně o tom, kdy budou tyto dva informační vektory podobné, resp. nepodobné z hlediska reprezentovaného obsahu. Určitě se shodneme na tom, že jsou podobné, jestliže na pozicích, kde má větší čísla jeden, má je i druhý (tzn. oba texty kladou důraz na totéž), a jsou nepodobné, jestliže tam, kde má jeden nenulová čísla, má druhý nuly a naopak (tzn. texty se týkají každý něčeho jiného). Kdybychom měli k dispozici nějakou matematickou funkci, která by infor mačním vektorům u a v přiřazovala míru jejich podobnosti, označme j i a(ů,v), respektující naše intuitivní předpoklady a zároveň kvantifikující, nakolik jsou spl něny ve „sporných" případech, a kdybychom v bázi dokumentů měli uložené i jejich informační vektory (v nějaké, prozatím libovolné, formě), mohli bychom texty odpovídající na dotaz vyhledávat takto: změřili bychom podobnost infor mačního vektoru dotazu s informačními vektory všech dokumentů, a ty doku menty, u nichž by podobnost byla větší než nějaká mez, bychom vydali jako odpověď. Tento způsob arci nevypadá příliš lákavě (z hlediska rychlosti vyhod nocování) pro případ velmi mnoha dokumentů v bázi, nicméně vede k seřazení všech dokumentů podle jejich relevance k dotazu — a postupně ukážeme také možnosti jeho zefektivnění. Nyní bychom však měli rozebrat možnosti, jak skutečně počítat podobnost informačních vektorů. 2.2.3 Matematické míry podobnosti informačních vek torů Řešení problémů, která hledáme, bývají často překvapivě jednoduchá, je jenom třeba je najít. Ve vektorovém počtu existuje jednoduchý nástroj nazývaný ska lární součin. Nechť u — ... , % ) a v — (vi,... , VM)- Skalární součin těchto dvou vektorů je definován takto: u • v = ui • vi H \-u M * VM Co kdybychom zkusili měřit podobnost vektorů pomocí skalárního součinu? Od povídalo by to našim intuitivním požadavkům? Zdá se, že ano: součiny velkých čísel na stejných pozicích nejvíce přispívají k velikosti skalárního součinu (tedy k velké „podobnosti" vektorů); naopak vektory, u kterých platí, že kde má je den nenulové číslo, má druhý nulu, mají skalární součin nulový (tedy nulovou „podobnost"). Má to jen jeden háček. Velikost skalárního součinu není dána jen tím, kde jsou ve vektorech relativně větší a menší složky, ale i „absolutními" velikostmi složek, a to může někdy vést k nežádoucím výsledkům. Nechť — pouze pro názornost — první 3 prvky selekčního jazyka jsou: • automatická převodovka KAPITOLA 102 2. METODY POROVNÁVÁNÍ . • automobil • autobus Nechť informační vektor g = (4,0,2,0,...,0) (všechny složky počínaje čtvrtou jsou nulové) reprezentuje dotaz — např. dotaz na „automatické převodovky, zejména v autobusech". Nechť dále v bázi existují dokumenty D a £ reprezentované informačními vektory d a e : d = (20,0,10,0,...,0) e = (0,200,100,0,...,0) (D může být např. článek věnovaný právě automatickým převodovkám v auto busech, zatímco E může být celá kniha věnovaná automobilům a autobusům — právě proto jsou jednotlivé váhy v e tak velké.) Skalární součiny vyjdou násle dující: g - d = 4-20 + 2-10 = 100 g-e = 2-100 = 200 Ale dokument E vůbec nepojednává o automatických převodovkách! Skutečná relevance dokumentu E vůči dotazu reprezentovanému q je mizivá, relevance dokumentu D je naopak stoprocentní — a nám by vycházela „podobnost" mezi q a e větší než mezi q a d! Kromě toho: je samotná „podobnost" 100 mezi dotazem a dokumentem hodně nebo málo? Pro to nemáme žádné měřítko. Představme si, že v bázi je ještě jeden dokument, označme ho F, kterému byl přiřazen informační vektor /=(200,0,100,0,...,0) — vzájemné proporce jednotlivých vah jsou tu opět stejné jako u dotazu, ale všechny váhy jsou ještě desetkrát vyšší než u dokumentu D. Vektor / je dese tinásobkem vektoru d, a proto také skalární součin q • / bude desetkrát větší než q • d, čili „podobnost" dokumentu F vůči dotazu by měla hodnotu 1000. Má to smysl? Dokument, který označujeme F , může být např. rozsáhlá, ale již starší publikace, zatímco D může být stručný, ale aktuální článek na stejné téma. Co bude tazatele zajímat víc? A co máme v tomto ohledu vůbec čekat od míry podobnosti informačních vektorů? Jedna možnost, jak odstranit uvedené nedostatky, je vydělit každý skalární součin velikostmi obou vektorů. Velikost vektoru x označujeme obvykle \x\ a pomocí skalárního součinu j i můžeme vypočítat podle vzorce: \x\ — Vx Máme tedy míru podobnosti: • X 2.2 VEKTOROVÝ MODEL 105 minimální podobnost, konkrétně 0, nastane pro vektory kolmé, tj. když nenulové složce jednoho z nich odpovídá nulová složka druhého (kosinus pravého úhlu je roven nule). Výpočet kosinové míry podobnosti se může zdát poněkud složitý: pro každé dva vektory, které srovnáváme, je třeba podle výše uvedené definice o\ počítat 3 skalární součiny, minimálně jednu odmocninu a jeden podíl. Představme si ovšem, že by si systém „pamatoval" informační vektory normalizované na velikost 1. Pak by k vyhodnocení o\ na dvojici vektorů stačilo vypočítat jejich skalární součin! To ale vlastně odpovídá přepsání definice do tvaru: 5 \u\ \v\ Bez ohledu na to, jakým způsobem se počítají váhy selekčních prvků v jednot livých selekčních obrazech, stačí v systému uchovávat přímo informační vektory vydělené jejich původní velikostí, tj. , y^r atd., a v ý p o č e t kosinové m í r y podobnosti se t í m redukuje na v ý p o č e t skalárního součinu. Předpokladům pro uvedenou redukci se přitom v praxi můžeme více či méně přiblížit i bez toho, že bychom vůbec kdy počítali velikosti informačních vektorů. Stačí použít vhodnou váhovou funkci, která sama omezuje rozdíly mezi velikostmi informačních vektorů jednotlivých textů — srovnej pododdíl 1.2.3! Nahrazením kosinové míry prostým skalárním součinem pak dojde jen k malé chybě. V literatuře je rozpracována řada dalších metod měření podobnosti informač ních vektorů [8, 56, 59, 73]. Tak například pod názvem euklidovská se uvádí míra podobnosti a (ú,v) = -z ^ \u — v\ (výraz \u — v\, tj. velikost rozdílu vektorů, se nazývá euklidovskou vzdáleností vektorů u a v\ na obr. 2.1 by to skutečně byla vzdálenost koncových bodů — „šipek" — obou vektorů). Tato míra je přirozená a poměrně jednoduchá. Obecně ovšem značně závisí na velikostech vektorů, proti čemuž jsme ukázali argumenty. 2 Kovarianční m í r o u podobnosti se nazývá ^ M všiti, v) = M^( * ~ Qi^ivi u - Q(V)) i=l — kde symbol g označuje průměr vektoru, tj. ^ M M označuje, jako stále, počet složek vektorů. U v e d e n á pozorování samozřejmě platí bez ohledu na počet složek vektorů neboli dimenzi vektorového prostoru. Pro velká M jsou pouze obtížně představitelná. 5 KAPITOLA 106 2. METODY POROVNÁVÁNÍ . M í r o u (symetrického) překrytí se nazývá tato míra podobnosti: M ^min(^,^) aAu, v) — — ~ , l —— l [Y,u ^Vi min h \i=l i=l Celkem jsou popsány a částečně otestovány desítky různých měr podobností a jejich modifikací [59, 73]. Obdobně jako váhové funkce (srovnej 1.2.3) jsou si i známé míry podobnosti většinou podobné v tom, že různě kombinují „osvědčené stavební kameny": skalární součin, sumu vektoru (neboli součet jeho složek), resp. od ní odvozený průměr vektoru, a konečně minimum (příp. maximum) ze dvou prvků. Tak např. Diceova míra podobnosti se počítá podle vzorce: 2(u-v) ~M M i=l i=l Dost podobná funkce a (u,v) 6 u-v M =1 M 1=1 je známa jako Jaccardova míra podobnosti. Řekněme si závěrem, že v americkém AIS SMART, nejpokročilejším svého druhu a své doby [56], byly úspěšně vyzkoušeny míry o\ a 0 4 z našeho ilustrativ ního výběru. Také proto se asi tyto dvě míry obecně považují za nejosvědčenější. Pro úplnost ještě poznamenejme, že uvedenými funkcemi lze měřit podobnost nejen informačních vektorů textů, ale samozřejmě jakýchkoli vektorů — stačí tomu dodat rozumnou interpretaci. 2.2.4 Problém očíslování selekčních znaků Jistý problém (jak ale vzápětí uvidíme, snadno řešitelný) spočívá v tom, že me tody automatického indexování jako např. M O Z A I K A ve skutečnosti na výstupu nevydávají — a ani nemohou vydávat — nic, co by bylo exaktně převeditelné na informační vektory podle naší definice. Předně totiž v systému, který inde xuje texty slovy (a souslovími) v nich obsaženými, lze těžko předem znát číslo M (počet prvků selekčního jazyka), čili není jasné, jak jsou informační vektory „dlouhé" (kolik mají složek). Teoreticky bychom samozřejmě mohli uvažovat o oo-rozměrných informačních vektorech, z nichž ovšem každý má jen konečně mnoho nenulových složek (protože jeden text je jistě vždy indexován konečně mnoha selekčními znaky). Ve skutečnosti ani takové pojetí není nezbytné: žádný selekční jazyk nemá opravdu nekonečně mnoho prvků; v tomto ohledu by šlo jen 2.2 VEKTOROVÝ MODEL 107 o to, stanovit prakticky použitelnou hranici, kterou počet termínů vyskytujících se ve všech textech nemůže nikdy překročit. P r o b l é m však zůstává přede v š í m ve s p r á v n é m očíslování složek informačního vektoru. I k tomuto aspektu problému můžeme samozřejmě přistoupit nejtriviálnějším způsobem — a označit první selekční znak, který se vůbec v systému vyskytne, číslem 1, druhý číslem 2 atd. Pak ale zase budeme muset řešit dost náročnou úlohu zjišťování, zda libovolný selekční znak, který právě přiřazujeme textu, je v systému nový (např. 105 595.) nebo byl již přiřazen někdy dříve (např. pod pořadovým číslem 13 328)... Nej efekt i vnější řešení je zřejmě v tom, že se (zdánlivě poněkud paradoxně) opět vrátíme k představě selekčního obrazu jako matice obsahující selekční znaky a jim přiřazené váhy — ovšem budeme se snažit s touto maticí zacházet jako se zápisem tzv. řídkého vektoru? Protože nevíme, jak „bezpečně a rozumně" přiřadit celočíselné indexy prvkům libovolného selekčního jazyka <S, zkusíme za indexy v řídkém vektoru považovat přímo prvky selekčního jazyka. Obsahuje-li tedy selekční obraz dokumentu D pouze termín autobus s váhou 100 a termín automobil s váhou 200, tento selekční obraz reprezentuje řídký informační vektor 6 7 d — (^autobus = 100, ^automobil = 200) . (Uspořádání složek je přirozeně běžné lexikografické, obdobně jako např. v in dexových souborech. Uvědomme si ovšem, že není určeno, jakou skutečnou — z matematického hlediska — dimenzionalitu, neboli celkový počet složek, má uve dený vektor d.) Zbývá precizně definovat (pokud je to vůbec možné) potřebné operace na takto „textově indexovaných" řídkých vektorech, jejichž dimenzionalita není de finována. Se skalárním součinem není problém — můžeme ho definovat takto: Ve skutečnosti se tato suma snadno spočítá jako Ui-Vi , ieAf(u,v) Kdybychom tuto hranici stanovili např. na 10 000 000, měli bychom prakticky jistotu, že tolik termínů v žádném jazyce nemůže existovat. Pak by ovšem musela následovat otázka, zda je vůbec možné „v reálném čase" počítat s vektory o deseti miliónech složek... T o , na co zde právě narážíme, mimochodem skrývá zajímavý vztah mezi dvěma věcmi běžně označovanými stejným slovem: mezi indexem jako prvkem selekčního jazyka a indexem jako označením polohy složky ve vektoru! Vzápětí uvidíme, že tyto pojmy (kupodivu?) skutečně můžeme ztotožnit. Termín řídké vektory se užívá specificky v „počítačových vědách" pro označení vektorů (neboli n-tic nějakých hodnot) s následujícími vlastnostmi: číslo n je poměrně značně velké, ale libovolný konkrétní vektor m á jen poměrně velmi málo nenulových složek. Řídké vektory se pak zaznamenávají ve specifické formě. Např. vektor q z našeho příkladu na s. 102 může být zapsán nějak takto: (qi = 4, q% = 2) — čímž se rozumí, že všechny ostatní složky vektoru q, bez ohledu na jejich celkový počet, jsou nulové. Existují jednoduché a efektivní metody pro výpočet různých funkcí nad takto zaznamenanými vektory, založené na jediném předpokladu: že každý záznam řídkého vektoru obsahuje nenulové složky uspořádané podle stoupajících indexů. 6 7 8 KAPITOLA 108 2. METODY POROVNÁVÁNÍ . kde J\í(u,v) = {i e 5; ^ 0 A ^ ^ 0}. Množina J\í(u,v) je nejen vždy ko nečná, ale zpravidla dost malá. Obdobně snadno lze definovat i spočítat sumu vektoru, protože stačí sčítat nenulové složky. Snadno lze nahlédnout (nebudeme to již detailně rozebírat), že není problémem ani „vektorové minimum" ze dvou takových vektorů, neboli vektor, jehož složky jsou minimem z odpovídajících slo žek původních vektorů. S některými veličinami však bude problém. Mezi takové patří např. průměr vektoru g(x) potřebný pro výpočet kovarianční míry, protože nemáme žádné číslo M. 2.2.5 V ý h o d a vektorového modelu vyhledávání v méně rozdílné interpretaci dokumentů a dotazů Vektorový model vyhledávání — na rozdíl od všech rozličných způsobů rozšíření booleovského modelu — nabízí mimo jiné následující zajímavou možnost využití: 1. Uživatel informačního systému nějakým způsobem (teď nás nezajímá otázka, jak konkrétně, třeba to mohlo být i náhodou) nalezl jeden doku ment, jehož obsah podle jeho názoru dost přesně odpovídá jeho informační potřebě. Tento dokument můžeme nazvat m o d e l o v ý m dokumentem re prezentujícím informační potřebu uživatele. 2. Jestliže se v systému pracuje pouze se selekčními obrazy ve formě informač ních vektorů, a při tvorbě těchto informačních vektorů se uplatňují vhodné váhové funkce, pak by se selekční obraz modelového dokumentu neměl zá sadně lišit od (hypotetického) selekčního obrazu „ideálního dotazu", jaký by uživatel explicitně zformuloval, pokud by to dokázal a věnoval tomu po třebné úsilí. 3. Informační systém tedy funkčně ztotožní zadaný modelový dokument s hy potetickým „ideálním dotazem . Dokumenty co nejpodobnější hypotetic kému „ideálnímu dotazu", tj. dokumenty co nejlépe odpovídající uživate lově informační potřebě, se pak hledají jako dokumenty co nejpodobnější zadanému modelovému dokumentu — což z hlediska způsobu fungování systému nepředstavuje vlastně žádný rozdíl. u Otázky a cvičení k oddílu 2.2 Cvičení 2.2.1 Vpododdíle 2.2.3 je příklad informačního vektoru dotazu q, který se porovnává s informačními vektory dokumentů d, e a f pomocí kosinové míry podobnosti. Proveďte obdobné porovnání pomocí euklidovské a kovarianční míry, míry symetrického překrytí, Diceovy a Jaccardovy míry. Srovnejte výsledky. Cvičení 2.2.2 Přidejte k předchozímu příkladu informační f=(4,0,2,l,0,...,0) vektor dotazu 2.2 VEKTOROVÝ a informační MODEL 109 vektor dokumentu G, označený # = (20,0,10,20,0,...,0) . Vypočítejte navíc a^f^ď) a a^q^g) a srovnejte tyto výsledky s ostatními hodno tami symetrického překrytí. Proč se tato míra nazývá mírou symetrického pře krytí? Je symetrické překrytí skutečně vhodné pro porovnávání dotazu a doku mentů ? Cvičení 2.2.3 Srovnejte závěr předchozího cvičení s výsledky, které by ve stejné situaci dala míra a s y m e t r i c k é h o překrytí, počítaná podle vzorce M a (Ů,v) 7 = tak, že jako první (u) se vždy bere informační vektor dotazu. Zformulujte, jaký intuitivní požadavek tato míra respektuje lépe než míra symetrického překrytí. Cvičení 2.2.4 Pokuste se určit obory hodnot funkcí o\ až 07. Cvičení 2.2.5 V pododdíle 2.2.3 hovoříme o „normalizaci" informačního vek toru na jednotkovou velikost. Metoda MOZAIKA zavádí jiný způsob „normali zace" vah termínů (vizzávěrpododdílu 1.4-2). Zaveďme symbolx* pro informační vektor vzniklý normalizací vektoru x podle vzoru metody MOZAIKA. Co lze říci o oboru hodnot míry podobnosti cr (u, v) = u* • v* 8 ? * Cvičení 2.2.6 Pokuste se upravit euklidovskou míru podobnosti (02): • nejprve tak, aby ztratila závislost na velikostech vektorů, • a dále tak, aby výsledná funkce nabývala právě hodnot od 0 do 1. Pak tuto funkci srovnejte s kosinovou mírou podobnosti. Otázka 2.2.7 Které z dosud uvedených měr podobnosti o\ až cr lze použít pro „textově indexované" řídké vektory zavedené v pododdíle 2.2.4? 8 KAPITOLA 110 2.3 2. METODY POROVNÁVÁNÍ . Měření podobnosti dokumentů a dotazu s využitím indexového souboru Když jsme v předchozím oddíle začali uvažovat o použití měření podobnosti jako metody zodpovídání dotazu, nemohli jsme bez dalších úvah navrhnout jiné řešení než porovnat informační vektor dotazu s informačními vektory všech dokumentů v bázi, i když si musíme být vědomi, že to není praktické řešení. Kdybychom například v bázi uchovávali k 10 000 dokumentům jejich 10 000 informačních vektorů s průměrně jen 10 nenulovými složkami (což není mnoho), bylo by třeba k porovnání informačních vektorů výše uvedeným způsobem mj. číst nejméně 100 000 údajů o váhách jednotlivých selekčních znaků v jednotlivých dokumen tech. I kdyby byly selekční znaky číselně kódovány, šlo by řádově o minimálně megabyte dat, která je třeba zpracovat pro každý dotaz. I pro změření podobnosti informačních vektorů dotazu a (všech) dokumentů v bázi lze však využít informací z dobře navrženého indexového souboru. Mějme dotaz, ve kterém jsou selekčním znakům i i , Í 2 ? - - - ? ^ přiřazeny po řadě nenu lové váhy wi, w ,..., w . (Tím rozumějme, že všechny ostatní existující selekční znaky mají v dotaze váhu 0, neboli nejsou předmětem zájmu. ) Začneme tím, že „obvyklým způsobem" s pomocí indexového souboru zpracujeme dotaz 2 t 9 H OR i OR ... OR i 2 t ve smyslu booleovského modelu. Je třeba si uvědomit, že všechny dokumenty, které se nacházejí mimo množinu dokumentů vyhovujících tomuto dotazu, musí mít podobnost s dotazem buď nulovou, nebo zanedbatelně malou (to už záleží na použité míře podobnosti). Pochopitelně: dokumenty, které nemají ani jeden společný selekční znak s dotazem, tazatele v této chvíli nezajímají. Ve vhodně navrženém indexovém souboru máme dost informací k tomu, abychom byli schopni během tohoto zpracování vytvořit informační vektory těch dokumentů, které vyhovují dotazu i\ O R i O R . . . O R i . Přesněji řečeno, ne vytvoříme je asi celé, ale můžeme získat takové jejich části, jaké potřebujeme pro výpočet podobnosti ve vhodně zvolené míře. (V indexovém souboru totiž mů žeme efektivně hledat jen informace o konkrétních selekčních znacích — a máme určeny jen ty, ze kterých jsme sestavili výše uvedený formální dotaz.) Při konstrukci jednotlivých složek informačních vektorů z informací v indexo vém souboru máme pochopitelně omezený výběr váhových funkcí. Vzpomeneme si, že to bylo předmětem cvičení 1.2.1 (s. 25). Nemělo by tedy pro nás v této chvíli být nic nového, že z parametrů funkcí uváděných v pododdíle 1.2.3 (s. 20) lze obvykle v indexovém souboru snadno zjistit f(i, T), F(i) a n(i), protože u přístu pového termínu jsou údaje o všech jeho výskytech v bázi dokumentů. S pomocí 2 t U v ě d o m m e si, že to vůbec nemusí znamenat, že v dotaze byly explicitně formulovány všechny selekční znaky i\ ŮŽ i s vahami w\ až w l To záleží na použité metodě automatického indexování: seznámili jsme se již s různými metodami automatizovaného rozšiřování dotazů na základě formální podobnosti termínů (viz pododdíl 1.3.5), s možnostmi automatického rozšiřo vání dotazů podle tezauru (1.5.2), s možností sémantického indexování založeného na metodě SÉMAN (1.6). 9 t t 2.3 VYUŽITÍ INDEXOVÉHO SOUBORU 111 indexového souboru lze naopak těžko vyhodnocovat parametry jako t(T) a k(T), protože to jsou parametry jednotlivých dokumentů jako celků, které v indexovém souboru není přímo k čemu vztáhnout. Co se týče použitelných měr podobnosti, je jasné, že v tomto případě můžeme použít jen takové, u nichž nezáleží na hodnotách složek informačního vektoru dokumentu, pokud jim odpovídají nuly v informačním vektoru dotazu. Hned si uvědomíme, že takovou mírou je např. skalární součin. Vhodnou míru podobnosti použijeme k porovnání dotazu a všech dokumentů, jejichž pravděpodobná relevance vzhledem k dotazu je vůbec nějaká (v tom smyslu, že s ním mají společný aspoň 1 selekční znak). Tím získáme užitečné výstupní seřazení vyhledaných dokumentů. Nyní si můžeme snadno představit i textový vyhledávací systém přijímající dotazy jako výrazy v obvyklém formálním dotazovacím jazyce s logickými a kontextovými operátory, ve kterých je případně navíc každému prvku přiřazena libovolná váha — s tím, že po vyhodnocení výrazu formálního dotazovacího jazyka z hlediska operátorů, bez vah, systém dále změří podobnost všech výsled ných textů s dotazem a podle toho seřadí odpověď. Právě popsaná možnost doplňujícího seřazení vyhledaných dokumentů podle míry podobnosti s dotazem je ovšem ve skutečnosti vhodným doplňkem pro každý textový vyhledávací sys tém — i takový, který s váhami v dotazech explicitně nepracuje! Vždyť není problém převést pro tuto potřebu jakýkoli formální dotaz na informační vek tor, jehož složky odpovídající prvkům dotazu mají jednu předem stanovenou hodnotu (např. 1), a tento vektor pak popsaným způsobem poměřit s vektory odpovídajícími vyhledaným dokumentům. 10 Otázky a cvičení k oddílu 2.3 Otázka 2.3.1 Které z měr podobnosti o\ až cr uvedených v předchozím oddíle lze použít k měření podobnosti informačního vektoru dotazu a neúplných infor mačních vektorů dokumentů získaných pomocí indexového souboru tak, jak je to popsáno v tomto oddíle? 8 Cvičení 2.3.2 V některých vyhledávacích systémech se vyhledané dokumenty se řazují podle veličiny, kterou bychom mohli nazvat úhrnnou váhou dokumentu vzhledem k dotazu. To je prostě součet vah všech hledaných prvků v dokumentu. Je tento přístup v principu odlišný od zde naznačených schémat, nebo jde jen o specifickou variantu realizace některého z nich? Z a j í m a v o u úlohou by byl automatický převod dotazu z přirozeného jazyka do výše po psané formální podoby: znamenalo by to v původní formulaci p á t r a t zároveň jak po prvcích odpovídajících operátorům mezi termíny, tak po prvcích odpovídajících váhám termínů. 10 KAPITOLA 112 2.4 2.4.1 2. METODY POROVNÁVÁNÍ . Shlukování dokumentů Idea shlukování a jeho smysl pro zodpovídání do tazů Představme si, že bychom dokázali rozdělit množinu všech dokumentů v bázi dat na disjunktní (anebo třeba i nemnoho se překrývající) podmnožiny, z nichž každá by měla tu vlastnost, že: 1. dokumenty v ní obsažené jsou si vzájemně obsahově „hodně podobné"; 2. dokumenty v ní neobsazené jsou obsahově „málo podobné" dokumentům v ní obsaženým. Pak bychom teoreticky mohli s dotazem zacházet takto: porovnali bychom ho nejdříve s nějakými reprezentanty všech podmnožin dokumentů, tím bychom rozhodli o podobnosti jednotlivých podmnožin našemu dotazu, a v jedné nebo několika podmnožinách bychom porovnali dotaz se všemi dokumenty a vytřídili „nejlepší" dokumenty jako odpověď na dotaz. (Toto porovnání by mohlo být založeno na čemkoliv, ovšem s tím, co už víme, se nám jistě přímo nabízí měření podobnosti informačních vektorů některým z popsaných způsobů.) Případně by popsané podmnožiny mohly být opět rozděleny na podmno žiny obdobné vlastnosti atd., až by se došlo k dost malým podmnožinám, a porovnávání dotazu by probíhalo hierarchicky přes „podobnější" podmnožiny „podobnějších" podmnožin až k „nejpodobnějším" dokumentům. Kdybychom zvolili nějaké nepříliš velké číslo p a kdyby se nám podařilo rozdělit množinu N dokumentů na ne více než p podmnožin, každou z nich opět na ne více než p podmnožin atd., až by na nějaké úrovni podmnožiny neobsahovaly víc než p dokumentů, potom by se žádný dotaz neporovnával s více než p • \og N objekty v bázi. To je výsledek srovnatelný s různými metodami efektivního vyhledávání požadovaných selekčních znaků v indexovém souboru (ať už tím máme na mysli např. dobře známou, byť dnes poněkud „archaickou" metodu půlení intervalů v sekvenčním souboru, nebo „modernější" metody vyhledávání ve stromových strukturách). Vidíme tedy, že takové rozdělení dokumentů by mohlo být pro středkem k efektivnímu zodpovídání dotazů na základě měření podobnosti, ob dobně jako spojení principu měření podobnosti s technikou indexového souboru, popsané v předchozím oddíle. Navíc takové uspořádání může být výhodné pro některé hodnotící průzkumy množiny dokumentů, ke kterým technika indexového souboru nepomáhá. 11 p K solidní realizaci popsaného uspořádání je třeba precizovat použité pojmy „hodně podobné" a „málo podobné". Vyjdeme samozřejmě z měření podobnosti informačních vektorů tak, jak jsme si ho zavedli. Je ovšem třeba najít pravidla pro stanovování rozumné, všeobecně přijatelné hranice mezi velkou a malou podob ností pro každý konkrétní případ množiny dokumentů. Podmnožiny vzájemně 1 1 K výběru těchto reprezentantů viz dále, v pododd. 2.4.4 a následujících. 2A SHLUKOVÁNÍ DOKUMENTŮ 113 „hodně podobných" a jiným „málo podobných" dokumentů získané nějakými takovými pravidly pak budeme nazývat shluky. 12 Vyjděme tedy z toho, že jsme schopni přiřadit libovolným dvěma dokumen tům číslo vyjadřující míru jejich vzájemné obsahové podobnosti. (Například tak, že oběma dokumentům přiřadíme informační vektory a informačním vektorům míru podobnosti jedním ze způsobů popsaných v oddíle 2.2.) Označujme nadále symbolem s(D D ) u 2 míru obsahové podobnosti dokumentů D\ a D . 2 2.4.2 Jednoduchý procedurální přístup: McQuittyho al goritmus shlukování Poměrně jednoduchý postup vytváření shluků představuje McQuittyho algorit mus, spočívající v těchto základních krocích: 1. (Inicializace.) Máme dokumenty D\, D , ... , D^. Budiž I množina čísel všech dokumentů, které zatím nejsou v žádném shluku. Na začátku je tedy / = {l,2,...,iV}. 2 2. Najdeme p & q taková, že s(D , D ) = maxs(Z^, Dj) p q (D a D jsou tedy dva nejpodobnější dokumenty z těch, které zatím nebyly zařazeny do žádného shluku.) Dokumenty D a D zařadíme jako základ do nově vytvářeného shluku. p q p q 3. Pro každý dokument D^ v právě vytvářeném shluku najdeme všechny do kumenty D , které dosud nejsou v žádném shluku (r G / ) a platí pro ně rovnice: s(Dk,D ) = maxs(Z^, D ) r r r Jen na okraj si řekněme, že „rozshlukování" množiny dokumentů v zásadě lze provést i bez měření podobnosti. Například na základě počítačově reprezentovaného tezauru a automatic kého indexování podle něho by bylo možno automaticky vytvořit „shluky" dokumentů sdružené s deskriptory tezauru — tak, že každý dokument bude zařazen do „shluku" sdruženého s hi erarchicky nej vyšším deskriptorem v jeho selekčním obraze nebo s nej bližším deskriptorem nadřazeným všem prvkům jeho selekčního obrazu. „Podobnost" (nabývající pouze logických hodnot A N O a N E ) by tu v principu správně představovala pokrytí zhruba stejné tématické oblasti, mezi „shluky" by neexistovalo částečné překrývání (v čemž bychom však nakonec mohli vidět i jeden z nedostatků), a s pomocí tezauru by se mohlo v takových „shlucích" zajímavě vyhledávat. Prakticky se to nedělá, zřejmě proto, že klasifikace vzniklá takovým způsobem by měla i některé nepříjemné vlastnosti (uvažme například, kam by byly zařazeny dokumenty vytvářející vazbu mezi dvěma předměty hodně vzdálenými v hierarchickém systému tezauru). Naznačené schéma by ovšem bylo možno různě dále modifikovat. 1 2 KAPITOLA 114 2. METODY POROVNÁVÁNÍ . Všechny takové D přidáme do vytvářeného shluku a příslušná r vyjmeme z / . (Jinými slovy: do shluku přidáme všechny dokumenty, které nejsou ničemu podobnější než něčemu v tomto shluku.) Tento krok opakujeme, dokud se shluk neustálí, tj. dokud do něho lze něco přidávat. r 4. Vytvářený shluk prohlásíme za definitivní. I nyní představuje, stejně jako na začátku, množinu čísel dokumentů dosud nezařazených do žádného shluku. Zůstaly-li v I alespoň 2 prvky, opakujeme postup od kroku 2. McQuittyho algoritmus je jednoduše popsatelný. Uvědomme si však, co vy žaduje: buď neustále počítat podobnosti všech dvojic ještě nezařazených doku mentů (a kolik dvojic je možno vybrat z N dokumentů?!), nebo mít od začátku vzájemné podobnosti všech dokumentů uložené v paměti ve formě nějaké ma tice — což může být nepřijatelně náročné na velikost paměti stejně jako první varianta na objem výpočtů. 13 McQuittyho algoritmus vytváří shluky odpovídající výše uvedenému intuitiv nímu vymezení. Jako metoda však nijak nepřispívá k preciznější definici shluku. Na otázku, co je to shluk vytvářený McQuittyho algoritmem, můžeme exaktně odpovědět jedině kruhem: je to to, co vytváří McQuittyho algoritmus... 2.4.3 Definice shluku pomocí koheze: „klasifikační" al goritmus Přístup, který ukážeme v tomto pododdíle, je založen na precizně matema ticky definovaných veličinách, s jejichž pomocí se nejprve vytvoří přesná definice shluku. Teprve od této definice se odvodí algoritmus shlukování. Než přejdeme k jádru věci, zopakujme si pro jistotu prvky množinové symbo liky, které budeme potřebovat. Symbolem \A budeme označovat doplněk mno žiny A , symbolem A \ B rozdíl množin A a £?, symbolem A B symetrický rozdíl množin A a £?, tj. (A\B)U(B\A) . 1 4 Symbolem \X\ budeme označovat mohutnost čili počet prvků množiny X. Nechť jsme schopni nějakým způsobem měřit podobnost množin. (Jakých množin, na tom teď nezáleží, pro náš cíl však za nimi můžeme vidět množiny dokumentů.) K o h e z í nazveme matematickou funkci, která m n o ž i n ě přiřazuje vhodně definovanou míru podobnosti s j e j í m d o p l ň k e m . (Otázkou, jak definovat míru podobnosti množin, se budeme zabývat později.) Zatím víme, že shluk by měl představovat množinu, jejíž prvky jsou „hodně podobné" navzájem a „málo podobné" prvkům do ní nenáležejícím. S tím je v naprostém souladu Parker-Rhodesova a Needhamova definice, která říká, 14 P r o úplnost dodejme, že tento algoritmus je samozřejmě ve své p o d s t a t ě obecnější, než jak jsme ho zde uvedli, použitelný pro shlukování čehokoli, u čeho lze měřit podobnost, nejen dokumentů. Totéž platí pro všechny další algoritmy shlukování popsané v této kapitole. Rozumějme doplněk do výchozí množiny, která m á být rozdělena na shluky. V našem případě tou výchozí množinou implicitně bude celá kolekce (báze, fond) dokumentů. 1 3 1 4 2A SHLUKOVÁNÍ DOKUMENTŮ 115 že shluk je m n o ž i n a lokálně minimalizující kohezi. To znamená: pokud symbol C(X) označuje kohezi množiny X a k je nějaká předem zvolená konstanta — pak podmnožina A nějaké výchozí množiny V je shluk, právě když platí: (V5 C V)(\A + B\<k^ C(A) < C{B)) Konstanta k určuje, v jak velkém okolí („jak dalece lokálně") se minimalizuje. Na definici shluku pomocí koheze je založen algoritmus shlukování v litera tuře označovaný názvem „klasifikační" [8]. (Berme to jako název z nedostatku jiných a neužívejme ho bez uvozovek: ve skutečnosti produktem každého shlu kování je jistá forma klasifikace v informatickém smyslu, takže každý shlukovací algoritmus by se mohl nazývat klasifikačním.) V definici shluku se pro tento účel volí k = 1. Algoritmus lze zapsat ve 2 krocích: 1. Zvolíme 1 prvek výchozí množiny V, kterou chceme rozložit na shluky, jako základ pracovní množiny A — právě vytvářeného shluku. 2. Zkoušíme k množině A jeden prvek přidat nebo z ní jeden prvek ubrat tak, abychom snížili její kohezi. Tento krok opakujeme, dokud to má smysl. Když už nelze přidáním nebo ubráním jednoho prvku snížit C(A), pracovní množinu A uzavřeme — je to shluk podle definice. Pokud chceme vytvářet další shluky, začneme znovu od kroku 1. Vidíme, že algoritmus vypadá až překvapivě jednoduše. K jeho závěru je ovšem třeba vysvětlit, kdy máme chtít vytvářet další shluky a kdy má smysl skončit. Popsaný algoritmus sám tuto otázku neřeší, při jeho aplikaci však na ni musíme mít rozumnou odpověď. Kdybychom chtěli pouze splnit požadavek definice, ze které algoritmus vy chází, nemuseli bychom případně vůbec znovu začínat. Kohezní funkce (míra podobnosti množiny a jejího doplňku, podrobněji viz dále) by totiž logicky měla být „symetrická" v tom smyslu, že každé množině přiřazuje stejnou hodnotu jako jejímu doplňku; tudíž je-li lokálně minimální koheze množiny A, je lokálně mini mální i koheze \A — jinými slovy je-li A shluk, je i \A shluk. I bez opakování tedy algoritmus rozdělí výchozí množinu na 2 shluky. To ovšem nevylučuje mož nost kterýkoli z vytvořených shluků dále dělit na menší shluky. Vhodné kritérium pro skončení tedy nejspíš bude srovnatelná velikost vytvořených shluků. Naskýtá se návazná otázka, na čem vlastně záleží velikost shluku A vytvoře ného jedním „chodem" tohoto algoritmu. Vedle neovlivnitelných vlastností vý chozí množiny V patrně může být významná volba prvního prvku v 1. kroku al goritmu. To je další otázka, kterou algoritmus nechává otevřenou. Protože nyní nemáme v úmyslu algoritmus implementovat, nemusí nás to zneklidňovat — dů ležitější je uvědomit si, čím vším už „je zaplacena" zdánlivá jednoduchost „kla sifikačního" algoritmu. V dalších pododdílech nicméně uvidíme některé způsoby, jak volit startovní prvky vytvářených shluků, i když shluky budou vytvářeny jinak než podle Parker-Rhodesovy a Needhamovy definice. KAPITOLA 116 2. METODY POROVNÁVÁNÍ . V souvislosti s „klasifikačním" algoritmem zbývá už jen určit, jak p o č í t a t kohezi. Začněme pokusem o obecnou definici míry podobnosti 2 množin doku mentů. Vyjdeme přirozeně opět z předpokladu, na kterém nyní stále stavíme, že pro libovolné dva dokumenty a z množiny A a b z množiny B máme k dispo zici jejich míru podobnosti s(a, b). Pokusme se nejprve odvodit odtud nějakou „rozumnou" míru podobnosti mezi dokumentem a a celou množinou dokumentů B — označme j i např. š(a, B). Na první pohled se nabízí tato definice: š(a,B) = bG_B Ve stejném duchu můžeme stanovit míru podobnosti množin A a B takto: S (A,B) 0 Y š(a,B) = t Dosazením prvního vzorce do druhého dostaneme: S (A,B) 0 £$>M) = aeA beB Na této míře podobnosti množin můžeme však na první pohled vidět jednu vadu: její velikost závisí na mohutnosti množin. Pochybujeme-li o tom, zda je to vada, posuďme podobnost libovolné množiny se sebou samotnou. Ta je v této míře tím větší, čím víc prvků k množině přidáme, bez ohledu na to, jak málo podobné ostatním mohou přidávané prvky být! Existují různé v literatuře doporučované způsoby, jak odstranit závislost míry podobnosti dvou množin dokumentů na jejich mohutnostech. Jeden z nich je založen na náhradě úhrnné podobnosti prvků obou množin jejich podobností průměrnou: 15 1^1 Si ( A B) = ± beB Y E £ 5(a, B) = aeA b) beB Jinak formulováno: q (A fí\- °( > ) S A B > -WW\ SL{A B) Další možnosti jsou například: S (A,B) 2 ^' ) So(A,A) + S (B,B) 5o B 0 S (A,B) 3 (S (A,B)Y So(A,A)-S (B,B) 0 0 S a m o z ř e j m ě předpokládáme nezápornost míry podobnosti prvků (dokumentů). Kdyby podobnost dokumentů mohla být záporná, pak by skutečně nyní rozebíraná „vada" nebyla prokazatelná. 15 2A SHLUKOVÁNÍ DOKUMENTŮ 117 Míru podobnosti dvou množin lze samozřejmě počítat i různými podstatněji odlišnými způsoby — např. „metodou nejbližšího souseda", „metodou nejvzdálenějšího souseda" ap. [51] S pomocí výše zavedených měr podobnosti je již velmi snadné definovat kohezi množiny X: můžeme položit C(X) = Si(X,\X) s tím, že za i dosadíme 1, 2 nebo 3, případně za Si jakoukoli jinou „vhodnou" funkci přiřazující dvěma množinám jejich vzájemnou podobnost. Nyní bychom měli být v zásadě schopni s použitím některé z realizací funkce C programově realizovat „klasifikační" algoritmus. Ovšem neustále opakované výpočty koheze, které bychom v něm měli provádět, přesně podle definice nejsou zrovna nenáročné na množství elementárních operací. Mohli bychom tedy ještě zkoumat, zda by bylo možno alespoň s nějakou výhodou počítat koheze nových pracovních množin (kandidátů na shluk), vzniklých přidáním nebo ubráním 1 prvku, iterativně na základě hodnot již známých. Vezměme např. situaci, kdy nová pracovní množina A' vzniká z předchozí A při dáním prvku (dokumentu) x: A = A U {x} f Dá se např. So(A',\A') získat nějakým přepočtem z již známé hodnoty So(A,\A) z předchozího kroku? Stačí si uvědomit, že: 1. je-li A' = A U {x}, je \A' = \A \ {x}; 2. pro libovolnou funkci /(a, 6), pokud x 0 X , platí £ f(a, b) = a£XU{x} /(«, b) + f(x, b) , aex a obdobně pokud x G l , pak J2 f(a,b) = aex\{x} f(a,b) - f(x,b) ; aex 3. při vzájemném porovnávání dokumentů nemá smysl pracovat s jinou než syme trickou mírou podobnosti, neboli (Va, 6)(s(a, b) = s(6, a)) Použijeme-li tyto znalosti spolu s výše uvedenými vzorci pro výpočet So a š, můžeme KAPITOLA 118 2. METODY POROVNÁVÁNÍ . provést následující algebraickou úpravu: 5o(^',\^)=E E M ) = s aG_A' = E E aeAU{x} =E «M) = be\A\{x} E aeA be\A' 5 be\A\{x} (') + E a 6 S be\A\{x} ( ') = :E 6 = E E ( ' ) ~ E ( ^) + E ^'k) ~ 5 aeA a 6 s be\A = S (A,\A) 0 = a aeA be\A - š(x, A) + š(x,\A) - s(x, x) To znamená dost výraznou výhodu proti počítání So(A',\A') vždy znovu podle defi nice, „systémem každý s každým". Pokud bychom provedli ještě několik dalších obdobných algebraických postupů, došli bychom k těmto výsledkům: a) jestliže A' = A U {x}: S (A',\A') = S (A,\A) - š(x, A) + š(x,\A) Q Q - s(x, x) S (A', A') = S (A, A) + 2š(x, A) + s(x, x) 0 0 S (\A',\A') = S (\A,\A) 0 0 - 2š(x,\A) - s(x, x) \A'\ = \A\ + l \\A'\ = \\A\ - 1 b) jestliže A' = A\{x}: S (A',\A') 0 = S (A,\A) + š(x, A) - š(x,\A) 0 S (A',A') = S (A,A)-2š(x,A)-s(x,x) 0 S (\A',\A') Q + s(x,x) 0 = S (\A,\A) 0 + 2š(x,\A) + s(x, x) \A'\ = | 4 - 1 \\A'\ = \\A\ + l A to stačí k iterativnímu počítání všech tří výše uvedených kohezních funkcí. Všechny hodnoty potřebné pro příslušnou kohezní funkci by tedy stačilo počítat podle definice vždy při 1. kroku „klasifikačního" algoritmu; při iteraci 2. krokuje lze snáze přepočí távat z odpovídajících hodnot předcházejících. Co tedy můžeme závěrem říci o „klasifikačním" algoritmu? Je založen na precizním matematickém aparátu, je možno matematicky přesně odpovědět na otázku, co je shluk, který se tímto algoritmem vytvoří. Z hlediska výpočtové náročnosti nevypadá „nijak pronikavě", i když jsme si zajímavě „pohráli" s op timalizací výpočtů v něm potřebných. (Na druhé straně zatím — míněno v po sloupnosti tohoto textu — nemáme žádný lepší.) Co by nám však mělo především KAPITOLA 120 2. METODY POROVNÁVÁNÍ . způsoby. Například jako takové C M , pro které platí: Y s(x, c ) = max ^ M s(x, y) (Symbol s označuje míru podobnosti objektů.) Centroid je tedy definován jako objekt, který má největší úhrnnou (tím pádem i průměrnou) podobnost se všemi prvky množiny M. Všimněme si přitom, že není nutně požadováno, aby centroid sám byl prvkem množiny M. (Rovnice požaduje maximalizaci určitého výrazu „přes všechna y \ aniž by bylo uvedeno, odkud se mají tato „všechna y brát! To je sice jistý prohřešek proti běžným matematickým zvyklostem, nicméně zde zcela záměrný. Chápejme to tak, že se má maximalizovat „přes všechna myslitelná, resp. v našem systému realizovatelná y".) Centroidem tak může být i fiktivní objekt — zkonstruovaný tak, aby co nejlépe zastupoval (z hlediska podobností) libovolný prvek množiny M. L u M o h l i b y c h o m abstrahovat j e š t ě d á l e a formulovat p o ž a d a v e k na CM n a p ř í k l a d tak, že funkce f(x) = s(x,c ) M m á mít obdobný průběh jako funkce g(x)=š(x,M) . (Obdobným průběhem r o z u m ě j m e , že k d y k o l i pro n ě j a k á x\ a x p l a t í rovnost f(x\) = = f(x ), resp. nerovnost f(x\) > f(x ), p l a t í s t e j n á rovnost, resp. nerovnost, i pro 2 2 g(x\) 2 a g(x ). K v ý z n a m u s y m b o l u š viz p ř e d c h á z e j í c í p o d o d d í l . ) 2 V realitě textových informačních systémů se nejčastěji centroid opravdu ne vybírá ze skutečných dokumentů shluku, ale ani se nekonstruuje nějaký „fiktivní dokument" jako takový. Místo toho totiž stačí zkonstruovat jeho informační vek tor. A ten se zase nejčastěji konstruuje velice jednoduše — jako geometrické těžiště množiny informačních vektorů, tj. c = —-— v . \M\teM Obvykle se přitom ani nehovoří o tom, zda (resp. nakolik) takto „technicky" de finovaný centroidní informační vektor (reprezentant množiny informačních vek torů všech dokumentů shluku) skutečně splňuje požadavky naší první nebo druhé abstraktní definice. A n i my se raději nebudeme snažit něco takového exaktně ma tematicky dokazovat. Jakýkoli důkaz by ostatně byl závislý mj. na tom, jakým konkrétním matematickým předpisem je realizován symbol s v našich rovnicích (srovnej 2.2.3!). Patrně se dá předpokládat, že při vhodně definovaných mírách podobnosti (tj. mají-li vlastnosti, jaké se od míry podobnosti intuitivně očeká vají) všechny tři zde uvedené definice centroidu „vedou s přijatelnou přesností k témuž". V praxi (resp. v prakticky zkoušených systémech) se dokonce někdy hovoří o „těžišti" a počítá se jen součet vektorů: c' = £ v 2.4 SHLUKOVÁNÍ 121 DOKUMENTŮ Tak se postupovalo např. v již zmiňovaném systému SMART [56]. Uvědomme si, že pokud v systému použijeme kosinovou míru podobnosti, můžeme si takto zjednodušit pojem těžiště (a celkově tím zjednodušit výpočty) a proti použití předchozího vzorce se v konečném efektu nic nezmění, i když součet vektorů při rozeně není jejich geometrickým těžištěm. (Kosinová míra podobnosti eliminuje vliv velikosti porovnávaných vektorů, takže je-li suma vektorů vydělena jejich počtem nebo ne, to skutečně nemá na výsledky žádný vliv.) Máme-li takto zaveden pojem centroidu, je zřejmé, že centroid shluku doku mentů lze použít nejen k porovnávání s dotazem, ale i k porovnávání s jakýmkoli jiným dokumentem, a tedy i celý proces shlukování lze založit na existenci cen troidu. Takové techniky shlukování byly propracovány k velké dokonalosti, až k algoritmům, při jejichž použití je možno jemně ovládat průměrnou velikost vy tvářených shluků, jejich počet nebo míru vzájemného překrývání. Některé z nich si zde ukážeme. Snadno přitom nahlédneme, že všechny algoritmy shlukování založené na centroidech mají jednu přednost: poskytují techniku, kterou lze po počátečním rozdělení množiny objektů do shluků téměř stejně použít i k přiřazení nových objektů do těch shluků, do kterých nejspíše patří. 2.4.5 Mac Queenův algoritmus shlukování Poměrně jednoduchý co do popisuje Mac Queenův algoritmus shlukování [8]. Po píšeme jej konkrétně pro shlukování množiny informačních vektorů dokumentů: 1. Z informačních vektorů, které máme, zvolíme náhodně KQ startovních cen troidu. 2. Každý další informační vektor přiřadíme k tomu centroidu, kterému je nejpodobnější, nebo — je-li jeho podobnost vůči všem centroidům menší než nějaká předem zvolená hodnota P\ — z něj uděláme nový centroid. 3. Ke každému takto vzniklému shluku znovu vypočteme centroid. 4. Shluky, jejichž centroidy mají nyní vzájemně větší podobnost než nějakou předem zvolenou hodnotu P , spojíme. K novým shlukům znovu vypočteme centroidy. 2 5. Centroidy považujeme za definitivní a každý informační vektor nově přiřa díme do shluku k tomu centroidu, kterému je nejpodobnější. Mac Queenův algoritmus tedy pracuje se třemi volitelnými parametry. KQ — žádoucí počet shluků (ten je ovšem automaticky korigován následujícími dvěma parametry); P\ — požadovaná minimální podobnost mezi centroidem a prvkem shluku; P — požadovaná maximální podobnost mezi dvěma centroidy. Tím už lze do jisté míry ovládat, kolik a „jak vyvážených" shluků má být vytvořeno. Popsaný základní postup lze dále různými způsoby modifikovat. Například 4. krok nemusí být prováděn jen jednorázově, může být opakován tak dlouho, do kud budou mít některé centroidy podobnost větší než P - (Spojením některých 2 2 122 KAPITOLA 2. METODY POROVNÁVÁNÍ . Obrázek 2.4: Přechodový diagram odvozený od Mac Queenova algoritmu shluků může znovu vzniknout taková situace pro nově vypočítané centroidy!) Také je evidentně možno po 5. kroku ještě jednou provést 3. krok, případně několikrát zopakovat celou sekvenci 3.-5. kroku (a pak eventuálně ještě jednou 3. krok). Modifikovaný postup tak nakonec může odpovídat libovolnému pří pustnému průchodu přechodovým diagramem na obr. 2.4, kde očíslované uzly odpovídají popsaným krokům základního Mac Queenova algoritmu. Nabízí se i následující možnost iterativního přibližování k optimálnímu vý sledku: 16 • provedeme proces podle základního algoritmu (posloupnost 1. až 5. kroku); • jestliže výsledek neuspokojuje, změníme P\ a P , příp. i i ř , a od některého kroku (podle toho, které parametry jsme změnili) proces zopakujeme, pří padně s nepatrnou úpravou, jako že za startovní centroidy vezmeme nějaké již vypočítané ap.; 2 0 • tak postupujeme tak dlouho, až je výsledek vyhovující. (Pod obecně užívanou 1. osobou množného čísla zde samozřejmě máme na mysli, že člověk nechá pracovat počítač podle základního algoritmu, ale sám může rozho dovat, zdaje už výsledek dobrý. I pro toto rozhodování může také „jen" stanovit kritéria a další algoritmus.) Konečně si všimněme, že s novým informačním vektorem, který chceme za řadit do systému shluků, můžeme naložit prostě v duchu 5., příp. 2. kroku al goritmu. Vždy po určitém výraznějším zvětšení báze dokumentů je pak zřejmě užitečné znovu vypočítat centroidy shluků a přeshlukovat informační vektory v duchu 5. (příp. 4. a 5.) kroku algoritmu. Tak je možno více či méně zpřesnit výsledek procesu, ale také značně zvýšit jeho časovou náročnost. Čistě teoreticky by v tomto algoritmu (i v dalším, který uvedeme) bylo představi telné, že bychom požadovali opakování určité jeho části tak dlouho, až dojde k tzv. ustálení výpočtu, tj. dalším opakováním už nevznikne nový výsledek. Nehledě k tomu, že by to pro daný účel vzhledem k náročnosti výpočtů p a t r n ě připomínalo „střílení z kanónu na mouchu", obecně tu není zaručeno, že by k ustálení vůbec někdy došlo. To je ovšem dost matematicky náročná záležitost. V praxi by spíše přicházelo v úvahu doplnění dalších p a r a m e t r ů určujících, kolikrát se maximálně opakuje 4. krok, resp. návrat od 5. ke 3. kroku. 1 6 2.4 SHLUKOVÁNÍ DOKUMENTŮ 123 Pokusme se na závěr srovnat právě rozebraný algoritmus shlukování s oběma dříve uvedenými. Na rozdíl od pododdílu 2.4.3 zde máme opět „v algoritmu ukrytou", procedurální definici shluku. Na rozdíl od obou předchozích přístupů se zde shluky vytvářejí kolem centroidu, které pak mohou sloužit jako reprezentanti shluků při vyhledávání odpovědí na dotazy. Vytvořené shluky se nepřekrývají. Mac Queenův algoritmus je variabilní — vlastnosti výsledku lze kontrolovat pomocí parametrů. Ačkoli start je náhodný, postup obsahuje prvky samoopravnosti. Dá se odhadovat, že algoritmus „má tendenci" maximalizovat výraz 17 K i=l XESÍ — kde: • SI,...,SK jsou nakonec vytvořené nepřekrývající se shluky, které jsou v souladu se vstupními parametry Pi a P ; 2 • s(x,y) je míra podobnosti shlukovaných objektů; • Ci označuje centroid shluku S{. A tím jsme se vlastně zpětně dostali k základu jakési deklarativní (matematické) definice systému shluků, o kterém by se dalo říci, že jej tento algoritmus hledá. 2.4.6 Rocchiův algoritmus shlukování Z podobných základů jako Mac Queenův algoritmus vychází ještě náročněji pro pracovaný Rocchiův algoritmus shlukování, jeden z algoritmů komplexně zkou šených v systému SMART [57]. Než popíšeme jednotlivé jeho kroky, vysvětlíme nejprve několik základních myšlenek, které jej odlišují od předchozího. 18 Jako potenciální startovní centroidy jsou podle tohoto algoritmu vybírány informační vektory, které splňují tzv. test hustoty. Testuje se, zda alespoň n\ vektorů má s daným podobnost alespoň pi a zda alespoň n jich má s daným podobnost alespoň p ; n\, p\, n a p jsou vstupní parametry pro test hustoty; smysl má stanovit buď n\ < n a pi > p , nebo naopak. Test hustoty zajišťuje, že za startovní centroid může být vybrán jen vek tor nacházející se v geometrické interpretaci skutečně „uprostřed" nějaké „kolem něho koncentrované" podmnožiny: vylučuje vektory na okrajích „objektivně exis tujících shluků" a vektory, které jsou „daleko" od všech ostatních vektorů; při vhodně zvolených parametrech by měl rovněž zajistit, aby se startovním centroidem nestal vektor nacházející se v geometrické interpretaci „uprostřed" jakéhosi „prstence" jiných vektorů. 2 2 2 2 2 2 J a k jsme již také ukázali (viz 2.4.4), na předchozí algoritmy by musela navazovat fáze výpočtu centroidu shluků, aby byl fakt shlukování rozumně využitelný. Jazyková poznámka: autor tohoto algoritmu se jmenuje J . J. Rocchio, Jr. Nejsprávnější výslovnost j m é n a je asi „rokjo", přivlastňovacího přídavného j m é n a pak „rokjův". 1 7 1 8 KAPITOLA 124 Pořadí vektoru 1. Podobnost s prvním 1 2. METODY POROVNÁVÁNÍ . Skok v hodnotě podobnosti 0,4 2. 0,6 3. 0,5 4. 0,48 0,1 0,02 0,06 0,42 5. 0,02 0,4 6. 0,05 7. 0,35 8. 0,3 9. 0,12 0,05 0,18 0,02 10. 0,1 Tabulka 2.1: Příklad ke „standardní proceduře shlukování k centroidu" Pro tvorbu shluků se předem zadávají parametry n [ a n určující mi nimální a m a x i m á l n í velikost v y t v á ř e n ý c h shluků. S těmito parametry pracuje opakovaně vyvolávaná procedura, která je dalším charakteristickým prv kem Rocchiova algoritmu a která se stará o nalezení prozatím optimálního shluku k danému centroidu; nazvěme j i pracovně „standardní procedura shlukování k d a n é m u centroidu". Na začátku této procedury se daný centroid porovná se všemi informačními vektory výchozí kolekce dokumentů, které se seřadí podle klesající podobnosti. Mezi vektory s pořadím n [ a n + 1 se poté hledá re lativně největší skok v hodnotách podobnosti; tím se získá v mezích požadavků nejpřirozenější hranice pro vytvářený shluk. Nachází-li se onen největší skok právě mezi vektory s pořadím n a n + 1, do vytvářeného shluku se zařadí prvních n vektorů. Příklad pro ilustraci: představujme si, že máme pouze 10 informačních vek torů, jeden z nich právě vyhověl testu hustoty a tab. 2.1 ukazuje podobnosti všech deseti vůči tomuto vektoru (on sám je v ní tedy na prvním místě, s ma ximální možnou hodnotou podobnosti, ale to teď není podstatné). Pro hodnoty ^min = 3 a n = 7 by byly do vytvářeného shluku vzaty první 4 vektory, m n m a x 19 m a a n m a x a m a x T e d y bez ohledu na to, zda už jsou v nějakém jiném shluku nebo zda j i m byl dosavadním postupem připsán jakýkoli jiný specifický statut! 19 2.4 SHLUKOVÁNÍ 125 DOKUMENTŮ protože v daném rozmezí — od 3. do 8. vektoru v tabulce — je maximální roz díl 0,06 mezi čtvrtým a pátým. Kdybychom ovšem změnili n na 8, bylo by do vytvářeného shluku vzato 8 vektorů, protože v rozmezí od 3. do 9. vektoru v tabulce je maximální skok 0,18 právě mezi osmým a devátým. m a x Mimoto má Rocchiův algoritmus rovněž vstupní parametr zadávající, kolik shluků by mělo být vytvořeno. Označme jej ve shodě s předchozím algoritmem opět KQ. Nyní můžeme popsat hlavní kroky Rocchiova algoritmu: 1. (Příprava.) Všechny informační vektory nejprve podrobíme testu hustoty. (Případně můžeme ihned opakovat tento postup s „uvolněnými" parametry tak, abychom získali alespoň K potenciálních centroidu — anebo můžeme změnit názor na žádoucí K ...) Vektory, které nesplnily test hustoty, označíme jako volné. To má pouze ten význam, že s nimi nadále nebudeme počítat jako s potenciálními startovními centroidy. Vektory, které splnily test hustoty, prohlásíme prozatím za neshlukované (nezařazené do žád ného shluku). 0 0 2. (Jádro.) Vybereme některý neshlukovaný (tzn. dosud nezařazený do žád ného shluku, avšak nikoli volný) vektor jako startovní centroid a prove deme výše popsanou „standardní proceduru shlukování" k tomuto centro idu. K vytvořenému shluku znovu vypočteme centroid a k tomuto centroidu znovu provedeme „standardní proceduru shlukování". Takto získaný shluk považujeme za dílčí výsledek; jeho prvky vyjmeme ze „stavu neshlukova ných, resp. volných", pokud v něm dosud byly. Celý tento komplexní krok opakujeme, dokud je to možné. (Výsledkem je množina shluků, obecně se překrývajících, a případně množina volných vektorů, do žádného shluku nezařazených.) 3. (Volitelný.) Je-li počet vytvořených shluků menší než i ř , modifikujeme parametry pro test hustoty a/nebo parametry n [ a n definující poža dovanou velikost shluků a začneme znovu od kroku l . 0 m n m a x 20 2 1 4. (Volitelný.) Celkově reorganizujeme shluky: při fixaci dosavadních centro idu přiřadíme každý vektor k nejpodobnějšímu centroidu. Pro takto vy tvořené shluky znovu vypočteme centroidy, a k těmto centroidům znovu provedeme „standardní proceduru shlukování". (Výsledkem tedy opět mo hou být překrývající se shluky i volné vektory, ale jejich rozložení by bez ohledu na vstupní parametry mělo lépe odpovídat povaze kolekce doku mentů. Pro tento krok je však rovněž možno změnit n [ a n , a tak ho využít ke změně míry překrývání shluků i počtu vektorů, které zůstanou volné.) m n m a x T o lze udělat interaktivně se zadavatelem úlohy, nebo i podle nějakého předem navrženého vzorce s ohledem na to, jak „špatný" je dosavadní výsledek. Případně by bylo možno uvažovat také o variantě opakování pouze kroku 2 — tzn. vytvářet nové shluky jen kolem vektorů, které po předchozím provedení kroku 2 zůstaly volné, nyní však splňují modifikovaný test hustoty. 2 0 2 1 126 KAPITOLA 2. METODY POROVNÁVÁNÍ . 5. (Volitelný.) Zbývající volné vektory definitivně přiřadíme do shluků s nejpodobnějšími centroidy. Jen pro zajímavost: 4. krok opět nabízí teoretickou možnost být opakován libovolně mnohokrát, přičemž nelze obecně říci, zda postup bude v matematickém smyslu k něčemu konvergovat (srovnej poznámku 16 k Mac Queenovu algoritmu — s. 122). Celkově vidíme, že Rocchiův algoritmus nabízí mnoho variant procesu a obecně o něm nelze mnoho tvrdit, i když náročnost výpočtu vypadá poměrně vysoká (při každém opakování „standardní procedury shlukování" se potenciální centroid porovnává s celou výchozí množinou informačních vektorů; náročnost testů hustoty také jistě není zanedbatelná). Jeho úspěšnost jistě závisí na správné počáteční volbě jeho poměrně značného množství vstupních parametrů. Algo ritmus sám v sobě obsahuje možnost dynamicky měnit parametry a opakovat části postupu, takže k uspokojivému výsledku v pojmech toho, co nabízí, by měl dojít vždy. Otázka je jen, za jakou cenu. Každopádně je jasné, že Rocchiův al goritmus dává uživateli mnohem širší možnosti volby, jak mají shluky vypadat, než všechny předchozí algoritmy, které jsme ukázali. Je to také jediný z ukáza ných algoritmů, který vytváří překrývající se shluky, což je nepochybně vlastnost praktická. 22 Co se týče nových vektorů, které bychom chtěli přiřadit do některého shluku, nabízí se na první pohled aplikace 5. kroku algoritmu. Přirozeně při určité výši přírůstku lze zcela obecně očekávat, že centroidy přestanou dostatečně reprezen tovat shluky, a je proto namístě jistá reorganizace: obecně přinejmenším přepo čítání centroidu, ale v duchu Rocchiova algoritmu by po přepočítání centroidu vždy mělo následovat nové standardní shlukování k nim, a pak tedy i nové rozdě lení zbývajících volných vektorů... — obecnou reorganizaci proveditelnou kdykoli vlastně popisuje 4.-5. krok algoritmu. 2.4.7 Možnost kombinace booleovského modelu vyhle dávání s vybranými prvky shlukování Zajímavý přístup k vyhledávání informací, kombinující tradiční booleovský mo del vyhledávání se specifickým pojetím shlukování, si můžeme ukázat na příkladě dvou blízce příbuzných vyhledávacích systémů Entrez a PubMed, vytvořených in stitucemi veřejného zdravotnictví U S A (National Library of Medicíně — NLM, National Institute of Health — NIH) jako nástroje zpřístupňující systém pře vážně textových (dokumentografických i faktografických) databází oblasti mediVerze algoritmu použitá v systému SMART m á navíc ještě další vstupní parametry, které speciálně mohou zvýšit efektivitu procesu: konkrétně je to minimální váha termínu v infor mačním vektoru a minimální hodnota podobnosti, které se vůbec pro veškeré výpočty berou v úvahu. V rámci komplexních experimentů se systémem SMART byl Rocchiův algoritmus dále vyvíjen k maximální časové efektivitě, přičemž byla hlavní pozornost věnována právě m e t o d á m volby p a r a m e t r ů [14]. 2 2 2.4 SHLUKOVÁNÍ DOKUMENTŮ 127 cíny a lékařské biologie. V příručkách obou systémů se doporučuje zhruba tento postup vyhledávání: 1. Zadáme obvyklou formu booleovského dotazu — kombinaci hledaných ter mínů spojených zvolenými logickými operátory. Tento dotaz je vyhodnocen pomocí tradiční techniky indexového souboru. • Výstupem je seznam dokumentů (resp. záznamů faktografické data báze) odpovídajících zadanému dotazu — v podstatě neuspořádaný, bez jakéhokoli odhadu míry relevance. • Ke každému záznamu ze zobrazeného seznamu je však možno nechat si zobrazit návazný seznam jeho tzv. sousedů (neighbors). To je vlastně jakýsi „shluk" vytvořený kolem právě daného záznamu jako svého „centroidu". (V systémech Entrez a PubMed se ovšem nepoužívají ter míny jako „shluk" nebo „centroid", pouze je řečeno, že „sousední zá znamy jsou záznamy obsahově nejpodobnější danému". Seznamy „sou sedů" ke všem záznamům jsou přitom trvale uchovávány ve speciální datové struktuře.) 2. Nyní bychom mohli nejprve projít celou odpověď na původní dotaz, a poté případně k některým vyhledaným záznamům také seznamy jejich „sousedů". Efektivnější však pravděpodobně bude — zejména pokud je se znam nalezených záznamů dlouhý — vybrat několik z á z n a m ů z jeho začátku, které se n á m zdají s k u t e č n ě relevantní, a tento v ý b ě r rozšířit o jejich „sousedy". Tak obvykle najdeme ty záznamy, které hle dáme (a které jsou v prohledávaných databázích), výrazně rychleji, než kdybychom se snažili iterativně dolaďovat původní booleovský dotaz. Otázky a cvičení k oddílu 2.4 Cvičení 2.4.1 Popište algoritmus nalezení nejbližšího společného nadřazeného deskriptoru k množině deskriptorů ve stromové hierarchické struktuře tezauru. (Vyjděte z datových struktur popisovaných v pododdíle 1.5.1.) Otázka 2.4.2 Při tvorbě informačních vektorů, které mají sloužit měření po dobnosti dokumentů, je zvlášť důležité neindexovat dokument výrazy obecného významu, necharakterizujícími jeho odborné zaměření. Proč je to v tomto případě důležitější než při pouhém naplňování indexového souboru odkazy na dokumenty? Cvičení 2.4.3 Na obr. 2.5 je symbolicky znázorněno 7 dokumentů jako body v rovině, jejichž vzájemná geometrická blízkost odpovídá míře obsahové podob nosti. Rozdělte tuto množinu dokumentů do shluků podle McQuittyho algoritmu. Otázka 2.4.4 Může po skončení postupu podle McQuittyho algoritmu zůstat 1 dokument nezařazený do žádného shluku? KAPITOLA 128 2. METODY POROVNÁVÁNÍ . Obrázek 2.5: O o o o 5 o o 7 o Cvičení 2.4.5 Rozhodněte, zda ve shlucích vytvořených podle McQuittyho algo ritmu může existovat následující situace: dokumenty D\ a D náleží do 1 shluku, dokument D do něho nenáleží, a přitom 2 3 s(D ,D ) 1 2 = s(D ,D ) 2 s . * Cvičení 2.4.6 Pokuste se navrhnout způsob připojení nového objektu k ně kterému z vytvořených shluků, který by byl myšlenkově (použitými pojmy a pro středky) co nejbližší: a) McQuittyho algoritmu shlukování; b) „klasifikačnímu" algoritmu. Otázka 2.4.7 Proč se shluky získané Rocchiovým vají? algoritmem obecně překrý Otázka 2.4.8 Které dokumenty zůstanou po provedení postupu podle Rocchiova algoritmu neshlukované, ale nikoli volné? Jaký je přesný rozdíl mezi významem termínů „neshlukovaný" a „volný" používaných v Rocchiově algoritmu? Otázka 2.4.9 Které dokumenty zůstanou po provedení postupu podle Rocchiova algoritmu volné — nezařazené do shluků? Jak lze ovlivňovat jejich množství? 2.4 SHLUKOVÁNÍ DOKUMENTŮ 129 Otázka 2.4.10 Jak byste stanovili parametry n [ a n pro Rocchiův algorit mus, pokud byste chtěli, aby v průměru padl každý dokument do 2 shluků? m n m a x Cvičení 2.4.11 Mějme množinu o N prvcích, označených čísly 1, 2, ... , N. Napište v libovolném programovacím jazyce program, který rozděluje tuto mno žinu do shluků: a) podle McQuittyho algoritmu; b) podle „klasifikačního" algoritmu, s kohezní funkcí C\ (kritérium navrhněte podle vlastní úvahy); c) podle Mac Queenova algoritmu (v základní d) podle Rocchiova algoritmu (v minimální ukončení variantě); variantě). Vstupem programu nechť je číslo N a podle potřeby parametry příslušného algo ritmu. Výstupem nechť je výpis tvaru: 1. shluk: čísla prvků 2. shluk: čísla prvků [případně pro variantu d): volné prvky: čísla prvků] Předpokládejte, • S(X,Y) že již máte nějakým způsobem k dispozici funkce: vy číslující podobnost prvků množiny označených čísly X a Y; • pro varianty c) a d) CENTROID přiřazující centroid určené podmnožině — rozhraní této funkce vhodně dodefinujte! čísel * Otázka 2.4.12 Které z algoritmů shlukování zde demonstrovaných by bylo možno použít k vytváření hierarchie shluků naznačené v pododdíle 2.4-1 na s. 112? Jakým konkrétním způsobem? * Cvičení 2.4.13 C. J. van Rijsbergen definoval následující kritéria korekt nosti shlukování [45, 52]: 1. Metoda by měla být stabilní při růstu kolekce dokumentů (tj. vstup nevel kého množství nových dokumentů by neměl způsobit velkou změnu rozdělení celé kolekce do shluků). 2. Malé chyby v popisu dokumentů rozdělení do shluků. by neměly způsobovat velké změny jejich 3. Metoda by měla být nezávislá na počátečním uspořádání dokumentů. Pokuste se ohodnotit výše probrané algoritmy shlukování z hlediska splnění (resp. evidentnosti splnění) těchto kritérií. (Je to vůbec záležitost samotných algoritmů v té formě, jak byly uvedeny, anebo jde spíše o něco, co popisy jednotlivých al goritmů předpokládají, ale přímo nespecifikují?) KAPITOLA 2. METODY POROVNÁVÁNÍ . 131 Kapitola 3 Možnosti automatizace tvorby tezauru V oddíle 1.5 jsme si ukázali, jakým způsobem a do jaké míry může být te zaurus užitečný pro automatizované zpracování dokumentů a dotazů. Přitom jsme i naznačili možnosti jeho počítačové implementace. Je samozřejmé, že už sama počítačová implementace tezauru má svůj význam pro zvýšení efektivity jeho údržby — doplňování, případně libovolných jiných aktualizací. Například i tak triviální úprava jako změna pravopisu jednoho deskriptoru, anebo vzájemná výměna dvou ekvivalentních termínů v pozicích deskriptoru a nedeskriptorů, je v „klasické" (primárně tiskové) podobě tezauru velmi obtížně realizovatelná. Má-li tezaurus podobu speciální databáze, podobné zásahy lze provádět poměrně snadno. Tezaurus se ovšem i podstatně snáze v y t v á ř í — jako každý slovník — v po čítači než na papíře. První stupeň automatizace tvorby tezauru spočívá prostě v tom, že při jeho sestavování se použije alespoň dostatečně vyspělý textový edi tor, lépe však databázový (nebo hypertextový) systém. Nicméně možnosti auto matizace sahají již dávno značně dále [4, 7, 8, 58, 63, 68, 78], i když „konečné slovo" v sestavování tezauru stále musí mít člověk. 3.1 Automatizace „ručního" sestavování zauru te Pokud člověk sestavuje tezaurus od začátku až do konce bez použití jakékoli automatizace, jeho práce je jen z malé části tvůrčí. Představme si, jak bychom mohli postupovat při intelektuálním návrhu tezauru. Napadají nás termíny, nebo je objevujeme v textech, a s každým z nich provádíme následující úkony: 1 Schéma postupu je v tomto případě záměrně popsáno formou, která odpovídá spíše lid skému způsobu uvažování a komunikace než formalizaci algoritmů pro počítač. Činnost, kterou zde popisujeme, sama není předmětem automatizace — a člověk při jejím provádění obvykle neuvažuje v kategoriích strukturovaného (nebo jiného) programování. 1 KAPITOLA 132 3. AUTOMATIZACE TVORBY TEZAURU 1. Kontrola: je už tento termín zaznamenán? Pokud ano, K O N E C . Pokud ne, pokračuj. 2 2. Zaznamenej termín. 3. Rozhodnutí: bude to deskriptor nebo nedeskriptor? 4. Deskriptor: označ jej jako deskriptor a připiš k němu bezprostředně pod řazené deskriptory, příp. bezprostředně nadřazený deskriptor, a aso ciované deskriptory (všechny, na které si vzpomeneš). Nedeskriptor: označ jej jako nedeskriptor, připiš „viz" a předpokládaný ekvivalentní deskriptor. Víc se v této fázi dělat nedá. Ve výsledku, který takto vznikne, samozřejmě nebude úplná terminologická zásoba daného oboru — ale ta nakonec není nikdy v žádném tezauru, pokud nejde o časově uzavřený obor a tezaurus vytvářený dlouhá léta. Jinak ve vzniklém „polotovaru tezauru" budou, pokud jsme pracovali svědomitě, implicitně obsaženy všechny důležité informace o termínech, které má tezaurus poskytovat. Zbývá je jen převést do explicitnějšího tvaru, se kterým by se uživateli lépe pracovalo. Konkrétně to bude obnášet: • kontrolu, příp. doplnění symetrie hierarchických vztahů mezi deskriptory (je-li A nadřazený B, je B podřazený A a naopak); • doplnění vztahů deskriptor o ekvivalentní tovaru" máme jen vazby obrácené); nedeskriptory (v našem „polo • pro větší jistotu symetrický uzávěr asociovanosti, tj. ke každé explicitní vazbě „s A asociováno B doplnění (pokud chybí) vazby „s B asociováno A"; u • abecední seřazení všech termínů, případně jejich výpis v tomto pořadí s uve dením všech vztahů (čímž vznikne podklad pro standardní tiskové vydání tezauru). To je jasný úkol pro počítač — předpokládá pouze uložení všech záznamů, které máme, v databázi. Pokud ovšem budou záznamy primárně vytvářeny na papírech a vloženy do databáze až souhrnně nakonec, těžko se lze vyhnout mnohým inkonzistencím. Například: termín T\ je označen jako deskriptor s nadřazeným deskriptorem T ; T nemá mezi svými podřazenými deskriptory 7\; to by samo o sobě nemuselo vadit — ale: T má mezi podřazenými deskriptory T a T má mezi svými pod řazenými deskriptory T\. Explicitně zaznamenané vazby tedy vypadají jako na obr. 3.1. 2 2 2 3 3 P ř í p a d n ě můžeme zkontrolovat jeho zaznamenané významové vztahy, porovnat je s použi tím, které m á m e právě na mysli či před sebou, a pokud něco nesouhlasí, opravit. 2 3.1 „RUČNÍ" SESTAVOVÁNÍ 133 Obrázek 3.1: Zacyklení v deklarovaných hierarchických vztazích Jiný příklad: termín T\ je označen jako deskriptor s asociovaným deskrip torem T ; T je však označen jako nedeskriptor — ekvivalent deskriptoru T . K tomu mohlo dojít tak, že sestavovatel tezauru nejprve zpracoval hesla T\ a T jako deskriptory, a někdy později se rozhodl, že T bude vhodnější deskriptor než T . Protože v té chvíli neměl před sebou ve viditelné podobě vztah T i o T , neprovedl opravu u T\. Problémům naznačeného druhu se lze nejspolehlivěji vyhnout tím, že budeme záznamy o termínech a jejich tezaurových vztazích vytvářet přímo v nějakém databázovém (nebo hypertextovém) systému, a vždy předtím, než přidáme nový odkaz od nějakého T\ k nějakému T , zkontrolujeme, v jakých vztazích se už T\ i T nacházejí (tzn. nejen, na co explicitně odkazují T\ a T , ale i jaké explicitní odkazy na T\ nebo T už existují). 2 2 3 2 3 2 2 2 2 2 2 Popsaný postup lze samozřejmě na mnoho způsobů modifikovat. Mohli jsme například začít tím, že jsme sepsali (nebo odněkud převzali) nějaký hierarchický systém číselných kódů pojmů, podobný, jaký ukazuje tab. 3.1 [78]. Přitom je možno si představit, že by pod některými číselnými kódy bylo uvedeno i víc ter mínů, z nichž některé by byly označeny jako deskriptory, jiné jako nedeskriptory. Pak bychom mohli ještě k tomuto systému v nějaké formě dodat vztahy asociovanosti — a opět by zbývalo už jen přepsat všechny implicitní vazby na explicitní a vytvořit abecední uspořádání, aby byl získán standardní tezaurus, pohodlný pro lidského uživatele, ale i efektivní pro automatické použití. Takové „dokončo vací operace" jsou každopádně mechanickou prací, nepříjemnou pro člověka, ale poměrně snadno řešitelnou pomocí počítače za předpokladu uložení základního lidského výtvoru vhodným způsobem na vhodných paměťových médiích. Je tedy vidět, že proti přijetí tištěného tezauru jako „základu, od kterého se odvíjí všechno další" — včetně různých forem automatizace, je mnohem vý hodnější považovat počítačovou reprezentaci za logický základ pro všechny další práce a (případnou) tištěnou podobu jen za podpůrnou, vytvářenou pro zájemce KAPITOLA 134 3. AUTOMATIZACE 550102 55010201 5501020101 dějiny T V antická T V antické olympiády 5501020104 5501020105 5501020106 55010202 5501020201 kalokagathia spartská T V athénská T V feudální T V rytířská T V TVORBY TEZAURU Tabulka 3.1: Příklad tělovýchovného systematického rejstříku na základě jeho speciální potřeby. Přitom by si tato tištěná podoba ani neměla činit nárok na reprezentaci tezauru jako takového, nýbrž mělo by se k ní při stupovat tak, že reprezentuje tezaurus v určitém časovém okamžiku. Existence počítačové reprezentace zároveň umožňuje kdykoli velmi rychle připravit aktu ální tištěnou verzi. Otázky a cvičení k oddílu 3.1 Cvičení 3.1.1 Mějme některým ze zde uvedených způsobů (viz pododdíl 1.5.1) v počítači reprezentovaný tezaurus. (Nezapomeňte k tomu na vhodnou reprezen taci abecedního řazení hesel!) Uvažte, co v takové reprezentaci obnáší bezpečné konzistentní provedení následujících operací: a) přidání deskriptoru; b) přidání nedeskriptorů; c) zrušení deskriptoru; d) zrušení nedeskriptorů; e) vzájemná záměna deskriptoru a f) náhrada hierarchického nedeskriptorů; vztahu mezi 2 deskriptory vztahem asociovanosti; g) změna lexikální hodnoty deskriptoru. (Uvědomte si přitom pokaždé, jak by se taková změna dala provést přímo v pa pírové předloze pro tisk a jaká část už existující tiskové sazby by pak ještě byla použitelná.) 3.1 „RUČNÍ" SESTAVOVÁNÍ 135 Cvičení 3.1.2 Mějme libovolné torzo struktury tezauru v některé z variant podle pododdílu 1.5.1. Zformulujte obecný algoritmus doplnění všech vazeb, které lo gicky plynou z vazeb ve struktuře uvedených. Cvičení 3.1.3 Popište algoritmus přeměny systematického rejstříku termínů s číselnými kódy (podle naší ukázky) na datovou strukturu některé z variant podle pododdílu 1.5.1. 136 KAPITOLA 2996 c m standardním provedení exkluzivní mistrovský automobilů pro mm), největší vozech. Standardní výběr škálu motorem o 3 3. AUTOMATIZACE VÝKON VÝKON VÝKON VÝKON VÝKON VÝKONNÉ VÝKONNĚJŠÍCH VÝKONU TVORBY TEZAURU 125 k W 158 k W letošního smolaře povolání i 40 k W motory objemu motorů včetně až 180 Obrázek 3.2: Ukázka rejstříku K W I C 3.2 Automatizovaný výběr lexika pro tezaurus z dané množiny t e x t ů Mějme množinu textů z určité tématické oblasti uloženou na počítačových pa měťových médiích — a zadanou úlohu sestavit tezaurus této tématické oblasti. Možnost automaticky z daných textů vybrat množinu lexikálních jednotek jako základ tezauru je evidentní a nepředstavuje nic nového. Například získání abe cedně seřazeného přehledu všech slov vyskytujících se v textech znamená v sys tému s indexovým souborem pouze výpis tohoto indexového souboru. Pro dobrý tezaurus je zpravidla třeba nalézt víceslovné termíny, které se v textech vyskytují, stejně jako je třeba ověřit, zda některá slova nejsou v tex tech používána ve více různých významech. Jednou z nejjednodušších pomůcek, které se nabízejí k této úloze, je automatické sestavení tzv. rejstříku K W I C (Key Words In Context). To je vlastně soubor podobný indexovému sou boru, ale ke každému „přístupovému termínu", kterým je tu slovo v konkrétním výskyty obsahuje jeho levý a pravý kontext určité délky (např. 2 slova). Také postup tvorby je obdobný postupu tvorby běžného indexového souboru. Ukázku vybraného úseku takového rejstříku pro oblast motorismu (mimochodem vybra nou z jediného čísla časopisu Svět motorů), vidíme na obr. 3.2. Z této ukázky je vidět, že slovo výkon se sice většinou vztahuje k motory ale může se vyskytnout i v jiném významu (sportovní výkon, výkon povolání). Existují však i metody a u t o m a t i c k é extrakce celých víceslovných po tenciálních t e r m í n ů z textu. Jednu takovou metodu jsme již poznali v ka pitole 1 — jmenuje se MOZAIKA. Aplikace této metody ovšem předpokládá, že někdo předem stanovil systém koncových segmentů charakterizujících jedno slovné terminologické prvky daného oboru. Metoda MOZAIKA není svým zaměřením zcela ojedinělá. Podobné nástroje se vytvářejí i v jiných zemích pro jiné jazyky, často přímo s primárním účelem sestavování tezauru. Jedním z nich je např. francouzský systém extrakce termi nologie z textu LEXTER [4, 72]. 3.3 VZTAHY 3.3 MEZI TERMÍNY 137 Automatizované vyhledávání tezaurových vztahů mezi termíny 3.3.1 Porovnávání termínů v ý s k y t u v textech podle jejich společného V předchozí kapitole jsme zavedli informační vektor textu jako vektor vah jed notlivých prvků selekčního jazyka (termínů) v tomto textu. Obraťme nyní tuto myšlenku a zaveďme informační vektor t e r m í n u jako vektor (n-tici) vah to hoto termínu v jednotlivých textech nějaké sbírky. Termínu tedy bude přiřazen informační vektor v = (v ...,v ) , u N kde VÍ pro i = 1,..., N je váha tohoto termínu v i-tém textu z celkového počtu N textů sbírky. Takové vektory lze snadno získat například z množiny výstupů sys tému MOZAIKA na jednotlivých textech. Pro některé váhové funkce — srovnej 1.2.3 —je lze získat také z jakéhokoli indexového souboru, samozřejmě k termí nům takového tvaru, jaké v něm jsou uloženy. 3 Je-li sbírka textů dostatečně rozsáhlá a celkově reprezentativní pro daný obor, je možno na základě informačních vektorů termínů získaných nad sbírkou učinit jisté soudy o pravděpodobných obsahových vztazích termínů. Bez problémů se zřejmě shodneme na tom, že termíny, které se soustavně (často) vyskytují v tex tech společně, je možno prohlásit za asociované (nebo alespoň za kandidáty na asociovanost, které by měl člověk z tohoto hlediska přezkoumat). Je možno jít dále a tvrdit, že je-li termín T\ soustavně (často) v textech doprovázen termí nem T , ale opak neplatí, je pravděpodobně T\ p o d ř a z e n ý m termínem vůči T . (Původem tohoto tvrzení je celkem zřejmý fakt, že když se někde hovoří např. o hokeji, dost často se tam vyskytuje i slovo hra, protože hokej je hra.) Zmíněné formy souvýskytů termínů lze na informačních vektorech zkoumat a porovnávat např. pomocí již dříve (srovnej cv. 2.2.3) definované míry asymet rického překrytí vektorů: 2 2 N a (u,v) = 7 i=l (Připomeňme k tomu jen, že informační vektory termínů budou v podstatě stejně „řídké" jako informační vektory textů, takže technika počítání s nimi bude na prosto stejná — srovnej pododdíl 2.2.4.) Označme nyní U a V dva zkoumané termíny, jimž byly přiřazeny informační vektory u a v. Míra podobnosti 0 7 má evidentně následující vlastnost: Představíme-li si matici (WÍJ) typu (rozměru) M x N, ve které WÍJ je váha přiřazená termínu i v dokumentu j (taková matice se někdy v literatuře nazývá „ m a t i c e t e r m í n — dokument"), vidíme, že zatímco informační vektory dokumentů tvoří sloupce této matice, informační vektory termínů tvoří její řádky. 3 KAPITOLA 138 3. AUTOMATIZACE TVORBY TEZAURU • je-li termín U v textech často doprovázen termínem V, bude hodnota a?(ů,v) relativně velká, zatímco o hodnotě a?(v,ů) nelze nic říci; • je-li naopak pravda, že s termínem U se většinou současně nevyskytuje termín V, bude hodnota a^iu^v) relativně malá. Zvolíme-li určitou vhodnou „kritickou hodnotu" K takovou, že 0 < K < 1 (funkce 0 7 nabývá vždy hodnot od 0 do 1), můžeme shrnout předchozí úvahy do „rozhodovací tabulky" 3.2. Vztahy mezi termíny vydedukované takto čistě na základě statistiky jejich souvýskytu v textech je ovšem kriticky třeba chápat spíše jako n á m ě t y k pře zkoumání pro člověka zodpovědného za vytvoření tezauru. Nikdy nelze vylou čit, že statistický výsledek plyne z něčeho jiného než obsahového vztahu termínů, zvláště pokud jde o hierarchické vztahy. Na druhé straně tímto způsobem t é m ě ř jistě nebudou nalezeny v š e c h n y vztahy, které by bylo žádoucí zachytit. Nejde teď ani tak o to, že na hod nocení souvýskytu lze těžko seriózně založit odhalování synonymie, která je ze všech vztahů v tezauru patrně nejdůležitější: na její odhalování prostě metoda v seriózním pojetí vůbec neaspiruje, to je třeba ponechat jiným metodám. Ovšem představme si, že bychom na této metodě chtěli založit vytvoření tezauru urče ného k usnadnění vyhledávání v automatizovaném informačním systému. Nechť nyní uživatel chce vyhledat texty hovořící o A. Dejme tomu, že existuje termín B, který byl shledán asociovaným s termínem A. Na základě tezauru uživatel může rozšířit svůj dotaz o B — ovšem tím pravděpodobně nedosáhne příliš výrazného rozšíření výsledku dotazu, protože asociovanost A a B byla zaznamenána do te zauru právě na základě jejich častých výskytů ve stejných dokumentech! Velmi pravděpodobně bude existovat i významově blízký termín C , který se ale zpra vidla nevyskytuje v textech zároveň s A — např. proto, že A a C jsou termíny zavedené dvěma vědeckými pracovišti, která „nenalezla společný jazyk". Tudíž právě tento pro vyhledávání důležitější vztah mezi A a C tezaurus neposkytne, pokud nebude odhalen jiným způsobem. V tomto okamžiku je ovšem třeba si opět říci, že nedokonalá, ale jednoduchá automatická pomůcka pro řešení dost velké části nepříjemného úkolu (v tomto případě hledání všech potenciálně zajímavých vztahů mezi termíny) je každo pádně lepší než žádná pomůcka. 4 3.3.2 Porovnávání termínů na základě metody S É M A N (princip systému ATEZ) Mějme jakýmkoli způsobem získanou slovní zásobu pro vytvářený tezaurus. V od díle 1.6 jsme popsali princip sémantického analyzátoru SÉMAN a ukázali jsme, Mimochodem není nijak zaručeno, že hierarchická struktura vytvořená z termínů za pomoci tab. 3.2 bude taková, že každý termín bude mít nejvýše jeden nadřazený termín — což se u tezauru obvykle považuje přinejmenším za vhodné. 4 3.3 VZTAHY MEZI TERMÍNY a (u,v) 7 < > > < K K K K 139 a (v,u) 7 < > < > K K K K PRAVDĚPODOBNÝ VZTAH mezi U a V žádný asociované U podřazen V U nadřazen V Tabulka 3.2: Tezaurové vztahy naznačované mírou asymetrického překrytí infor mačních vektorů termínů jak je na tomto principu možno přiřadit každému slovu, ale i víceslovnému ter mínu obraz vyjadřující jeho obsah pomocí elementárních obsahových prvků — sémový ekvivalent. Předpokládejme nyní, že máme k dispozici sémové ekviva lenty všech termínů pro vytvářený tezaurus. (Získání těchto sémových ekviva lentů je jistě obecně dost pracné. Nepochybně je vhodné, aby tuto práci dělala skupina lidí se zkušenostmi a konzistentními způsoby při používání nabízených prostředků. Je-li taková skupina k dispozici pro celou řadu podobných úkolů, je možné a užitečné, aby udržovala pro svou potřebu přehled všech sémových ekvi valentů jazykových výrazů, které už někdy vytvořila. Takovou „bázi lexikálních jednotek", nazvanou BALEX, skutečně vytvořila skupina pracovníků na metodě SEMAN kolem jejího autora V. Smetáčka; jejich zkušenosti ukazují, že nako nec celá tato úloha není tak složitá, jak by se mohlo zdát. Jistou subjektivitu a neobecnost arci nelze vyloučit.) Vezměme libovolné dva termíny T\ a T a jejich sémové ekvivalenty S\ a S (chápané jako množiny sémů). Je evidentní, že pokud jsou sémové ekvivalenty adekvátní, lze z nich vyvodit určité relativně velmi přesné závěry o tezaurových vztazích mezi termíny. Nejprve se podívejme na „základní množinový vztah" mezi sémovými ekvi valenty. Jestliže 5 i = £ 2 , termíny 7\ a T jsou zřejmě ekvivalentní (synonymn í ) . Je-li Si C S (vlastní množinová inkluze, tj. S obsahuje všechny sémy jako Si a ještě nějaké další), je nejspíše Ti obecnější, a měl by tedy být v tezauru nadřazený vůči T (a obdobně je-li Si D S , měl by asi být Ti p o d ř a z e n ý T ) . 2 2 2 5 2 2 6 2 2 2 M á m e - l i být přesní, za předpokladu konzistentního přiřazení sémových ekvivalentů jistě platí obrácená implikace: jsou-li T\ a T synonyma, je S\ = S2. Tohoto faktu se v metodě ATEZ využívá — rovnost sémových ekvivalentů je podmínkou nutnou k ekvivalenci termínů. V praxi se samozřejmě může stát, že dva termíny se shodnými sémovými ekvivalenty neoznačují úplně totéž. To pak svědčí o nedostatečné rozlišovací schopnosti použitého systému sémů a/nebo způsobu jejich přiřazování pro danou věcnou oblast — a tento problém lze případně odstranit úpravou sémových ekvivalentů, t ř e b a i na základě zavedení dalšího sému. V každém případě ovšem rovnost sémových ekvivalentů svědčí o velké blízkosti významu termínů, a tedy vhodnosti stanovení nějakého tezaurového vztahu mezi nimi. V i z dále! O p ě t lze doplnit, že přísně vzato stavíme na implikaci, která jistě platí obráceně, v tomto směru pak jen tehdy, má-li systém sémů dostatečnou rozlišovací schopnost. Neukazuje-li však v konkrétním případě množinová inkluze skutečný hierarchický vztah mezi termíny, zřejmě 5 2 6 KAPITOLA 140 3. AUTOMATIZACE TVORBY TEZAURU Obrázek 3.3: Prostá stromová hierarchická struktura Ani tato metoda, stejně jako předchozí popsaná, nezaručuje, že k termínu bude stanoven nejvýše 1 nadřazený termín. Navíc je zde ještě „reálné nebezpečí", že např. místo očekávané „rozumné" hierarchické struktury termínů, jakou ukazuje obr. 3.3, vznikne (bude „objevena") nepřehledná struktura odpovídající obr. 3.4 (která, kdybychom to chtěli vyjádřit matematicky, je tranzitivním uzávěrem té na obr. 3.3)! Tuto nepříjemnost (kterou bychom viděli ještě lépe, kdybychom zob razili víc než 2 úrovně hierarchie — pokud bychom na obrázcích vůbec ještě něco viděli) však dokážeme do jisté míry jednoduše odstranit úpravou, jejíž podstatu ukážeme za chvíli. Zatím jsme nehovořili o konstrukci vztahu asociovanosti na základě sémových ekvivalentů, je ovšem zřejmé, že obsahová podobnost termínů (která je podstatou tezaurové asociovanosti) se musí projevovat podobností jejich sémových ekvivalentů. Zbývá otázka, jak měřit podobnost sémových ekvivalentů, ale to by pro nás nyní neměl být nejmenší problém. V literatuře o SÉMANu můžeme najít základní vzorec pro výpočet podobnosti k mezi 2 sémovými ekvivalenty 7 PL1 + PL2 — kde PL1 a PL2 jsou počty sémů v sémových ekvivalentech 1. a 2. „lexikální jednotky" a PS je počet společných sémů obou sémových ekvivalentů. Takový zá pis je velmi názorný, ovšem v našem kontextu neuškodí, když ho zkusíme trochu lépe formalizovat. Zajímavé je, že k exaktnějšímu popisu výpočtu míry podob nosti dvou sémových ekvivalentů (a vzápětí pak i k jeho zdokonalení!) může velice přispět, reprezentujeme-li sémový ekvivalent specificky pojatým informač ním vektorem termínu s = (si,... ,s ) M ukazuje jiný vztah, který může být užitečné v tezauru zachytit! Z a cenu značné výpočtové náročnosti, časové i paměťové, bychom j i mohli odstranit i zcela exaktně. Prakticky to asi nemá smysl. 7 3.3 VZTAHY MEZI TERMÍNY 141 Obrázek 3.4: Tranzitivně uzavřená hierarchická struktura — kde Si je 0, jestliže i-tý sem není přítomen, a 1, jestliže je přítomen (před pokládáme, že všechny sémy byly pro tento účel očíslovány; M označuje jejich celkový počet). V tom případě je výše uvedenému vzorci ekvivalentní například tento zápis: _ 2(g-tt) * M ) = M M i=l i=l To je ovšem Diceova míra podobnosti, cr z našeho pododdílu 2.2.3! Pro vektory skládající se pouze z nul a jedniček jsou však ekvivalentní i jiné zápisy, například tato „variace na téma" míry symetrického překrytí: 5 M 2 • ^min(^,^) a (Ů,v) 9 = —M- f i=l 1 M i=l Nyní můžeme rozvinout další úvahu. Jak je vidět i z našich příkladů v od díle 1.6, jednotlivé používané sémy se vzájemně liší mírou obecnosti — některé označují jen gramatické kategorie, jiné velmi obecné obsahové třídy, jako např. osobu, látku ap. Tyto sémy mohou někdy způsobit, že se dva termíny jen na základě shody v nich budou jevit jako hodně podobné, a to je zřejmě nežádoucí. Co nám však brání zavést v „sémových informačních vektorech" termínů i jiné váhy jednotlivých sémů než 0 a 1? Stanovme například, že: • sémy označující gramatické kategorie („přídavné jméno" ap.) budou mít v sémovém ekvivalentu, ve kterém jsou přítomny, vždy váhu 0,25, • sémy označující obecné obsahové třídy („osoba" ap.) váhu 0,5, KAPITOLA 142 3. AUTOMATIZACE TVORBY TEZAURU • sémy označující středně obecné procesuální charakteristiky („ukončení", „změna" ap.) nebo třídy věcí („stroj" ap.) váhu 0,75 a • teprve zbývající nej charakterističtější sémy budou dostávat váhu 1. Tak to bylo původně stanoveno v systému ATEZ („Automatický tezaurus") [68]. Míra podobnosti může zůstat stejná — cr nebo cr (přístup popsaný v [68] odpovídá přesněji cr ); na jinak tvořených vektorech (= sémových ekvivalentech s vahami) bude dávat realističtější výsledky. Jestliže máme vhodnou míru podobnosti sémových ekvivalentů, je nasnadě stanovit, že asociované mají b ý t termíny T\ a T , které nejsou v žádném jiném vztahu a pro jejichž „sémové informační vektory" š[ a s platí ve zvolené míře podobnosti o A , že 5 9 9 2 2 VA(S S ) U > 2 K (K je vhodná prahová hodnota, v systému ATEZ se doporučuje 0,5 až 0,6). Ob dobně můžeme upřesnit, že T\ je b e z p r o s t ř e d n ě nadřazený T , jestliže S\ C C S (zde bereme sémové ekvivalenty jako množiny v souladu s počátkem to hoto pododdílu) a zároveň O A ( S ~ I , 5 2 ) > K (pro odpovídající „sémové informační vektory"). Tím zamezíme vzniku bezprostřední vazby mezi velmi konkrétním a velmi obecným termínem. Na principu S É M A N u lze tedy automaticky v y h l e d á v a t ekvivalenci, n a d ř a z e n o s t / p o d ř a z e n o s t i asociovanost nad danou množinou termínů, a to dost přesně — za předpokladu správného přiřazení sémových ekvivalentů ter mínům, které se tak stává intelektuálním jádrem procesu. (Samozřejmě ovšem je i zde namístě intelektuální revize automaticky získaných výsledků, má-li se dosáhnout dokonalosti. Systém ATEZ poskytoval i pro tuto revizi výhodné pod mínky.) Jediné, co podobná automatizace nedokáže do tezauru vložit, je rozdíl mezi deskriptory a nedeskriptory. Mohlo by být zajímavou otázkou, zda výběr vhodného deskriptoru ze skupiny synonym je vůbec smysluplně algoritmizovatelná úloha — pokud nechceme vybírat náhodně, nebo podle nějakého ryze technického kritéria, např. délky výrazu. 2 2 Otázky a cvičení k oddílu 3.3 * Cvičení 3.3.1 Mějme matematickou relaci nad nějakou množinou (např. re laci obsahové nadřazenosti mezi termíny jazyka), reprezentovanou úplným výčtem uspořádaných dvojic (např. zápisem [Ti,T ] budeme rozumět „T\ je nadřazený T ). Nechť tato relace (označme ji R) je tranzitivní, tj. 2 U 2 ( V T T , T s X p l , T ] e RA [ T , T 3 ] e R ^ 1} 2 2 2 [T T ] G R) 1} 3 . Popište algoritmus, pomocí kterého by bylo možno odstranit z výčtu všechny uspo řádané dvojice, jejichž přítomnost v něm lze chápat jako důsledek tranzitivity relace. 3.3 VZTAHY MEZI TERMÍNY 143 Cvičení 3.3.2 Systém ATEZ používá během své práce indexový soubor sémů nad daným souborem termínů a sémových ekvivalentů. Vysvětlete, jakou hlavní výhodu to poskytuje. * Otázka 3.3.3 Jaká kritéria by vůbec bylo možné a vhodné uplatňovat při určo vání, které ze skupin synonymních termínů mají být označeny jako deskriptory? Která z těchto kritérií jsou hodnotitelná automatizovaně? KAPITOLA 3. AUTOMATIZACE TVORBY TEZAURU 145 Kapitola 4 Některé další algoritmizovatelné operace 4.1 4.1.1 Automatické referování (vytváření abstraktů, sumarizace) Co to znamená „referovat" V obecné teorii zpracování informačních fondů je obvykle referát (se synonymem abstrakt) uváděn jako jeden z možných výstupů intelektuálního procesu nazý vaného informační analýza dokumentu. V „klasické" teorii se dokonce doporu čuje celé tzv. informační zpracování dokumentu zařazovaného do fondu začínat informační analýzou směřující k referátu či jinému podobnému výstupu, jehož indexováním (neboli „vyjádřením v selekčním jazyce ) by teprve měl vznikat selekční obraz původního dokumentu. Pojem referátu je v odborné informační činnosti považován za tak důležitý, že je dokonce definován českou státní normou [13]: 1 u Referát je zkrácený výklad obsahu dokumentu (nebo jeho části) s hlavními věcnými údaji a závěry, který zdůrazňuje nové poznatky a umožňuje rozhodnout se o účelnosti studia původního dokumentu. Referát se vypracovává zpravidla podle této osnovy: 1. Téma, předmět (objekt), charakter a cíl práce. ... 2. Použité metody. ... 3. Výsledky práce. ... 4. Závěry (hodnocení, návrhy), přijaté nebo zamítnuté 5. Oblast využití. hypotézy... ... Automatizované varianty tohoto procesu se obvykle nazývají prostě referování, případně sumarizace (anglicky abstracting, summarizing, summarization). 1 146 KAPITOLA 4. DALŠÍ OPERACE Výklad obsahu ... musí být stručný a přesný. Používá se syn taktických konstrukcí jazyka vědeckých a technických dokumentů bez složitých gramatických konstrukcí. V referátu se používá normalizované, a není-li vytvořena, tedy ustálené terminologie; je třeba se vyhýbat neobvyklým termínům a symbolům nebo je vysvětlit, když se poprvé vyskytnou v textu (např. použít běžného termínu a/nebo jeho výkladu). Rozsah referátu se řídí obsahem dokumentu, množstvím údajů, jejich vědeckou hodnotou a/nebo praktickým významem. Doporučený rozsah referátu je 500 až 1000 tiskových znaků. Je jasné, že referát vytvořený důsledně podle všech těchto (a ještě řady dal ších) požadavků by byl mimo jiné optimálním východiskem pro indexování do kumentu — jeho tvorba je ovšem skutečně odborná intelektuální činnost. Jak jsme ukázali v kapitole 1, automatickému indexování obvykle raději podrobujeme přímo celé texty dokumentů, což při relativní jednoduchosti existujících metod automatického indexování vlastně znamená jistou „náhradu kvality kvantitou zpracování". To nicméně neznamená, že by se při soudobé úrovni automatizace celého informačního procesu nějak významně snižovala potřeba referátů. Refe rát zůstává (a jistě ještě dlouho zůstane) důležitým sekundárním informačním pramenem pro potenciálního zájemce o primární dokument, pramenem, který by měl plnit zejména úlohu specifikovanou v závěru první výše citované věty — usnadnit člověku rozhodnout se o účelnosti studia původního dokumentu. Na příkladu automatizace indexování jsme si již ukázali, že intelektuální pro cesy zpracování informačních fondů není vždy nutno v počítači plně kopírovat — včetně porozumění obsahu slov a vět. Úspěšné metody mohou být založeny na tom, že se v textu mechanicky detekují slova z určité množiny, určité koncovky ap. Bylo by samozřejmě žádoucí, kdyby se podařilo podobným způsobem auto matizovat i proces referování. Přitom zásadní rozdíl mezi úlohami indexování a referování by z tohoto hlediska mohl být formulován velice jednoduše: může-li být cílem indexování extrahovat (resp. formálně odvodit) z textu vhodný počet slov či sousloví, která nejlépe vystihují, o čem text je, pak cílem referování může být extrahovat (resp. formálně odvodit) z textu vhodný počet vět, které nejlépe vystihují, co text přináší svému potenciálnímu čtenáři. 4.1 A UTOMATICKÉ 4.1.2 REFEROVÁNÍ 147 Automatické referování založené na tezauru Tato v principu velmi jednoduchá metoda automatického referování, kterou zde uvádíme spíš jen v zájmu přehledu o známých teoretických možnostech, je zalo žena přibližně na následující myšlence [2]. Nechť je dokument indexován deskrip tory nějakého tezauru. Deskriptory obsažené v selekčním obraze dokumentu (pří padně jen ty z nich, které mají váhu nad určitou mezí, neboli deskriptory vyjadřu jící určité tématické jádro dokumentu) představují určitou podsíť v hierarchické a asociační struktuře tezauru. Představme si například, že jde o deskriptory A , B, C , D, E, F', G a H na obr. 4.1. Dá se soudit, že souvislé části hierarchického stromu — např. množina deskriptorů {A, C, D , F, G, H} — tvoří určité postupně se zpřesňující tématické specifikace dokumentu. Na základě tohoto faktu lze zcela mechanicky zkonstruovat např. takovýto základ textu referátu: Dokument se zabývá A a B. Zvláštní pozornost je přitom věnována C (a zejména F , G , i ř ) , D a E. Pravidla pro obecnou konstrukci takového textu by mohla být formulována takto: • 1. věta začíná „Dokument se zabývá"; následuje výčet hierarchicky nejvyšších deskriptorů (tj. takových, k nimž v dokumentu nebyl nalezen žádný nadřazený) v 7. pádě. • 2. věta začíná „Nejvyšší pozornost je přitom věnována"; deskriptorů druhé nejvyšší úrovně ve 3. pádě. následuje výčet • Je-li některý z deskriptorů 2. úrovně doplněn ještě podřazenými deskripto ry, následuje za ním v textu referátu závorka a v ní řetězec „a zejména" a seznam těchto podřazených deskriptorů ve 3. pádě. Aby takový postup v češtině fungoval, je třeba pouze doplnit procedury převá dějící libovolný deskriptor do 7. nebo 3. pádu. Uvedený postup lze mnoha různými způsoby dále obohacovat. Například každý vztah asociovanosti bychom mohli přímo v tezauru opatřit určitým „typic kým prezentačním výrazem" — např. „ve vztahu k", „s pomocí" ap.; také tyto prezentační výrazy by pak byly k dispozici pro sestavování čitelných a smyslupl ných vět o obsahu dokumentů. Takový postup ovšem stále nemůže přinést žádnou větší informaci o obsahu dokumentu, než jakou dávají samotné deskriptory dokumentu přiřazené. V pod statě se jedná jen o automatické „učesání" této informace, jak bylo řečeno výše, do podoby čitelných a smysluplných vět. I to může mít někdy význam. Nicméně představme si, že dokument hovoří např. o překladu meteorologic kých zpravodajství jako o něčem, čemu by měla být věnována pozornost. Je dost málo pravděpodobné, že právě termín překlad meteorologických zpravodajství by byl samostatným deskriptorem v tezauru — zvláště pokud by tento pojem byl novým předmětem zájmu v námi sledovaném oboru. Do referátu vytvořeného pouze až potud popsanou metodou by se tedy termín překlad meteorologických 148 KAPITOLA 4. DALŠÍ OPERACE Obrázek 4.1: Příklad dílčí tezaurové hierarchie mezi termíny textu zpravodajství nedostal. Je pravděpodobné, že by se v něm objevilo slovo překlad, možná by tam bylo i slovo zpravodajství, při použití žurnalistického tezauru snad i deskriptor meteorologické zpravodajství. Chyběla by tam však právě informace o tom, čím je dokument nový a zajímavý, totiž že v něm jde o překlad meteo rologických zpravodajství jako celek. To je pro kvalitu referátu dost podstatný nedostatek. Jistý náznak možného rozvinutí popsaného základu metody automatického referování by mohl spočívat v představě tezauru s valenčními rámci deskriptorů: např. u deskriptoru překlad by bylo zakódováno, že se očekává doplnění čeho — jmenná fráze ve 2. pádě. Pokud by taková fráze byla nalezena v dokumentu v okolí právě zjištěného deskriptoru, do selekčního obrazu a základu referátu by se přesunulo celé spojení, např. překlad meteorologických zpravodajství. V kom binaci s výše popsanou metodou by z toho bylo možné vyvozovat další důsledky: např. je-li v dokumentu také deskriptor strojový překlad, který máme v tezauru jako podřazený k překladu, pak i bez dalšího lze soudit, že dokument se vztahuje ke strojovému překladu meteorologických zpravodajství — alespoň jako k even tualitě! Referát automaticky vytvořený s využitím všech takových informací by mohl skutečně úspěšně plnit svou úlohu. Postup by se už ovšem dost blížil úplné gramatické analýze textu, a tedy téměř úplnému automatickému porozumění — s veškerou náročností, která k tomu patří (srovnej 4.3). Možná by však ani nebylo nutné postupovat tak náročně. Jako doplnění (roz vinutí) výše naznačené obecné charakterizace tématu dokumentu pomocí stan dardních syntaktických konstrukcí z nalezených deskriptorů by bylo možné např. přenést do referátu přímo ty věty z primárního dokumentu, které obsahují nej více deskriptorů (resp. jim ekvivalentních nedeskriptorů). Předpokládáme-li, že 4.1 A UTOMATICKÉ REFEROVÁNÍ 149 deskriptory vystihují téma dokumentu, můžeme na tomto základě předpokládat, že právě tyto věty obsahují alespoň nějaká tvrzení důležitá z hlediska celkového smyslu dokumentu. Touto úpravou by se zde popisovaná metoda poněkud přiblí žila metodám následujícím. 4.1.3 Automatické referování založené na měření obsa hových souvislostí mezi větami Tato zajímavá metoda [49] by se kontrastivně vůči předchozí dala charakterizo vat tak, že maximálně upřednostňuje analýzu před syntézou a data získatelná z právě zpracovávaného textu před a priori shromážděnými daty (jaká předsta vuje např. tezaurus — i když, jak uvidíme, i ten by měl být v důsledné realizaci této metody použit). Metoda v zásadě sestavuje referát pouze z celých vět vybra ných z primárního textu, přičemž tyto věty vybírá na základě jejich vzájemných obsahových souvislostí. Pojem obsahové souvislosti mezi v ě t a m i autoři formálně definují takto: v ě t y A a B mají obsahovou souvislost, jestliže se v nich opakuje stejný o d b o r n ý pojem. Metoda sama vychází z předpokladu, že v textu jsou nejvýznamnější ty věty, které mají nejvíc obsahových souvislostí s jinými větami. (Tento předpoklad je vlastně jen poněkud méně obvyklou formulací samozřej mého faktu, že nejvýznamnější jsou věty, ve kterých se vyskytují, případně přímo kumulují klíčové pojmy textu — a ty se nejspíše poznají podle toho, že se v textu na různých místech opakují.) Realizace metody spočívá ve zdánlivě naprosto triviálních krocích: 2 1. Každé větě dokumentu se přiřadí její funkční váha neboli počet jiných vět dokumentu, se kterými má tato věta obsahovou souvislost. (Jak uvidíme vzápětí, tento krok ve skutečnosti zdaleka není tak triviální, jak vypadá.) 2. Referát v podstatě tvoří K vět s nejvyšší funkční váhou — přičemž hodnota K je předem stanovena jedním ze dvou způsobů: buď jako konstanta, nebo jako funkce délky dokumentu (vzorcem K — L/C', kde L je počet vět dokumentu a C je zvolená konstanta, nazývaná koeficient komprese). Vraťme se nejprve k definici obsahové souvislosti. Jak se pozná, že se ve dvou větách „opakuje stejný pojem"? • Základní způsob vnějšího projevu je samozřejmě opakování stejného slova (to se přirozeně nemusí opakovat ve stejném tvaru, čili je nutná lematizace), sledovat tento projev ale zdaleka nestačí. • O tomtéž jevu lze hovořit r ů z n ý m i slovy pocházejícími od stejného základu (např. teplo, tepelný) — je tedy třeba do procesu zjišťování ob sahových souvislostí zapojit více morfologie než jen lematizaci (je třeba rozpoznávat kořeny slov v různých odvozeninách a jejich tvarech). 2 V orig. mežfrazovaja svjaz'. 150 KAPITOLA 4. DALŠÍ OPERACE • O tomtéž jevu lze však hovořit i pomocí synonym nebo střídavě pomocí obecnějších a konkrétnějších t e r m í n ů — to vše je třeba pro náš účel pokládat za „opakování pojmu", do procesu proto musíme zapojit také tezaurus. • Posledním způsobem vyjadřování, který je třeba vzít v úvahu, je odka zování na předchozí věci pomocí z á j m e n a deiktických příslovcí (jako jeho, to, zde ap.). Problém je, že plnovýznamový výraz, se kterým zá jmeno nebo deiktické příslovce takzvaně koreferuje (neboli označuje totéž), se může nacházet teoreticky v kterékoli předcházející větě, ale také ve stejné větě s deiktickým slovem. Čistě formálními prostředky, bez plného poro zumění smyslu vět, je velmi obtížné spolehlivě zjistit, kdy deiktické slovo vůbec představuje souvislost mezi dvěma větami, a pokud ano, mezi kte rými. Autoři nástinu metody ve výše citovaném článku tento problém vůbec nerozebírají; ani my se mu v této kapitole nebudeme podrobněji věnovat. Celkový postup automatického zpracování dokumentu by mohl být přibližně následující. 1. Vytvoří se indexový soubor terminologických prvků nad větami dokumentu (přístupovému termínu jsou přiřazena čísla vět, ve kterých se vyskytuje). Z tohoto indexového souboru musí být pečlivě vyloučena všechna pro daný účel bezvýznamná slova, tj. slova, jejichž opakované výskyty by byly z hle diska zjišťování obsahových souvislostí zavádějící — předložky, spojky, čís lovky, pomocná slovesa, „kvantifikátory" a obecné kvalifikátory jako velký, významný, rozhodně ap. (srovnej 1.7.1). 2. Všechna hesla, která jsou jen „morfologickými variacemi na stejné téma" (jako např. teplo, tepla, tepelný, tepelně), se spojí pod určitými pravidly definovanou základní variantu (např. teplo). 3. Všechna hesla, která jsou podle tezauru synonymní nebo mezi nimi existují hierarchické vztahy, se spojí vždy pod hierarchicky nejvyšší deskriptor. 4. Zvláštním způsobem, pokud máme nějaký k dispozici, se zpracují zájmena a deiktická příslovce jako kontextuální synonyma určitých slov z předcháze jících vět. (Pokud by exaktní řešení této úlohy bylo shledáno neúměrně ná ročným, lze j i jistě účelově zjednodušovat, v mezním případě až do podoby vyloučení deiktických slov z indexového souboru, za cenu jistého snížení přesnosti metody.) 5. Hesla, která po všech těchto úpravách indexového souboru odkazují jen na jednu větu dokumentu, lze zrušit. 6. Na základě indexového souboru se vytvoří binární souvislostní matice uka zující, mezi kterými větami jsou obsahové souvislosti podle naší definice (matice typu L x L , L je počet vět, — 1 nebo 0 podle toho, zda i-tk a jtá věta mají či nemají obsahovou souvislost). Spočítáním jedniček v řádcích (nebo sloupcích) této matice získáme funkční váhy vět dokumentu. 4.1 A UTOMATICKÉ REFEROVÁNÍ 151 7. Čísla vět se seřadí podle funkčních vah. Vybere se prvních K z nich, ta se seřadí opět vzestupně a z vět těchto čísel se sestaví referát. Ukažme si alespoň klíčové body tohoto postupu na konkrétním příkladě podle původního pramene [49]. Text krátké zprávy z časopisu Za rubežom z r. 1978 by v českém překladu, s doplněním pořadových čísel vět, vypadal přibližně takto: (I) V nejbližší budoucnosti bude běžná elektrická žárovka ve vašem domě svítit mnohonásobně jasněji než dnes, přičemž spotřebuje značně méně energie. (2) Takové jsou závěry vědců z Massachusettského tech nologického institutu (MTI), kteří nedávno ukončili práce na zdokonalení konstrukce dnes nej tradičnějšího prostředku osvětlení — běžné žárovky. (3) Speciální povlak nanášený na vnitřní povrch skleněné baňky může způsobit minimálně revoluci ve výrobě žárovek. (4) Profesor James Felske, pracující dříve v MTI a nyní na universitě státu New York, který byl hlavním vedoucím prací, soudí, že při provozování nových žárovek dosáhne úspora elektrické energie minimálně 60 % bez jakéhokoli snížení jasu světla. (5) Základem vynálezu je průhledný film nanášený na vnitřní povrch baňky. (6) Právě tento film dovoluje zadržet vznikající tepelnou ener gii uvnitř žárovky, což má mimořádný význam. (7) Například v obyčejné lOOwattové žárovce se až 90 % energie ztrácí v podobě tepla, vyzařovaného do okolní atmosféry. (8) Luke Torington, viceprezident firmy DuroTest, která získala výlučné právo na novou technologii výroby žárovek, říká: „Nový povlak udržuje teplo vznikající v baňce tím, že odráží infračervené (tepelné) paprsky od jejího vnitřního povrchu a směruje je dovnitř žárovky na žhavicí vlákno. (9) To dovoluje podstatně snížit množství elektrické energie potřebné pro udržení normálního žhavení vlákna a optimalizovat teplotní režim. (10) Stejná lOOwattová žárovka například při aplikaci no vého povlaku spotřebovává přibližně tolik jako 40wattová." (II) A přestože konstrukce baňky se stále nachází ve stádiu expe rimentů, očekává se, že nové žárovky přijdou do prodeje už začátkem roku 1979. (12) „Složení nového povlaku a technologie jeho nanášení jsou už prakticky vypracovány," říká Torington, „nyní provádíme experimenty s doladěním konstrukčních prvků — vlákna, baňky a patice." (13) Chemické složení nového povlaku připomíná sendvič: vrstva stří bra mezi dvěma vrstvami kysličníku titanu. (14) V průběhu zkoušek pro váděných MTI se testovalo, zda nový povlak dokáže pevně přilnout ke sférickému vnitřnímu povrchu baňky. (15) Poté firma DuroTest zkoušela konstrukce vlákna, baňky a dalších prvků zajišťujících vysokou efektivitu nové žárovky v provozu. (16) Cena nové žárovky bude pravděpodobně o něco vyšší než u oby čejné. (17) Očekává se však, že obrovská úspora energie dosažená v dů sledku jejího použití umožní se ziskem zaplatit zdražení výroby a může zásadním způsobem změnit strukturu energetické bilance státu. (18) Mi moto životnost nové žárovky dosahuje 2500 hodin, zatímco výdrž běžné žárovky nepřesahuje 750-1000 hodin. Indexový soubor opakujících se terminologických jednotek by pak obsahoval 152 KAPITOLA 4. DALŠÍ OPERACE tyto záznamy (předpokládáme, že opakující se slova, která zde nefigurují, byla vyloučena negativním slovníkem): • baňka — věty č. 3, 5, 8, 11, 12, 14, 15; • DuroTest — věty č. 8, 15; • energie (energetický) — věty č. 1, 4, 6, 9, 17; • experiment — věty č. 11, 12; • film — věty č. 5, 6; • firma — věty č. 8, 15; • jas (jasně) — věty č. 1,4; • konstrukce (konstrukční) — věty č. 2, 11, 12, 15; • MTI — věty č. 2, 4, 14; • nanášení (nanášený) — věty č. 3, 12; • povlak — věty č. 3, 8, 10, 12, 13, 14; • práce — věty č. 2, 4; • provoz (provozování) — věty č. 4, 15; • prvek — věty č. 12, 15; • složení — věty č. 12, 13; • snížení (snížit) — věty č. 4, 9 (v tomto případě sporný argument pro ob sahovou souvislost); • světlo (svítit) — věty č. 1, 4; • technologie (technologický) — věty č. 2, 8, 12 (v případě věty č. 2 sporný argument pro obsahovou souvislost!); • teplo (tepelný) — věty č. 6, 7, 8; • Torington — věty č. 8, 12; • úspora — věty č. 4, 17; • vlákno — věty č. 8, 9, 12, 15; • výroba — věty č. 3, 8, 17; • zkoušky (zkoušet, testovat) — věty č. 14, 15; 4.1 A UTOMATICKÉ REFEROVÁNÍ 153 • žárovka (vč. zájmenných odkazů) — věty č. 1, 2, 3, 4, 6, 7, 8, 10, 11, 15, 16, 17, 18; • žhavení (žhavicí) — věty č. 8, 9. Souvislostní matici a z ní vypočítané funkční váhy vidíme v tab. 4.1. (Obsa hová souvislost věty se sebou samou, nemající žádný praktický smysl, je „ohodno cena" značkou „•". Této značce můžeme pro účel výpočtu funkční váhy arbitrárně přiřadit hodnotu 0 nebo 1; v daném případě byla zvolena hodnota 0.) Budeme-li chtít z textu referát např. o 5 větách, vybereme věty s funkční váhou 17, 16 nebo 15, neboli věty č. 3, 8, 10, 11 a 15. „Polotovar referátu" by vypadal takto: (3) Speciální povlak nanášený na vnitřní povrch skleněné baňky může způsobit minimálně revoluci ve výrobě žárovek. (8) Luke Torington, viceprezident firmy DuroTest, která získala výlučné právo na novou technologii výroby žárovek, říká: „Nový povlak udržuje teplo vznika jící v baňce tím, že odráží infračervené (tepelné) paprsky od jejího vnitřního povrchu a směruje je dovnitř žárovky na žhavicí vlákno. (10) Stejná lOOwattová žárovka například při aplikaci nového po vlaku spotřebovává přibližně tolik jako 40wattová." (11) A přestože konstrukce baňky se stále nachází ve stádiu experimentů, očekává se, že nové žárovky přijdou do prodeje už začátkem roku 1979. (15) Poté firma DuroTest zkoušela konstrukce vlákna, baňky a dalších prvků zajišťujících vysokou efektivitu nové žárovky v provozu. Na první pohled vidíme, že uvedený výběr vět skutečně může sloužit jako výtah toho nejpodstatnějšího (nejzajímavějšího) z textu zprávy — ovšem za předpokladu jistých drobných reformulací, aby se dosáhlo řádné návaznosti vět referátu. Ta byla porušena např. začátkem věty 10 — „Stejná lOOwattová žárovka": jde o odkaz zpět k větě 7 v původním textu, ta však není v referátu. Slovo „stejná" by proto mělo být vypuštěno. Rovněž formální navázání věty 15 na větu 11 je nepatřičné: slovo „Poté" odkazuje k větě 14 původního textu, která zde není; toto slovo by mělo být vypuštěno. Inteligentní redakce by nakonec mohla doplnit „ . . . " mezi větami 8 a 10, protože se jedná o přerušenou citaci výroků L. Toringtona z původního textu, a případně oddělit větu 15 do samostatného odstavce, protože celková návaznost této věty na předchozí text referátu je evi dentně volnější. (Je otázka, zda věta 15 vůbec je v referátu namístě, zda není právě „mírou chyby metody".) Obdobné „ruční" zásahy bude referát vytvořený popisovanou metodou vyža dovat téměř vždy. A nemusí jít vždy o tak jednoduché úpravy jako odstranění slov „stejná" a „poté", která v referátu nikam neodkazují, resp. odkazují matou cím způsobem („poté" zdánlivě na r. 1979, což není komunikačním záměrem). Někdy vznikne potřeba nahradit zájmeno („jeho", „jej" ap.) nebo deiktické pří slovce („odtud", „tam") částí věty nezařazené do referátu, na kterou odkazuje — jinak by byly věty referátu nesrozumitelné. S touto redakcí je nejspíše t ř e b a p o č í t a t jako s intelektuální činností zajišťovanou člověkem. KAPITOLA 154 Vě ta 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Souvislost s větou 1 2 3 4 5 6 7 8 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 0 1 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 0 0 1 0 0 1 0 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 • • • • • • • • 9 1 0 0 1 0 1 0 1 • 0 0 1 0 0 1 0 1 0 10 1 1 1 1 0 1 1 1 0 • 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 0 1 • 1 0 1 1 1 1 1 12 0 1 1 0 1 0 0 1 1 1 1 • 1 1 1 0 0 0 13 0 0 1 0 0 0 0 1 0 1 0 1 • 1 0 0 0 0 14 0 1 1 1 1 0 0 1 0 1 1 1 1 • 1 0 0 0 15 1 1 1 1 1 1 1 1 1 1 1 1 0 1 • 1 1 1 16 1 1 1 1 0 1 1 1 0 1 1 0 0 0 1 • 1 1 4. DALŠÍ 17 1 1 1 1 0 1 1 1 1 1 1 0 0 0 1 1 • 1 18 1 1 1 1 0 1 1 1 0 1 1 0 0 0 1 1 1 • OPERACE Funkční váha 13 14 16 14 7 14 12 17 7 15 15 10 5 10 16 12 13 12 Tabulka 4.1: Obsahové souvislosti vět v příkladu 4.1.4 Další možné přístupy, příklady a argumenty Výše uvedenou metodu, jejíž citovaný nástin je ostatně v měřítkách dnešní in formatiky již téměř historický, by samozřejmě opět bylo možno nej různějšími způsoby modifikovat. Podstatné by přitom pro ni zůstalo zejména to, že referát je sestavován z těch vět původního textu, kterým byla určitým způsobem při řazena nejvyšší váha. Při stanovení váhy věty přitom samozřejmě lze — mimo jiné — uplatnit i nej různější techniky vážení slov a slovních spojení, ze kterých se věta skládá (srovnej 1.2, 1.4.2, 1.7.1). Na různých kombinacích různých tako vých prvků je zřejmě založena většina v poslední době se objevujících komerčně nabízených nástrojů (bohužel zpravidla jen pro anglické texty). I B M Summarization tool O tomto nástroji bylo zveřejněno, že zpracovává text ve dvou hlavních krocích [30]: 1. OHODNOCENÍ SLOV. Tento krok se opírá o pomocný modul firmou po jmenovaný Feature Extraction tool a o předem (pomocí stejného modulu) připravený referenční slovník, charakterizující slova (příp. rozpoznané více slovné termíny) jejich průměrnou frekvencí v nějaké reprezentativní sbírce 4.1 A UTOMATICKÉ REFEROVÁNÍ 155 textů z daného oboru. Slovům (resp. termínům) vyskytujícím se v právě zpracovávaném textu alespoň dvakrát je přiřazena váha zohledňující (a) polohu jejich výskytů (nadpisy, titulky obrázků, tabulek ap.) a (b) poměr jejich frekvence ve zpracovávaném textu vůči frekvenci udávané referenčním slovníkem. Přitom je pro nenulovou váhu požadováno, aby buď alespoň jeden výskyt hodnoceného termínu byl „víc než obyčejný" (čili v některé zvlášť hodno cené „zóně" textu), nebo aby jeho frekvence ve zpracovávaném textu byla nadprůměrná. 2. OHODNOCENÍ VĚT. Každé větě je přiřazena váha zohledňující (a) váhy přiřazené v předchozím kroku slovům, ze kterých se skládá (po kud vůbec některá z nich byla shledána „významnými"), (b) vzdálenost věty od začátku odstavce, ve kterém se nachází, (c) vzdálenost odstavce od začátku celého textu, (d) polohu věty na konci odstavce, přesahuje-li délka odstavce určitou mez, a (e) polohu odstavce na konci celého textu, přesahuje-li délka celého textu určitou mez. Uživatel systému může předem přiřadit různé koeficienty významnosti jed notlivým zde uvedeným kritériím. Referát je nakonec sestaven z určitého počtu vět (opět stanoveného buď konstan tou, nebo procentuálně vzhledem k délce celého textu) s nejvyšší váhou. Jiné komerční s y s t é m y Jejich „konstrukční detaily" obvykle nejsou zveřejňovány, nicméně z dostupných firemních informací a recenzí si lze doplnit představu o možnostech a rezervách dnes známých metod automatizace referování. Většina z nás má dnes velmi jednoduchou možnost vyzkoušet si na jakémkoli anglickém textu funkci AutoSummarize (Automatické shrnutí) textového edi toru MS Word 97 (nebo vyšší verze). Nezávislé porovnání tohoto nástroje se systémem Data Hammer americké firmy Glucose potvrzuje určité přednosti dru hého. Z našeho hlediska je ovšem zajímavé i to, že oba systémy, jistě pracující alespoň částečně odlišnými (nezávisle navrženými) postupy, vykázaly jistou zá kladní shodu generovaných referátů, a to ve větách nikoli nerelevantních. To lze totiž chápat jako praktické potvrzení použitelnosti základní myšlenky extrakce KAPITOLA 156 4. DALŠÍ OPERACE „nejlépe ohodnocených" vět z primárního textu — u níž odlišné detaily použí vaného ohodnocení (v každém případě určitě intuitivně zdůvodněné) nevedou k diametrálně odlišným výsledkům! O systému Data Hammer se dokonce uvádí, že je k dispozici pro 17 jazyků, zahrnujících již i češtinu (!), a navíc jeho vylepšený algoritmus dokáže o něco víc než jen opakovat z původního textu celé věty. Zdarma jsou ovšem k nahlédnutí jen testovací výsledky na anglických textech, a z těch se zdá, že to „něco navíc" je jen zcela mechanické vypouštění členů (a, the). Je pravda, že právě členy jsou často těmi „slovy odkazujícími do prázdna", která je vhodné v referátech (v angličtině) vypouštět. K firemním tvrzením o přednostech systému je ale zřejmě namístě přistupovat s určitou opatrností. [22, 23, 32] 3 Na WWW-stránkách doporučujících naší pozornosti systém NetSumm brit ské firmy B T Laboratories [47, 48] bylo zase nedávno možné zhlédnout zajímavé výsledky automatické sumarizace (čili automatické referáty) různých textů vy tvořené tímto systémem: autoři tak pro ukázku zpracovali nejen vlastní článek popisující přednosti jejich metody, ale i 1. kapitolu První knihy Mojžíšovy (Ge nesis) — jak sami uvádějí, ani ne tak proto, aby tím předváděli schopnosti svého systému, jako spíše naopak, aby si každý zájemce o podobné technologie mohl udělat vlastní „obrázek", na jaké druhy textů jsou vhodné. „Referát o počátku stvoření světa" automaticky vytvořený systémem NetSumm při požadavku zhuš tění na 15 % délky původního textu vypadal takto (systém pracuje s angličtinou, zde uvádíme český ekvivalent podle ekumenického překladu Bible z r. 1985 ; sym bolem „•" naznačujeme vypuštěné části původního textu): 4 • / řekl Bůh: „Buďte světla na nebeské klenbě, aby oddělovala den od noci! Budou na znamení časů, dnů a let. Ta světla ať jsou na nebeské klenbě, aby svítila nad zemí. "ml řekl Bůh: „Hemžete se vody živočiš nou havětí a létavci létejte nad zemí pod nebeskou klenbou. • I řekl Bůh: „Učiňme člověka, aby byl naším obrazem podle naší podoby. Ať lidé panují nad mořskými rybami a nad nebeským ptactvem, nad zvířaty a nad celou zemí i nad každým plazem plazícím se po zemi. " • u D o p o r u č o v a n á o b e c n á v y l e p š e n í metod v ý b ě r u vět s nejvyšší vahou Poměrně podrobně jsme zde uvedli dvě metody vážení vět směřující k tomu, aby byl nakonec jistý počet nejvýše ohodnocených vět vybrán do referátu k danému textu. Zároveň jsme upozornili, že jednotlivé prvky těchto metod lze kombino vat i nejrůznějšími jinými způsoby. Bez ohledu na to, jak se zvolí základní předpis pro v ý p o č e t váhy j e d n o t l i v é věty, poslední výzkumy ukazují ur čité v úvahu přicházející modifikace finálního v ý b ě r u vět, které by mohly dohromady tvořit optimální referát [3]: Srovnej podobně formulovaná kritéria správnosti metody v jiné souvislosti ve cv. 2.4.13 na s. 129! V anglické verzi ovšem každý vybraný úsek představoval jedno souvětí. Rozdělení textu ve zde použitém českém překladu na více samostatných vět by mohlo způsobit, že by „referát" pořízený stejnou metodou z odpovídajícího českého textu vypadal jinak. 3 4 4.1 A UTOMATICKÉ REFEROVÁNÍ 157 1. (Tzv. „aglomerační pravidlo".) Někdy se může ukázat jako vhodné vy brat do referátu i věty s libovolně nízkou vahou, pokud v rámci jednoho odstavce bezprostředně předcházejí větám s vysokou vahou. 5 2. (Tzv. „pravidlo p r á z d n é h o oddílu".) Je-li text dlouhý a explicitně roz dělený do oddílů, může k vytvoření vyváženého (a tedy plnohodnotného) referátu přispět, nevybírají-li se prostě věty s nejvyššími vahami z celého textu, ale nějak definovaný počet vět s nejvyššími vahami z každého od dílu. Při důsledném uplatnění tohoto pravidla by dokonce i z oddílu textu, ve kterém se nenalézá žádná věta ohodnocená nenulovou vahou, měla být vybrána alespoň jedna věta — v tomto případě se doporučuje první věta oddílu. Existuje dokonce zajímavá metoda podpory aplikace „pravidla prázdného oddílu" pro případ, že text není explicitně členěn. Jednotlivým větám, pří padně odstavcům textu se přiřadí informační vektory odpovídající výsky tům potenciálních selekčních termínů v těchto jednotkách (srovnej 2.2.1 a 2.2.4!). Pro každou dvojici bezprostředně následujících jednotek s přiřaze nými informačními vektory se vypočítá míra podobnosti — např. kosinová míra (viz 2.2.3) — a jako hranice „implicitních (logických) oddílů" textu se vyznačí body lokálních minim této podobnosti. (To jsou místa, kde zřejmě dochází k relativně výraznější změně tématu.) 3. Z referátu může být užitečné vyloučit věty, které (jakkoli by měly vyso kou váhu) nesplňují některé intuitivně odhadnutelné formální náležitosti — např. věty příliš krátké (v angličtině o 5 a méně slovech), věty, jejichž podstatnou část tvoří rozpoznatelná citace z jiného zdroje, ap. Metoda detekce „indikátorů klíčových sdělení" Tato metoda [55] může být brána jako alternativa ke všem dosud zde uvedeným metodám, nevyžadující ani tezaurus zpracovávané odborné oblasti, ani žádné složité výpočty vah (nebo podobností) a vyhledávání maxim (či minim) mezi nimi. Také by ovšem mohla být použita jako „vylepšující prvek" v kombinaci s některou z výše uvedených metod. Metoda je založena na předem sestaveném slovníku pouhé asi stovky (!) zá kladních pojmů, jejichž výskyt ve větě lze chápat jako (dílčí) indikaci jistého pod statného sdělení. Výskyt každého pojmu může ovšem být realizován jako výskyt některého z celé řady konkrétních slov. Jednotlivá hesla slovníku tedy vypadají podobně, jako ukazuje tabulka 4.2. Na tento slovník navazuje soubor pravidel definujících jeden z 52 typů podstatných sdělení pomocí výskytu jednoho nebo více pojmů ze slovníku. Například: • k rozpoznání typu sdělení „popis entity" stačí výskyt pojmu P O P I S ; U v ě d o m m e si, že právě takový postup může často odstranit výše zmiňovaný problém „zpět ných odkazů doprázdna" ve vybíraných větách! 5 KAPITOLA 158 4. DALŠÍ OPERACE pojem je realizován n ě k t e r ý m ze slov AUTOR autor, já, my, můj, náš kapitola, oddíl, pododdíl, sekce, ... článek, text, ... obsahovat, sestávat, skládat se, tvořit, ... potřeba, potřebovat, nezbytný (-ost), nutný (-ost), být třeba, vyžadovat, ... popisovat, prezentovat, předkládat, seznamovat, ... problém, úkol, úloha, ... rozbor, rozeb(í)rat, výklad, vykládat, vyložit, vysvětlení, vysvětlovat (-lit), ... výhoda, výhodný, náskok, ... výzkum, experiment, zkoumat, vyvíjet, testovat, ... ČÁST D O K U M E N T U DOKUMENT POPIS POTŘEBA PREZENTACE PROBLÉM VÝKLAD VÝHODA VÝZKUM Tabulka 4.2: Příklad části slovníku „indikátorů klíčových sdělení" • jiný typ sdělení, „téma dokumentu", se definuje společným výskytem pojmu P R E Z E N T A C E a alespoň jednoho z pojmů A U T O R , D O K U M E N T ap. Pro automatické (nebo alespoň částečně automatizované) sestavení referátu jsou vhodné ty věty, ve kterých je rozpoznán některý z definovaných typů sdělení. Vývojový potenciál této metody spočívá mimo jiné v tom, že její kombinací s přesnější syntaktickou analýzou vět (nebo alespoň částí vět), ve kterých byla rozpoznána klíčová sdělení, bychom se asi mohli poměrně nejsnáze přiblížit „ide álnímu cíli" automatizace referování — sestavování referátu ne z vybraných vět vytržených z kontextu, ale ze skutečně abstrahovaných (v souladu s významem alternativního termínu abstraktl) základních myšlenek (tvrzení, sdělení) primár ního textu, do konkrétních vět či souvětí případně přeuspořádaných podle předem stanovených formálních požadavků na referát (abstrakt). Otázky a cvičení k oddílu 4.1 Otázka 4.1.1 Je nutné, aby systém realizující metodu automatického referování měřením obsahových souvislostí mezi větami dokázal přesně určit, na které slovo odkazuje zájmeno v následující větě? Cvičení 4.1.2 Pokuste se zformulovat algoritmus automatické náhrady zájmena „jeho částí předchozí věty, kterou toto zájmeno zastupuje — za předpokladu, že již víme, která část předchozí věty to je. u 4.2 STROJOVÝ 4.2 PŘEKLAD 159 Strojový překlad Na celém světě se dnes každoročně překládá asi 150 miliónů stran textu. Z toho jen 0,3 % připadají na krásnou literaturu — zato 35 % tvoří informace klasifiko vané jako obchodní, 21 % průmyslové, 20 % vědecké, 9 % právní, . . . Náklady na tuto práci představují asi 3 miliardy USD. [41] Nejde však jen o náklady, ale i o časovou dostupnost: překladatelů je omezené množství — a mnohé informace mají pro uživatele cenu, jen když se k nim dostanou velmi rychle. Jak vidíme z výše uvedené statistiky, minimálně 85 % z překládaných informací spadá do „oblasti zájmu" automatizovaných informačních fondů. Bylo by samozřejmě žá doucí, aby informace, když už jsou automatizovaně vyhledávány, mohly být i automatizovaně překládány do jazyka konečného uživatele. Snahy o automatický neboli strojový překlad (ve světové literatuře nazý vaný machine translation, traduction automatique, maschinelle Ubersetzung) jsou prakticky stejně staré jako počítačové zpracování textů v nej obecnějším pojetí. Celkově jde o téma pro samostatný kurz, ke kterému také existují samo statná skripta [72]. Zájemce může rovněž využít celé řady renomovaných učebnic [1, 28, 29, 42, 43, 80]. Zde uvedeme jen některé obecně zajímavé momenty. 6 Od 50. let se úkolem strojového překladu zabývalo asi 20 amerických a přes 10 evropských pracovišť. Mezi první a nejvýznamnější patřily: • Georgetownská univerzita, jejíž výzkum od r. 1952 nakonec vyústil ve známý systém SYSTRAN („SYStem of TRANslation") — tento systém je dnes z metodologického hlediska předmětem četných kritik, nicméně získal nepopiratelný komerční úspěch v mnoha zemích; 7 • firma I B M , pracující od r. 1958 na automatickém rusko-anglickém překladu pro USAF, pokusně provozovaném o 6 let později; 8 M á m e - l i být přesní, nejde jen o naznačenou následnost vyhledání — překlad. Informace mohou být částečně překládány už před dalším automatizovaným zpracováním: například mů žeme chtít ke všem dokumentům uchovávat abstrakty v jednom cílovém jazyce. Ostatně samo indexování je vždycky svého druhu „překladem", i když zpravidla velmi nenáročné úrovně ve srovnání s úplným překladem textu do jiného přirozeného jazyka. V případě indexování je cílo vým jazykem selekční jazyk — a z jeho složitosti vyplývá složitost analýzy zdrojového jazyka (tj. jazyka dokumentu) potřebné k úspěšnému „překladu". Jen na okraj ještě dodejme, že teo reticky nic nebrání tomu, aby proces indexování zahrnoval skutečný překlad selekčních znaků z jednoho jazyka do druhého. Například můžeme chtít texty napsané v libovolném jazyce inde xovat českými termíny. Jedním z nástrojů, které by mohly být pro takové indexování použity, je vícejazyčný tezaurus. SYSTRAN je dnes dostupný pro více než 10 jazykových párů včetně takových jako např. angličtina—arabština nebo francouzština—holandština. Efektivně pracuje na vysoce výkon ných střediskových počítačích; jeho služby jsou zpravidla využívány přes veřejnou komunikační síť. Poslední známá varianta tohoto systému je k dispozici uživatelům Internetu na serveru vy hledávací služby AltaVista pro překlad vyhledaných stránek W W W mezi některými světovými jazyky [70]. F i r m a I B M se angažuje v oblasti strojového překladu dodnes: v poslední době experimen tuje zejména s využitím různých statistických metod pro jeho podporu. 6 7 8 160 KAPITOLA 4. DALŠÍ OPERACE • Harvardova univerzita, zabývající se podobným úkolem a podobnými me todami od r. 1954; • univerzita v Montrealu, z níž vzešel zejména od r. 1976 rutinně provo zovaný systém METEO pro automatický překlad meteorologických zpráv mezi angličtinou a francouzštinou — dvěma místními úředními jazyky; • z evropských univerzita v Grenoblů (Francie), kde byl dlouho pokusně (a občas v dost silném utajení) rozvíjen strojový překlad z ruštiny do fran couzštiny pro potřeby resortu obrany, aby nakonec část výsledků této práce podpořila celoevropský projekt EUROTRA — projekt systému automatic kého překladu mezi téměř všemi úředními jazyky Evropského společenství, rozvíjený od 80. do počátku 90. let. Jako Češi ovšem v této souvislosti nemůžeme opomenout ani aktivity na Uni verzitě Karlově v Praze, probíhající od r. 1957 a citované ve všech významných světových přehledech. Systémy strojového překladu tzv. 1. generace zpravidla pracovaly analo gicky konečnému automatu — vytvářely překlad typu „slovo za slovo", v nejlepším případě „sousloví za sousloví", resp. „fráze za frázi", přičemž veškerá „lo gika" systému spočívala v tom, nalézat v sekvenčně zpracovávaném vstupním textu slovníkové jednotky a přidávat jejich slovníkové ekvivalenty na konec vy tvářeného výstupního textu. „Překlad" produkovaný těmito systémy vyhlížel asi takto: • Vstupní věta (rusky): Ta že těnděncija bjudžetě Francii, pišet gazeta. obnaruživajetsja i v vojennom • Výstupní věta (anglicky): The same tendency detect and in military budget France, write newspaper. (Celkem přirozeně tyto systémy zahrnovaly lematizátor slov vstupního textu — i když principiálně byly řešitelné i bez něho. Na naší ukázce se jeho přítom nost jasně projevuje.) Jak je vidět, jednalo se opravdu o velmi hrubý překlad. Při jeho upravování do podoby odpovídající gramatice výstupního jazyka se re daktor musel nezřídka vracet k originálu, aby pochopil, o co přesně v textu jde (což samozřejmě předpokládalo alespoň základní orientaci redaktora v grama tice vstupního jazyka). Přesto už systémy této třídy našly praktické uplatnění: například při každodenním překládání novin Pravda pro potřeby americké vlády v době vrcholící studené války bylo rozhodující včas zjistit, kde se vůbec píše o něčem důležitém (aby se případně zjištěný článek nechal řádně přeložit překla datelem) — a pro takový účel byl strojový překlad 1. generace plně dostačující. Jistě není obtížné představit si podobnou situaci i v naší dnešní ekonomické praxi. Proto také zřejmě nachází své zákazníky celá řada dnes už i na našem trhu nabízených komerčních systémů „automatického překladu", jejichž úroveň často nijak podstatně nepřesahuje principy 1. generace. Nicméně první vlna nadšení pro automatizaci překladu po prezentaci tako výchto výsledků v 60. letech výrazně ochladla. Nelze přitom říci, že by odborníci 4.2 STROJOVÝ PŘEKLAD 161 nevěděli, jak dál. Bylo dokázáno, že metodou „sousloví za sousloví" (čistě podle slovníku) nelze obecně dosáhnout skutečného překladu textu, ať by byla sousloví ve slovníku jakkoli dlouhá. Jistý argument pro toto tvrzení najdeme při řešení následujícího cvičení 4.2.1. Je jasné, že překlad se neobejde bez úplné syntaktické analýzy (analýzy větné skladby) vstupního textu. K automatizaci úplné syntak tické analýzy přirozeného jazyka je ovšem třeba nástroje přinejmenším obdobné síly, jako je bezkontextová generativní gramatika (resp. zásobníkový automat), protože přirozený jazyk je z formálního hlediska „přibližně" bezkontextový. Z toho vycházejí dražší a déle vyvíjené systémy strojového překladu 2. ge nerace, stručně popsatelné schématem ANALÝZA — TRANSFER — SYN TÉZA. Jednoduše přiblíženo: ve fázi analýzy se zjišťují (různými metodami, jaké k tomu nabízejí obvyklé gramatiky) funkční vztahy mezi slovy ve větách; ve fázi transferu se převedou všechny zjištěné prvky vstupního jazyka (tedy slova i jazykově specifické vztahy mezi nimi ) na odpovídající prvky výstupního jazyka; ve fázi syntézy se na základě informací o struktuře vět (o vztazích mezi slovy) uvádí výstupní text do náležité formy (zejména slova do správných tvarů, ale jde i o jiné jevy — viz opět např. cvičení 4.2.1). I u těchto systémů, mezi něž patří např. zmíněný kanadský METEO, stejně jako experimentální systémy z Greno blů, nebo český experimentální systém APAČ (Automatický překlad z angličtiny do češtiny) [25, 34], se pokládala za úspěch např. 70% správnost výstupu. Zbý vající část výstupního textu mohla být na první pohled podobně nesmyslná jako výstupy 1. generace, nebo prostě vůbec nebyla vytvořena, resp. byla ponechána v originálním znění, protože j i systém překladu nedokázal analyzovat. Současný SYSTRAN nepatří sice v pravém slova smyslu mezi systémy 2. generace (protože místo modelu „analýza — transfer — syntéza" je v něm re alizována nepřehledná změť jednotlivých prvků těchto bloků), ale díky dobře řízenému úsilí jeho programátorů je jeho praktická úspěšnost při překladu ob dobná, nebo dokonce (v oblastech, na které je adaptovaný) o něco větší. Přitom z jedné rozsáhlé studie britské poradenské firmy Ovum z r. 1991 [19] vyplývá zajímavý ukazatel časové i finanční efektivity aplikace SYSTRANu. Tabulka 4.3 přehledně ukazuje rozložení nákladů i celkovou časovou náročnost překladu 1000 stran textu na jedné straně „klasicky", pomocí kvalifikovaného překladatele, na druhé straně pomocí SYSTRANu, s nutnou následnou redakcí. Vidíme, že tato tabulka nepřipisuje SYSTRANu žádnou zázračnou kvalitu: zatímco překladatel podle ní potřebuje 1 hodinu na 1 stránku, na stránce hrubého překladu vytvo řeného SYSTRANem se předpokládá průměrně ještě dvacetiminutová redakční práce, než dostane přijatelnou podobu! Přitom náklady na hodinu práce postre9 10 11 Slovem „přibližně" naznačujeme, že přirozený jazyk nelze v úplnosti exaktně popsat žád ným známým a užitečným aparátem. Zdá se však, že pomocí bezkontextových gramatik lze popsat dostatečně velkou podmnožinu každého přirozeného jazyka na to, aby se dal s jistým praktickým úspěchem formalizovat (a tedy automatizovat) překlad mezi nimi — alespoň v ob lasti vědecko-technických textů. N ě k d y je žádoucí analyzovat i vztahy mezi slovy přes hranice vět — srovnej např. problém zájmen zmiňovaný v jiné souvislosti v pododdíle 4.1.3: při překladu je někdy t ř e b a upravit gramatický rod zájmena podle toho, jaké slovo zastupuje. V i z i cv. 4.2.2. To zahrnuje např. pořadí slov, které by nemuselo být pro výstupní jazyk přijatelné. 9 10 1 1 KAPITOLA 162 METODA ČINITEL konvenční strojová překladatel SYSTRAN postredaktor celkem 4. DALŠÍ RYCHLOST (stran/h) POČET HODIN 1 2000 3 1000,0 0,5 333,3 333,8 OPERACE CENA (USD) 48 000 14000 15 000 29 000 Tabulka 4.3: Efektivita překladu (Ovum 1991) daktora jsou jen o málo nižší než náklady na hodinu práce překladatele. Přesto závěr zní: s použitím SYSTRANu (nebo jiného systému strojového překladu po dobné kvality) získáme konečný překlad třikrát rychleji, a p ř i t o m ušet říme t ř e t i n u nákladů. „Čisté" systémy strojového překladu 2. generace dosáhly mezí svých mož ností a těžko mohou překročit hodnotu asi 90 % úspěšně přeloženého textu z předem vymezené oblasti, často ani to ne. V dalším vývoji se již většinou ani nehovoří o „generacích", ale cesta ke spolehlivějšímu (a zároveň snad i univer zálnějšímu) strojovému překladu vede celkem jednoznačně přes stále výraznější zapojování různých typů rámců, dedukčních a inferenčních mechanismů, bází znalostí, nejistoty jako logického prvku a podobných nástrojů z oblasti u m ě l é inteligence. Je jasné, že takové dokonalé systémy strojového překladu nebu dou k dispozici v nejbližší době. Proto se jako vedlejší větev ve vývoji strojového překladu oddělil tzv. překlad za pomoci stroje : tuto kategorii tvoří progra mové systémy, které pouze napomáhají překladu prováděnému člověkem. Taková pomoc může mít různou podobu. Nejjednodušší, ale vysoce užitečná je podpora překladu terminologickou databází. V oblasti vědecko-technických informací na celém světě ročně vzniká asi 10 000 nových slov [41] (většina z toho přirozeně v hlavních jazycích, ve kterých se V T I produkují: angličtině, francouzštině, něm čině, ruštině). Z těchto termínů asi 40 % do 3 let mizí. (V rámci normalizace jazyka jsou vytlačeny jinými.) Je tedy evidentní, že klasické papírové slovníky nejen nemohou držet krok s vývojem terminologie, ale i kdyby to některý je jich vydavatel zvládl, nevyplatilo by se to. Výhodnější je investovat do vývoje terminologických databank. Vzhledem k tomu, že překladatelé odborných textů pracující tradičním způ sobem věnují kolem 40 % svého pracovního času vyhledáváním ve slovnících, je jistě užitečné vybavit překladatele počítačem s programovým vybavením zahrnu jícím nejen textový editor, ale integrálně s ním i překladový slovník (slovníkovou databázi). Takto integrovaný systém pak samozřejmě může (a měl by) nabízet funkce jako: 12 13 P o d r o b n ě j i k tomu viz specializovanou literaturu a výukové kurzy věnované počítačové lingvistice a umělé inteligenci. V e světových jazycích machine-assisted translation, traduction assistée par ordinateur, rechnergestíitztes Ubersetzen. 12 1 3 4.2 STROJOVÝ PŘEKLAD 163 • vyznačit ve zdrojovém textu slovo (frázi) a automaticky vyhledat tento úsek textu ve slovníku; • vybrat z nalezeného slovníkového hesla to, co se hodí pro překlad textu, a automaticky tuto část přesunout do cílového textu; • pamatovat si, že fráze X byla v daném textu (případně sérii textů) už jed nou přeložena určitým způsobem, a připomenout to překladateli u každého dalšího výskytu fráze X; • aktualizovat slovník. K rozumnému zajištění těchto funkcí je samozřejmě potřebný mj. lematizátor slov zdrojového textu. Především však, má-li nastíněný systém skutečně šetřit čas a zvyšovat kvalitu práce překladatele odborného textu, měl by jeho slovník vycházet z pravidelně aktualizované terminologické databanky (viz výše). Dnes již je na trhu (i v CR) nepřeberné množství programových systémů se slovníko vými databázemi pro podporu překladu kratších textů prováděného na osobním počítači. Některé skutečně dosáhly vysoké kvality a jsou používány překladateli — např. americký systém ALPS (Automatic Language Processing System) od stejnojmenné firmy. Z těch českých bohužel většina stále nenabízí takovou kom binaci funkcí, aby měly naději stát se široce rozšířenými profesionálními nástroji (ostatně některé na to snad ani neaspirují). Nakonec se asi nejčastěji používají v režimu automatického překladu „slovo za slovo" s postredakcí nebo bez ní (podle účelu práce) — tedy na úrovni systémů strojového překladu 1. generace. [69, 71] Další směr vývoje, který v poslední době projevuje životaschopnost, předsta vují systémy založené na tzv. překladové p a m ě t i (translation memory). Ty bychom mohli zhruba charakterizovat tak, že se nepříliš komplikovanými me todami, opřeny hlavně o velkou paměť, automaticky „učí" na překladech dříve provedených člověkem a usnadňují mu tak rutinní práci na dalších překladech. Datovou jednotkou uchovávanou v překladové paměti je nejčastěji věta nebo ur čitý „prototyp" věty vstupního jazyka spolu s odpovídajícím překladem (resp. „prototypem" překladu). Systém pak zkouší ke každé větě, která má být nově překládána, najít co nejpodobnější „předobraz" v překladové paměti a jeho (pří padným) přizpůsobením vytvořit požadovaný překlad. Otázky a cvičení k oddílu 4.2 * Cvičení 4.2.1 Přeložte metodou „slovo za slovo", bez dalšího uvažování, do češtiny anglickou větu: „Every student must know a foreign language." Použij eteli pro každé slovo nejuniverzálnější překladový ekvivalent (tedy v podstatě obvyklý základní slovníkový tvar, s výjimkou slova „must", které nemůže být infinitivem, a proto pro ně zvolíte statisticky nejpravděpodobnější ekvivalent „musí"), překlad kupodivu „vyjde". Nahraďte nyní slovo „know" v anglické větě slovem „learn" a pokuste se o stejný postup. 164 KAPITOLA 4. DALŠÍ OPERACE Jak vidíte, výsledek je gramaticky chybný kvůli poloze slova „se". Pokuste se zformulovat obecně platné pravidlo určující umístění slova „se" v české větě. (Jakmile ho jednou budete mít, vězte, že platí i pro mnoho dalších podobných slov, jako „mi", „tě", „jsem" ap.) Uvědomte si, jaké kategorie potřebujete k formulaci takového pravidla. * Cvičení 4.2.2 Představte si, že počítač překládá z češtiny do ruštiny tyto dvě věty: „Stroj má ještě mnoho nedostatků. Jeho sériovou výrobu nelze očekávat v tomto roce." Navrhněte logický postup, kterým program správně určí, že na místě zájmena „Jeho" na začátku 2. věty bude v ruském překladu „Jejo" (při vlastňovací zájmeno ženského rodu, odkazující na podstatné jméno „mašina" = „stroj";. * Cvičení 4.2.3 Uvědomte si, s jakými typy údajů musí pracovat systém plně automatického překladu, má-li přeložit do angličtiny novinový titulek: Podnik za hraničního obchodu Jihoutopijské republiky neplatí své dluhy. Je vůbec ke správ nému překladu této věty postačující syntaktická analýza? 4.3 4.3 AUTOMATICKÉ ZÍSKÁVÁNÍ ZNALOSTÍ 165 Automatické získávání znalostí z t e x t ů Za vrchol automatizovaného zpracování informačních fondů bychom mohli pova žovat systém, který by na základě přicházejících dokumentů automaticky napl ňoval svou bázi znalostí — tak, aby potom na základě této báze znalostí dokázal automaticky zodpovídat faktografické dotazy. Popis možných řešení takové úlohy daleko přesahuje záměr tohoto textu, proto si zde jen stručně nastíníme, o co v úloze jde. Úloha automatické extrakce znalostí z textu se dost podobá úloze automa tického překladu textu do jiného jazyka — koneckonců tady opět jde o překlad, ovšem tentokrát do formálního jazyka báze znalostí. Na rozdíl od úloh jako inde xování a referování, a shodně s „klasickou" úlohou překladu, při převodu textu do báze znalostí se nic z významu textu nesmí ztratit. To tedy znamená, že text musí být důkladně analyzován minimálně až do syntaktické úrovně, většinou ovšem ještě dále. Typ potřebné analýzy pochopitelně závisí i na zvoleném typu repre zentace znalostí. Aby byla jazyková analýza textu co nejefektivnější, je například možné použít schéma reprezentace znalostí vycházející z lingvistických schémat (např. z grafů větných struktur, jak se je učíme již na základní škole). Pak ovšem zase bývá obtížnější logická manipulace se znalostmi, potřebná pro jejich využití v systému. Každopádně je tu však jedna odlišnost od (praktického) strojového překladu: zatímco překlad je často možný i bez absolutního porozumění překládanému textu — protože nejasně formulovanou myšlenku v jazyce A lze přeložit obdobně nejasně formulovanou myšlenkou v jazyce B — do báze znalostí lze těžko uklá dat data, kterým systém plně neporozuměl. Vezměme si např. takovouto větu z nějakého dokumentu: „Pan XY řekl novinářům, že náš vývoz do Jižní Uto pie neklesá v důsledku vývoje kurzu koruny." Automatický překlad takové věty do většiny jazyků by dnes v principu nebyl problémem. Co ale pan X Y vlastně tvrdí? Že náš vývoz neklesá a že to je důsledkem kurzu koruny? Anebo že náš vývoz klesá, ale nikoli kvůli kurzu koruny (nýbrž např. kvůli restriktivním opat řením Jižní Utopie)? Ze samotné uvedené věty to naprosto není jasné. Aby mohla být na základě této věty uložena do báze nějaká znalost, bylo by nutno nejprve tuto větu podrobit logicko-sémantické analýze ve vztahu ke všem ostatním větám právě zpracovávaného textu, případně i ve vztahu ke všem ostatním relevantním znalostem, které již v systému jsou k dispozici. (Z různých okolností např. může vyplývat, že náš vývoz skutečně klesá. V tom případě je již význam zkoumané věty jednoznačný, a je tedy možné uložit ho jako další znalost.) Dostáváme se tedy nezvratně do oblasti umělé inteligence: z textu nelze extrahovat znalosti bez komplexního systému zacházení se znalostmi (zahrnujícího např. mechanis mus ověřování hypotéz). Z hlediska naší úlohy může být velmi zajímavá např. teoretická práce S.C. Dika [17], ve které byl proces interpretace textu komplexně popsán jako proces zacházení se znalostmi různých druhů, a dále byly podrobně klasifikovány všechny druhy znalostí, které v tomto procesu mohou figurovat. Neméně zajímavé by jistě bylo i podrobnější seznámení s originálním českým systémem zodpoví- 166 KAPITOLA 4. DALŠÍ OPERACE dání dotazů na základě textu TIBAQ (Text and Inference Based Answering of Questions) [25, 27, 63], který ukazuje řešení řady lingvistických problémů v úloze, i když v celkové implementaci nikdy nedosáhl takové efektivity, aby bylo možno uvažovat o jeho praktické aplikaci. Otázky a cvičení k oddílu 4.3 Otázka 4.3.1 Mějme v dokumentu větu: V prohlubni desky zakrývající trans formátor je okénko. Lze na základě této věty jednoznačně zodpovědět dotaz, čím je zakryt transformátor? * Cvičení 4.3.2 Je dobře známo, že v češtině a podobných jazycích může vý znam věty velmi záležet na pořadí slov: věta „Na Moravě se mluví česky" říká něco zcela jiného než věta „Česky se mluví na Moravě". Jak je to s relevancí obou vět vzhledem k otázce „Kde se mluví česky" ? Pokuste se tento rozdíl vysvětlit po mocí prvků jazyka predikátové logiky. Uvědomte si, že anglická věta "Czech is spoken in Moravia" je v tomto ohledu dvojznačná. Jaká vlastnost anglické gramatiky to způsobuje? 167 Literatura [1] A R N O L D , D. et al.: Machine Translation: An Introductory guide. Manches ter/Oxford, N C C Blackwell 1994. 172 s. [2] A R Z I K U L O V , Ch. A . et al.: Avtomatizirovannaja sistema tezaurusnogo annotirovanija naučno-techničeskogo dokumenta. Naučno-techničeskaja infor matika, ser. 2, 1978, č. 12, s. 12-20. [3] B O G U R A E V , B . K . — N E F F , M . S . : Lexical Cohesion, Discourse Segmentation and Document Summarization. In RIACP2000 Conference Proceedings, Paris, Collěge de France 2000, sv. 2, s. 962-979. [4] B O U R I G A U L T , D. — LÉPINE, P.: Méthodologie ďutilisation de L E X T E R pour Tacquisition des connaissances á partir de textes. In Actes des JAC-94 (Cinquiěmes Journées Acquisition des Connaissances), Strasbourg, ERIC 1994, s. F - l - F - 1 3 . [5] C E J P E K , J. — PANEVOVÁ, J. — Z V E L E B I L , V.: A S I M U T 2: Metoda vyhledávání v úplných textech. Čs. informatika, TOČ. 30, 1988, č. 10, s. 294299. [6] C E J P E K , J. — PANEVOVÁ, J. — Z V E L E B I L , V.: Dosavadní zkušenosti s využitím A S I M U T 2 v právu ve výstavbě. In Lingvistické metody a auto matizované informační systémy, Praha, Dům techniky ČSVTS 1988, s. 8692. [7] CIGÁNIK, M . et al.: Automatizovaný informačný tody a modely. Bratislava, W S 1971. 217 s. [8] CIGÁNIK, M . : Informačně slava 1973. 442 s. systém: Klasifikačně me systémy vo vede, technike a ekonomike. Brati [9] g U N A E K M E K Q I O G L U , F. — R O B E R T S O N , A . M . — W I L L E T T , P.: Effectiveness of query expansion in ranked-output document retrieval systems. Journal of Information Science, 1992, č. 18, s. 139-147. [10] g U N A E K M E K Q I O G L U , F. — L Y N C H , M . F . — W I L L E T T , P.: Development and evaluation of conflation techniques for the implementation of a document retrieval systém for Turkish text databases. New Review of Document and Text Management, TOČ. 1, 1995, s. 131-146. 168 LITERATURA [11] ČERMÁK, F.: Jazyk a jazykověda: Přehled a slovníky. Praha, Pražská ima ginace 1997. 464 s. [12] ČSN 01 0193: Dokumentace: Pokyny pro vypracování a rozvíjení jednojazyčných tezaurů. Praha, Český normalizační institut 1996. 52 s. [13] ČSN 01 0194: Referát a anotace. Praha, Vydavatelství ÚNM 1983. 12 s. Změna a — 4/1987. [14] D A T T O L A , R. T.: Experimenty s rychlým algoritmom pre automatickú kla sifikační. In [56], s. 293-324. [15] Dialogovaja sistema avtomatizacii lingvističeskich M C N T I 1981. 133 s. rabot (DIALIN). Moskva, [16] DIAS, G . et al.: Combining Linguistics with Statistics for Multiword Term Extraction: A Fruitful Association? In RIAO'2000 Conference Proceedings, Paris, Collěge de France 2000, sv. 2, s. 1473-1491. [17] D I K , S.C.: Linguistically Motivated Knowledge Representation. In [40], s. 145-170. [18] DUDINSKÁ, E. — ŠILHÁN, O.: Informační 1984. 206 s. zdroje a fondy. Praha, S P N [19] E N G E L I E N , B . — M c B R Y D E , R.: Natural Language Markets: Commercial Strategies. London, Ovum 1991. 290 s. [20] E R H A R T , A . : Základy jazykovědy. 2. vyd. Praha, S P N 1990. 200 s. [21] F R A K E S , W . B . — B A E Z A - Y A T E S , R. (eds.): Information Retrieval: data structures and algorithms. Englewood Cliffs, Prentice-Hall 1992. [22] G L U C O S E Development Corp., Liberty (Mo.): Data Hammer. 1999. http://www.glu.com/datahammer/ [23] G L U C O S E Development Corp., Liberty (Mo.): Performance Comparison: Data Hammer goes head-to-head with Microsoft's "AutoSummarize". 1998. http://www.glu.com/DHTests.html [24] HAJIČ, J. et al.: Současnost a budoucnost inteligentní práce s textem. Computerworld, TOČ. 7, 1996, č. 51-52, s. 25-40. [25] HAJIČOVÁ, E. — PIŤHA, P. — S G A L L , P.: Učíme stroje česky. Praha, Panorama 1982. 296 s. [26] HAUSSER, R.: Foundations of Computational Linguistics: Man-Machine Communication in Natural Language. Berlin etc, Springer-Verlag 1999. 532 s. LITERATURA 169 [27] HNÁTKOVÁ, M . — KUBOŇ, V.: Analýza češtiny a inferenční pravidla v systému T I B A Q 2. In Lingvistické metody v informatice, Praha, Dům techniky C S V T S 1990, s. 5-18. [28] HUTCHINS, W. J.: Machine Translation: Past, Present, Future. Chichester, Ellis Horwood 1986. 382 s. [29] HUTCHINS, W. J. — SOMERS, H . L.: An Introduction to Machine Trans lation. London/New York, Academie Press 1992. 362 s. [30] I B M Corp., Armonk (N.Y.): Intelligent Miner for Text. http://www-4.ibm.com/software/data/iminer/fortext/ [31] JONÁK, Z.: Systém lingvistického zabezpečení metodou S E M A N . In Lingvi stické metody a automatizované informační systémy, Praha, Dům techniky C S V T S 1986, s. 118-125. [32] JONÁK, Z.: Zbraně proti entropii Internetu. Computerworld, TOČ. 10, 1999, č. 7, příl. Technology World, s. 4-7. [33] K I R S C H N E R , Z.: MOSAIC — A Method of Automatic Extraction of Significant Terms from Texts. Explicitní popis jazyka a automatické zpracování textů, X . Praha, M F F U K 1983. 124 s. [34] K I R S C H N E R , Z.: APAC3-2: An English-to-Czech Machine Translation Sys tem. Explicitní popis jazyka a automatické zpracování textů, XIII. Praha, M F F U K 1987. [35] KRÁLÍKOVÁ, K . : Obecný systém vyhledávání informací v českých tex tech (ASIMUT). In Lingvistické metody v informatice, Praha, Dům techniky C S V T S 1990, s. 25-33. [36] KRÁLÍKOVÁ, K . — PANEVOVÁ, J.: ASIMUT — A Method for Automatic Information Retrieval from Full Texts. Explicitní popis jazyka a automati zované zpracování textů, X V I I . Praha, M F F U K 1990. 120 s. [37] L E N N O N , M . et al.: A n evaluation of some conflation algorithms for information retrieval. Journal of Information Science, TOČ. 3, 1981, s. 177-183. [38] LOVINS, J. B.: Development of a stemming algorithm. Mechanical Trans lation and Computational Linguistics, TOČ. 11, 1968, s. 22-31. [39] M E L B Y , A . : Some Notes on The Proper Pláce of Men and Machines in Language Translation. Machine Translation, TOČ. 12, 1997, č. 1-2, s. 29-34. [40] N A G A O , M . (ed.): Language and Artificial Intelligence. Amsterdam, NorthHolland 1987. 416 s. [41] NIEL, F.: Traduction automatique. Science & vie micro, 1986, č. 30, s. 7882. 170 LITERATURA [42] N I R E N B U R G , S. (ed.): Machine Translation. Cambridge, C U P 1990. 360 s. [43] N I R E N B U R G , S. et al.: Machine Translation: A Knowledge-Based Approach. San Mateo (Calif.), Morgan Kaufmann 1992. xiv+258 s. [44] POKORNÝ, J.: Vektorový model. Computerworld, TOČ. 9, 1998, č. 7, s. 10. [45] POKORNÝ, J. — SNÁŠEL, V. — HÚSEK, D.: Dokument o grafické infor mační systémy. Praha, Karolinum 1998. 158 s. [46] P O P O V I C , M . — W I L L E T T , P.: Processing of Documents and Queries in a Sloveně Language Free Text Retrieval System. Literary and Linguistic Computing, TOČ. 5, 1990, č. 2, s. 182-190. [47] P R E S T O N , K . — W I L L I A M S , S.: Managing the Information Overload: New automatic summarization tools are good news for the hard-pressed executive. Physics in Business, červen 1994. Dostupné ve W W W : http://www. labs.bt.com/summ-bin/summarise.cgi/PI BArticle.htm [48] P R E S T O N , K . : NetSumm and Information Overload. ELSNews, TOČ. 6, 1997, č. 3, s. 10-11. [49] PRICHOĎKO, S. M . — SKOROCHOĎKO, E. F.: Avtomatičeskoje referirovanije na osnově analiza mežfrazovych svjazej. Naučno-techničeskaja infor matika, ser. 2, 1982, č. 1, s. 27-32. [50] R A U C H , J.: Metody zpracování informací: I — informační Praha, VŠE 1994. 55 s. [51] R A U C H , J.: Metody zpracování Praha, VŠE 1996. 88 s. informací zdroje a služby. II: Ukládání a vyhledávání. [52] R I J S B E R G E N , C. J. van: Information Retrieval. 2nd ed. London, Butterworths 1979. 208 s. Dostupné ve W W W : http://www.dcs.gla.ac.uk/Keith/Preface. html [53] R I J S B E R G E N , C. J. van (ed.): Research and Development in Information Retrieval. Cambridge, C U P 1984. [54] R O B E R T S O N , A . M . — W I L L E T T , P.: A Comparison of Spelling-Correction Methods for the Identification of Word Forms in Historical Text Databases. Literary and Linguistic Computing, TOČ. 8, 1993, č. 3, s. 143-152. [55] S A G G I O N , H . — L A P A L M E , G.: Selective Analysis for Automatic Abstracting: Evaluating Indicativeness and Acceptability. In RIAO'2000 Con fer ence Proceedings, Paris, Collěge de France 2000, sv. 1, s. 747-764. [56] S A L T O N , G . et al.: Prieskumový 592 s. informačný systém. Bratislava, Alfa 1981. LITERATURA 171 [57] S A L T O N , G.: Strategie prieskumu pomocou zhlukov a optimalizácia účin nosti vyhfadávania. In [56], s. 251-270. [58] S A L T O N , G . — L E S K , M . E.: Informačná analýza a zostavovanie slovníka. In [56], s. 139-166. [59] S A L T O N , G . — McGILL, M . : Introduction to Modem Information trieval New York, McGraw Hill 1983. 448 s. Re [60] S A L T O N , G.: Automatic Text Processing: The Transformation, Analysis and Retrieval of Information by Computer. Reading (Mass.), AddisonWesley 1989. [61] SAVOY, J.: Stemming of French words based on grammatical categories. Journal of the American Society for Information Science, roč. 44, 1993, s. 1-9. [62] Sémantická analýza textu. [Rozhovor s doc. V. Smetáčkem.] Computerworld, roč. 5, 1994, č. 9, s. 31-32. [63] S G A L L , P. et al.: Využitie lingvistických venská technická knižnica 1984. 116 s. metod vo VTEI. Bratislava, Slo [64] S H E R E M E T Y E V A , S. — JIN, W. — N I R E N B U R G , S.: Rapid Deployment Morphology. Machine Translation, roč. 13, 1998, č. 4, s. 239-268. [65] S C H I N K E , R. et al.: A Stemming Algorithm for Latin Text Databases. Journal of Documentation, roč. 52, 1996, s. 172-187. [66] SIEMENS A G , Munchen: Automatische 1986. 42 s. [67] SMETÁČEK, V.: Sémantický U P 1982. 189 s. Texterschliefiung mit PASSAT. analyzátor: Základní pojmy a prvky. Olomouc, [68] SMETÁČEK, V. — NYKLOVÁ, A . — ULIČNÝ, O.: Automatizovaná tvorba tezaurů. In Lingvistické metody a automatizované informační sys témy, Praha, Dům techniky ČSVTS 1986, s. 103-108. [69] S T R A K A , L : Brána jazyků v počítači otevřená. Softwarové noviny, roč. 9, 1998, č. 2, s. 30-58. [70] S T R A K A , L : AltaVista Web Translation Service. Softwarové noviny, roč. 9, 1998, č. 2, s. 57-59. [71] S T R A K A , L : Slovníky učící i neučící. Softwarové noviny, roč. 10, 1999, č. 3, s. 46-56. [72] STROSSA, P.: Vybrané kapitoly z počítačového zyka. Opava, Slezská univerzita 1999. 277 s. zpracování přirozeného ja 172 LITERATURA [73] T E S K E Y , N . — R A Z A K , Z.: A n analysis of ranking for free text retrieval systems. In Advances in Intelligent Retrieval, London, A S L I B 1985, s. 85-99. [74] TĚŠITELOVA, M . et al.: Psaná a mluvená odb orná čeština z kvantitativního hlediska (v rámci věcného stylu). Linguistica, IV. Praha, ÚJČ ČSAV 1983. 146 s. [75] TĚŠITELOVA, M . et al.: Kvantitativní charakteristiky současné odborné češtiny (v rámci věcného stylu): Tabulky a přehledy. Linguistica, V I L Praha, ÚJČ ČSAV 1983. 111 s. [76] TĚŠITELOVA, M . et al. (eds.): Frekvenční slovník češtiny věcného stylu. Praha, ÚJČ ČSAV 1983. 329 s. [77] TĚŠITELOVA, M . et al.: O češtině v číslech. Praha, Academia 1987. 208 s. [78] ULIČNÝ, O. — W E B R , J.: K problematice automatizované tvorby a aktu alizace tezauru. Čs. informatika, roč. 26, 1984, č. 6, s. 161-167. [79] WEISHEITELOVÁ, J. — KRÁLÍKOVÁ, K . — S G A L L , P.: Morphemic Analysis of Czech. Explicitní popis jazyka a automatické zpracování textů, V I L Praha, M F F U K 1982. 120 s. [80] W H I T E L O C K , P. — K I L B Y , K . : Linguistic and Computational Techniques in Machine Translation System Design. 2nd Ed. London, U C L Press 1995. 208 s. [81] W I L K S , Y . : Machine Translation and Artificial Intelligence. In S N E L L , B. M . (ed.): Translating and the Computer, Amsterdam, North Holland 1979, s. 27-44. [82] W I L L E T T , P. (ed.): Document Retrieval Systems. London, Taylor Graham 1988. 292 s. [83] Z39.58-1992: Common Command Language for Online Interactive Infor mation Retrieval. NISO Press, Bethesda 1994. vii+25 s. 173 Rejstřík abstrakt, viz referát algoritmizace, 5 A L P S , 163 AltaVista Web Translation Service, 159 antonymie, 65 ASIMUT, 11, 32, 37 asociovanost pojmů, 64, 66, 84, 137, 140 ASPI, 45 A T E Z , 138 B A L E X , 139 booleovský model vyhledávání, 97 ByllBase, 45 C C L , 11 CDS/ISIS, 10, 11, 76 centroid, 119 Data Hammer, 155 derivátor, 27, 31 deskriptor, 65 diakritika, 28, 89 DIALIN, 73 D I A L O G , 11 ekvivalence termínů, 64, 139 elementární vyhledávací požadavek k textové databázi, 9 Entrez, 126 E U R O T R A , 160 fuzzy rozšíření booleovského modelu vyhledávání, 98 geometrické rozšíření booleovského modelu vyhledávání, 99 G O L E M , 10, 14 hierarchie pojmů, 64, 66, 84, 137, 139 homonymie, 44, 84-96 gramatická, 58, 85, 89-93 koordinace, 90 v dotazech, 93 I B M Summarization tool, 154 IDF, 21 index — relativita významu, 107 indexování, 9, 159 indexový soubor, 9, 13, 16, 97, 110 informační vektor, 100, 107 dokumentu, 100, 137 termínu, 137, 140 invertovaný soubor, 9, 76 kmen slova, 29 koherence slovního spojení, 23, 51, 57 koheze množiny, 114, 116 koncovka, 30 konflace, 83 korektnost shlukování, 129 kořen slova, 30 K W I C , 136 lematizátor, 27, 38, 53, 160, 163 L E X T E R , 136 matice termín—dokument, 137 měření obsahových souvislostí mezi větami textu, 149 míra podobnosti informačních vek torů, 111 asymetrické překrytí, 109, 137 Diceova, 106, 141 euklidovská, 105 Jaccardova, 106 kosinová, 104 kovarianční, 105 174 symetrické překrytí, 106 míra podobnosti množin dokumentů, 116 míra podobnosti sémových ekviva lentů, 140 morf, 29 morfém, 29 morfologická analýza, 41, 52, 53, 55, 70 morfologie, 29 M O Z A I K A , 51-63, 81, 86, 91, 136, 137 MS Word, 155 nadřazený pojem, 64, 66 nedeskriptor, 65 NetSumm, 156 obsahová analýza, 16 operátor kontextový (proximitní, distanč ní), 10 logický (booleovský), 10 pravostranného rozšíření, 12, 27, 28, 75 PASSAT, 41 plnotextové systémy, 10 podmíněná pravděpodobnost, 24 podobnost dokumentu a dotazu, 98 podřazený pojem, 64, 66 polyhierarchie, 66 polysémie, 86 předpona derivační (odvozovací), 30 gramatická, 30 překladová paměť, 163 přípona derivační (odvozovací), 30 gramatická, 30 přístupový termín, 13 PubMed, 126 R D M (Rapid Deployment Morphology), 41 referát, 145 sekundární dokument, 16 selekční jazyk, 9, 16, 27 selekční obraz, 9, 19 selekční významnost, 16, 81 selekční znak, 16 selektivní síla, 18, 81 sém, 78 SÉMAN, 78-80, 84, 138 sémový ekvivalent, 79, 139 shluk (definice), 113-115 shlukování, 112 signál selekčního znaku, 22 skalární součin, 101, 105, 107, 111 slovník, 9 konkordanční, 9 negativní, 12, 17, 53, 55, 81, 82 retrográdní, 37 S M A R T , 106, 121, 123 S O U N D E X , 46, 48, 83 STAIRS, 10, 11 stop-slova, stop-slovník, viz slovník, negativní submorf, 30 sumarizace, 145 synonymie, 64, 84 syntaktická analýza, 23, 52, 57, 70, 161 S Y S T R A N , 159, 161 šum selekčního znaku, 22 term, 10 terminologická databanka, 162, 163 test hustoty, 123 TexPro, 11, 31 textový vyhledávací systém, 11 tezaurus, 13, 17, 64-77, 84, 131-143, 147, 150, 159 těžiště množiny informačních vek torů, 120 T F I D F , 22 T I B A Q , 166 trigram, 50 trigramová metoda měření podob nosti znakových řetězců, 47, 48, 83 175 umělá inteligence, 85 vážení selekčních znaků, 19, 38, 39, 44, 51, 52, 56, 58, 73, 82, 85, 110, 155 vektorový model vyhledávání, 100 význam gramatický, 85 významnost vzhledem k vyhledá vání, viz selekční význam nost
Podobné dokumenty
Indikátory kvality života a udržitelného rozvoje: kvantitativní
Při formulování cílů jsme vycházeli z předpokladů, že:
a)
TESE - Tezaurus pro vzdělávací systémy v Evropě
Kromě zde uvedených příkladů byly v české verzi TESE jako nedeskriptory použity i
termíny odpovídající českému prostředí.
Postavení termínů ovlivnily i požadavky na terminologickou návaznost na Evr...
Adamovy zápisky
komputační lingvistika (angl. computational linguistics)
50. léta: matematická lingvistika
60., 70. léta: statistická lingvistika (skutečně statistika frekvence hlásek apod., něco jiného než
teď, k...
Sborník abstraktů a příspěvku z 20. kartografické konference
k popisu mapy a jejích funkcí prostě nestačí. Na mapu jako
na artefakt lidské činnosti lze podle něj nahlížet hned v rámci
několika módů. Jako na vizuální informaci, symbolickou reprezentaci, pros...
Vícerozměrné statistické metody
Při tomto způsobu shlukování jsou postupně shlukovány nejpodobnější objekty až
do doby, kdy jsou všechny objekty propojeny do jednoho shluku spojujícího
všechny objekty v analyzovaném souboru
An...