Jana Maláová Shlukování textových dokument

Rozměr: px
Začít zobrazení ze stránky:

Download "Jana Maláová Shlukování textových dokument"

Transkript

1 Univerzita Karlova v Praze Matematicko-fyzikální fakulta DIPLOMOVÁ PRÁCE Jana Maláová Shlukování textových dokument Katedra softwarového inženýrství Vedoucí diplomové práce: RNDr. Michal Kopecký, Ph.D. Studijní program: Informatika, Softwarové systémy

2 Podkování Ráda bych tímto podkovala vedoucímu diplomové práce RNDr. Michalovi Kopeckému, Ph.D. za zájem, as a cenné rady a pipomínky, které mé práci vnoval. Dále bych ráda podkovala RNDr. Leovi Galambošovi, Ph.D. za pomoc pi seznamování se s projektem Egothor. Prohlašuji, že jsem svoji diplomovou práci napsala samostatn a výhradn s použitím citovaných pramen. Souhlasím se zapjením práce. V Praze dne Jana Maláová 2

3 Název diplomové práce: Shlukování dokument Autor: Jana Maláová Katedra (ústav): Katedra softwarového inženýrství Vedoucí diplomové práce: RNDr. Michal Kopecký, Ph.D. vedoucího: Abstrakt: Diplomová práce si klade za cíl usnadnit orientaci v dokumentech s použitím shlukovacích metod. V teoretické ásti se definují základní pojmy shlukování a popisují dílí fáze procesu shlukování. V této sekci se klasifikují a popisují jednotlivé metody pro shlukování kolekcí dokument. Další ástí diplomové práce je rozbor možností použití shlukování jako nástroje pro zlepšení orientace v dokumentech. Práce uvádí možnosti použití pímého shlukování kolekce dokument a navázání shlukování na vyhledávací stroj. V rámci práce je také uvedeno nkolik již existujících implementací shlukování a jejich srovnání. Pro implementaci byl zvolen smr navázání shlukování na vyhledávací stroj. V návaznosti na tuto volbu se provádí diskuze vhodnosti jednotlivých algoritm pro tento úel použití. Nejvhodnjší z uvedených algoritm byl na základ diskuze zvolen algoritmus hierarchického shlukování. Další sekce se vnuje návrhu implementace systému vetn realizace napojení na již existující vyhledávací stroj Egothor. V poslední fázi je provedeno celkové zhodnocení implementovaného systému a je uvedeno nkolik možností dalšího rozšíení. Klíová slova: hierarchické shlukování, podobnost, indexace 3

4 Title: Documents clustering Author: Jana Maláová Department: Department of Software Engineering Supervisor: RNDr. Michal Kopecký, Ph.D. Supervisor s address: Michal.Kopecky@mff.cuni.cz Abstract: The goal of this diploma thesis is to facilitate the orientation in collection of documents with the assistance of clustering methods. In the theoretical part there are defined the basic definitions of clustering and description of the phases of clustering process. There are also classified and described the basic methods of clustering collection of documents. Next section of diploma thesis analyzes the options to use clustering as an instrument of improvement of orientation in the collection of documents. Our work brings up the following options of using clustering: direct clustering of collection or the option to attach clustering to the search engine. In diploma thesis there are also mentioned some existing implementations of clustering and their comparison. For the implementation there was chosen the direction to join clustering system to the results of search engine. In this context there is a discussion of suitability of previously mentioned algorithms. On the basis of previous discussion results there was chosen the algorithm of hierarchical clustering. Next section is aimed to design the system implementation including realization of connection to existing search engine Egothor. In the last phase there are reported overall evaluations and results of implemented system. And finally, there are listed some possibilities of next augmentation. Keywords: hierarchical clustering, similarity, indexing 4

5 Obsah 1 Úvod Cíl Struktura diplomové práce Shlukování Proces shlukování Reprezentace dokument Míra podobnosti Podobnost pi binární reprezentaci dokumentu Podobnost pi reprezentaci dokumentu frekvencí termu Obecné shlukování Znakování shluk Shlukovací metody Hierarchické metody Urení reálných podshluk Urení kvality shluk Pednosti a nedostatky hierarchického algoritmu shlukování...25 Výhody...25 Nevýhody Rozdlovací metody Pednosti a nedostatky rozdlovacích metod shlukování...27 Výhody...27 Nevýhody Pravdpodobnostní metody Pednosti a nedostatky pravdpodobnostních metod shlukování...28 Výhody...28 Nevýhody Mížkové metody Neuronové sít Pednosti a nedostatky použití neuronových sítí pro shlukování Použití shlukování pro zlepšení orientace v dokumentech Shlukování dokument na disku Využití shlukovacích metod pi vyhledávání Zadání dotazu Zobrazení výsledk vyhledávání Soubžný tématický náhled na prvních c výsledk Soubžný tématický náhled na zobrazené výsledky Pímý tématický náhled na prvních k výsledk Znovuzadání dotazu Existující implementace shlukovacích systém Carrot 2 [14] iboogie [13] Vybraný smr pro implementaci Srovnání s existujícími implementacemi Implementaní ást Detailní cíl implementace Diskuze výbru vhodného algoritmu Analýza Vyhledávací stroj Egothor

6 Základní struktury Egothoru Proces vyhledávání a získávání výsledk v Egothoru Návrh systému Architektura shlukovacího modulu Moduly EgoClusterer Volitelné parametry Konstanty Návrh Samostatný shlukovací modul Clusterer Oznaení vzniklých shluk termy Indexer SimilarityCounter ClusterMaker Webová aplikace Diskuze nastavení a výsledky test Testy samostatného shlukovacího modulu Shrnutí test shlukovacího modulu Testy vyhledávae se shlukováním výsledk Shrnutí test Možná rozšíení Závr...93 Literatura...95 Pílohy...97 Seznam obrázk...97 Seznam tabulek...97 Seznam vzorc

7 1 Úvod V souasnosti jde rozvoj informaních technologií kupedu stále rychlejším tempem. Na jedné stran se neustále zvyšuje rychlost procesor a kapacita médií pro uložení dat. Na stran druhé dochází k velkému nárstu objemu ukládaných textových dat. Dokument neustále pibývá jak ve veejných úložištích, tak i v rámci lokálních sítí soukromých i firemních PC. lovk již ztrácí schopnost se orientovat nejen v celkové záplav informací, ale dokonce i v odpovdích, poskytovaných specializovanými programy pro vyhledávání v textech. Proto se snažíme nalézt zpsob, jak práci s daty co nejvíce urychlit a pesunout úsilí lovka od hledání informací k jejich užití pro ešení problému. Jednou z možností, jak uživateli manipulaci s množstvím dokument zpíjemnit a urychlit, je nabídnout mu možnost dokumenty sdružovat do tématických skupin, kde v rámci každé skupiny nalezne dokumenty sob navzájem podobné. Procesu sdružování do skupin sob podobných dokument se obvykle íká shlukování. Pro snazší orientaci ve shlucích bez nutnosti nahlížet do samotných dokument se jednotlivé shluky mohou znakovat pomocí term, které obsah v nich uložených dokument co nejlépe charakterizují. 1.1 Cíl Cílem diplomové práce je navrhnout a implementovat otevený a rozšiitelný systém pro shlukování dokument a jejich znakování pomocí charakteristických term. Jako primární cíl si klademe umožnit uživateli snadnou orientaci v dokumentech, které dokumentografický systém poskytuje uživateli na základ dotazu. Pro tyto úely je poteba vytvoené shluky uživateli vhodn reprezentovat. V diplomové práci se proto zamujeme práv na kombinaci vyhledávání a shlukování spolu s možnostmi prezentace výsledk dotazu. Rozebíráme ovšem i jiné možnosti, jak dosáhnout zlepšení pi manipulaci s uloženými dokumenty. 1.2 Struktura diplomové práce V diplomové práci popíšeme teoretický základ shlukování dokument, klasifikujeme a podrobnji popíšeme jednotlivé metody pro shlukování dokument. Následn provedeme diskuzi algoritm v závislosti na ešeném problému. Na základ získaných poznatk navrhneme systém pro shlukování dokument. 7

8 V následující kapitole rozebereme teorii o shlukování dokument. Uvedeme nkolik zpsob reprezentace dokument a zavedeme míru podobnosti mezi dokumenty. Ve tetí kapitole klasifikujeme jednotlivé algoritmy pro shlukování, nkteré z nich blíže popíšeme a uvedeme si jejich výhody a nevýhody pi použití. V tvrté kapitole rozebereme možnosti použití shlukování dokument s cílem zlepšení orientace uživatele v dokumentech a možné návaznosti shlukování na vyhledávací stroj. Pátá kapitola je vnována samotné implementaci softwaru, který je souástí diplomové práce. Její souástí je popsání funknosti, analýza problému, struný popis vyhledávacího stroje, se kterým bude vyvíjený software pracovat, a samotný návrh vetn UML schémat jednotlivých modul. V šesté kapitole uvedeme výsledky test jednotlivých ástí systému a v závislosti na nich diskutujeme nastavení jejich parametr. V pedposlední kapitole navrhneme nkteré varianty, kam by se práce v budoucnu mohla dále vyvíjet, a v poslední kapitole provedeme zhodnocení práce a závry, ke kterým jsme dospli. Souástí diplomové práce jsou také zdrojové kódy, programátorská a uživatelská dokumentace vyvíjeného softwaru a testovací data dokumenty použité pro testování a píslušné indexy tchto dokument. Vyjmenované souásti jsou obsaženy na piloženém CD. 8

9 2 Shlukování Než popíšeme jednotlivé kategorie shlukovacích algoritm, zavedeme nkolik základních pojm, které se v diplomové práci používají, a definujeme jejich význam. Pokud mluvíme v rámci diplomové práce o shluku, je tím myšlen shluk dokument. Term je blok textu urité kategorie. Nap. term 190 patí do kategorie íselných, zatím co bagr je term textový. Proces parsování dokumentu zajišuje pevod textu dokumentu na sekvenci term. Indexace kolekce dokument je proces, pi kterém se hledá vhodná reprezentace dokument v kolekci. Pojmem stop slova jsou oznaeny termy, které nejsou vhodné pro indexaci dokument. Obvykle se jedná o termy, které v daném jazyce plní funkci spojek, pedložek, zájmen a dalších nevýznamových slovních druh. Shlukování je proces vytváení shluk dokument. Pojmem klasifikace dokument budeme oznaovat množinu shluk, které vznikly procesem shlukování nad zmínnými dokumenty. Charakteristické termy shluku jsou termy, které daný shluk charakterizují a souasn ho dostaten odlišují od ostatních shluk na stejné úrovni. Procesu piazení charakteristických term jednotlivým shlukm budeme íkat znakování shluk. Jako centrum shluku oznaíme dokument shluku, který nejlépe vystihuje obsah shluku. V nkterých pípadech se jedná o konkrétní dokument, v jiných pípadech se mže jednat o dokument fiktivní, umle vytvoený. Centrum shluku budeme dále oznaovat znakem c. Podobnost dokumentu vzhledem k dotazu je míra, která uruje shodu daného dokumentu se zadaným dotazem. Podobnost dokumentu vzhledem k centru shluku je míra, která uruje shodu daného dokumentu a centra shluku, do kterého náleží. Pojmem tématický náhled na dokumenty budeme v diplomové práce oznaovat seznam dokument azený podle uritého kritéria podobnosti nap. podle podobnosti dokumentu vzhledem k centru shluku. Uživatel tím získá pehled o tématech, která se v rámci zadané kolekce dokument vyskytují. 9

10 2.1 Proces shlukování Proces shlukování mžeme rozdlit do nkolika dílích fází: 1) zvolení vhodné reprezentace dokument, 2) zvolení vhodné míry podobnosti mezi dvma objekty na základ zvolené reprezentaci dokument, 3) shlukování objekt na základ zvolené reprezentace a míry podobnosti, 4) znakování shluk. V následujících kapitolách popíšeme jednotlivé fáze Reprezentace dokument V této kapitole se budeme zabývat výbrem vhodných charakteristik pro reprezentaci dokument. Pro úely porovnávání dokument je vzhledem k jeho asové náronosti obvykle žádoucí vybrat pouze ty charakteristiky, které v daném kontextu dokument dostaten reprezentují. Takový výbr zpsobí jistou ztrátu informace. Pokud se však volba charakteristik provede vhodným zpsobem, bude cena ztráty minimální vzhledem k celkovému zrychlení vzájemného porovnávání. Pi shlukování dokument definujeme funkci, která urí podobnost mezi dokumenty. Funkce podobnosti poítá s rozložením dokument v prostoru charakteristik celé kolekce. Musíme proto zvolit takovou reprezentaci, která nám umožuje dostaten efektivní porovnávání a zárove bude umožovat kvalitní shlukování [3]. Dokument mžeme charakterizovat nkolika zpsoby. Dokument se vtšinou skládá z nkolika ástí. Nkteré z tchto ástí jsou pro charakterizaci daného dokumentu dležitjší než jiné. Obecn se dokument skládá z term, které jsou v dokumentu obsaženy. Budeme-li uvažovat kolekci všech uložených dokument, pak by jednotlivé charakteristiky mohly odpovídat jednotlivým termm, vyskytujícím se v této kolekci. Tato množina je obvykle obsáhlá obsahuje desetitisíce až statisíce rzných term. Navíc obsahuje termy, které jsou pestože jsou stejného nebo podobného významu díky jinému skloování, asování nebo z dvodu, že se jedná o synonyma, zaazeny vícekrát. Kolekce mže rovnž obsahovat termy, které nejsou pro reprezentaci dokument píliš významné. Uvedené problémy jsou navíc závislé na jazyce, ve kterém jsou dokumenty napsány. Snažíme se je vyešit v rámci procesu nalezení vhodné reprezentace dokument v kolekci indexace. 10

11 Indexace kolekce dokument je nároný proces a to hned z nkolika dvod. Z hlediska uživatele chceme co nejlépe reprezentovat daný dokument. Bohužel každý na dokument pohlíží trochu odlišn. Kdyby nkolik lidí run indexovalo stejný dokument, každý by pravdpodobn vybral jiné termy pro jeho reprezentaci napíklad na základ svých zkušeností a znalostí [22]. My se budeme snažit použít vhodný algoritmus, abychom dokument (nebo celou kolekci) reprezentovali co nejlépe, a souasn budeme chtít proces indexace pln zautomatizovat. Automatickou indexaci mžeme rozdlit do nkolika fází: 1) lexikální analýza identifikace jednotlivých term v textu dokumentu nebo celé kolekci, 2) odstranní nevýznamových a nespecifických term, 3) lemmatizace a stemming, 4) vážení term. Lexikální analýza je proces pevodu sekvence znak (obecného textu) na sekvenci term. Lexikální analýza má za úkol rozpoznat a identifikovat jednotlivé termy v textu dokumentu. Nejastji rozpoznává termy pomocí mezer, árek a jiných oddlova. Problémy mohou nastat v pípad rozpoznávání zkratek a práce s íslicemi [17]. Dalším krokem indexace je odstranní nevýznamových a nespecifických term z množiny term z kolekce všech dokument. Pokud bychom použili všechny termy, které kolekce dokument obsahuje, bylo by porovnávání dokument píliš nároné. Nejdíve odstraníme termy, které jsou ve stop listu. Ne všechny termy odlišují dokumenty navzájem stejnou mrou. Pro reprezentaci dokumentu v kolekci nejsou píliš dležité termy, které se vyskytují ve vtšin dokument kolekce. Vzhledem k tomu, že dokumenty chceme pozdji shlukovat, nebudou pravdpodobn píliš podstatné ani velmi specifické termy, které se vyskytují pouze v malém množství dokument. Porovnání dosažených výsledk pi nastavení rzných hranic výskyt term pro indexaci v kolekci dokument proto bude jedním z cíl diplomové práce. V rámci fáze odstranní nkterých term lze pracovat také se synonymy. V pípad synonym je možné do indexu ukládat všechny termy jedné tídy synonym pomocí jednoho pedem ureného zástupce preferovaného termu. Abychom to mohli udlat, je potebné mít k dispozici slovník pro konkrétní jazyk, kde jsou synonyma definovaná vzhledem k tomu, že takový slovník k dispozici nemáme, nebude jeho užití souástí implementace. Takový slovník nazýváme Tezaurus. Pesn Tezaurus definujeme následovn: 11

12 Definice 1: Tezaurus je pojmový, sémantický slovník, adící jazykové jednotky podle jejich významových vztah [16]. Další fází indexace je proces lemmatizace, respektive stemming. Ped definováním uvedených proces si uvedeme význam pojmu kmen termu. Definice 2: Kmen termu je jeho ást, která vznikne oddlením koncovky. Kmen se skládá z koene a jedné nebo více pedpon nebo pípon [7]. Definice 3: Lemmatizace je proces, pi kterém se jednotlivé tvary term, vzniklé skloováním a asováním, pevedou na jejich základní slovníkovou jednotku lemma [23]. Definice 4: Stemming je proces, pi kterém se jednotlivé tvary term, vzniklé skloováním a asováním, pevedou na jejich kmen [23]. Procesy lemmatizace a stemmingu bývají asto považovány za shodné. Dvodem tohoto omylu je vztah lemmatizace vzhledem k eštin a odlišnost eského a anglického tvarosloví. Lemmatem konkrétního termu mže být nap. 1. pád jednotného ísla, nebo kmen termu. V anglickém jazyce bývá ve velké vtšin pípad kmen termu shodný se základním slovníkovým tvarem [23]. Nkteré algoritmy používané pi lemmatizaci nalezneme v literatue [15]. Bhem indexace lze lemmatizací i stemmingem sjednotit jednotlivé tvary. Množinu charakteristických term pak tvoí nikoli jednotlivé tvary term, ale jejich lemmata, pípadn kmeny. Jedním z problém, které mohou pi lemmatizaci nastat, je problém s homonymy. Definice 5: Homonymum oznauje slovo, které zní stejn jako jiné slovo jiného významu i pvodu [7]. Uvedený problém eší proces desambiguace. Definice 6: Desambiguace je proces urování správného lemmatu z více možných [5]. Rzné algoritmy automatické desambiguace mžeme nalézt v literatue [5]. V diplomové práci budeme pracovat s kmeny term, tedy pro sjednocení jednotlivých tvar budeme využívat stemmingu. Poslední fází indexace je vážení term v jednotlivých dokumentech. Mjme kolekci dokument {d i } a k ní množinu charakteristických term {t j } v základních tvarech. 12

13 Pedpokládáme, že jsme nalezli vhodné termy pro indexaci dokument. Pokud jednotlivé termy, ze kterých vycházíme, budeme považovat za charakteristiky dokumentu, musíme jim pi procesu získávání reprezentace dokumentu piadit hodnotu, která reprezentuje význam termu v dokumentu. Tím získáme reprezentaci dokumentu d i vektorem: d i =(w ij ), (1) kde w ij je váha termu t j v dokumentu d i. Máme nkolik možností, jak váhu reprezentovat. První z možností je uvažovat binární reprezentaci indexu. Tedy pokud se term t j v dokumentu d i vyskytuje, je hodnota složky vektoru w ij reprezentována hodnotou 1. V opaném pípad je na tomto míst 0. Mohli bychom pípadn uvažovat i nkteré variace binární reprezentace, nap. že poet výskyt termu v dokumentu musí pekroit uritý práh, aby se mohla složka vektoru oznait jednotkou. V takovém pípad už je výhodnjší pistoupit k další variant reprezentace. Druhou možností reprezentace pro urení hodnoty složky vektoru pro daný term v dokumentu je poet výskyt termu v dokumentu. Absolutní poet termu v dokumentu není píliš dobrým mítkem, protože jsou tak zvýhodnny delší dokumenty. Proto mžeme uvažovat relativní výskyt termu vzhledem k jejich celkovému potu. Takovou veliinu budeme dále oznaovat TF (Term frequency) [4]. TF i,j je frekvence termu t j v dokumentu d i. ti, j TF i, j =, (2) t i,* kde t i, j je poet výskyt termu t j v dokumentu d i a i,* t je poet všech term v dokumentu d i. Vzhledem k tomu, že hodnoty TF bývají vtšinou velice malé, pi výpotu podobnosti by se ve výsledku velmi málo projevovaly, i pesto, že je daný term v dokumentu frekventovaný. Obvykle se proto zavádí tzv. normovaná frekvence termu (NTF) [4], kterou mžeme vyjádit následovn: NTF i, j = 0, pokud TF i, j < p, kde p je prahová hodnota. NTF i, j 1 TFi, j = +, pokud TF i, j p. (3) 2 2* maxtf 1 k m i, k Normovaná frekvence termu eší problém s malou hodnotou TF. Pokud se ale term vyskytuje v rámci celé kolekce dokument píliš asto, není vhodným k indexaci a neml by 13

14 mít tudíž píliš velkou váhu. To eší zavedení inverzní frekvence termu, která zohleduje poet dokument, ve kterých se term vyskytuje. ITF j n = log, (4) D T j kde n je celkový poet dokument a D T j je poet dokument, ve kterých se vyskytuje term j. Abychom ve výpotu váhy zohlednili všechny zmiované aspekty, vyjádíme výslednou váhu termu t j v dokumentu d i jako: w * i, j = NTFi, j ITFj (5) Míra podobnosti Další fází procesu shlukování, který jsme popsali díve, je definovaní míry podobnosti similarity. Definujeme podobnost mezi dvma dokumenty a souasn i podobnost mezi dokumentem a množinou dokument. Definice 7: Míru podobnosti (similarity) mezi dvma dokumenty definujeme jako funkci Sim : U U R, (6) kde U je prostor urený vybranými charakteristikami kolekce dokument, ve kterém podobnost urujeme. Definice 8: Míru podobnosti (similarity) dokumentu a množiny dokument o velikosti s definujeme jako funkci Sim : U U s R. (7) Podobnost je veliina, kterou nelze definovat absolutn, ale pouze relativn. Budeme vycházet z reprezentace dokument, uvedené v pedchozí kapitole. Pedpokládáme, že jsme nalezli ideální reprezentaci dokumentu v zadané kolekci jako výbr ze soubor charakteristik dokument kolekce. Pi definování konkrétní míry podobnosti mezi dokumenty budeme rozlišovat, zda jsme zvolili binární reprezentaci dokumentu, nebo reprezentaci pomocí frekvence termu. V obou dvou pípadech vycházíme z reprezentace dokumentu uvedené ve vzorci (1). 14

15 Podobnost pi binární reprezentaci dokumentu Pi binární reprezentaci dokumentu máme nkolik možností výpotu vzdálenosti. Nejdíve musíme nadefinovat nkteré vztahy, které budeme pi výpotu podobnosti používat. aij = k w (8) w ik jk je poet spolených term v obou dokumentech. ij a naopak. = w ( w ) b 1, w ( w ) dij k ik jk ij = c 1 (9) k jk ik je poet term, které se vyskytují v dokumentu d i, ale nevyskytují se v dokumentu d j =( - w )( 1 w ) k 1 (10) ik jk je poet term, které se nevyskytují ani v jednom z obou dokument. Nyní mžeme uvést nkolik model pro výpoet podobnosti: I. Míra podobnosti je založena na pomru spolených znak ve výtu všech znak (Contrast Model). aij Sim( di, d j ) = (11) a + b + c + d ij ij ij ij II. Míra podobnosti je založena na pomru spolených znak ku znakm odlišným (Tversky Ratio Model). aij Sim( di, d j ) = (12) a + b + c ij ij ij III. Míra podobnosti je založena na myšlence, že dokumenty jsou si tím mén podobné, ím více mají term takových, který jeden dokument obsahuje a druhý neobsahuje (Rohde Model) [6]. aij + dij Sim( di, d j ) = (13) a + b + c + d ij ij ij ij Podobnost pi reprezentaci dokumentu frekvencí termu Základní míru podobnosti mžeme urit následujícím vztahem, založeným na skalárním souinu vektor: z ( i d j ) = Sim d, w * w, (14) k = 1 ik jk 15

16 kde w ik, respektive w jk jsou váhy termu t k v dokumentu d i, respektive v d j. Výhodnjší je však použít normalizovanou míru podobnosti (Kosinová míra), která je definována následujícím vztahem: Sim d ( d ) kde z w * w ik jk k = 1 i, j =, (15) z n 2 2 wik * wjk k = 1 k = 1 w ik, respektive w jk jsou váhy termu t k v dokumentu d i, respektive v d j. Pi porovnávání dokument se porovnávají pouze vektorové reprezentace dokument a ne celé dokumenty jako takové Obecné shlukování Shlukování nabízí lovku možnost tídit dokumenty podle urité vlastnosti do skupin shluk. Dokumenty tvoící shluk by se v jednotlivých charakteristikách mly vzájemn podobat. Zaazení dokumentu do konkrétního shluku znamená, že je dokument tomuto shluku více podobný než shlukm ostatním. Abychom mohli pesn definovat pojem shluk, zavedeme nejdíve pojem klasifikace dokument. Definice 9: Mjme množinu dokument D = {d 1, d 2, d n } (16) a míru podobnosti Sim. Diskrétní klasifikací (dále jen klasifikací) množiny dokument D nazveme systém podmnožin k = u= 1, pro který platí u, v k u v : =, D k = u=1 a platí, že pokud d pak v u v k : Sim( d, ) Sim( d, ). i i i Na základ definice klasifikace dokument definujeme pojem shluku následovn. Definice 10: Mjme množinu dokument D a diskrétní klasifikaci k = u= 1 nad množinou D. Podmnožiny { } k u= 1 nazýváme shluky. 16

17 d = 1 Definice 11: Mjme shluk dokument { } s i i Centrální dokument shluku definujeme podle vzorce =, kde s je poet dokument ve shluku. s d i i= c = 1 s. (17) Vytváení shluk je pouze dílí fází celého procesu shlukování. Pro vytvoení klasifikace množiny dokument existuje mnoho metod. V sekci 3 Shlukovací metody si nkteré z nich uvedeme a popíšeme jejich vlastnosti Znakování shluk Poslední fází procesu shlukování je znakování vytvoených shluk. Pro uživatele je oznakování jednotlivých shluk termy dležité. Podle nich se uživatel mže v dokumentech a jejich shlucích snáze orientovat. Shluk mže být oznakován dvma zpsoby: 1. prostým seznamem term, 2. frází nebo nkolika frázemi. Oznakování shluku seznamem jednotlivých term bývá astjší. Dvodem astjšího vyjádení seznamem term je, že je získání tchto term vtšinou jednodušší a rychlejší. Nicmén oznakování celými frázemi bývá vtšinou pro uživatele užitenjší, což je demonstrováno v následujícím píkladu.!!"# $#% $# $ #$ %&! '& &&!() %" Oznakování shluk by mlo být co nejkvalitnjší. Kvalita oznakování shluku je urena temi hlavními vlastnostmi. První uruje, zda je oznakování dobe formulované v pípad, že je oznakování reprezentováno frází. Vlastnost nazýváme formulovatelností oznakování. Druhou vlastností je, jak výstižn oznakování shluku popisuje daný shluk. Takovou vlastnost dále nazýváme deskriptivností oznakování. Tetí vlastností oznakování 17

18 je, jak dobe oznakování shluku odlišuje shluk od ostatních shluk na stejné úrovni hierarchie. Vlastnost dále nazýváme diskriminaní. Postup pi hledání oznakování shluk v jedné úrovni hierarchie shluk lze rozdlit do nkolika krok: 1. Pro každý shluk nalezneme termy, které jsou pro shluk deskriptivní, nemusí ho ale odlišovat od ostatních. Tyto termy nazýváme kandidáty na oznakování shluku - dále jen kandidáti. 2. Z kandidát vybereme takové termy, které dostaten odlišují shluk od ostatních shluk na stejné úrovni, a souasn ho i dobe popisují. 3. Na základ vybraných term z pedchozího kroku nalezneme fráze, které zahrneme do oznakování shluku. 4. Slouíme shluky, které mají shodné oznakování. V pípad, že budeme dokumenty reprezentovat pouze seznamem term, krok 3 se neprovádí a vykoná se pímo krok 4. V prvním kroku se provádí pouze základní filtrování term shluku z dvodu urychlení v druhém kroku. V kroku 2 je teba nalézt vhodné termy pro oznakování shluk. V tomto kroku se soustedíme na nalezení takových term, které nejlépe popisují shluk a zárove ho odlišují od ostatních. Snažíme se nalézt kompromis mezi deskriptivní a diskriminaní schopností oznakování shluku. Pro tento úel použijeme modifikovanou funkci informaního zisku termu t ve shluku. Informaní zisk termu t ve shluku definujeme podle následujícího vzorce [20]: ( ) P( j, u) ( j) P( ) IG t, = P( j, u), (18) j { t, t} u {, } P * u kde platí P ( t) = (19) je pravdpodobnost, že náhodn vybraný dokument obsahuje term t, P ( ) = (20) je pravdpodobnost, že náhodn vybraný dokument je ve shluku a P ( t, ) = P( )* P( t) = (21) 18

19 je pravdpodobnost, že náhodn vybraný dokument náleží do shluku obsahuje term t. a souasn Ve vzorci pro informaní zisk chceme poítat pouze s takovými termy, které pozitivn popisují obsah shluku. Proto pro výpoet míry informace, kterou nese term t ve shluku, použijeme modifikovaný vzorec hodnotící takové termy, které nejlépe vystihují obsah shluku a souasn ho odlišují od ostatních [20]. ( t ) P( t, ) P( t, ) ( t) * P( ) P ( ) ( t, ), log P( t) P( ) IG m, = log + P t, (22) P * kde P ( t) je definováno podle vzorce (21), ( ) P ( t, c) je definováno podle vzorce (23), ( t) P je definováno podle vzorce (22), P je pravdpodobnost, že náhodn vybraný dokument neobsahuje term t, P ( ) je pravdpodobnost, že náhodn vybraný dokument nenáleží shluku a P ( t, ) je pravdpodobnost, že náhodn vybraný dokument neobsahuje term t a nenáleží shluku. Do množiny výsledných term pak zahrneme termy s nejvyšší hodnotou funkce IG m. Pokud vyjadujeme oznakování shluku frází, pak se ve 3. kroku snažíme k vybraným slovm z pedchozího kroku nalézt celé fráze. Možný zpsob nalezení je procházení titulk dokument shluku, ve kterém se snažíme nalézt nkterý z vybraných term. Do výsledku pak místo vybraného termu zahrneme celou frázi. Posledním krokem je slouení shluk, které mají shodné oznakování. 19

20 3 Shlukovací metody Metody pro shlukování dokument mžeme rozdlit do nkolika skupin. V literatue [24, 25] mžeme najít lenní metod podle více hledisek. 1. Hierarchické metody a. Aglomerativní metody b. Hierarchické rozdlovací metody 2. Nehierarchické metody a. Rozdlovací metody K-means metody K-medoids metody b. Pravdpodobnostní (Fuzzy) metody c. Metody založené na mížkách d. Metody založené na neuronových sítích, strojovém uení, Rozdíly mezi jednotlivými zpsoby shlukování si ukážeme na následujícím píkladu. Píklad 2: * + %,-,. +,,/0( 1 + ( %,/2 (! 3 + %! 4 + /2,,% (! &(! 9 + *1*.::9 (( ; + ( < + - *: + = Hierarchické metody Hierarchické shlukování je založeno na postupném vytváení hierarchických shluk, které ve výsledku tvoí stromovou strukturu. Výsledná stromová struktura se vtšinou nazývá dendrogram. Shluky jsou vytváeny postupn tak dlouho, dokud není splnno ukonovací 20

21 kritérium - nap. podmínka na poet shluk, aj. Zpsob, jakým jsou shluky vytváeny, uruje dlení hierarchického shlukování na aglomerativní metody, které vytváí shluky postupným shlukováním menších shluk dohromady, a rozdlovací metody, které tvoí shluky rozdlováním vtších shluk na menší. Ped vytvoením hierarchie shluk musíme dále urit metodu mení jejich podobnosti. Základní algoritmy pro urení podobnosti jsou: 1. Metoda nejbližšího souseda podobnost dvou shluk, se urí jako maximum podobností dvou objekt a, b, kde a a b. 2. Metoda nejvzdálenjšího souseda podobnost dvou shluk, se urí jako minimum podobností dvou objekt a, b, kde a a b. 3. Prmrová metoda podobnost dvou shluk, se urí jako prmr všech podobností objekt a, b, kde a a b. Existují i další metody pro urení podobnosti shluk, nejsou však píliš bžné. Pro bližší pedstavu o hierarchických metodách pro shlukování uvedeme, jak by mohl vypadat výsledný dendrogram dokument z píkladu 2. 0 %! >+ 2/!, ( % %, % + :: :: :43* :: :44 :: :: :: :: :: :: :: :: :: :: :: :445 :451 :: :: :: :: :43* :: :44 :: :: :: :: :: :: :: :: :445 :: :: :: :: :4*9 :: :: :: :: :445 :44 :44 :: :: :: ::!"#$ :: :: :43* :445 :44 :: :: :: :: :: % :451 :: :: :: :: :: :: :: :: :: &" '( ') $* :: :4;1 :: :: :: :: :: :41* :4*9 :445 :: :: :43* :445 :: :: :: :: :: :: :: :: :43* :445 :44 :: :: :: :: :: :: :: :: :: :: :: :445 :41* :: :: 21

22 " +($ :: :: :: :: :: :: :445 :41* :111 :: :: :: :: :: :: :: :445 :41* :: :: +,$ :: :: :: :445 :44 :: :: :: :: :: +$"" :451 :: :43* :445 :44 :44 :: :: :: :: +$ :: :4;1 :: :: :44 :44 :: :: :: :: $ :451 :: :: :: :: :44 :: :: :: :445 ( :451 :: :: :: :: :44 :: :: :: :: $,% :451 :: :43* :: :: :: :: :: :: :: +$ - $' :: :: :: :: :: :: :445 :451:44 :445 :451 :: :: :: :: :: :: :: :4*9 :: :: :: :: :: :: :: :: :41* :4*9 :: (.$##$ :: :: :: :445 :: :44 :: :: :: :: Tabulka 1: Tabulka zachycuje vektorovou reprezentaci dokument &! '!! 22

23 Obrázek 1: Dendrogram hierarchického shlukování dokument z píkladu Urení reálných podshluk Problémem hierarchických metod je fakt, že vytvoený strom je obvykle binární, popípad k-ární. Chtli bychom ale, aby vnitní uzly stromu mohly mít libovolný poet potomk nejlépe reprezentující reálné rozložení dokument. Abychom toho docílili, budeme postupovat následujícím zpsobem: Zaneme koenovým uzlem stromu (hlavním shlukem), pro který nalezneme ideální poet potomk (podshluk) tzv. ez dendrogramu. Pro každého z tchto potomk proces nalezení ezu opakujeme, dokud nenarazíme na listy stromu. Existuje nkolik metod pro urení potu shluk [10]. Zde popíšeme pedevším metody, pedpokládající použití hierarchického shlukovacího algoritmu. Vtšina tchto metod je založena na mení kvality (nebo chyby) shluk a zmnách kvality (chyby) shluk pi zvtšení jejich potu. Vycházejí z grafu závislosti kvality shluk na potu shluk a nalezení zakivení v tomto grafu, znaící zmnu kvality. Existuje nkolik metod pro nalezení zakivení, nkteré zde uvedeme: 1. nalezení nejvtšího rozdílu v oboru hodnot mezi dvma body v grafu kvality shluk, 23

24 2. nejvtší pomr rozdíl mezi dvma body, 3. první bod, jehož druhá derivace pekrauje uritý práh, 4. body s nejvtší druhou derivací Urení kvality shluk Posledním problémem zstává, jak mit kvalitu shluku. Kvalita shluk mže být mena globáln, tedy v závislosti na všech vytvoených shlucích, nebo mohou kvalitu urovat pouze dva práv spojované shluky. Uvedeme nkolik možností, jak získat globální funkci kvality shluku: 1. definujeme funkci [21]: ( 1 Sim( d i, cu ) W ( k) =, (23) u= 1.. k di X u kde k je poet shluk, 2 c u je centrální dokument shluku mocnin funkcí podobnosti uvnit tchto k shluk.. Vzorec vyjaduje souet Vzhledem k tomu, že více shluk vtšinou znamená vtší podobnost, funkci ohodnocení kvality upravíme následovn: ( k) = ( k) ( k + 1) W ( k) W ( k + 1) W H γ *, kde (24) γ ( k) = n k 1 2. Kvalitu shluku uruje tzv. fzní koeficient. Fzní koeficient pro k shluk je definován jako prmr minimálních podobností uvnit tchto k shluk. Pokud se v grafu znázorujícím závislost fzního koeficientu na potu shluk objeví njaké zploštní, pak zmenšení potu shluk již není vhodné [6]. 3. Funkce je definována jako souet vzdáleností mezi všemi body (dokumenty) uvnit shluk Urování kvality shluk globáln má svoji velkou nevýhodu a tou je jeho asová náronost. Jednou z možností, jak získat kvalitu shluku vytváeného spojováním dvou shluk lokáln, je použít vzdálenost práv spojovaných shluk. ' &!! ' 24

25 & d 1, d 2, d 3, d 4, d 5, d 6, d 7, d 8, d, d d 1, d 2, d 3, d 4, d 5, d d 7, d 8, d 9, d d 1 d 2 d 3 d 4 d 5 d 6 d 7, d 8 d 9 d 10 d 7 d 8 Obrázek 2: Redukovaný dendrogram z píkladu Pednosti a nedostatky hierarchického algoritmu shlukování Výhody Umožuje libovoln mnit granularitu shluk pokud již existuje klasifikace kolekce dokument, mžeme podle poteby poet zobrazených shluk mnit Respektuje pirozené rozložení shluk Nevýhody Ukonovací kritérium je neurité, musí být dáno explicitn potem požadovaných shluk, nebo ureno njakou jinou metodou Obtížné pidávání nových dokument do existující struktury 3.2 Rozdlovací metody Rozdlovací metody jsou založené na rozdlení n prvk do k skupin - shluk. Do rozdlovacích metod pro shlukování patí nap. algoritmy K-means nebo K-medoids. Obecn jsou založeny na principu nalezení k sted a postupným piazováním prvk množiny k tmto centrm. Centra takto vzniklých shluk se mohou postupn pepoítávat. Na následujícím obrázku ukážeme postupné pizpsobování sted v prostoru dokument. Souasn mžeme 25

26 vidt i jednu z nevýhod rozdlovacích metod poátení potebu volby k, kde k nemusí respektovat pirozený poet shluk. C 1 C 2 Obrázek 3: Shlukování dokument metodou K-means se dvma shluky. Algoritmy se mohou lišit poátením urením sted, metodou výpotu vzdálenosti dokument a shluk, reprezentací shluk, atd. Možné algoritmy: K-means každý shluk je reprezentován svým tžištm K-medoids každý shluk je reprezentován dokumentem, který je nejblíže tžišti shluku A '.!+ ) + * + %,-,. +,,/0( 1 + ( %,/2 (! 3 + %! 4 + /2,,% (! &(! 26

27 ) *1*.::9 (( ; + ( < + - *: + = Pednosti a nedostatky rozdlovacích metod shlukování Výhody Vhodné pro rozazení velkého potu dokument do malého množství shluk Rychlost pi malém množství shluk. Nevýhody Je teba urit poátení poet shluk Je teba urit na zaátku stedy shluk (asto se uruje náhodn) - nemusí se podait nalézt pirozené rozložení sted - nerespektuje pirozené rozložení množiny Výsledek závisí na poátením rozdlení, ešením je zkusit více poáteních množin bod 3.3 Pravdpodobnostní metody Pravdpodobnostní metody shlukování jsou zobecnním výše zmínných shlukovacích metod, kde je obor hodnot funkce zobrazující píslušnost objektu do daného shluku diskrétní, obsahující pouze dv hodnoty - objekt náleží, nebo nenáleží do shluku. V tomto smru pravdpodobnostní metody nabízejí rozšíení výsledku bžných metod, kde obor hodnot zobrazující píslušnost dokumentu do shluku je interval I = <0;1>. Jeden dokument pak mže náležet do více shluk s uritou pravdpodobností - váhou. Každý objekt je pak v prostoru uren vektorem o délce k, kde každá složka vektoru pedstavuje píslušnost objektu do i-tého shluku. Souet jednotlivých složek vektoru je 1. A ''&!+ 27

28 M ij m = mn 1,1,1.... m i, j.... m m 1, k n, k (25) Matice vznikne pi vytvoení k shluk, kde každý ádek v matici odpovídá jednomu dokumentu z celkového potu n a jednotlivé sloupce odpovídají vytvoeným shlukm. Složka m ij definuje píslušnost dokumentu i do shluku j Pednosti a nedostatky pravdpodobnostních metod shlukování Výhody Objekt mže náležet do více shluk najednou, což je pirozené. Nevýhody Obtížná interpretace výsledk 3.4 Mížkové metody Mížkové metody shlukování se od bžných shlukovacích metod liší pedevším tím, že nepracují s podobnostmi a vzdálenostmi mezi objekty, ale jejich cílem je rozdlit obor hodnot charakteristik objekt do vícerozmrné mížky. Mížka se skládá z blok rzné velikosti. Na následujícím obrázku ukážeme, jak mže takové rozdlení prostoru do mížky vypadat. 28

29 Obrázek 4: Rozdlení prostoru pomocí mížky do dvou shluk Vzhledem k systému, na kterém jsou založeny (dlení oboru hodnot do bunk), nejsou vhodné pro shlukování dokument. 3.5 Neuronové sít Výhodou použití neuronových sítí pi shlukování je, že se mohou uit na existující množin shluk dokument. Nemusí být pedem známa pravidla vytváení shluk, ale vychází se pouze z existující skutenosti. Nejastjším využitím neuronových sítí pi shlukování je použití tzv. Kohonenových map (SOM samoorganizující se mapy). Vykonávají mapování mnohorozmrných vstupních dat do prostoru s nízkou dimenzí - jinak eeno vytváí shluky nad daty s vysokou dimenzí. Mapování se snaží zachovat topologické uspoádání v prostoru - pizpsobuje se hustot objekt. Snaží se objekty prostorov blízké mapovat do topologicky blízkých neuron [8, 9]. Samoorganizující se mapa funguje ve dvou fázích, fázi uení a fázi mapování. Pro fázi uení potebuje mít urité množství dat. Bhem ní jsou postupn pedkládány m-rozmrné body z trénovací množiny k-rozmrné mížce, která se postupn pizpsobuje vkládaným dokumentm. Vždy po každém vložení objektu z trénovací množiny (nkterého z trénovacích dokument) se nejbližší uzly mížky posunou blíže ke vkládanému bodu. Tímto zpsobem se mížka postupn pizpsobuje vkládaným dokumentm a vznikají pirozená centra shluk [4]. 29

30 Výsledek použití Kohonenových map mže vypadat jako na následujícím obrázku, který pochází z projektu WEBSOM používajícího samoorganizující mapy pro shlukování [18]. Obrázek 5: Ukázka výsledku použití neuronových sítí pi shlukování z projektu WEBSOM 30

31 Pednosti a nedostatky použití neuronových sítí pro shlukování Výhody Pizpsobení se hustot objekt v prostoru Nevýhody Poteba trénovací množiny, tedy vtšího množství dokument 31

32 4 Použití shlukování pro zlepšení orientace v dokumentech Primárním cílem je pomocí shlukování umožnit uživateli snadnou orientaci v dokumentech. Obecn mžeme pracovat nad libovolnou kolekcí dokument. V diplomové práci se však budeme soustedit pedevším na shlukování relativn malého množství dokument poskytnutých v odpovdi na dotaz. Tento fakt bude mít vliv na výbr píslušného algoritmu pro shlukování. Pokud bychom pracovali s velkými množstvími dokument, pi volb algoritmu musíme brát více zetel na výkon algoritmu. Pokud však budeme uvažovat náš pípad, v malém množství podobných dokument musíme brát zetel pedevším na pesnost shlukování. Možností, jak využít vytváení shluk dokument v systému, je nkolik. Pehled používaných metod je uveden v následujících sekcích. 4.1 Shlukování dokument na disku Uživateli mžeme poskytnout klasifikaci jeho dokument pímo ve form vytvoení shlukové (adresáové) struktury na disku. Pokud chce uživatel pozdji najít uritou skupinu dokument, nebo konkrétní dokument, mže procházet podle oznaení shluk vytvoenou adresáovou strukturou a tak se postupn dostat do skupiny dokument, která je pro nj relevantní. +A C.!+ 32

33 Obrázek 6: Ukázka klasifikace dokument do adresáové struktury Pokud bychom v práci postupovali tímto smrem, pak budeme muset uživateli umožnit procházení shluk do hloubky. Pi volb algoritmu je teba zohlednit možnost pidávat do klasifikované kolekce nové dokumenty a mnit již klasifikované dokumenty. V nevýhod budou algoritmy, které pi píchodu nových dokument vyžadují shluky znovu vytváet, popípad ty s vysokou asovou nároností nkterých dalších operací nad kolekcí dokument - pidávání, odebíraní, zmna. Jednou z variant je generovat shluky dynamicky podle poteby. Na zaátku vytvoit základní vrstvu shluk (pípadn nkolik prvních vrstev do hloubky) a v pípad, že uživatel bude chtít procházet nkterými shluky do vtší hloubky, budou se shluky na nižší úrovni granularity v rámci nadazeného shluku dopoítávat dynamicky. Tento postup by umožnil urychlení vytváení shluk. Pro vytváení shluk na jedné úrovni by bylo možné použít nkterou z rozdlovacích metod, napíklad K-means, které jsou pomrn rychlé. Ne vždy však dokážou pesn vystihnout pirozené rozložení shluk. Vzhledem k relativn malému množství dokument uchovávaných na disku však mžeme zvolit i nkterý z asov náronjších algoritm pro vytváení hierarchie, který lépe vystihuje pirozené rozložení a pímo vytváí hierarchie shluk. Hierarchické metody pro shlukování mají však krom vtší asové náronosti i další nevýhody. Pi manipulaci s dokumenty je vhodné shluky nad upravenou množinou dokument vždy znovu vytvoit. Dopady tohoto požadavku lze zmírnit pomocí dávkového peshlukování provádného až po vtším množství zmn a v mezidobí dokument doasn umístit do již existujících shluk. 33

34 Tyto doasné zmny ovšem postupn strukturu shluk narušují. Velikost dávky proto musí být vhodn zvolena. 4.2 Využití shlukovacích metod pi vyhledávání Tento pístup lépe vyhovuje našemu požadavku usnadnní orientace v dokumentech. Pedpokládáme, že uživatel potebuje v dokumentech vyhledat dokument, nebo kolekci dokument s konkrétním obsahem. V pípad, že neshlukujeme dokumenty na disku osobního poítae, ale rozsáhlou kolekci dokument v dokumentografickém systému, mžeme uvažovat o zalenní shlukování do nkteré z fází vyhledávání dokument: 1) zadání dotazu, 2) vyhledávání dokument, 3) zobrazení výsledk vyhledávání, 4) znovuzadání dotazu - dokud výsledek neodpovídá požadavkm uživatele, tak se po úprav dotazu pokrauje krokem 1 - upravení dotazu Zadání dotazu První píležitost využití shlukování dokument pi vyhledávání nabízí první fáze vyhledávání - zadávání dotazu. Tato varianta do znané míry odpovídá díve diskutované možnosti shlukování dokument na disku. Uživateli se tak mohou nabídnout jednotlivé oblasti, které jsou získány na základ nkterého ze shlukovacích algoritm. V nich si uživatel mže vybrat ty oblasti, ve kterých chce dále vyhledávat. Tím se významn zmenší množina prohledávaných dokument. Navíc výbrem patiné oblasti mže z výsledného výtu vyhledávae odstranit dokumenty, které by se do výsledku dostaly kvli nepesné formulaci dotazu, a pitom nebyly pro uživatele relevantní. Tento pístup využití shlukování pi vyhledávání vyžaduje u algoritmu použitého pro shlukování dokument, aby dokázal efektivn pracovat s velkým množstvím dokument. Algoritmus by ml podporovat jednoduché pidávání nových dokument a odstraování dokument nepotebných. Vzhledem k úelu vytvoených shluk je žádoucí, aby vytvoené shluky stejné úrovn obsahovaly pibližn stejné množství dokument. Pi odfiltrování nkterých shluk se v takovém pípad odfiltruje i patiná ást uložených dokument. Vzhledem k výše uvedeným dvodm by nebylo vhodné zvolit nkterý z hierarchických algoritm, protože se nehodí na velké kolekce dokument, ani není 34

35 zarueno, že kolekci dokument rozdlí rovnomrn. Protože potebujeme odfiltrovat ást kolekce dokument není ani vhodný algoritmus pravdpodobnostního shlukování. Na velké množin dokument, na které potebujeme vytvoit rovnomrné rozdlení na základ jejího pirozeného rozdlení, je použití rozdlovacího algoritmu nejvhodnjší Zobrazení výsledk vyhledávání Další možností využití shlukování pi vyhledávání nad množinou dokument je klasifikace dokument, které jsou výsledkem vyhledávání. Standardn systém nabídne uživateli seznam dokument seazený sestupn dle podobnosti vzhledem k dotazu. A! Obrázek 7: Ukázka výsledk vyhledávání vyhledavae Google Zobrazení výsledk vyhledávání dle podobnosti vzhledem k dotazu je výhodné, pokud dotaz dobe zastupuje požadavek uživatele a je pesn zadaný. Pokud je položen píliš voln a termy v nm použité mají více odlišných význam, je výhodnjší použít zobrazení výsledk pomocí tématického náhledu. Uživatel s využitím tématického náhledu mže snáze najít oblast, která je pro nj skuten relevantní. Pomocí tohoto zobrazení se uživatel lépe ve výsledku zorientuje, popípad najde v rámci výsledku další souvislosti mezi dokumenty. 35

36 Tvorbu tématického náhledu je možné realizovat více zpsoby. Jedním z nich je tídní pomocí píbuznosti Afinity ranking, znaíme AR. AR je založeno na dvou základních metrikách mících kvalitu výsledk vyhledávání. Jedná se o rznorodost diversity D, a bohatost informace information richness, dále jen IR. Veliina D mí pestrost témat ve skupin dokument. IR mí množství rzných témat, které obsahují jednotlivé dokumenty. Algoritmus tídní pomocí píbuznosti pracuje v následujících krocích: [11] 1. Zkonstruuje graf píbuznosti mezi dokumenty affinity graph, znaíme AG. Graf je založen na asymetrické podobnosti mezi dokumenty. Propojené dokumenty v AG tvoí tématický shluk. Na jeho základ je spoítáno skóre dležitosti dokumentu, které uruje veliinu IR. Výpoet je založen na pedpokladu, že dokument je tím víc bohatý na informace, ím víc má soused v AG. Vypoítané IR pomže do nejrelevantnjších dokument výsledkové listiny vybrat nejvíce informativní dokumenty. Každému dokumentu se inicializuje hodnota AR na vypoítané IR. 2. Ze seazených dokument získaných v pedchozím kroku se penalizují takové, které jsou podobné tématm v pedchozích dokumentech diversity penalty. Penalizace se zahrne do výsledného AR skóre. 3. Na základ kombinace AR skóre a relevance vzhledem k dotazu se dokumenty petídí. Získaný setídný seznam výsledk nahradí výsledky vyhledávání. Více o tomto pístupu lze nalézt v literatue [11]. Další možností je použití popisovaných algoritm pro shlukování. V rámci tohoto smru existuje více variant, jak shlukování v kombinaci s tématickým náhledem využít. Tématický náhled se vytvoí následujícím zpsobem: Nalezené dokumenty rozleníme do shluk a poté dokumenty zobrazíme v poadí klesající podobnosti k centrm svých shluk. Pro lepší pochopení variant využití shlukování si nadefinujeme nkteré parametry, které budeme v následujícím textu používat. Parametr p udává poet zobrazených výsledk na stránce. Parametr m udává maximální poet výsledk, který se bude klasifikovat. Parametr c definuje množství výsledk, které se budou klasifikovat aktuáln. Vždy platí, že c m Soubžný tématický náhled na prvních c výsledk Soubžn se zobrazením výsledku vyhledávání je možné zobrazit základní vrstvy shluk s jejich charakteristickými termy. Dokumenty v každém shluku mohou být azeny podle relevance k jednotlivým stedm shluk, popípad podle relevance k zadanému dotazu. 36

37 Každý shluk mže mít podshluky, což umožní procházet struktury shluk pi hledání konkrétního dokumentu, popípad umožní doplnit dotaz podle charakteristických term vybraného shluku urité úrovn. Tento pístup mže být užitený pi vyhledávání jednoho konkrétního dokumentu. Za pedpokladu, že uživatel bude schopný alespo ásten dokument charakterizovat, bude schopný se k nmu procházením hierarchické struktury shluk dostat rychleji, než procházením výsledk vyhledávání podle relevance. Vhodný algoritmus vzhledem k tomu, že chceme, aby uživatel mohl procházet jednotlivými shluky, potebujeme pomrn pesnou klasifikaci. Jako vhodný kandidát se nabízí nkterý z algoritm pro hierarchické shlukování. Shlukovat se bude vždy po dávce c dokument. V pípad že uživatel projde výsledky azenými podle relevance k c+1-nímu dokumentu, dojde k optovnému shlukování s využitím dalších c dokument a vytvoí se tak shluky nad 2c dokumenty. Jelikož pracujeme nad malým množstvím dokument, mžeme zanedbat i vyšší asovou náronost hierarchického shlukování oproti ostatním shlukovacím metodám Soubžný tématický náhled na zobrazené výsledky V tomto pípad se klasifikují pouze již zobrazené dokumenty odpovdi. Tato metoda odpovídá situaci, kdy je c shodné s velikostí stránky p. Pi postupném zobrazování dalších dokument se musí ve srovnání s pípadem, kdy je c vtší než stránka, astji znovu shlukovat. Uživatel však mže postupn sledovat dynamické zmny v shlucích a pípadn pozmnit dotaz podle charakteristických term v jednotlivých shlucích. Shluky se zobrazují jako doplková informace k výsledkm dotazu. Vzhledem k astému shlukování by se hodil nkterý z rozdlovacích algoritm Pímý tématický náhled na prvních k výsledk Tato varianta umožuje tématický náhled na výsledky vyhledávání. Varianta je parametrizována parametrem c. Na výstup se neposílají dokumenty v pvodním poadí, ale podle vzdálenosti k jednotlivým centrm shluk. V pípad, že se pi procházení výsledk pekroí poet c výsledných dokument, další dokumenty se již na výstupu zobrazují v pvodním poadí relevance vzhledem k dotazu. Tato varianta nám umožní objevit prez prvními c dokumenty hned na první stránce. To by mohlo uživateli pomoci blíže specifikovat dotaz. Na výstupu dostane prez prvními c nejrelevantnjšími dokumenty bez ohledu na relevanci k dotazu. Pi klepnutí na optovné 37

38 vyhledání by mohl uživatel oznait dokument, který je nejblíže tomu, co hledá, a který nejdále tomu co hledá. Podle toho se mže dotaz zadaný uživatelem automaticky doplnit. Vhodný je hierarchický algoritmus vzhledem k pesnosti shlukování Znovuzadání dotazu Z hlediska vyhledávání se uživatel snaží najít urité konkrétní dokumenty. Ne vždy však dokáže svj dotaz dostaten pesn definovat tak, aby mu vyhledáva nalezl požadované dokumenty. Problémem mže být, že uživatel mže dotaz zadat pomocí slov, které jsou víceznané, popípad nedokáže sám dostaten dobe vystihnout slova, jimiž je charakterizován dokument, který hledá. Proto je vhodné umožnit uživateli i jiný náhled na dokumenty, který mu poskytnou shluky nad výsledkem vyhledávání. Na základ vytvoených shluk pak mže uživatel upesnit vyhledávání. Možnosti upravení dotazu díky shlukm mohou být následující: 1) Runí - uživatel mže sám na základ zjištných výsledk upravit dotaz. 2) Automatická - na základ výbru shluk uživatelem se automaticky upraví zadaný dotaz. Uživatel oznaí shluky, které jsou podle jeho uvážení relevantní, a shluky, které relevantní nejsou. Na základ oznaených shluk mžeme využít charakteristické termy shluk pi následné úprav dotazu, podle kterého se vyhledává. Možnosti automatického doplování nabízejí další smry pro rozšíení a zlepšení práce s množstvím dokument. Vzhledem k tomu, že pracujeme s výsledky vyhledávání, jsou si dokumenty, které klasifikujeme, podobné. Pi následné úprav dotazu je proto teba se soustedit nejen na výskyty jednotlivých term ve shlucích, ale zárove mohou pomoci i výskyty nkterých frází. Termy, které nejsou vytržené z kontextu, mají vtší význam. Pokud by byly shluky znakovány nejen charakteristickými termy, ale i nkterými frázemi, bylo by možné odpovdi vyhledávae zpesnit doplnním tchto frází do dotazu, podle kterého se vyhledává. Diplomová práce se bude zabývat v první ad samotným shlukováním nad dokumenty, které na svém výstupu poskytuje vyhledávací stroj. Následnou interakci s vyhledávaem, nap. automatické doplnní dotazu a optovné vyhledávání, ponecháváme jako možné téma pro další práci. 38

39 4.3 Existující implementace shlukovacích systém Carrot 2 [14] Carrot 2 je open source nástroj, který umí automaticky shlukovat výsledky vyhledávání do tématických kategorií. Mže být napojený na rzné vyhledávací API (GoogleAPI, YahooAPI, ), ze kterých získává výsledky, nad kterými vytváí shluky a zobrazuje výsledky na výstup. Na následujícím obrázku je vidt základní rozhraní tohoto softwaru. Obrázek 8: Rozhraní projektu Carrot2 Software nabízí shlukování do jedné vrstvy shluk, kde v každém shluku jsou dokumenty azeny podle relevance k dotazu. Pro shlukování používá algoritmus Lingo. Algoritmus Lingo funguje odlišn od bžných shlukovacích algoritm, popisovaných v kapitole 3. Klíovým procesem algoritmu Lingo je vybrání vhodných oznaení shluk. Obsah shluk se uruje až na základ díve vzniklých popis. Znakovací algoritmus proto musí zajistit, že se budou popisky dostaten vzájemn lišit a souasn budou pokrývat všechny témata vstupní kolekce. innost algoritmu Lingo lze rozdlit do pti fází. V prví fázi se dokumenty pedzpracovávají. Provede se základní filtrování, v rámci kterého se odstraují termy 39

40 zpsobující tzv. šum. Nap. HTML znaky, oddlovae, speciální znaky jako %, a další. V této fázi se také rozpoznává jazyk a slova jsou pevedena na základní tvar. Zárove se v první fázi identifikují stop slova. Stop slova se neodstraují, protože jsou považována za neoddlitelnou souást nkterých frází. Nap. sousloví pohled z Prahy má jiný význam než pohled Prahy. Ve druhé fázi se v rámci pedzpracovaných dokument vyhledávají frekventované termy a fráze. Ve tetí fázi algoritmus nalezne množinu abstraktních koncept a pro každý koncept nalezne charakteristické termy a fráze. V rámci této fáze se zárove odstraní duplicitní koncepty oznaené stejnými frázemi. Ve tvrté fázi se dokumenty piadí vzniklým shlukm. V poslední fázi se spote skóre shluk a shluky se podle nj seadí iboogie [13] iboogie je vyhledáva navrhnutý firmou CyberTavern. Ve své implementaci obsahuje rovnž shlukovací stroj, shlukující výsledky vyhledávání. Nabízí tak uživateli peorganizování výsledk vyhledávání tak, aby mohl výslednými shluky procházet a jednodušeji tak najít to, co hledá bez nutnosti procházet desítky výsledk vyhledávae. Shlukovací stroj shlukuje výsledky vyhledávání do hierarchických shluk, kde každý dokument mže náležet do více shluk. Každý shluk je oznaen píslušnou znakou, popisující daný shluk. Samotný shlukovací proces používá kombinaci lingvistického a statistického shlukování. Na následujícím obrázku uvedeme rozhraní vyhledávae. 40

41 Obrázek 9: Ukázka rozhraní vyhledavae iboogie 4.4 Vybraný smr pro implementaci Naším cílem je nabídnout uživateli co nejvíce informací a možných pohled na výsledky vyhledávání podle dotazu. V následující diskuzi se pokusíme nalézt obecný model, který získá maximální množství informací o dokumentech a shlucích, a nabídne uživateli konfigurovatelný software nabízející širokou škálu náhled na vyhledané dokumenty. Pi výsledném zobrazení výsledk se budeme piklánt k variant zobrazení výsledk vyhledávání jako hlavní informace doplnné o dodatené informace o shlucích. U výsledk vyhledávání mže být navíc krom relevance pidána informace o shluku nejnižší úrovn, kam daný dokument spadá. Možnou variantou k uvedenému zstává ponechat si možnost pípadn zmnit poadí zobrazovaných výsledk vyhledávání. V pípad zavedení parametru - documentclusteredcount, který uruje množství výsledných dokument, které se budou najednou klasifikovat a budou uživateli poskytnuty v náhledu, pokryjeme jak návrh zmiovaný v sekci Soubžný tématický náhled na prvních c výsledk tak i návrh v kapitole Soubžný tématický náhled na zobrazené výsledky. Dalším parametrem je volba tídní výstupu sorttype {0,1}. Tento parametr bude urovat, zda se výsledky mají v jednotlivých shlucích adit dle relevance k dotazu, nebo dle podobnosti k centru jednotlivých shluk. 41

42 Varianty v kapitole Soubžný tématický náhled na prvních c výsledk a Pímý tématický náhled na prvních c výsledk se od sebe liší setídním výstupu vyhledávae. Pidáním další perspektivy mžeme umožnit jak standardní azení výstupu vyhledavae podle relevance, tak azení výsledk vyhledávání prvních nkolika dokument, jejichž poet je udán parametrem documentclusteredcount podle vzdálenosti ke stedm shluk, do kterých náleží. Jelikož požadujeme pomrn pesnou klasifikaci do hierarchií, budeme volit nkterou z variant hierarchického shlukování. Z dvodu této volby a vtší asové náronosti algoritmu bude žádoucí omezit maximální množství dokument, které se budou shlukovat. Omezení by nemlo pi užívání shlukování píliš vadit, protože uživatel vlivem kritéria maxima obvykle nebude blíže analyzovat velké množství dokument Srovnání s existujícími implementacemi Oproti iboogie i Carrot 2 by ml vytváený shlukovací systém nabídnout možnost tématického náhledu na výsledky vyhledávání. Umožní zobrazit uživateli okamžit nejlepší reprezentanty shluk a tím mu nabídne pímý pístup k dokumentm, zmiujících se o daném tématu. Oba konkurenty pedí rovnž svojí variabilitou nastavení. Další výhodou je, že navrhovaný shlukovací systém zcela neoddluje shlukování od vyhledávání a pi zobrazení obsahu shluku umožuje seazení dokument v rámci shluku i na základ relevance k dotazu (na rozdíl od iboogie). Projekt Carrot 2 je pizpsoben vytváení jedné vrstvy shluk. Ve vytváeném softwaru v rámci diplomové práce se budeme snažit soustedit na vytváení hierarchických struktur. V následující tabulce si shrneme vlastnosti jednotlivých produkt. Tématický Parametrizace Hierarchické Píslušnost do náhled azení v rámci shluky více shluk shluku Carrot 2 Ne Ano Ne Ne iboogie Ne Ne Ano Ano EgoClusterer Ano Ano Ano Ne Tabulka 2: Srovnání nkterých existujících projekt shlukujících výsledky vyhledávání 42

43 5 Implementaní ást 5.1 Detailní cíl implementace V minulé kapitole jsme probrali nkolik variant, jak usnadnit uživateli orientaci v dokumentech. Pro softwarové zpracování problematiky shlukování jsme pro diplomovou práci vybrali variantu navázání shlukování na vyhledávací stroj. Pi implementaci budeme používat vyhledávací stroj Egothor[1]. Bližší specifikaci funknosti Egothoru a nkteré detaily dležité pro implementaci shlukování jsou uvedeny v kapitole Vyhledávací stroj Egothor. Shlukovací stroj se bude soustedit na zpracování uložených anglických text ve formátu HTML. Cílem je v reálném ase roztídit dokumenty, které jsou výsledkem na dotaz položený vyhledávacímu stroji Egothor, do hierarchických shluk. Výsledné shluky budou zobrazeny jako doplková informace vedle zobrazení výsledk vyhledávání. Každý vytvoený shluk bude vždy oznakován pomocí charakteristických term. Zobrazený seznam dokument, které do shluku patí, bude možné volbou parametru sorttype setídit dle relevance k dotazu, nebo relevance k danému shluku. Bude rovnž existovat možnost zjištní podshluk - viz sekce Urení reálných podshluk. V implementovaném softwaru bude možné nastavit poet dokument, které se budou najednou shlukovat. Postupn, jak bude uživatel listovat jednotlivými vyhledanými dokumenty a prolistuje vtší množství, než bylo pro shlukování nastaveno, budou shluky vytvoeny znovu nad pvodními dokumenty doplnnými o další dávku vyhledaných dokument. V modulu pro shlukování bude pedem nadefinováno maximální množství dokument, které se mže klasifikovat. Uživatel si bude moci v druhé perspektiv prohlédnout nkolik prvních dokument - poet uren parametrem documentclusteredcount, v poadí relevance k jednotlivým shlukm. Výhody jsou uvedené v pedchozím rozboru. Souasn se mu zachová možnost prohlédnutí dokument podle relevance k zadanému dotazu, tedy v poadí, v jakém jdou výsledky z vyhledávae, kterými si mže libovoln listovat. Modul pro shlukování bude ve výsledku naítat výsledky vyhledávání a posílat je na výstup zobrazovacímu modulu, který krom základních výsledk vyhledávání zobrazuje i doplkové informace o shlucích, pedevším oznakování shluk charakteristickými termy, seznam podshluk a dokument náležejících jednotlivým shlukm a tématický náhled na kolekci dokument. Prvních documentclusteredcount dokument seazených podle kritéria 43

44 podobnosti ke shluku, do kterého dokument náleží, si bude moci prohlédnout v druhé perspektiv zobrazení. Pro pedstavu o uvádné funkcionalit, kterou by na základ klasifikace dokument mohl vyhledáva nabídnout, uvádíme jak bude výsledná aplikace vypadat. Obrázek 10: Vzhled výsledné klientské aplikace V záložce Search results budou zobrazeny výsledky tak, jak jsou poskytnuty vyhledávaem. Záložka Clustered documents bude pi klepnutí na nkterý ze shluk v levé ásti vyhledavae nabízet zobrazení jednotlivých dokument náležejících shlukm azených podle nastavení parametr a záložka Topic overview bude zobrazovat prvních documentclusteredcount dokument seazených podle relevance ke stedm shluk, do kterých dané dokumenty náleží. 5.2 Diskuze výbru vhodného algoritmu V pedchozí kapitole jsme uvedli specifikaci softwaru, který budeme v rámci diplomové práce implementovat. Než zaneme navrhovat samotný software, musíme zvolit 44

45 konkrétní algoritmus, který budeme pro poteby softwaru užívat. Budeme vycházet z díve popsaných algoritm a z nich se budeme snažit zvolit nejvhodnjší pro zvolenou problematiku. V následující tabulce je uveden pehled všech zmínných algoritm s jejich asovými složitostmi. Složitost Pirozené Výsledná Píslušnost Znalost rozložení struktura do 1 shluku po. potu shluk Hierarchický 2 n log n Ano k-ární strom Ano Ne Rozdlovací k*n ásten k shluk 1 úrovn Ano Ano Pravdpodobnostní z*n 2 Ano Matice píslušnosti k*n Ne Tabulka 3: Pehled jednotlivých algoritm Ano V tabulce oznaujeme symbolem n poet dokument, symbolem k poet shluk a symbolem z dimenzi vektoru indexu. Protože chceme uživateli poskytnout tématický náhled na výslednou kolekci dokument z vyhledávae a získání pedstavy o rozložení dokument ve výsledku, je vhodné zvolit nkterý z algoritm, který dokumenty jasn klasifikuje do píslušných shluk. Pravdpodobnostní algoritmy podporují píslušnost dokumentu do více shluk. Pro poteby získání rychlého komplexního pehledu o rozdlení dokument je tento náhled pi zbžném procházení pro uživatele spíše matoucí. Z tohoto dvodu se algoritmus pravdpodobnostního shlukování jeví jako nevhodný. Rozdlovací metody nabízejí pro naše úely adu výhod. Hlavní výhodou je jednoduché pidávání nov píchozích dokument. Nov píchozí dokumenty se mohou pidat k již existujícím shlukm. Další výhodou je pomrn vysoká rychlost. Vzhledem k tomu, že pracujeme s malým množstvím dokument, není pro nás však tento argument nejdležitjší. Na druhou stranu nelze pominout ani nevýhody použití rozdlovacích metod. Bhem procesu shlukování pedem neznáme poet požadovaných shluk a možnosti jeho algoritmického urení nejsou píliš velké. Problémem tohoto algoritmu je rovnž silná závislost na poátením rozložení shluk, které se asto uruje náhodn. Pokud se toto poátení rozdlení 45

46 nepodaí vhodn urit, algoritmus píliš nerespektuje pvodní rozložení dokument v prostoru všech dokument. Vzhledem k tomu, že pracujeme s malým potem dokument, které jsou si velice podobné, je pro nás pesnost dležitá. Navíc vyžadujeme, aby byly dokumenty klasifikovány hierarchicky, což skupina tchto algoritm implicitn nenabízí. Algoritmus by pak bylo nutné rekurzivn spouštt na jednotlivé podshluky. Na základ výše uvedených argument jsme tuto skupinu algoritm vylouili. Metody založené na strojovém uení a neuronových sítích jsou pro naše použití zcela nevhodné vzhledem k tomu, že nemáme možnost vytvoit žádnou trénovací množinu. Trénovací množinou mže být i kolekce klasifikovaných dokument. Kolekce, kterou klasifikujeme do shluk, je ale pro tyto poteby píliš malá. Po vylouení vtšiny typ shlukovacích metod zbývají poslední, hierarchické metody. Výhodou použití tchto algoritm je vytvoení hierarchické struktury shluk, kterou požadujeme. Zárove díky zpsobu vytváení shluk je algoritmus pesný a dobe kopíruje strukturu rozložení dokument. Nevýhodou je jeho pomrn vysoká asová náronost, což pro nás, vzhledem k relativn malému množství dokument, není podstatné. Další nevýhodou je nemožnost pidávání nových dokument k již existující klasifikované množin. Ve vyvíjeném softwaru však budeme pracovat vždy se statickou kolekcí dokument dávkov na základ parametr. Pi píchodu nových dokument nebo pi zpracování odpovdi na nový dotaz je poteba vytvoit shluky vždy znovu. Optovné pepoítání struktury po zalenní vtšího množství dokument z odpovdi je žádoucí i vzhledem k požadavkm na kvalitu výsledné klasifikace dokument. Posledním problémem je, že hierarchické algoritmy tvoí obecn k-ární struktury. k-ární strom vznikl spojováním nejpodobnjších uzl dokument, respektive shluk nižší úrovn. Nicmén všechny uzly nejsou ve stromu stejn dležité. A ' EF!! '" G!(! Proto vzniká poteba nalézt pouze ty uzly, které jsou pro klasifikaci dležité a které nejlépe vystihují hierarchickou strukturu rozložení dokument. Výsledkem pak nebude k-ární strom, ale strom, kde každý vnitní uzel mže mít libovolný poet potomk. Tento problém 46

47 lze vyešit opakovaným použitím nkterého z algoritm pro urení potu shluk popsaného v kapitole Urení reálných podshluk. Výsledný zvolený algoritmus je vzhledem k požadavkm a pedchozí analýze hierarchický. Zbývá vyešit nkteré dílí problémy. Prvním z nich je urení zpsobu, kterým jsou shluky vytváeny. Pro implementaci si zvolíme aglomerativní zpsob, kde budeme shluky tvoit od jednotlivých list - dokument ve výsledku vyhledávae. Pro urování vzdálenosti mezi shluky budeme používat prmrovou metodu uvedenou v sekci 3.1 Hierarchické metody, která je z uvádných metod nejpesnjší. Vytvoený k-ární strom bude poteba upravit tak, aby respektoval pirozené rozdlení shluk. V kapitole Urení reálných podshluk jsme uvedli nkolik variant, jak najít ideální podshluky pro koenový shluk. Stejný algoritmus pak budeme rekurzivn aplikovat i na vybrané potomky koene až dosáhneme listové úrovn. Uvedli jsme si algoritmy, které vybírají vhodné shluky podle funkce zachycující kvalitu (chybu) shluku v závislosti na potu shluk. Musíme si urit, jak budeme kvalitativní funkci tvoit. Vzhledem k asové náronosti funkcí, jejichž hodnota se uruje globáln, se pikloníme k funkci, která definuje hodnotu funkce ohodnocující kvalitu shluku pouze ze díve vypoítané vzdálenosti shluk. 5.3 Analýza Jak již bylo uvedeno, pro vyhledávání a nkteré další pomocné operace použijeme vyhledávací stroj Egothor. V této sekci jsou uvedeny základní informace o Egothoru, pedevším o nkterých strukturách, které budeme používat. ásten je zde popsán proces vyhledávání a vracení výsledk, do kterého je shlukovací stroj integrován. Následující text je napsán na základ studia zdrojového kódu Egothoru, dokumentace RNDr. Lea Galamboše [1] a za pomocí textu diplomové práce Mgr. Jakuba Podhorného [12] Vyhledávací stroj Egothor Egothor je vyhledávací stroj s oteveným zdrojovým kódem, implementovaný v jazyce Java. Egothor podporuje dva základní procesy: indexování a vyhledávání. V rámci indexaní fáze se extrahují hodnoty, které se ukládají do indexu, a samotné dokumenty se ukládají do lokální databáze. Indexová struktura je optimalizovaná na rychlost pi dotazování. Na základ vytvoeného indexu lze pak rychle vyhledávat. Dotazy mohou být jak ve tvaru Boolského, vektorového popípad i Fuzzy modelu [1]. 47

48 Základní struktury Egothoru Základní strukturou je abstraktní tída Tanker. Tanker reprezentuje index. Umožuje základní operace s dokumenty, jako je pidávání dokument, odebírání, dotazování se nad dokumenty a další. Každý tanker se uvnit skládá z barel - tíd implementujících rozhraní Barrel. Barely jsou samostatné jednotky, které zpístupují ásti indexu. Tanker barely zastešuje a ídí pomocí svých vnitních struktur ukládání index a vyhledávání nad jednotlivými indexy. Navenek pak nabízí jednoduché rozhraní, které programátorovi umožuje s tídou tankeru pracovat jako s jednotným indexem. Proto je Tanker potomkem abstraktní tídy Group, která pedstavuje skupinu barel, ale navenek se reprezentuje jako jeden barel. Pro uživatelsky píjemnjší použití existuje implementace TankerImpl a potomek TankerImplSecure, který podporuje transakce. Jednotlivé implementace tankeru tak pedstavují index všech vložených dokument jako samostatný index, nad kterým se lze dotazovat. Pro lepší pochopení struktury uvádím UML diagram zachycující základní strukturu tankeru s nkterými základními funkcemi, které budou pro diplomovou práci dále potebné. Obrázek 11: Struktura základních tíd v Egothoru Jednotkou pro práci s indexy zstává rozhraní Barrel a nkteré tídy implementující toto rozhraní. Každou tídu implementující rozhraní Barrel je možné otevít a tím získat implementaci BarrelReaderu umožující tení obsahu barelu. 48

49 Pro práci s dokumenty používá tanker rozhraní BarrelReader. BarrelReader je rozhraní, které umí íst obsah barel (pípadn tankeru) za pomoci získání sekvence IListReader a souasn umožuje získat základní meta data dokument uložených v barelu. Základní implementací BarrelReaderu je tída Document. V Egothoru je implementována pro jeden vkládaný dokument tak, jak budeme tuto tídu používat pi pedávání shlukování. Tída pedstavuje reálný dokument a je charakterizována meta daty a FTFieldem, který pedstavuje proud slov tak jak jdou v dokumentu za sebou. Implementuje metody BarrelReaderu - nap. metody pro získání invertovaného seznamu IListReader. Pro podrobnjší náhled na strukturu Documentu uvádím následující UML diagram. Obrázek 12: UML diagram popisující rozhraní tídy Document IListReader je rozhraní reprezentující položku v invertovaném seznamu term, které v sob obsahuje term a seznam id, ísla revizí dokument, ve kterých se daný term vyskytuje a seznam výskyt termu v daném dokumentu - Proximities Proces vyhledávání a získávání výsledk v Egothoru Pro dotazování se nad indexem se používá metoda tídy TankerImplSecure querysecure(int o_set, int length, int p, String query, long max_hits2scan, double pg_rerank). 49

50 Metoda vrací instanci tídy QueryResult, která pedstavuje výsledek vyhledávání. Metoda zajistí zamení indexu pro tení a znovu zavolá metodu pedka Group. Dotazování probíhá v nkolika fázích: 1. provede se analýza textu dotazu, 2. ve slovníku se naleznou zaátky a délky invertovaných seznam všech slov v dotazu, 3. invertované seznamy se vyhodnotí podle logiky dotazu, 4. hity s piazenou relevancí jsou shromažovány v kolektoru, kde se udržuje k nejrelevantnjších hit, 5. po vyhodnocení vi indexu se vybaví k hitm meta data a seznam je vrácen. Abychom mohli pozdji popsat potebné zmny, je nutné podrobnji popsat tídy, které se jednotlivých fází úastní. Textová reprezentace dotazu se pevede do vnitní formy org.egothor.core.query.query. Dotaz se pipojí jezdcem (org.egothor.core.query. Rider) ke struktue indexu a spustí se vyhodnocení. Jezdec iteruje pouze pes potencionální kandidáty. Pro spoítání relevance vzhledem k dotazu je použit objekt bžce (org.egothor.core.query.runner), který vrací, zda je to hit a relevanci jezdci, který si udržuje výsledkovou listinu. Výsledková listina je po prohledání vrácena a objekt Group se postará o vybavení útržk textu v metod expanddocmetadata, která bude vstupním bodem pro shlukovací modul. V implementaci TankerImpl metoda expanddocmetadata vyzvedne z databáze text zadaného hitu a pomocí HTMLParseru proparsuje dokument a pedá ho objektu stelce (org.egothor.text.snipper), který má za úkol vyzvednout z dokumentu útržky textu, které obsahují ásti dotazu. Zde je místo, kde se budeme napojovat se shlukovacím modulem. 5.4 Návrh systému Celkový návrh systému s napojením vyhledávacího stroje Egothor bude vypadat podle následujícího obrázku. 50

51 Obrázek 13: Zalenní shlukovacího modulu do Egothoru Shlukovací modul, který vidíme na obrázku, nabízí vnjším modulm rozhraní, které je rozšíením pvodního rozhraní pro dotazování v Egothoru - ve tíd TankerImplSecure rozšiujeme metodu querysecure. Na obrázku je vidt, že výstupem je rozšíení pvodního výsledku - tídy QueryResponse. Oproti pvodnímu rozhraní budeme nabízet nkteré rozšíení, které si uvedeme pozdji. 51

52 Po dotázání se z webového klienta použije shlukovací modul funknost Egothoru ke zpracování dotazu a výsledky vyhledávání zpracuje pomocí svých vnitních modul. Zpt na výstup pak pošle jak výsledky vyhledávání, tak i vytvoenou shlukovou strukturu nad potem dokument ureným parametrem documentclusteredcount a seazený tématický náhled nad tmito dokumenty Architektura shlukovacího modulu Piblížíme si podrobnji, jak bude vypadat shlukovací modul uvnit, z jakých vnitních modul se skládá a jak spolu jednotlivé submoduly komunikují. Následující obrázek zobrazuje základní schéma. Obrázek 14: Vnitní struktura modulu Modul EgoClusterer je základním vnjším modulem, který poskytuje rozhraní pro vyzvednutí výsledk shlukování a vyhledávání. Využívá pro vyhledávání vyhledávací stroj Egothor. Implementan to znamená, že je závislý na Egothoru a využívá nkteré jeho 52

53 objekty (tanker) pro vyhledávání - popípad od nich ddí. Získané výsledky pak dále zpracovává podle nastavené konfigurace. V pípad poteby peshlukování využívá samostatný shlukovací modul, který vytváí z píchozích dokument shluky. Samostatný shlukovací modul zajišuje vytváení hierarchického shluku, nalezení ideální množiny shluk a seazení prvních documentclusteredcount dokument podle relevance ke stedm shluk na této hladin. Hlavní komponentou v tomto modulu je Clusterer, který zajišuje shlukování a implementuje rozhraní pro pijímání dokument a posílání výsledk vnjším modulm. Pro vytváení vnjších shluk používá pomocné komponenty - Indexer, SimilarityCounter a ClusterMaker. Indexer z píchozích dokument urí termy pro indexaci dokument, výstupem je pole vektor reprezentující zadané dokumenty s nastavenými píslušnými vahami a seznam term použitých pro indexaci. SimilarityCounter vytvoí z vektor reprezentujících jednotlivé dokumenty matici podobnosti. ClusterMaker vytvoí nad maticí podobnosti dokument pomocí hierarchického algoritmu pro shlukování hierarchický shluk. Rozhraní jednotlivých modul a submodul jsou definována pevn danými interfacy, se kterými se pracuje. Na základ vhodné konfigurace, popípad minimálních zásah do kódu, bude pak možné píslušné implementace v pípad poteby nahradit jinými. 5.5 Moduly EgoClusterer Volitelné parametry Modul má nkolik nastavitelných parametr, které ovlivují zobrazení klasifikace a poadí výsledk. První parametrem sorttype lze nastavit azení dokument v rámci shluku. V každém shluku je seznam dokument a seznam podshluk, které do nj náleží. Tímto parametrem lze nastavit, zda budou dokumenty seazeny podle relevance k dotazu, nebo podle podobnosti vzhledem ke shluku. Druhý parametr documentclusteredcount umožní zadat poet dokument, které se budou najednou shlukovat. Nezávisle na potu práv zobrazených dokument se bude shlukovat prvních documentclusteredcount dokument. Pokud bhem prohlížení dokument uživatel zane prohlížet další dávku documentclusteredcount dokument, pidá se k již existující klasifikované množin dalších documentclusteredcount dokument, nad kterými se 53

54 shluky znovu vytvoí. Celkový poet klasifikovaných dokument nesmí pekroit poet definovaný v konstant popsané níž. Systém obsahuje i nkteré další parametry, které si vynucuje samotný vyhledávací stroj (urení cesty k indexm vyhledavae, k databázi dokument, ) Konstanty Modul má jedinou konstantu a tou je maximální poet dokument, které se budou klasifikovat. V modulu je nastavena na 300 dokument Návrh EgoClusterer je základní modul, který zprostedkovává napojení shlukovacího modulu na Egothor. Je to struktura, která je potomkem tídy Egothoru TankerImpleSecure. Navenek poskytuje stejné rozhraní jako TankerImplSecure tak, aby mohla být tato instance pípadn v existujících systémech vymnna bez vtších zásah do kódu. Pvodn bylo zamýšleno oddlit rozhraní vstupu dotazu od výstupu výsledk vyhledávání dokument vetn klasifikace dokument. Vzhledem k implementaci stroje Egothor jsme zachovali rozhraní Tankeru a pouze ho obohatili o nkteré další funkce. Následující obrázek ukazuje základní návrh modulu EgoClusterer. 54

55 Obrázek 15: UML návrh modulu EgoClusterer EgoClusterer poskytuje vlastní funkci pro inicializaci, která krom parametr pro inicializaci tídy TankerImplSecure nabízí nastavení parametr shlukovacího modulu uvedených v kapitole Volitelné parametry. V EgoClustereru se také pepisují funkce pro vyhledávání na základ dotazu. Jádro funkce využívá pvodní funkce pro dotazování a souasn nad výsledkem vytvoí shluky a další požadované struktury. Výsledek se vetn shluk zabalí do objektu tídy ClusterQueryResponse, jejímž pedkem je pvodní tída Egothoru QueryResponse. Výsledek se vrátí na výstup. Ke shlukování dokument jsou poteba celé texty dokument. Jejich získávání a parsování je asov nároné. Bhem procesu získávání útržk s textem dotazu probíhá parsování pvodních dokument. Abychom se vyhnuli optovnému vykonávání této operace, 55

56 využijeme funknosti již vytvoeného HTMLParseru k vlastnímu získání dokument. Proces probíhá v metod pedka Group expanddocmetadata, kterou pekryjeme a krom pvodní funknosti navíc získáme dokumenty potebné pro shlukování. Pi získávání dokument pro shlukování probíhá ástené pedzpracování dokument nkteré z fází procesu indexace popsaných v kapitole Reprezentace dokument. V rámci pedzpracování se vykonává první fáze - lexikální analýza. Pi lexikální analýze se pevádí text dokumentu na sekvenci term. Zde se využívá implementované funknosti HTMLParseru ve vlastní tíd ClusterHTMLParseru, který pevede dokument na proud znak, který je základem pro vytvoení sekvence term v Egothoru implementovanou tídou Plain. Sekvence term je základem pro vytvoení tídy zastupující dokument Document. Pi pedzpracování se provádí i ást druhé fáze indexace, kterou je odstranní nevýznamových a nespecifických term. EgoClusterer zajišuje pouze odstranní nevýznamových term ze stop listu pomocí filtr použitých pi získávání sekvence. Souasn je možné vykonat i tetí fázi indexace a tou je stemming využitím filtru StemmerFilter, který zajistí pevod jednotlivých term na jejich základní tvar. StemmerFilter využívá externích tíd v balíku org.tartarus.snowball. Souástí této fáze by mohl být i pevod synonymních term na preferovaný term na základ tezauru. Vzhledem k tomu, že žádný tezaurus nemáme k dispozici, nebudeme pevod na preferované termy provádt. Na návrhu sledujeme i napojení na další díve uvedený modul Clusterer, který tvoí jádro softwaru a který bude provádt samotné vytváení shluk. Napojení existuje pouze prostednictvím rozhraní ClustererFace. Toto ešení nám umožuje pozdjší variabilitu a možnost použít jinou implementaci shlukovacího modulu. ClustererFace nabízí pouze základní funkce pro zadání dokument a zptné získání shluk nad tmito dokumenty a nkteré další dodatené informace, které jsou poteba. Pozdji si ukážeme bližší návrh rozhraní Samostatný shlukovací modul Samostatný shlukovací modul se skládá z nkolika dalších, které jsou pomocné a vykonávají nkteré dílí operace potebné pro shlukování. Hlavním je Clusterer, který ídí innost ostatních modul. Clusterer zajišuje indexaci píchozích dokument pomocí tídy Indexer (implementující rozhraní IndexerFace), výpoet podobností dokument pomocí tídy SimilarityCounter (implementující rozhraní SimilarityCounterFace) a samotné vytvoení shluk pomocí tídy ClusterMaker (implementující rozhraní ClusterMakerFace). Použití 56

57 rozhraní uvedených tíd nám umožuje pozdji kteroukoliv z nich vymnit za jinou a pípadn výkonnjší implementaci. V následujících kapitolách si blíže popíšeme práci jednotlivých modul vetn uvedení základních UML návrh a použití nkterých algoritm týkajících se shlukování Clusterer Clusterer je základní modul ídící innost ostatních. Musí implementovat rozhraní ClustererFace, které je použito v modulu EgoClusterer. Nabízí funknost zahrnující zadávání dokument a získávání výsledk shlukování. Zajišuje shlukování píchozích dokument, ale souasn peshlukování kolekce dokument, ke které byly pidány nkteré další. Souasn nad získanou klasifikací dokument vykonává nkteré pídavné operace, které ve výsledku potebujeme. První z pídavných operací je seazení všech dokument registrovaných ve shlukovacím modulu podle podobnosti k centrm shluk na základní hladin. Další funkcí, kterou musí Clusterer zajistit je oznaení shluk píslušnými termy. Na následujícím UML diagramu si ukážeme základní návrh struktury shlukovacího modulu. 57

58 Obrázek 16: UML návrh modulu Clusterer Oznaení vzniklých shluk termy Oznakování dokument se vykonává na základ algoritmu uvedeného v sekci Znakování shluk. Vzhledem k tomu, že chceme vytvoit oznakování, které bude zobrazeno ve stromu shluk, je výhodnjší použít reprezentaci shluku jen pomocí seznamu term. Pro každou hladinu redukovaného stromu shluk postupujeme podle krok algoritmu uvedeného v sekci Znakování shluk, ale vzhledem k tomu, že jsme zvolili reprezentaci shluku pomocí seznamu term, mžeme vynechat tetí krok algoritmu. Nejdíve vybereme kandidáty na oznaení shluku pomocí frekvence termu vybereme jako kandidáty term s nejvyšší váhou termu ve shluku. V druhém kroku pro každý z vybraných kandidát spoítáme IG m definovanou vzorcem (24) a vybereme šest term s nejvyšší hodnotou. 58

59 V posledním kroku podle uvedeného algoritmu pouze spojíme shluky, které mají shodné oznaení do jediného Indexer Indexer je komponenta, která má za úkol z píchozích dokument vybrat vhodné termy pro indexaci a pro všechny dokumenty na základ vybraných term vytvoit index. Výstupem je pole vektor, které obsahuje indexy jednotlivých dokument. V sekci Reprezentace dokument jsme si uvedli dv možnosti reprezentace - binární a pomocí frekvence termu. Vzhledem ke kvalitativn lepším vlastnostem reprezentace pomocí frekvence termu a možnostem rychlého získání nkterých dodatených informací potebných k výpotu frekvence termu jsme se rozhodli reprezentovat dokumenty podle vzorce (5). V každé složce vektor je pak váha píslušného termu v dokumentu tak, jak jsme si ji definovali díve. Souasn je teba krom index jednotlivých dokument vdt, které termy se do indexu dostaly a mapování vah v indexech dokument na tyto termy. Proto musí být souástí výstupu krom index dokument i vektor term. Na následujícím UML diagramu si ukážeme návrh struktury komponenty Indexer. Obrázek 17: UML návrh komponenty Indexer Vzhledem k tomu, že v rámci procesu indexace potebujeme pracovat se sekvencí term všech klasifikovaných dokument, využijeme již implementované funknosti Egothoru, která nám umožní jednoduše procházet sekvencí term celé kolekce dokument. 59

60 Tato funknost je implementovaná v tíd MemoryBarrelu. Proto je komponenta Indexeru potomkem této tídy. Indexer má za úkol dokonit proces indexace, který jsme zaali v rámci pedzpracování dokument pi popisu návrhu komponenty EgoClusterer - viz. sekce Návrh. EgoClusterer zajistil základní parsování dokument, ást fáze odstranní nevýznamových a nespecifických term a stemming. Úkolem komponenty pro indexaci je nalézt vhodné termy pro indexaci. Jak jsme uvedli díve, nejsou pro indexaci vhodné píliš frekventované termy, ani píliš specifické. Souástí návrhu je proto i možnost nastavení frekvence termu, který bude zahrnutý v indexu. Z toho dvodu byl do konstruktoru zaveden i parametr pro zadání píslušných prah - bottomthreshold, topthreshold. V rámci metody indexdocument uvedené v UML schématu se dokumenty vloží do barelu pedka, který umožní rychlé procházení všech term v kolekci indexovaných dokument. Jelikož MemoryBarrel umožuje v prchodu sekvence term v kolekci zjistit poet dokument, ve kterých se term nachází a kolikrát, mžeme na základ parametr bottomthreshold, topthreshold vybrat termy pro indexaci. Pedpokládáme, že jsme v pedešlém kroku vybrali vhodné termy pro indexaci. V poslední fázi indexace je teba vytvoit píslušné indexy dokument na základ vybraných term. Pro každý term urený k indexaci spoítáme pro každý dokument jeho váhu v dokumentu podle vzorce (5) v sekci Reprezentace dokument jako souin inverzní frekvence termu (4) a normalizované frekvence, která se urí podle vzorce (3) SimilarityCounter Komponenta SimilarityCounter má za úkol spoítat ze vstupních index dokument matici podobností mezi jednotlivými dokumenty, která je výstupem pro další výpoty. Návrh mžeme vidt na následujícím UML diagramu. 60

61 Obrázek 18: UML návrh komponenty SimilarityCounter Hlavním cílem je pro každou dvojici dokument spoítat jejich podobnost. Podobnost dvou dokument bude vycházet ze vztahu (15). Výsledky se vloží do objektu SimilarityMatrix, který je uchovává a nabízí píjemné rozhraní pro pístup k jednotlivým podobnostem ClusterMaker Hlavní komponentou, která zajišuje shlukování dokument, je ClusterMaker. Na vstupu dostane matici podobností ve form objektu SimilarityMatrix a výstupem modulu je 61

62 hlavní shluk, který v sob má ukazatele na potomky - strom shluk. Na následujícím obrázku si uvedeme návrh struktury komponenty. Obrázek 19: UML návrh modulu ClusterMaker Pro shlukování nad maticí podobnosti bude používat hierarchický shlukovací algoritmus tak, jak jsme si ho uvedli kapitole 3.1 Hierarchické metody. Vytváení redukovaného stromu je založeno na algoritmu z kapitoly Urení reálných podshluk. 5.6 Webová aplikace Pro vyhledávací stroj Egothor bylo vyvinuté uživatelské webové rozhraní. Vzhledem k tomu, že poteby zobrazení pídavných informací o shluku výrazn mní jak funkní, tak grafickou ást webového klienta, rozhodli jsme se pro úel zobrazení výsledk vyhledávání a shlukování vyvinout základní verzi vlastního webového klienta. Cílem diplomové práce není vyvinout plnohodnotnou internetovou aplikaci, ale pouze graficky zobrazit dosažené výsledky. Vytvoení pln funkní webové aplikace schopné pracovat efektivn paraleln mže být námtem na další práci. Základ webové aplikace je napsán v HTML s použitím jazyku JavaScript a webového frameworku YAHOO YUI. Napojení na jádro aplikace zajišující hlavní funkcionalitu vyhledávání a shlukování umožuje používání JavaServet. Pi používání servet uplatujeme strategii REST. REST je koncept pro design distribuované architektury. Základní principy RESTu jsou: [2] 62

63 Stav aplikace je vyjáden zdrojem-resourcem Každý ressource má svj unikátní identifikátor Jednotný pístup pro získání a práci s daty-crud Ressource mže mít rzné reprezentace, nap. XML, HTML, JSON, Komunikace mezi prohlížeem a serverem probíhá pomocí AJAXového volání prostednictvím objektu, který je potomkem tídy HTTPRequest. Pro penos konkrétních dat mezi klientem a serverem používáme objekty ve formátu JSON [19]. Pro úel penosu dat jsme použili sadu objekt v Jave dostupnou na [19]. Pro lepší porozumní návrhu webové aplikace uvádíme na následujícím obrázku její strukturu. 63

64 Obrázek 20: Návrh webové aplikace 64

65 6 Diskuze nastavení a výsledky test Vyhledáva se shlukováním výsledk byl testován nad dokumenty získanými ze zpravodajského serveru BBC. Kolekce dokument, která je použita pi testech vyhledávae obsahuje 580 dokument se zprávami z celého svta. parametry: Webová aplikace byla testována na serveru Tomcat 6.0 na poítai s následujícími operaní systém Windows XP, CPU Intel(R) Pentium(R) M s rychlostí 1.73 GHz, pam 1.5 GB RAM. V rámci nkterých test je teba posuzovat kvalitu shlukování. Vzhledem k tomu, že shlukování je ureno ke zlepšení orientace uživatele v kolekci dokument, rozhodli jsme se kvalitu vytvoených klasifikací srovnávat s klasifikací vytvoenou run uživatelem. Takovou klasifikaci jsme vytvoili pro kolekci 50 vybraných dokument obsahujících 5 významných shluk. Klasifikace dokument je tím kvalitnjší, ím se více podobá shlukm vytvoeným uživatelem. V následujícím textu oznaujeme klasifikaci dokument uživatelem C u a automatickou klasifikaci dokument pomocí shlukovacího modulu C a. Pi mení kvality budeme sledovat následující veliiny. První z nich je prnik C C, tedy poet shluk, které u a se vyskytují jak v klasifikaci uživatelem, tak v automatické klasifikaci. To jestli se shluk z C u vyskytuje i v C a uríme následn. V píslušném shluku z C a existuje alespo jeden term nebo jeho kmen v názvu tohoto shluku, který se vyskytuje i v názvu shluku z obsahuje alespo polovinu dokument z pvodního shluku z C u, a souasn C u. Pokud se takový shluk vyskytuje v základní hladin hierarchie shluk je k výsledku pitena 1. Pokud se shluk 1 vyskytuje hloubji ve stromu, je k výsledku piten pomr level každý krok smrem k listm piítá 1., kde se level poítá od 1 a Další zajímavý ukazatel kvality shlukování se týká správn zaazených dokument. Budeme sledovat jejich poet tedy poet dokument zaazených do odpovídajících shluk v automatickém shlukování DC a C. u 65

66 Protože je shlukovací modul napojen na vyhledáva, který pracuje v reálném ase, jsou pro zhodnocení kvality dležité i údaje o dob bhu programu. Všechny asové údaje uvádíme milisekundách. Pro oznaení doby bhu indexace budeme užívat symbol RT Index, dobu bhu poítání podobností znaíme RT Sim, dobu vytváení shluk RT Cluster, dobu vytváení oznakování RT Label a celkovou dobu bhu shlukování RT All. Dobu vykonání dotazu vetn ásteného pedzpracování dokument znaíme RT Search. Celkovou dobu bhu vyhledávání a shlukování znaíme RT SC. Jako kvalitní klasifikaci oznaujeme takovou, kde je mohutnost množiny C C co u a nejvtší. Souasn preferujeme, aby veliina DC a C nabývala maximálních hodnot. u Než pistoupíme k výsledkm test celého vyhledávae se shlukováním, uvedeme si nejdíve nkteré testy samostatného shlukovacího modulu. V závislosti na tchto výsledcích pak mžeme vyvodit nkteré závry ohledn nastavení parametr shlukovacího modulu, které budou pi testech vyhledávae se shlukováním použity. Abychom se mohli lépe orientovat pi uvádní výsledk s jednotlivými nastaveními v píslušných tídách, uvedeme na následujícím obrázku diagram, na kterém jsou zachyceny všechny implementované tídy a základní závislosti mezi nimi. 66

67 Obrázek 21: Celkové zobrazení tíd ve shlukovacím modulu vetn závislostí 6.1 Testy samostatného shlukovacího modulu V testech samostatného shlukovacího modulu ukážeme, jak mže nastavení nkterých parametr v jednotlivých modulech ovlivnit výsledné shlukování a dobu vykonání shlukování. Vstupní dokumenty jsou ásten pedzpracované, tak jak je v aplikaci zpracovává EgoClusterer pomocí filtr a parseru. Jejich diskuzi a klíové body upravené implementace parseru probereme v následující kapitole, kde popisujeme výsledky test celého vyhledávae se shlukovacím modulem. V hlavní ídící komponent Clusterer samostatného shlukovacího modulu, který zajišuje shlukování dokument zadaných EgoClustereruem, mžeme zvolit i jednotlivé komponenty, které se používají pro dílí operace indexování, poítání podobností a shlukování. V testech vycházíme ze základních implementací Indexer, SimilarityCounter a ClusterMaker, se kterými budeme dále pracovat. Ve fázi indexace v komponent Indexer lze ovlivnit výsledné shluky nastavením prah, které urují, v kolika procentech dokument se zadaný term musí vyskytovat, aby byl zahrnut do indexu. Testy budeme uvádt postupn pro 50, 100, 200 a 300 dokument. 67

68 U skupiny 50 dokument budeme navíc krom rychlosti posuzovat i kvalitu vytvoené klasifikace. Následující tabulka shrnuje dosažené výsledky tchto test. 5-40(%) 5-50(%) 5-60(%) 5-80(%) 5-100(%) 0-100(%) RT Index (ms) RT Sim (ms) RT Cluster (ms) RT Label (ms) RT All (ms) C u C a DC a C u Poet term Tabulka 4: Srovnání výsledk shlukování pro kolekci 50 dokument V následujících tabulkách uvádíme pouze údaje o dob bhu jednotlivých fází shlukování a poty term pro dané hranice. 5-40(%) 5-50(%) 5-60(%) 5-80(%) 5-100(%) 0-100(%) RT Index (ms) RT Sim (ms) RT Cluster (ms) RT Label (ms) RT All (ms) Poet term Tabulka 5: Výsledky shlukování pro kolekci 100 dokument 5-40(%) 5-50(%) 5-60(%) 5-80(%) 5-100(%) 0-100(%) RT Index (ms) RT Sim (ms)

69 5-40(%) 5-50(%) 5-60(%) 5-80(%) 5-100(%) 0-100(%) RT Cluster (ms) RT Label (ms) RT All (ms) Poet term Tabulka 6: Výsledky shlukování pro kolekci 200 dokument 5-40(%) 5-50(%) 5-60(%) 5-80(%) 5-100(%) 0-100(%) RT Index (ms) RT Sim (ms) RT Cluster (ms) RT Label (ms) RT All (ms) Poet term Tabulka 7: Výsledky shlukování pro kolekci 300 dokument Z dosažených výsledk test jsou zejmé následující závry: Pokud pozorujeme poet term v závislosti na hranicích zvolených pro indexaci zjistíme, že vtšina term z kolekce dokument se vyskytuje v 0 až 5 procentech dokument kolekce. Zahrnutím tchto term do indexu pináší nkolik negativ. Prvním z nich je výrazné prodloužení doby poítání podobností a vytváení oznakování. Navíc zahrnutím tchto term snížíme kvalitu klasifikace v porovnání s klasifikací uživatelem, což mžeme pozorovat na datech v tabulce 4. Pokud se zamíme na druhý extrém a tím jsou termy, vyskytující se tém ve všech dokumentech, zjistíme, že nárst jejich potu s rostoucími procenty potu dokument, ve kterých se vyskytují, výrazn nestoupá. Z toho plyne, že ani doba bhu výpotu píliš neroste. Termy nacházející se ve všech dokumentech ale nejsou dležité. Proto mžeme pi výbru prah frekvencí term zvolit rozptí 5-99 procent. Fázi poítání podobnosti dokument nelze parametry nijak ovlivnit. V pípad poteby by zde ale bylo možné pedefinovat funkci poítání podobnosti a použít tak jinou míru pro mení. 69

70 V rámci fáze vytváení shluk lze nastavit dva parametry. První uruje, zda se bude vykonávat redukce binárního stromu na reálný a druhý uruje strategii pro redukci stromu. Implementovány byly dv základní strategie redukce. Ob vychází z teorie, popsané v kapitole Urení reálných podshluk a jsou založeny na hledání zmn v grafu kvality shluk. První hledá reálný strom na základ nalezení nejvtšího rozdílu v grafu kvality shluk a druhá hledá nejvtší pomr. Na následujícím grafu je znázornna závislost kvality shluku na potu shluk pro kolekci 50 dokument, graf souasn zachycuje první ez dendrogramu získaný pomocí strategií Ratio, Diff a z nich odvozených strategií DoubleRatio a DoubleDiff popsaných v následujícím textu. Graf 1: Graf zobrazuje kvalitu shluk v závislosti na jejich potu pro 50 dokument. Pro tuto kolekci jsme dokumenty shlukovali s použitím dvou zmínných strategií. Vycházeli jsme z díve nalezeného nejlepšího nastavení horního a dolního prahu frekvence termu v rozptí 5 až 99 procent. Pi testech jsme narazili na problém pi redukci, kdy se v nkterých kolekcích dokument objevily negativní vlastnosti obou strategií. Pi hledání maxima v grafu kvality shluk byly peskoeny nkteré významné body vhodné pro ez dendrogramu, což zpsobilo vynechání nkterých významnjších shluk, které se ve výsledku objevily rozdlené na své podshluky. Pi testování na datech však nastala i situace, 70

71 kdy byl nalezen takový ez, díky kterému vznikl pouze jeden shluk obsahující vtšinu dokument a nkolik shluk obsahující pouze jeden dokument, které byly ve výsledku zaazeny do shluku Others. Z tohoto dvodu jsme zavedli u pedka strategií redukce AbstractTreeReduceStrategy parametry, které urují ást grafu kvality, jež se bude pi hledání maxima procházet. Jedná se o parametry topreduceratio a bottomreduceratio. Zadané parametry vymezují ást grafu, ve kterém se bude ez dendrogramem hledat. Uvedené opatení alespo ásten zmírní dsledky nastínného problému. Pi testech jsme experimentovali i s metodami redukce tak, abychom do výpotu zahrnuli více po sob jdoucích bod v grafu kvality. Jednou z možností, jak tohoto docílit, je aplikovat metodu znovu. Metodu opakované aplikace strategie pomrové v tabulce znaíme DoubleRatio, metodu s opakováním strategie rozdílové znaíme DoubleDiff. Srovnání strategií s použitím pedchozí úpravy je uvedeno v následující tabulce. Pro zadané strategie uvádíme postupn výsledky pro nastavení parametr topreduceratio-bottomreduceratio pro hodnoty / / Ratio DoubleRatio Diff DoubleDiff C u C a 4/4/5 3.2/3.2/4 0/4/4 0/4/4 DC a C u 48/48/48 48/48/28 0/47/27 0/28/28 Tabulka 8: Tabulka zachycuje srovnání implementovaných strategií redukce stromu shluk V tabulce sledujeme, že redukce stromu pomocí metody pomrové je ve výsledku lepší než metoda rozdílová. Souasn pozorujeme i zhoršení kvality shluk pi prohledávání celého grafu kvality nastavením parametru topreduceratio na 1.0. Proto budeme používat hranici 0.5. Navíc se bhem test osvdilo používání i nastavení dolní hranice na 0.1. Na testovací kolekci se výhoda tohoto nastavení projevila jen umístním dvou shluk hloubji do hierarchie, nicmén pi práci s výsledky vyhledávání zahrnovala klasifikace v prvních úrovních stromu shluk širší spektrum témat, což uživateli poskytuje lepší náhled na témata v dokumentech. ídící komponenta Clusterer krom koordinace práce jednotlivých komponent zajišuje oznakování shluk. V tomto procesu lze manipulovat s nastavením potu vybraných kandidát na oznakování shluku a s potem výsledných term vytváejících oznakování shluku. V následující tabulce sledujeme závislost potu vybraných kandidát na kvalit oznakování shluku a dob bhu oznakování shluk. Vycházíme z klasifikace 71

72 uživatelem C u. Kvalitu oznakování shluk v závislosti na nastavení budeme urovat jako prmr velikostí prnik oznakování shluk klasifikace C a s jimi odpovídajícími oznakováními klasifikace uživatelem C u - v tabulce znaíme 72 L L. Jako shodné termy uvažujeme takové, které mají shodný alespo svj kmen. Je teba vzít v úvahu, že toto mení je subjektivní a závisí do znané míry na oznakování uživatelem, proto je teba brát výsledky spíš orientan. Vycházíme z oznakování shluku šesti termy. 6/10 6/20 6/30 6/50 Lu L 0,583 0,623 0,623 0,623 a RT Label Tabulka 9: Tabulka zachycuje závislost kvality oznakování shlukování a doby bhu procesu oznakování na nastavení množství kandidát. Z tabulky lze vyíst, že zvýšení potu kandidát mírn zvýší dobu bhu procesu oznakování v pípad, že pracujeme s menším potem kandidát. Naproti tomu pozorujeme kvalitativní zlepšení u vtšího potu kandidát. Proto jsme se rozhodli pro kompromisní ešení mezi dobou bhu a kvalitou oznakování, a zvolili hodnotu 30 kandidát. V rámci uvádní výsledných test shlukovacího modulu zde zmíníme i funkcionalitu tídní podshluk. Implementována byla strategie azení shluk abecedn, tedy nejdíve shluky s více dokumenty setídné abecedn, následn shluky obsahující pouze jeden dokument setídné abecedn. Implementace umožuje i zadaní jiné strategie pro azení. V komponent Clusterer se tvoí tématický náhled nad dokumenty oznaovaný v rámci komponenty NSortedDocuments. Pvodním zámrem v návrhu bylo vytvoit tématický náhled seazením dokument dle podobnosti ke stedm shluk na první úrovni shluk, která vznikla použitou redukcí. Pi testech se ukázalo, že vytvoený tématický náhled obsahoval v poáteních výsledcích dokumenty z rzných shluk, nicmén z nkterých shluk se tam objevilo více dokument a z ostatních se dokumenty objevily až pozdji. Proto jsme se inspirovali ástí algoritmu uvedeného v literatue [11], kde byla souástí procesu vytváení tématického náhledu penalizace dokument, které patily do shluk, jejichž nkteí reprezentanti byli uvedeny v náhledu díve. Princip penalizování takových dokument jsme využili pi tvorb tématického náhledu. Postupn jsme vybírali ze seznamu dokument ty, které mají nejvtší podobnost k centru shluku, do kterého náleží, což je shodné s pvodním návrhem. Po vybrání takového dokumentu penalizujeme všechny dokumenty v pvodním seznamu, které náleží do shodného shluku penalizaní funkcí. Funkce pouze násobí u a

73 podobnost takových dokument koeficientem penalization, který lze pípadn v rámci komponenty Clusterer mnit. Koeficient musí náležet do intervalu ( 0,1). Dalším parametrem, kterým lze pozmnit tvorbu tématického náhledu, je singledocsimilarity, který uruje podobnost dokument k centru svého shluku, kde tento dokument tvoí samostatný shluk. Takové dokumenty by za normálních podmínek mly podobnost nastavenou na 1 a tím se dostaly do popedí tématického náhledu. V diplomové práci ale preferujeme v poáteních dokumentech zástupce vtších shluk, protože takové dokumenty jsou v kolekci dokument reprezentativnjší. Proto jsme podobnost tmto dokumentm nastavili pouze na 0.5. V závru testu shlukovacího modulu ukážeme na následujících obrázcích, jak byly pomocí shlukovacího modulu klasifikovány dokumenty z kolekce 50 dokument a vytvoený tématický náhled. Parametry prahu byly nastaveny následovn: dolní práh pro indexaci: 5, horní práh pro indexaci: 99, strategie pro nalezení ideálního stromu: pomrová, topreduceratio a bottomreduceratio: poet kandidát na oznakování shluku: 30 penalizaní koeficient: 0.8 koeficient podobnosti shluk s jedním dokumentem: 0.5 Dokumenty jsou dostupné na piloženém CD. Klasifikace tchto dokument je zachycena následujícími obrázky. Porovnání s klasifikací uživatelem mžeme sledovat pomocí názv soubor, kde dokumenty náležící dle uživatele do jednoho shluku mají jednotné oznaení. 73

74 Obrázek 22: Shluk obsahující dokumenty, které se týkají intuice divokých zvíat vnímat pírodní katastrofy Obrázek 23: Shluk obsahující dokumenty, které se týkají cyklistiky a závod. 74

75 Obrázek 24: Shluk obsahující dokumenty, které se týkají Michelangelových dl a soch 75

76 Obrázek 25: Shluk obsahující dokumenty, které se týkají planety Mars a vdeckých expedic. Obrázek 26: Shluk obsahující dokumenty, které se týkají rakoviny Obrázek 27: Shluk obsahuje zbytek nezaazených dokument Vytvoený tématický náhled: 76

77 1: Fort William World Cup 2008 Shluk: Cycling, Password, British, Username, race, Copyright Podobnost: 0,707 2: Acoustic senses may have saved animals in tsunami. 04/01/2005. ABC... Shluk: birds, animated, Sri, tsunami, elephants, Lanka Podobnost: 0,696 3: Island of Freedom - Michelangelo Buonarroti Shluk: marble, sculptures, Madonna, Michelangelo, Florence, Renaissance Podobnost: 0,69 4: SPACE.com -- Mars Probes Continue to Unlock Planet's Mysteries Shluk: Mars, surface, Earth, orbiting, planet, rocks Podobnost: 0,646 5: Brain Tumor - Adults - Symptoms, Diagnosis, Treatment of Brain Tumor... Shluk: treatment, cancer, Health, patiently, type, treated Podobnost: 0,639 6: Michelangelo Shluk: marble, sculptures, Madonna, Michelangelo, Florence, Renaissance Podobnost: 0,548 7: BBC NEWS South Asia Did animals have quake warning? Shluk: birds, animated, Sri, tsunami, elephants, Lanka Podobnost: 0,543 8: Fort William World Cup 2008 Shluk: Cycling, Password, British, Username, race, Copyright Podobnost: 0,534 9: BBC - Health - Conditions - What treatment is available? Shluk: treatment, cancer, Health, patiently, type, treated Podobnost: 0,508 10: Michelangelo, Sculpture Shluk: Others Podobnost: 0, Shrnutí test shlukovacího modulu Na testovací kolekci dokument jsme ovili, že shlukovací modul rozezná shluky tématicky odlišných dokument a vytvoí tak shluky s odpovídajícím názvem a tématický náhled, který obsahuje v poáteních dokumentech zástupce z mnoha shluk. To je pi vyhledávání dležité pro identifikování obsahu kolekce výsledných dokument. Horší vlastnosti jsme nalezli v nižších úrovních stromu shluk, kde vznikaly nevyvážené stromy postupným pidáváním pouze jednoho dokumentu k vtšímu shluku pozorujeme nap. na obr. 22. Tento jev nastával pedevším u shluk s nízkým potem dokument, pípadn u shluk, kde byly dokumenty málo tématicky odlišné. I pes tento problém byl na testovací kolekci poskytnut pomrn dobrý tématický náhled, jak formou zobrazení vytvoených shluk, tak formou pímého tématického náhledu na kolekci. Testovali jsme ale na vzorových 77

78 datech, kde byly jednotlivé shluky výrazn tématicky odlišné. Výsledky test na reálné kolekci dokument uvádíme v následující kapitole. 6.2 Testy vyhledávae se shlukováním výsledk V pedchozím jsme uvedli výsledné chování samostatného modulu pro shlukování dokument. V následujících odstavcích ukážeme chování celé implementované aplikace pomocí výsledk, které získáme po vyhledání níže definovaných dotaz. Shlukovací modul má nastaveny nejlépe vyhovující parametry nalezené v pedchozí kapitole. Souástí procesu pípravy dokument pro shlukování v komponent EgoClusterer je jejich parsování. Dležitou komponentou v tomto procesu je ClusterHTMLParser, který poskytuje podobnou funknost jako již implementovaná tída HTMLParser. Implementace v rámci shlukovacího modulu pebírá základní principy implementace parsování HTML dokument z HTMLParseru. Hlavním dvodem vzniku této komponenty byl problém, na který jsme pi testování narazili. Dokumenty se shlukovaly pevážn na základ odkaz na další lánky ze zpravodajského serveru, protože samotné texty dokumentu byly krátké a odkaz bylo v textu mnoho. Proto jsme v komponent ClusterHTMLParser pi parsování text vytváeli dva výstupní streamy. První spluje pvodní požadavky a obsahuje všechny potebné elementy pro získávání ústižk. Druhý je urený pro shlukování a obsahuje pouze nkteré elementy ze struktury HTML vhodné pro shlukování, ostatní elementy byly vynechány jedná se pedevším o zmiované odkazy, konkrétn o elementy oznaené znakami <A>, <AREA> a <BASE>. Zajímavou funkností, kterou nabízí HTMLParser, je nastavení vyšších základních vah nkterým elementm. Váhu následn používáme pi indexaci pro zvýšení frekvence termu v dokumentu jedná se napíklad o elementy nadpisu, zvýraznných term a dalších. Pi pedzpracování dokument urených pro shlukování jsme použili nkolik filtr popsaných v následujícím textu, jejichž použití je souástí procesu indexace. Jejich úkolem bylo zlepšit kvalitu shlukování. V komponent EgoClustereru jsme použili filtr odstraující interpunkní znaménka, filtr odstraující slova ze stop listu a filtr pevádjící termy na jejich kmen stemmer. Nkteré testy jsme vykonávali i s použitím již existujícího filtru LowerCase, který pevádí termy na malá písmena. Jeho použitím se ale pekvapiv významn snížila kvalita klasifikace, proto jsme ho do použitých filtr nezaadili. Pi použití vyhledávae se shlukováním výsledk pomocí komponenty EgoClusterer mžeme mnit její chování nastavením nkolika parametr, na kterých výsledek shlukování 78

79 záleží. Jedná se pedevším o parametr documentstocluster, urující poet dokument, které se budou shlukovat. Uvedeme píklad nkolika dotaz a ke každému z nich nastavíme parametr documentstocluster na 50 a 100. U každého výsledku zaznamenáváme rychlost zpracování, názvy vytvoených shluk do druhé úrovn a vytvoený tématický náhled. První položený dotaz po spuštní vyhledávacího stroje Egothor vždy bžel díky inicializacím uvnit vyhledávacího stroje déle, proto byly údaje o dob bhu získávány až po této poátení inicializaci. Dotaz 1: world První dotaz jsme zvolili obecn, abychom získali dostatené množství výsledk, které se budou shlukovat. documentstocluster: 50 RT Search : 1672 RT SC : 2126 Klasifikace: 79

80 Obrázek 28: Prvních 50 klasifikovaných výsledk vyhledávání dotazu world s použitím Tématický náhled: strategie redukce Ratio 1: BBC NEWS Asia-Pacific Tsunami explained Shluk: phenomena, DISASTERS, NATURAL, Animated, devastating, guides Podobnost: 0,892 2: BBC NEWS Programmes From Our Own Correspondent About the programme Shluk: Correspondents, Radio, podcast, Personal, SEARCH, Programmes Podobnost: 0,814 3: BBC NEWS Technology Searching for the next big thing Shluk: BID, Latest, Yahoo, DEMAND, Microsoft, SHARE Podobnost: 0,802 80

81 4: BBC NEWS UK England Artist completes cathedral crawl Shluk: breaking, performer, Jan, completely, London, set Podobnost: 0,77 5: BBC NEWS Have Your Say Olympic protests: Chinese reaction Shluk: Games, Olympics, Phone, lit, VENUES, torch Podobnost: 0,733 6: BBC NEWS South Asia Asian states feel rice pinch Shluk: India, rice, rising, PERSONAL, risen, prices Podobnost: 0,682 7: BBC NEWS Special Reports Animated guide: Tornadoes Shluk: phenomena, DISASTERS, NATURAL, Animated, devastating, guides Podobnost: 0,673 8: BBC NEWS Programmes From Our Own Correspondent FAQs Shluk: Correspondents, Radio, podcast, Personal, SEARCH, Programmes Podobnost: 0,629 9: BBC NEWS Business Google and Yahoo to share web ads Shluk: BID, Latest, Yahoo, DEMAND, Microsoft, SHARE Podobnost: 0,626 10: BBC NEWS Entertainment Mariah breaks Elvis chart record Shluk: breaking, performer, Jan, completely, London, set Podobnost: 0,601 documentstocluster: 100 RT Search : 2866 RT SC : 3819 Vzhledem k velikosti následující klasifikace uvádíme ve druhé úrovni hierarchie pouze shluky, které mají více jak jeden podshluk obsahující více dokument. Klasifikace: 81

82 Obrázek 29: Prvních 100 klasifikovaných výsledk vyhledávání dotazu world. 82

83 Tématický náhled: 1: BBC NEWS Asia-Pacific Tsunami explained Shluk: phenomena, DISASTERS, NATURAL, Animated, devastated, guide Podobnost: 0,89 2: BBC NEWS Programmes From Our Own Correspondent About the programme Shluk: podcast, SEARCH, Correspondent, Personal, Programmes, fields Podobnost: 0,82 3: BBC NEWS UK England Artist completes cathedral crawl Shluk: performed, Jan, breaking, London, complete, record Podobnost: 0,786 4: BBC NEWS Science/Nature Animal world's communication kings Shluk: German, animals, named, test, explains, originate Podobnost: 0,78 5: BBC NEWS Africa Somalia: Who supports who? Shluk: Mogadishu, Somali, Somalia, Rape, SURVIVING, Adde Podobnost: 0,747 6: BBC NEWS Technology Searching for the next big thing Shluk: PRICE, bid, Microsoft, search, positive, advertised Podobnost: 0,724 7: BBC NEWS UK UK Politics Borders policing body begins work Shluk: grabs, trained, office, Police, Force, sufficient Podobnost: 0,7 8: BBC NEWS Special Reports Animated guide: Tornadoes Shluk: phenomena, DISASTERS, NATURAL, Animated, devastated, guide Podobnost: 0,679 9: BBC NEWS Asia-Pacific China stands firm on Tibet relay Shluk: torch, Tibetan, Tibet, Olympic, commentator, Dalai Podobnost: 0,644 10: BBC NEWS South Asia Asian states feel rice pinch Shluk: India, rise, price, rice, PERSONAL, farmers Podobnost: 0,636 Shrnutí výsledku dotazu world : Pi srovnání výsledk klasifikace pi shlukování 50 a 100 dokument mžeme pozorovat, že pi vtším množství dokument dle pedpoklad vzrostla doba vykonávání dotazu a shlukování. Na druhou stranu se ve výsledném stromu shluk na základních hladinách objevila témata, která v klasifikaci 50 dokument nebyla, a jsou významov pomrn zajímavá. Stinnou stránkou použití vyššího potu dokument je vznik vyššího potu shluk na základní úrovni, což mže být matoucí. V klasifikaci 50 i 100 dokument se objevil i shluk s vyšším potem dokument obsahující více tématicky zajímavých podshluk. Zatímco v klasifikaci 50 dokument nebyly vytvoené podshluky tolik výrazné, v klasifikaci 100 dokument se v tomto shluku vytvoilo nkolik zajímavých podshluk. Celkov byly 83

84 v obou klasifikacích v prvních úrovních vytvoeny významné shluky, které dostaten informují o tématech celé výsledné kolekce. Na základ pedchozího textu v tomto pípad ale preferujeme jako kvalitnjší klasifikaci 100 dokument. Dotaz 2: in Druhý dotaz jsme zvolili opt obecnjší, abychom získali srovnání na vtší kolekci dokument s pedchozí vytvoenou klasifikací. documentstocluster: 50 RT Search : 1874 RT SC : 2165 Klasifikace: 84

85 Obrázek 30: Prvních 50 klasifikovaných výsledk vyhledávání dotazu in Tématický náhled: 1: BBC NEWS Have Your Say Sderot and Gaza: Second letters Shluk: shell, Ismail, Israeli, weapons, tank, centre Podobnost: 0,867 2: BBC NEWS Asia-Pacific The challenges of reporting in China 85

86 Shluk: image, John, stories, telling, fellow, writing Podobnost: 0,78 3: BBC NEWS Asia-Pacific Australia pledges E Timor support Shluk: hills, VOICES, TIMOR, EAST, Gusmao, Jose Podobnost: 0,763 4: BBC NEWS South Asia Is Nepal's democracy in danger? Shluk: monarchy, WORLD, Nepal, Maoists, ARCHIVES, SERVICE Podobnost: 0,745 5: BBC NEWS Africa Q&A: Somali conflict Shluk: Rape, SURVIVING, Adde, Helpless, Aweys, widow Podobnost: 0,735 6: BBC NEWS South Asia Nato at pains to dismiss Afghan tensions Shluk: ISAF, allies, Nato, Italy, France, Netherlands Podobnost: 0,732 7: BBC NEWS Europe Rebel figure killed in Chechnya Shluk: WATCH, Caucasus, Chechnya, CONFLICT, LISTEN, Russian Podobnost: 0,724 8: BBC NEWS Europe Country profiles Regions and territories: Chechnya Shluk: seats, bodies, violent, United, profile, murders Podobnost: 0,721 9: BBC NEWS Asia-Pacific Q&A: China and Tibet Shluk: EYEWITNESS, Dalai, Lama, Tibetans, Tibet, Protesters Podobnost: 0,717 10: BBC NEWS Business India to court Africa for business Shluk: prices, rise, dependent, hit, crops, shortages Podobnost: 0,678 documentstocluster: 100 RT Search : 2609 RT SC : 3562 Vzhledem k velikosti následující klasifikace uvádíme do druhé úrovn hierarchie pouze shluky, které mají více jak jeden podshluk obsahující více dokument. Klasifikace: 86

87 Obrázek 31: 100 klasifikovaných výsledk vyhledávání dotazu in Tématický náhled: 87

88 1: BBC NEWS Have Your Say Sderot and Gaza: Second letters Shluk: shells, tanks, rockets, medical, PROFILES, Sheikh Podobnost: 0,86 2: BBC NEWS Science/Nature Toads' Australian march quickens Shluk: research, coast, University, proved, common, Jan Podobnost: 0,763 3: BBC NEWS Europe Rebel figure killed in Chechnya Shluk: WATCH, Caucasus, Chechnya, CONFLICT, LISTEN, Russian Podobnost: 0,735 4: BBC NEWS Africa Q&A: Somali conflict Shluk: Rape, SURVIVING, Adde, Helpless, Aweys, widow Podobnost: 0,703 5: BBC NEWS Technology Who will write tomorrow's code? Shluk: phone, Mark, users, technologies, choose, regular Podobnost: 0,689 6: BBC NEWS South Asia Asian states feel rice pinch Shluk: prices, rising, shortages, risen, rice, INDIA Podobnost: 0,672 7: BBC NEWS UK Is this man Veronica Guerin's killer? Shluk: men, crimes, investigation, evident, charged, court Podobnost: 0,671 8: BBC NEWS Asia-Pacific Australia pledges E Timor support Shluk: VOICES, TIMOR, EAST, Gusmao, Xanana, Ramos Podobnost: 0,655 9: BBC NEWS South Asia Inside an Afghan opium market Shluk: Afghan, DEPTH, Taleban, Afghanistan, Kabul, drug Podobnost: 0,618 10: BBC NEWS South Asia Q&A: Nepal's future Shluk: WORLD, Nepal, ARCHIVES, SERVICE, CROSSROADS, Maoist Podobnost: 0,617 Shrnutí výsledku dotazu in : Díky obsáhlým tématicky významným shlukm ve výsledcích vyhledávání se v klasifikaci 50 i 100 dokument vytvoila pomrn kvalitní klasifikace dokument, což se odrazilo i ve vytvoeném tématickém náhledu. V klasifikaci 100 dokument bylo ale v první úrovni vytvoeno více shluk, ímž bylo odhaleno více významných tématických skupin, které jsou pro orientaci uživatele v kolekci výsledných dokument dležité. Proto hodnotíme klasifikaci 100 dokument v tomto pípad jako kvalitnjší. Dotaz 3: attack Tetí dotaz jsme zadali konkrétnjší, abychom zjistili, jak tuto množinu dokument shlukovací modul klasifikuje. Vzhledem k tomu, že celkový poet výsledk vyhledávání je jen 67, zobrazíme klasifikaci pouze prvních 50 dokument. 88

89 documentstocluster: 50 RT Search : 2266 RT SC : 2563 Klasifikace: Obrázek 32: Prvních 50 klasifikovaných výsledk vyhledávání dotazu attack Tématický náhled: 1: BBC NEWS Americas Setback to Bolivian reform plan Shluk: Morale, Dec, indigenous, Aug, greater, Country Podobnost: 0,817 2: BBC NEWS Asia-Pacific 'Crocodile Hunter' Irwin killed Shluk: Experts, sea, water, Pacific, couple, young 89

PÍRUKA A NÁVODY PRO ÚELY: - RUTINNÍ PRÁCE S DATY

PÍRUKA A NÁVODY PRO ÚELY: - RUTINNÍ PRÁCE S DATY PÍRUKA A NÁVODY PRO ÚELY: - RUTINNÍ PRÁCE S DATY YAMACO SOFTWARE 2006 1. ÚVODEM Nové verze produkt spolenosti YAMACO Software pinášejí mimo jiné ujednocený pístup k použití urité množiny funkcí, která

Více

DUM. Databáze - úvod

DUM. Databáze - úvod DUM Název projektu íslo projektu íslo a název šablony klíové aktivity Tematická oblast - téma Oznaení materiálu (pílohy) Inovace ŠVP na OA a JŠ Tebí CZ.1.07/1.5.00/34.0143 III/2 Inovace a zkvalitnní výuky

Více

Pravdpodobnost výskytu náhodné veliiny na njakém intervalu urujeme na základ tchto vztah: f(x)

Pravdpodobnost výskytu náhodné veliiny na njakém intervalu urujeme na základ tchto vztah: f(x) NÁHODNÁ VELIINA Náhodná veliina je veliina, jejíž hodnota je jednoznan urena výsledkem náhodného pokusu (je-li tento výsledek dán reálným íslem). Jde o reálnou funkci definovanou na základním prostoru

Více

IMPORT DAT Z TABULEK MICROSOFT EXCEL

IMPORT DAT Z TABULEK MICROSOFT EXCEL IMPORT DAT Z TABULEK MICROSOFT EXCEL V PRODUKTECH YAMACO SOFTWARE PÍRUKA A NÁVODY PRO ÚELY: - IMPORTU DAT DO PÍSLUŠNÉ EVIDENCE YAMACO SOFTWARE 2005 1. ÚVODEM Všechny produkty spolenosti YAMACO Software

Více

Každý datový objekt Pythonu má minimáln ti vlastnosti. Identitu, datový typ a hodnotu.

Každý datový objekt Pythonu má minimáln ti vlastnosti. Identitu, datový typ a hodnotu. Datový objekt [citováno z http://wraith.iglu.cz/python/index.php] Každý datový objekt Pythonu má minimáln ti vlastnosti. Identitu, datový typ a hodnotu. Identita Identita datového objektu je jedinený a

Více

VYTVÁENÍ VÝBROVÝCH DOTAZ

VYTVÁENÍ VÝBROVÝCH DOTAZ VYTVÁENÍ VÝBROVÝCH DOTAZ V PRODUKTECH YAMACO SOFTWARE PÍRUKA A NÁVODY PRO ÚELY: - VYTVÁENÍ VÝBROVÝCH SESTAV YAMACO SOFTWARE 2003-2004 1. ÚVODEM Standardní souástí všech produkt Yamaco Software jsou prostedky

Více

Ing. Jaroslav Halva. UDS Fakturace

Ing. Jaroslav Halva. UDS Fakturace UDS Fakturace Modul fakturace výrazn posiluje funknost informaního systému UDS a umožuje bilancování jednotlivých zakázek s ohledem na hodnotu skutených náklad. Navíc optimalizuje vlastní proces fakturace

Více

Promnné. [citováno z

Promnné. [citováno z Promnné [citováno z http://wraith.iglu.cz/python/index.php] Abychom s datovým objektem mohli v programu njak rozumn pracovat, potebujeme se na nj njakým zpsobem odkázat. Potebujeme Pythonu íct, aby napíklad

Více

Správa obsahu ízené dokumentace v aplikaci SPM Vema

Správa obsahu ízené dokumentace v aplikaci SPM Vema Správa obsahu ízené dokumentace v aplikaci SPM Vema Jaroslav Šmarda, smarda@vema.cz Vema, a. s., www.vema.cz Abstrakt Spolenost Vema patí mezi pední dodavatele informaních systém v eské a Slovenské republice.

Více

Obsah...1 1. Úvod...2 Slovníek pojm...2 2. Popis instalace...3 Nároky na hardware a software...3 Instalace a spouštní...3 Vstupní soubory...3 3.

Obsah...1 1. Úvod...2 Slovníek pojm...2 2. Popis instalace...3 Nároky na hardware a software...3 Instalace a spouštní...3 Vstupní soubory...3 3. Obsah...1 1. Úvod...2 Slovníek pojm...2 2. Popis instalace...3 Nároky na hardware a software...3 Instalace a spouštní...3 Vstupní soubory...3 3. Popis prostedí...4 3.1 Hlavní okno...4 3.1.1 Adresáový strom...4

Více

POKYNY PRO VYPRACOVÁNÍ BAKALÁSKÉ A DIPLOMOVÉ PRÁCE

POKYNY PRO VYPRACOVÁNÍ BAKALÁSKÉ A DIPLOMOVÉ PRÁCE POKYNY PRO VYPRACOVÁNÍ BAKALÁSKÉ A DIPLOMOVÉ PRÁCE na Fakult životního prostedí Univerzity J.E.Purkyn v Ústí n.l. a) Zadávané téma BP nebo DP musí mít pímou vazbu na studovaný obor. b) Zadání BP nebo DP

Více

METODY OCEOVÁNÍ PODNIKU DEFINICE PODNIKU. Obchodní zákoník 5:

METODY OCEOVÁNÍ PODNIKU DEFINICE PODNIKU. Obchodní zákoník 5: METODY OCEOVÁNÍ PODNIKU DEFINICE PODNIKU Obchodní zákoník 5: soubor hmotných, jakož i osobních a nehmotných složek podnikání. K podniku náleží vci, práva a jiné majetkové hodnoty, které patí podnikateli

Více

Zbytky zákaznického materiálu

Zbytky zákaznického materiálu Autoi: V Plzni 31.08.2010 Obsah ZBYTKOVÝ MATERIÁL... 3 1.1 Materiálová žádanka na peskladnní zbytk... 3 1.2 Skenování zbytk... 7 1.3 Vývozy zbytk ze skladu/makulatura... 7 2 1 Zbytkový materiál V souvislosti

Více

Dodatek dokumentace KEO-Moderní kancelá verze 7.40

Dodatek dokumentace KEO-Moderní kancelá verze 7.40 Dodatek dokumentace KEO-Moderní kancelá verze 7.40 PODACÍ DENÍK SPIS SBRNÝ ARCH PÍSEMNOST DOKUMENT ÍSLO JEDNACÍ J ODESÍLATELE - Soubor všech jednotlivých DOŠLÝCH a VLASTNÍCH písemností. - Každé písemnosti

Více

DEMONSTRAČNÍ ÚLOHA NA UČENÍ BEZ UČITELE

DEMONSTRAČNÍ ÚLOHA NA UČENÍ BEZ UČITELE VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV AUTOMATIZACE A MĚŘICÍ TECHNIKY FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION

Více

27. asové, kmitotové a kódové dlení (TDM, FDM, CDM). Funkce a poslání úzkopásmových a širokopásmových sítí.

27. asové, kmitotové a kódové dlení (TDM, FDM, CDM). Funkce a poslání úzkopásmových a širokopásmových sítí. Petr Martínek martip2@fel.cvut.cz, ICQ: 303-942-073 27. asové, kmitotové a kódové dlení (TDM, FDM, CDM). Funkce a poslání úzkopásmových a širokopásmových sítí. Multiplexování (sdružování) - jedná se o

Více

Role a integrace HR systém

Role a integrace HR systém Role a integrace HR systém Ing. Michal Máel, CSc., Ing. Bc. Jaroslav Šmarda Vema, a. s. Okružní 3a 638 00 Brno macel@vema.cz, smarda@vema.cz Abstrakt Postavení systému ízení lidských zdroj (HR systému)

Více

KUSOVNÍK Zásady vyplování

KUSOVNÍK Zásady vyplování KUSOVNÍK Zásady vyplování Kusovník je základním dokumentem ve výrob nábytku a je souástí výkresové dokumentace. Každý výrobek má svj kusovník. Je prvotním dokladem ke zpracování THN, objednávek, ceny,

Více

POPIS TESTOVACÍHO PROSTEDÍ 1 ZÁLOŽKA PARSER

POPIS TESTOVACÍHO PROSTEDÍ 1 ZÁLOŽKA PARSER POPIS TESTOVACÍHO PROSTEDÍ Testovací prostedí je navrženo jako tízáložková aplikace, každá záložka obsahuje logicky související funkce. Testovací prostedí obsahuje následující ti záložky: Analýza Gramatiky

Více

PRÁCE S GRAFICKÝMI VÝSTUPY SESTAV

PRÁCE S GRAFICKÝMI VÝSTUPY SESTAV PRÁCE S GRAFICKÝMI VÝSTUPY SESTAV V PRODUKTECH YAMACO SOFTWARE PÍRUKA A NÁVODY PRO ÚELY: - UŽIVATELSKÉ ÚPRAVY GRAFICKÝCH VÝSTUP YAMACO SOFTWARE 2006 1. ÚVODEM Vtšina produkt spolenosti YAMACO Software

Více

Modely vyhledávání informací 4 podle technologie. 1) Booleovský model. George Boole 1815 1864. Aplikace booleovské logiky

Modely vyhledávání informací 4 podle technologie. 1) Booleovský model. George Boole 1815 1864. Aplikace booleovské logiky Modely vyhledávání informací 4 podle technologie 1) Booleovský model 1) booleovský 2) vektorový 3) strukturní 4) pravděpodobnostní a další 1 dokumenty a dotazy jsou reprezentovány množinou indexových termů

Více

Efektivní hodnota proudu a nap tí

Efektivní hodnota proudu a nap tí Peter Žilavý: Efektivní hodnota proudu a naptí Efektivní hodnota proudu a naptí Peter Žilavý Katedra didaktiky fyziky MFF K Praha Abstrakt Píspvek experimentáln objasuje pojem efektivní hodnota stídavého

Více

EVROPSKÁ ÚMLUVA O DOBROVOLNÉM KODEXU O POSKYTOVÁNÍ PEDSMLUVNÍCH INFORMACÍCH SOUVISEJÍCÍCH S ÚVRY NA BYDLENÍ (dále jen ÚMLUVA )

EVROPSKÁ ÚMLUVA O DOBROVOLNÉM KODEXU O POSKYTOVÁNÍ PEDSMLUVNÍCH INFORMACÍCH SOUVISEJÍCÍCH S ÚVRY NA BYDLENÍ (dále jen ÚMLUVA ) PRACOVNÍ PEKLAD PRO POTEBY BA 01/08/2005 EVROPSKÁ ÚMLUVA O DOBROVOLNÉM KODEXU O POSKYTOVÁNÍ PEDSMLUVNÍCH INFORMACÍCH SOUVISEJÍCÍCH S ÚVRY NA BYDLENÍ (dále jen ÚMLUVA ) Tato Úmluva byla sjednána mezi Evropskými

Více

4. Lineární diferenciální rovnice rovnice 1. ádu

4. Lineární diferenciální rovnice rovnice 1. ádu 4. Lineární diferenciální rovnice rovnice. ádu y + p( ) y = (4.) L[ y] = y + p( ) y p q jsou spojité na I = (ab) a < b. Z obecné teorie vyplývá že množina všech ešení rovnice (4.) na intervalu I (tzv.

Více

Informace pro autory píspvk na konferenci ICTM 2007

Informace pro autory píspvk na konferenci ICTM 2007 Informace pro autory píspvk na konferenci ICTM 2007 Pokyny pro obsahové a grafické zpracování píspvk Strana 1 z 5 Obsah dokumentu: 1. ÚVODNÍ INFORMACE... 3 2. POKYNY PRO ZPRACOVÁNÍ REFERÁTU... 3 2.1. OBSAHOVÉ

Více

Pedání smny. Popis systémového protokolování. Autor: Ing. Jaroslav Halva V Plzni 24.01.2012. Strana 1/6

Pedání smny. Popis systémového protokolování. Autor: Ing. Jaroslav Halva V Plzni 24.01.2012. Strana 1/6 Autor: Ing. Jaroslav Halva V Plzni 24.01.2012 Strana 1/6 Obsah 1 OBSAH... 2 2 NKOLIK SLOV NA ÚVOD... 3 3 MODEL... 3 4 DEFINICE... 3 5 DENNÍ VÝKAZ... 4 6 ZÁVR... 6 Strana 2/6 1 Nkolik slov na úvod Zamení

Více

Instalace multiimportu

Instalace multiimportu Instalace multiimportu 1. Rozbalit archiv multiimportu (nap. pomocí programu Winrar) na disk C:\ Cesta ve výsledném tvaru bude: C:\MultiImport 2. Pejdte do složky Install a spuste soubor Install.bat Poznámka:

Více

Prezentaní program PowerPoint

Prezentaní program PowerPoint Prezentaní program PowerPoint PowerPoint 1 SIPVZ-modul-P0 OBSAH OBSAH...2 ZÁKLADNÍ POJMY...3 K EMU JE PREZENTACE... 3 PRACOVNÍ PROSTEDÍ POWERPOINTU... 4 OPERACE S PREZENTACÍ...5 VYTVOENÍ NOVÉ PREZENTACE...

Více

Prbh funkce Jaroslav Reichl, 2006

Prbh funkce Jaroslav Reichl, 2006 rbh funkce Jaroslav Reichl, 6 Vyšetování prbhu funkce V tomto tetu je vzorov vyešeno nkolik úloh na vyšetení prbhu funkce. i ešení úlohy jsou využity základní vlastnosti diferenciálního potu.. ešený píklad

Více

Získávání znalostí z databází. Alois Kužela

Získávání znalostí z databází. Alois Kužela Získávání znalostí z databází Alois Kužela Obsah související pojmy datové sklady, získávání znalostí asocianí pravidla 2/37 Úvod získávání znalostí z dat, dolování (z) dat, data mining proces netriviálního

Více

Žákovský (roníkový projekt)

Žákovský (roníkový projekt) Žákovský (roníkový projekt) Ko(08) Roník: 3 Zaazení: ODBORNÝ VÝCVIK (PROFILOVÝ ODBORNÝ PEDMT) Vzdlávací program: Mechanik opravá 23-66-H/001 Elektriká 26-51-H/001 Truhlá 33-56-H/001 Operátor skladování

Více

Pídavný modul rozvaha lze vyvolat z hlavní nabídky po stisku tlaítka Výkazy / pídavné moduly.

Pídavný modul rozvaha lze vyvolat z hlavní nabídky po stisku tlaítka Výkazy / pídavné moduly. Výkaz rozvaha Pídavný modul rozvaha lze vyvolat z hlavní nabídky po stisku tlaítka Výkazy / pídavné moduly. Po spuštní modulu se zobrazí základní okno výkazu: V tabulce se zobrazují sloupce výkazu. Ve

Více

Postup pi importu. Zdroje: ElkoValenta, HP tronic. A. export vytvoených kategorií

Postup pi importu. Zdroje: ElkoValenta, HP tronic. A. export vytvoených kategorií Postup pi importu Zoner InShop Multiimport je aplikace, která Vám umožní snadno a rychle pevzít katalogy, ceníky a zboží od vašeho dodavatele. Minimalizuje tak práci, kterou musíte vynaložit pi runím vkládání

Více

1.16 Lineární stabilita (pouze Fin 3D)

1.16 Lineární stabilita (pouze Fin 3D) 1.16 Lineární stabilita (pouze Fin 3D) 1.16.1 Teoretický úvod Nedílnou souástí návrhu štíhlých prutových konstrukcí by ml být spolen se statickým výpotem také výpoet stabilitní, nebo podává z inženýrského

Více

1. MODELY A MODELOVÁNÍ. as ke studiu: 30 minut. Cíl: Po prostudování této kapitoly budete umt: Výklad. 1.1. Model

1. MODELY A MODELOVÁNÍ. as ke studiu: 30 minut. Cíl: Po prostudování této kapitoly budete umt: Výklad. 1.1. Model 1. MODELY A MODELOVÁNÍ as ke studiu: 30 minut Cíl: Po prostudování této kapitoly budete umt: charakterizovat model jako nástroj pro zobrazení skutenosti popsat proces modelování provést klasifikaci základních

Více

Przkum kvality služby v Mstském dopravním podniku Opava, a.s. v roce 2007

Przkum kvality služby v Mstském dopravním podniku Opava, a.s. v roce 2007 Przkum kvality služby v Mstském dopravním podniku Opava, a.s. v roce 2007 Zpracoval: Ing. Michal Matoušek, Ph.D. Dresden, 11.5.2007 1 V návaznosti na provedený przkum kvality služby v Mstském dopravním

Více

GYMNÁZIUM CHEB SEMINÁRNÍ PRÁCE

GYMNÁZIUM CHEB SEMINÁRNÍ PRÁCE GYMNÁZIUM CHEB SEMINÁRNÍ PRÁCE Relace Cheb, 006 Radek HÁJEK Prohlášení Prohlašuji, že jsem seminární práci na téma: Relace vypracoval zcela sám za použití pramen uvedených v piložené bibliograii na poítai

Více

Související ustanovení ObZ: 66, 290, 1116 až 1157, 1158 a násl., 1223 až 1235, 1694, 1868 odst. 1, 2719, 2721, 2746, 2994, 3055, 3062, 3063,

Související ustanovení ObZ: 66, 290, 1116 až 1157, 1158 a násl., 1223 až 1235, 1694, 1868 odst. 1, 2719, 2721, 2746, 2994, 3055, 3062, 3063, Pídatné spoluvlastnictví Obecná ustanovení 1223 (1) Vc náležící spolen nkolika vlastníkm samostatných vcí urených k takovému užívání, že tyto vci vytváejí místn i úelem vymezený celek, a která slouží spolenému

Více

Párování. Nápovdu k ostatním modulm naleznete v "Pehledu nápovd pro Apollo".

Párování. Nápovdu k ostatním modulm naleznete v Pehledu nápovd pro Apollo. Párování Modul Párování poskytuje pehled o došlých i vrácených platbách provedených bankovním pevodem i formou poštovní poukázky. Jedná se napíklad o platby za e-pihlášky, prkazy ISIC nebo poplatky za

Více

TopoL sbr bod pro AAT

TopoL sbr bod pro AAT TopoL sbr bod pro AAT technologický postup Jindich Hoda Ph.D. únor 2005 Pi práci v SW TopoL se budete pi sbru bod pro aerotriangulaci ídit následujícím pracovním postupem, viz obrázek 1. Obr. 1 pracovní

Více

DOPRAVNÍ INŽENÝRSTVÍ

DOPRAVNÍ INŽENÝRSTVÍ VYSOKÉ UENÍ TECHNICKÉ V BRN FAKULTA STAVEBNÍ ING. MARTIN SMLÝ DOPRAVNÍ INŽENÝRSTVÍ MODUL 4 ÍZENÉ ÚROVOVÉ KIŽOVATKY ÁST 1 STUDIJNÍ OPORY PRO STUDIJNÍ PROGRAMY S KOMBINOVANOU FORMOU STUDIA Dopravní inženýrství

Více

VYUŽITÍ MODULU EXCELENT PRO MANAŽERSKÉ ANALÝZY V APLIKACÍCH VEMA

VYUŽITÍ MODULU EXCELENT PRO MANAŽERSKÉ ANALÝZY V APLIKACÍCH VEMA VYUŽITÍ MODULU EXCELENT PRO MANAŽERSKÉ ANALÝZY V APLIKACÍCH VEMA Ing. Bc. Jaroslav Šmarda Vema, a. s. smarda@vema.cz Abstrakt Ze zkušenosti víme, že nasazení speciálního manažerského informaního systému

Více

Algoritmy pro shlukování prostorových dat

Algoritmy pro shlukování prostorových dat Algoritmy pro shlukování prostorových dat Marta Žambochová Katedra matematiky a informatiky Fakulta sociálně ekonomická Univerzita J. E. Purkyně v Ústí nad Labem ROBUST 21. 26. leden 2018 Rybník - Hostouň

Více

Databázová podpora normování manuálních inností ve strojírenské výrob

Databázová podpora normování manuálních inností ve strojírenské výrob Databázová podpora normování manuálních inností ve strojírenské výrob Jaroslav Halva, Ing., reus s.r.o., schlott gruppe, Plze jaroslav.halva@reus.cz +420-724 36 77 04 Píspvek prezentuje systém databázové

Více

MATEMATIKA MATEMATIKA

MATEMATIKA MATEMATIKA PRACOVNÍ MATERIÁLY PRACOVNÍ MATERIÁLY MATEMATIKA MATEMATIKA Struktura vyuovací hodiny Metodický Struktura vyuovací list aplikace hodiny Ukázková Metodický hodina list aplikace materiál Záznamový Ukázková

Více

P ehled nep ítomnosti

P ehled nep ítomnosti Pehled nepítomnosti Modul poskytuje pehled nepítomností zamstnanc na pracovišti. Poskytuje informace o plánované, schválené nebo aktuáln erpané pracovní nepítomnosti zamstnanc v rámci pracovišt VUT a možnost

Více

1. Exponenciální rst. 1.1. Spojitý pípad. Rstový zákon je vyjáden diferenciální rovnicí

1. Exponenciální rst. 1.1. Spojitý pípad. Rstový zákon je vyjáden diferenciální rovnicí V tomto lánku na dvou modelech rstu - exponenciálním a logistickém - ukážeme nkteré rozdíly mezi chováním spojitých a diskrétních systém. Exponenciální model lze považovat za základní rstový model v neomezeném

Více

Gymnázium. Kromíž. Zpracování textu. Word 1 SIPVZ-modul-P0

Gymnázium. Kromíž. Zpracování textu. Word 1 SIPVZ-modul-P0 Zpracování textu Word 1 SIPVZ-modul-P0 OBSAH OBSAH...2 ZÁKLADNÍ POJMY...3 ZÁKLADY EDITACE TEXTU...4 FORMÁT ODSTAVCE...5 ODRÁŽKY A ÍSLOVÁNÍ...6 TABULÁTORY...7 OHRANIENÍ A STÍNOVÁNÍ...8 STYL ODSTAVCE...9

Více

Bezpenost dtí v okolí škol z pohledu bezpenostního auditora

Bezpenost dtí v okolí škol z pohledu bezpenostního auditora Bezpenost dtí v okolí škol z pohledu bezpenostního auditora Ing. Jaroslav Heinich, HBH Projekt spol. s r.o. pednáška na konferenci Bezpenos dopravy na pozemných komunikáciách 2008 ve Vyhne (SK) ÚVOD Bezpenostní

Více

1 Postup pi práci s informacemi

1 Postup pi práci s informacemi Vybraná kapitola z lánku Hejtmánek Jakub - Internet jako zdroj informací pro marketing malých a stedních firem, publikováno v asopise Systémuvá integrace [Vyšlo: 4/2003, prosinec, ISSN 1210-9479 Datum:

Více

EXPORT DAT TABULEK V MÍŽKÁCH HROMADNÉHO PROHLÍŽENÍ

EXPORT DAT TABULEK V MÍŽKÁCH HROMADNÉHO PROHLÍŽENÍ EXPORT DAT TABULEK V MÍŽKÁCH HROMADNÉHO PROHLÍŽENÍ V PRODUKTECH YAMACO SOFTWARE PÍRUKA A NÁVODY PRO ÚELY: - EXPORTU DAT DO EXTERNÍCH FORMÁT YAMACO SOFTWARE 2005 1. ÚVODEM Všechny produkty spolenosti YAMACO

Více

ORACLE MANUFACTURING SCHEDULING ORACLE HLAVNÍ PLÁNOVÁNÍ VÝROBY

ORACLE MANUFACTURING SCHEDULING ORACLE HLAVNÍ PLÁNOVÁNÍ VÝROBY ORACLE MANUFACTURING SCHEDULING ORACLE HLAVNÍ PLÁNOVÁNÍ VÝROBY KLÍOVÉ FUNKCE ORACLE MANUFACTURING SCHEDULING Píprava pedpovdí Parametry plánu finální výroby Plánování materiálových požadavk Pracovní plocha

Více

Internetový mapový server Karlovarského kraje

Internetový mapový server Karlovarského kraje Internetový mapový server Karlovarského kraje Ing.Jií Heliks Karlovarský kraj Závodní 353/88 Karlovy Vary tel.: 353 502 365 e-mail: jiri.heliks@kr-karlovarsky.cz 1. Úvod Vývojem informa,ních systém. a

Více

WWW poštovní klient s úložištm v MySQL databázi

WWW poštovní klient s úložištm v MySQL databázi eské vysoké uení technické v Praze Fakulta elektrotechnická Bakaláské práce WWW poštovní klient s úložištm v MySQL databázi Jií Švadlenka Vedoucí práce: Ing. Ivan Halaška Studijní program: Elektrotechnika

Více

Jak psát seminární a maturitní práce Manuál pro obory KS, MP

Jak psát seminární a maturitní práce Manuál pro obory KS, MP Stední odborná škola Luhaovice Masarykova 101 Luhaovice Jak psát seminární a maturitní práce Manuál pro obory KS, MP Mgr. Klára Masaová Ing. Iva Bšínská 2008 OBSAH 1 POKYNY PRO VYPRACOVÁNÍ SEMINÁRNÍCH

Více

AVDAT Mnohorozměrné metody, metody klasifikace Shluková analýza

AVDAT Mnohorozměrné metody, metody klasifikace Shluková analýza AVDAT Mnohorozměrné metody, metody klasifikace Shluková analýza Josef Tvrdík Katedra informatiky Přírodovědecká fakulta Ostravská univerzita Shluková analýza Cílem shlukové analýzy je nalézt v datech podmnožiny

Více

Podpora výroby energie v zaízeních na energetické využití odpad

Podpora výroby energie v zaízeních na energetické využití odpad Podpora výroby energie v zaízeních na energetické využití odpad Tomáš Ferdan, Martin Pavlas Vysoké uení technické v Brn, Fakulta strojního inženýrství, Ústav procesního a ekologického inženýrství, Technická

Více

3 NÁHODNÁ VELIINA. as ke studiu kapitoly: 80 minut. Cíl: Po prostudování tohoto odstavce budete umt

3 NÁHODNÁ VELIINA. as ke studiu kapitoly: 80 minut. Cíl: Po prostudování tohoto odstavce budete umt NÁHODNÁ VELIINA as ke studiu kapitoly: 8 minut Cíl: Po prostudování tohoto odstavce budete umt obecn popsat náhodnou veliinu pomocí distribuní funkce charakterizovat diskrétní i spojitou náhodnou veliinu

Více

Digitální ortofoto. struná teorie

Digitální ortofoto. struná teorie Digitální ortofoto struná teorie Hoda J. VII 2004 Obsah 1. Pekreslení leteckých snímk... 2 1.1. Úvod... 2 1.2. Teorie, metody ešení... 2 1.2.1. Pekreslení snímk na pekreslovaích... 2 1.2.2. Diferenciální

Více

Základy MIDI komunikace

Základy MIDI komunikace Propojení nástroje a poítae Základy MIDI komunikace MIDI IN, OUT, THRU Možností, jak pipojit klávesy k poítai je hned nkolik. Stále nejrozšíenjší porty pro MIDI komunikaci u kláves jsou klasické MIDI IN

Více

DOPRAVNÍ INŽENÝRSTVÍ

DOPRAVNÍ INŽENÝRSTVÍ VYSOKÉ UENÍ TECHNICKÉ V BRN FAKULTA STAVEBNÍ ING. MARTIN SMLÝ DOPRAVNÍ INŽENÝRSTVÍ MODUL 1 DOPRAVNÍ A PEPRAVNÍ PRZKUMY STUDIJNÍ OPORY PRO STUDIJNÍ PROGRAMY S KOMBINOVANOU FORMOU STUDIA Dopravní inženýrství

Více

IV. CVIENÍ ZE STATISTIKY

IV. CVIENÍ ZE STATISTIKY IV. CVIENÍ ZE STATISTIKY Vážení studenti, úkolem dnešního cviení je nauit se analyzovat data kvantitativní povahy. K tomuto budeme opt používat program Excel 2007 MS Office. 1. Jak mžeme analyzovat kvantitativní

Více

2.1 Pokyny k otev eným úlohám. 2.2 Pokyny k uzav eným úlohám. Testový sešit neotvírejte, po kejte na pokyn!

2.1 Pokyny k otev eným úlohám. 2.2 Pokyny k uzav eným úlohám. Testový sešit neotvírejte, po kejte na pokyn! MATEMATIKA základní úrove obtížnosti DIDAKTICKÝ TEST Maximální bodové hodnocení: 50 bod Hranice úspšnosti: 33 % Základní informace k zadání zkoušky Didaktický test obsahuje 26 úloh. asový limit pro ešení

Více

Autocad ( zdroj www.designtech.cz )

Autocad ( zdroj www.designtech.cz ) Autocad ( zdroj www.designtech.cz ) AutoCAD patí k tradiním CAD aplikacím, které využívá celá ada technických i netechnických obor. V dnešním lánku se podíváme na bleskovku, jak lze zaít velmi tychle v

Více

Základní pojmy klasického sudoku hlavolamu. Techniky odkrývání bunk. Technika Naked Single. Technika Hidden Single

Základní pojmy klasického sudoku hlavolamu. Techniky odkrývání bunk. Technika Naked Single. Technika Hidden Single Základní pojmy klasického sudoku hlavolamu Sudoku hlavolam (puzzle) obsahuje celkem 81 bunk (cells), devt vodorovných ádk (rows), devt svislých sloupc (columns) a devt skupin po 3 3 bukách nazývaných bloky

Více

Objektov orientovaný pístup

Objektov orientovaný pístup Objektov orientovaný pístup Softwarové inženýrství (SWI ) je disciplína poítaové vdy (computer science) zabývající se vývojem velkých aplikací. Softwarové inženýrství zahrnuje nejen technické aspekty vytváení

Více

Nový InfoFIT. Manuál k systému Alfresco DMS. Obsah. Úvod. Pihlášení do systému pes webové rozhraní

Nový InfoFIT. Manuál k systému Alfresco DMS. Obsah. Úvod. Pihlášení do systému pes webové rozhraní Nový InfoFIT Manuál k systému Alfresco DMS Obsah Obsah Úvod Pihlášení do systému pes webové rozhraní Procházení struktury Možnosti práce se soubory Možnosti práce se složkami Verzování Zaputí/vypnutí verzování

Více

4 - Architektura poítae a základní principy jeho innosti

4 - Architektura poítae a základní principy jeho innosti 4 - Architektura poítae a základní principy jeho innosti Z koncepního hlediska je mikropoíta takové uspoádání logických obvod umožující provádní logických i aritmetických operací podle posloupnosti povel

Více

ORACLE DISCRETE MANUFACTURING ORACLE DISKRÉTNÍ VÝROBA

ORACLE DISCRETE MANUFACTURING ORACLE DISKRÉTNÍ VÝROBA ORACLE DISCRETE MANUFACTURING ORACLE DISKRÉTNÍ VÝROBA KLÍOVÉ FUNKCE ORACLE DISCRETE MANUFACTURING Definice výrobních píkaz Definice výrobních rozvrh ízení zakázkové výroby ízení sériové výroby ízení hromadné

Více

Tematický plán uiva z matematiky pro 6. roník na školní rok 2009-2010

Tematický plán uiva z matematiky pro 6. roník na školní rok 2009-2010 Tematický plán uiva z matematiky pro 6. roník na školní rok 2009-2010 Msíc: Záí Uivo: Shrnutí a opakování uiva z 5.roníku Pirozená ísla íselná osa, porovnávání, zaokrouhlování, operace s nimi, pevody,

Více

Po íta ová prezentace U EBNICE

Po íta ová prezentace U EBNICE Poítaová prezentace UEBNICE - Strana 2 - Obsah Úvod... 3 Zásady tvorby prezentace... 4 Microsoft PowerPoint (verze XP a 2003)... 5 Tvorba prezentace... 6 První krok Výbr pozadí... 7 Druhý krok Výbr rozložení

Více

DIPLOMOVÝ PROJEKT ELEKTRONICKÁ ZA ÍZENÍ PRO OSOBNÍ AUTOMOBILY

DIPLOMOVÝ PROJEKT ELEKTRONICKÁ ZA ÍZENÍ PRO OSOBNÍ AUTOMOBILY ESKÉ VYSOKÉ UENÍ TECHNICKÉ V PRAZE FAKULTA ELEKTROTECHNICKÁ, KATEDRA MIKROELEKTRONIKY DIPLOMOVÝ PROJEKT ELEKTRONICKÁ ZA ÍZENÍ PRO OSOBNÍ AUTOMOBILY VEDOUCÍ PRÁCE: Doc. Ing. Miroslav Husák,CSc. DIPLOMANTI:

Více

Edited by Foxit PDF Editor Copyright (c) by Foxit Software Company, For Evaluation Only. JAK PSÁT MATURITNÍ PROJEKT

Edited by Foxit PDF Editor Copyright (c) by Foxit Software Company, For Evaluation Only. JAK PSÁT MATURITNÍ PROJEKT Edited by Foxit PDF Editor Copyright (c) by Foxit Software Company, 2004-2007 For Evaluation Only. JAK PSÁT MATURITNÍ PROJEKT 1 ÚPRAVA MATURITNÍHO PROJEKTU 1.1 Rozsah práce Rukopis maturitního projektu

Více

POÍTAOVÁ PODPORA DETEKCE ZAJÍMAVÝCH OBRÁZK

POÍTAOVÁ PODPORA DETEKCE ZAJÍMAVÝCH OBRÁZK POÍTAOVÁ PODPORA DETEKCE ZAJÍMAVÝCH OBRÁZK Pavel Krsek a Jií Matas VUT, Fakulta elektrotechnická, Centrum aplikované kybernetiky Technická 2, 166 27 Praha 6 Úvod a motivace Pi zpracování a výmn dat prostednictvím

Více

Efektivní uení. Žádná zpráva dobrá zpráva. (Structured training) Schopnost pracovat nezávisí od IQ. Marc Gold

Efektivní uení. Žádná zpráva dobrá zpráva. (Structured training) Schopnost pracovat nezávisí od IQ. Marc Gold Efektivní uení (Structured training) Schopnost pracovat nezávisí od IQ. Marc Gold Žádná zpráva dobrá zpráva 1 ásti efektivního uení Stanovení cíle (+ kritéria) Analýza úkolu Použití pimené podpory Volba

Více

Finální verze žádosti (LZZ-GP)

Finální verze žádosti (LZZ-GP) 8. Klíové aktivity!íslo aktivity: 01 Školení nových technologií a novinek v sortimentu TZB (technická zaízení budov) Pedm!tem KA_1 je realizace školení zam!ené na nové technologie a novinky v sortimentu

Více

Rzné algoritmy mají rznou složitost

Rzné algoritmy mají rznou složitost X36DSA 25 / 3 DSA Rzné algoritmy mají rznou složitost X36DSA 25 2 / 3 DSA The complexity of different algorithms varies X36DSA 25 3 / 3 Abeceda Jazyk Abeceda konená (neprázdná) množina symbol A mohutnost

Více

Základní škola Šenov, Radniní námstí 1040, 739 34

Základní škola Šenov, Radniní námstí 1040, 739 34 Oblast Ukazatel Cíl Mechanismy ovování 1. Vize Cíle a školní Propojit cíle Kontrola propagace vzdlávací s oekáváním a cíl v praxi - program potebami klient. (konzultace, dotazníky, ukázkové hodiny, lánky

Více

Cykly Intermezzo. FOR cyklus

Cykly Intermezzo. FOR cyklus Cykly Intermezzo Rozhodl jsem se zaadit do série nkolika lánk o základech programování v Delphi/Pascalu malou vsuvku, která nám pomže pochopit principy a zásady pi používání tzv. cykl. Mnoho ástí i jednoduchých

Více

Vzdlávací oblast: Jazyk a jazyková komunikace Vzdlávací obor: Latina Vyuovací pedmt: Latina

Vzdlávací oblast: Jazyk a jazyková komunikace Vzdlávací obor: Latina Vyuovací pedmt: Latina Latina 244 Vzdlávací oblast: Jazyk a jazyková komunikace Vzdlávací obor: Latina Vyuovací pedmt: Latina 1. Charakteristika vyuovacího pedmtu a) Obsahové, asové a organizaní vymezení pedmtu Pedmt Latina

Více

ORACLE ÍZENÍ VÝROBY ORACLE WORK IN PROCESS KLÍOVÉ FUNKCE ORACLE WORK IN PROCESS

ORACLE ÍZENÍ VÝROBY ORACLE WORK IN PROCESS KLÍOVÉ FUNKCE ORACLE WORK IN PROCESS ORACLE WORK IN PROCESS ORACLE ÍZENÍ VÝROBY KLÍOVÉ FUNKCE ORACLE WORK IN PROCESS Definice standardních výrobních píkaz Definice výrobních rozvrh pro libovolný zvolený interval Definice výrobních píkaz koncové

Více

DISKRÉTNÍ FOURIEROVA TRANSFORMACE P I NELINEÁRNÍ ULTRAZVUKOVÉ SPEKTROSKOPII

DISKRÉTNÍ FOURIEROVA TRANSFORMACE P I NELINEÁRNÍ ULTRAZVUKOVÉ SPEKTROSKOPII DISKRÉTNÍ FOURIEROVA TRANSFORMACE PI NELINEÁRNÍ ULTRAZVUKOVÉ SPEKTROSKOPII Luboš PAZDERA *, Jaroslav SMUTNÝ **, Marta KOENSKÁ *, Libor TOPOLÁ *, Jan MARTÍNEK *, Miroslav LUÁK *, Ivo KUSÁK * Vysoké uení

Více

Podílový fond PLUS. komplexní zabezpeení na penzi

Podílový fond PLUS. komplexní zabezpeení na penzi Podílový fond PLUS komplexní zabezpeení na penzi Aleš Poklop, generálníeditel Penzijního fondu eské spoitelny Martin Burda, generálníeditel Investiní spolenosti eské spoitelny Praha 29. ervna 2010 R potebuje

Více

ESKÝ JAZYK ESKÝ JAZYK

ESKÝ JAZYK ESKÝ JAZYK PRACOVNÍ MATERIÁLY PRACOVNÍ MATERIÁLY ESKÝ JAZYK ESKÝ JAZYK Struktura vyuovací hodiny Plán Struktura vyuovací vyuovací hodiny hodiny Plán Metodický vyuovací list aplikace hodiny Záznamový Metodický list

Více

Splajny a metoda nejmenších tverc

Splajny a metoda nejmenších tverc Splajny a metoda nejmenších tverc 1. píklad a) Najdte pirozený kubický splajn pro funkci na intervalu Za uzly zvolte body Na interpolaci pomocí kubického splajnu použijeme píkaz Spline(ydata,, endpts).

Více

Datový typ POLE. Jednorozmrné pole - vektor

Datový typ POLE. Jednorozmrné pole - vektor Datový typ POLE Vodítkem pro tento kurz Delphi zabývající se pedevším konzolovými aplikacemi a základy programování pro mne byl semestr na vysoké škole. Studenti nyní pipravují semestrální práce pedevším

Více

ZÁKLADNÍ INFORMACE O LÉB INFORMATIKY

ZÁKLADNÍ INFORMACE O LÉB INFORMATIKY ZÁKLADNÍ INFORMACE O LÉB INFORMATIKY Informatika jsou specifickým pípravkem, který jsem vynalezla sama pod vesmírným vedením a není mi známo, že by jej kdokoli jiný pede mnou, ani v souasné dob, vytváel

Více

Vyhodnocování úspšnosti

Vyhodnocování úspšnosti Poítaové zpracování pirozeného jazyka Vyhodnocování úspšnosti Daniel Zeman http://ckl.mff.cuni.cz/~zeman/ Úspšnost zpracování PJ Jak ovit, že program funguje správn? 2 ásti: programátorská (nepadá to)

Více

Státnice odborné č. 20

Státnice odborné č. 20 Státnice odborné č. 20 Shlukování dat Shlukování dat. Metoda k-středů, hierarchické (aglomerativní) shlukování, Kohonenova mapa SOM Shlukování dat Shluková analýza je snaha o seskupení objektů do skupin

Více

Konzistentnost. Pro a proti replikaci. Vztah ke škálovatelnosti (1)

Konzistentnost. Pro a proti replikaci. Vztah ke škálovatelnosti (1) Konzistentnost Pednášky z distribuovaných systém Pro a proti replikaci 1. Zvýšení spolehlivosti. 2. Zvýšení výkonnosti. 3. Nutnost zachování škálovatelnosti systému co do potu komponent i geografické rozlehlosti.

Více

SHOPTRONIC SERVIS - ZAKÁZKA

SHOPTRONIC SERVIS - ZAKÁZKA SHOPTRONIC SERVIS - ZAKÁZKA copyright (c) 2005 OMEGA s.r.o., Liberec Zakázky Pomocí této volby máte možnost sledovat jednotlivé zakázky z hlediska spoteby materiál, sledovat práce podle jednotlivých mechanik

Více

Aditivní barevný model RGB pidává na erné stínítko svtla 3 barev a tak skládá veškeré barvy. Pi použití všech svtel souasn tak vytvoí bílou.

Aditivní barevný model RGB pidává na erné stínítko svtla 3 barev a tak skládá veškeré barvy. Pi použití všech svtel souasn tak vytvoí bílou. Model CMYK V praxi se nejastji používají 4 barvy inkoust a sice CMYK (Cyan Azurová, Magenta Purpurová, Yellow - Žlutá a Black - erná). ist teoreticky by staily inkousty ti (Cyan, Magenta a Yellow) ale

Více

Sbírka zahrnuje základní autory, výbr nejdležitjších prací a spektrum názor Dsledn udržována

Sbírka zahrnuje základní autory, výbr nejdležitjších prací a spektrum názor Dsledn udržována METODA KONSPEKTU Základní informace Kódy úrovn fond Kódy jazyk Indikátory ochrany fondu Základní informace Umožuje souborný popis (charakteristiku) fondu urité knihovny (skupiny knihoven) bez podrobných

Více

seminá pro školský management jaro 2010

seminá pro školský management jaro 2010 Manažerské dovednosti v práci editele školy seminá pro školský management jaro 2010 1. Stanovení osobní vize koncepce je jasná, konkrétní, psobivá a aktivující pedstava budoucího asu, dosažených výsledk,

Více

Finanní vzdlanost. Fakta na dosah. eská bankovní asociace. Executive Summary. 6. bezna 2006. Metodika Hlavní zjištní Závrená doporuení

Finanní vzdlanost. Fakta na dosah. eská bankovní asociace. Executive Summary. 6. bezna 2006. Metodika Hlavní zjištní Závrená doporuení Finanní vzdlanost eská bankovní asociace 6. bezna 2006 Executive Summary Metodika Hlavní zjištní Závrená doporuení Fakta na dosah 1 Metodika Výzkum byl realizován formou osobních ízených rozhovor. Dotazování

Více

1. Signatura datového typu

1. Signatura datového typu 1. Signatura datového typu a) popisuje vlastnosti operací datového typu b) popisuje sémantiku datového typu c) popisuje jména druh a operací a druhy argument a výsledku d) je grafickým vyjádením implementace

Více

Atom a molekula - maturitní otázka z chemie

Atom a molekula - maturitní otázka z chemie Atom a molekula - maturitní otázka z chemie by jx.mail@centrum.cz - Pond?lí, Únor 09, 2015 http://biologie-chemie.cz/atom-a-molekula-maturitni-otazka-z-chemie/ Otázka: Atom a molekula P?edm?t: Chemie P?idal(a):

Více

Krevní. Tlak. Vzduchu Slovníek. Úvodní strana. Práce. Myšlenková mapa. Odkazy. Pozadí. Obrázky. Pokus. Vtip. Midla tlaku Mt.Everest.

Krevní. Tlak. Vzduchu Slovníek. Úvodní strana. Práce. Myšlenková mapa. Odkazy. Pozadí. Obrázky. Pokus. Vtip. Midla tlaku Mt.Everest. Krevní Vzduchu Slovníek Tlak Myšlenková mapa Úvodní strana Odkazy Práce Obrázky Pozadí Vtip Pokus Papiák Midla tlaku Mt.Everest Barometr Barograf metr Aneroid Co to je? To je pístroj, který mí tlak vzduchu.

Více

Tabulkový procesor Excel

Tabulkový procesor Excel Tabulkový procesor Excel Excel 1 SIPVZ-modul-P0 OBSAH OBSAH...2 ZÁKLADNÍ POJMY...4 K EMU JE EXCEL... 4 UKÁZKA TABULKOVÉHO DOKUMENTU... 5 PRACOVNÍ PLOCHA... 6 OPERACE SE SOUBOREM...7 OTEVENÍ EXISTUJÍCÍHO

Více

Pokyn k žádostem o dotaci na opravy staveb a investiní projekty v roce 2008

Pokyn k žádostem o dotaci na opravy staveb a investiní projekty v roce 2008 Junák svaz skaut a skautek R Pokyn k žádostem o dotaci na opravy staveb a investiní projekty v roce 2008 1. Úvodní ustanovení (1) V návaznosti na Programy státní podpory práce s dtmi a mládeží pro NNO

Více