Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

VYHLEDÁVÁNÍ V XML Milan Plachý. Obsah 1. Strukturovaná data 2. NEXI 3. Indexace 4. Vektorový model 5. Výpočty relevance 6. INEX 7. Text centrické vs.

Podobné prezentace


Prezentace na téma: "VYHLEDÁVÁNÍ V XML Milan Plachý. Obsah 1. Strukturovaná data 2. NEXI 3. Indexace 4. Vektorový model 5. Výpočty relevance 6. INEX 7. Text centrické vs."— Transkript prezentace:

1 VYHLEDÁVÁNÍ V XML Milan Plachý

2 Obsah 1. Strukturovaná data 2. NEXI 3. Indexace 4. Vektorový model 5. Výpočty relevance 6. INEX 7. Text centrické vs. Data centrické dokumenty

3 Relační databáze vs XML  Relační databáze jsou schopny zvládat poměrně složité dotazy  SELECT jméno FROM lidé WHERE zaměstnání LIKE ‘zahr%’  Strukturované dokumenty mají odlišnou strukturu a proto je nutné dotazovat se jinak  Vyhledávání ve strukturovaném textu se nazývá structured retrieval

4 Vyhledávání ve strukturovaných textech (structured retrieval)  Data jsou strukturována a korektně označkována  Základní dvě kritéria na vyhledávání  Textová  Strukturální  Příklad klasických dotazů  Chci získat jména všech patentů, které přihlásil kdokoliv s příjmením Kukačka

5 Vyhledávání v XML (structured/semistructured retrieval)  Pohled na XML jako na strom, kde vrcholy odpovídají elementům  Každý element může obsahovat jeden a více atributů  Listy obsahují text elementu, který je jejich otcem  Vnitřní vrcholy kódují strukturu nebo jsou funkcemi metadat  Standard pro přístup a zpracování dokumentů – XML DOM (Document object model) – reprezentace XML stromu  Při vyhledávání se začíná od kořene a postupuje se logicky dále

6 Příklad XML a jeho reprezentace Shakespeare Macbeth Macbethův hrad Budu vínem připíjeti

7 Příklad XML a jeho reprezentace Text Budu vínem... Kořenový element hra Text Macbeth Element název Element akt Element autor Element Shakespeare Element scéna Element verš Atribut číslo = “I“ Atribut číslo = “vii“ Element název Text Macbethův hrad

8 XPath  Standard pro výpočet cest stromem  Silný, pro potřeby vyhledávání potřebná pouze část  Opakování  Zadání výrazu vyhledá všechny vrcholy se zadaným jménem  / odděluje následující vrcholy  // libovolný počet vrcholů mezi oddělenými  # oddělovač od listu (název#Macbeth)

9 Schémata  Popis struktury strukturovaného dokumentu  Pravidla a omezení  Základní dvojice  XML DTD  XML Schema  Pro zadávání dotazů je nutná znalost dokumentů popisujících schéma dokumentu, ve kterém vyhledáváme

10 NEXI (Narrowed extended XPath I)  Běžný formát pro XML dotazy //článek [.//rok = 2001 or.//rok = 2002] //sekce [about(.,letní prázdniny)] Příklad Pro přehlednost rozdělen na řádky článek sekce prázdninyletní

11 NEXI  // mají stejný význam jako v XPath  Hledáme sekce knih (libovolný počet elementů mezi knihou a sekcí) . se odkazuje na klauzuli, kterou modifikuje  Atribut rok je vztahový atribut  Vyhledává se pouze v článcích z roků 2001 nebo 2002  Klauzule about je hodnotící, hodnotí se, jak je část relevantní vůči slovům letní prázdniny

12 NEXI  Vztahový atribut jednoduše vyřadí všechny neodpovídající možnosti  Prefiltering  Postfiltering  Odstraněním vztahových atributů získáme strom s jednotnou strukturou  Odpadnou atributové vrcholy stromu  Na stejném principu se dají stavět dotazy

13 Problémy  Vyhledáváme ve strukturovaném textu za použití strukturovaného/nestrukturovaného dotazu  Jak rozpoznat, zda uživatel chce pouze konkrétní část textu nebo text celý  Dotazem na scénu v Macbethově hradu bude chtít uživatel pravděpodobně pouze tuto scénu  Kdyby chtěl například hry, kde se vyskytuje Macbeth, pravděpodobně chce celou hru  Kritérium výběru nejvhodnější části – PRINCIP ZÍSKÁVÁNÍ STRUKTUROVANÉHO DOKUMENTU

14 Princip získání strukturovaného dokumentu  Systém by měl vždy vracet nejvíce specifickou část dokumentu  Nejmenší odpovídající část  Problém, co když vyhledáváme pouze název#Macbeth  Nalezeno v názvu knihy  Nalezeno v názvu scény  Rozhodování, který vrchol je v pořádku je problematické (především algoritmicky)

15 Indexování  Paralelní problém vůči výběru správné části  Jakou část dokumentu indexovat?  U nestrukturovaných dokumentů je jednoduché rozpoznat o co se jedná, u strukturovaných problém  Možný přístup – seskupení vrcholů do nepřekrývajících se pseudodokumentů  Může být nevýhodné pro uživatele, protože v pseudoelementu jsou spojeny zdánlivě nesmyslné množiny elementů

16 Pseudodokumenty - příklad Kniha Autor Název Typ = “Dobrodružný“ Brown D. Ztracený symbol Kapitola

17 Indexování  Další možností je použít velký element jako indexovací jednotku  Např. Kniha v kolekci knih  Poté pro každou knihu budeme hledat podelement s nejlepší shodou  Často neužitečné, relevance knihy nedává dobrý popis relevance jejich částí  Tomuto přístupu se říká odshora dolů (top down)

18 Další přístupy  Odsdola nahoru (bottom up)  Od listů nahoru  Opačný problém než u top down  Relevance listů nemusí být dobrý prediktor pro relevanci nadřazených elementů  Kompletní indexace  Indexování všech elementů  Vysoký stupeň redundance

19 Kompletní indexace  Nutnost vybrat užitečné elementy a ty oindexovat, ostatní ne  Různé techniky  Vyhození všech malých elementů  Vyhození všech elementů, na které se uživatel neptá (nutnost logování a upravení po určité době)  Vyhození všech elementů, které nejsou relevantní podle nějakého pravidla (pokud máme pravidla)  Ponechání pouze typů elementů, které byly vybrány správcem (knihovník,...)

20 Kompletní indexace  I s použitím pravidel dochází často k velké redundanci  Problém s hnízděnými elementy  Uživatel nezná strukturu dokumentu  Možnost zpracování postprocessingem  Složení několika hnízděných elementů a jejich označení (highlighting)  Zaměření pozornosti uživatele na označenou část  Daná část je prezentována i s jejím kontextem

21 Rozlišování kontextů  Potřeba rozlišit různé kontexty termu  Např. z důvodu statistiky nebo výpočtu relevance  Výpočet idf  Pokud by se autor knihy jmenoval Zelí, pak nemá toto slovo vztah k výrazům v samotné knize  Možné řešení počítání idf pro každý pár kontext/term  Autor#“Zelí“ Text#“Zelí“  Velká část dvojic bude mít malou hodnotu df

22 Rozlišování kontextů  Další řešení je brát v potaz pouze otce termu a ne jeho další předky  Stále problémy, nejsou rozlišeny například jména firem a jména zaměstnanců, protože rodičovský element je jméno

23 Rozdílnost schémat  Schema heterogeneity/schema diversity  Více schémat se vyskytuje v kolekci  Shodné elementy mají různá pojmenování (autor/tvůrce)  Různá struktura celku  Možnost použití automatického/poloautomatického porovnávání

24 UI a rozšiřování dotazu  Řešení problému neznalosti názvů elementů  Ideálně: zobrazená struktura dokumentu pomocí stromu  Výběr konkrétních elementů uživatelem skrze interface  Zobrazení vazeb rodič-potomek  Rozšíření pro libovolný počet vrcholů mezi elementem a předkem

25 Rozšiřování dotazu  Viz příklad s letními prázdninami  Není nutné definovat přesnou cestu v dotazu  Nezájem/neznalost  Je velký rozdíl Kapitola Název Kapitola FFT

26 Vektorový model pro vyhledávání v XML  V následujícím případě budeme chtít, aby kniha se jménem Ceasar měla větší váhu než kniha, jíž je autorem  V nestrukturovaném textu – 1-dimensionální vektorový prostor Kniha Název Autor Ceasar Galské

27 Vektorový model  Možnost kódovat slovo společně s pozicí v XML stromě  Každý list je rozdělen na jednotlivá slova – nové listy  Vytvoření všech podstromů zakončených termem  Slovníkové podstromy  Poté možnost klasického vyhledávání ve vektorovém prostoru

28 Vytvoření slovníkových podstromů Kniha Název Microsoft Autor GatesBill Microsoft Název Microsoft Kniha Název Microsoft Bill Autor Bill Autor GatesBill Kniha

29 Dimensionalita  Dimense vyvažuje na druhé straně přesnost a množství nalezených dokumentů  Pokud nepovolíme dimenze – klasické vyhledávání – velký počet nalezených dokumentů s malou přesností  Gates nebyl myšlen jako autor článku atd.  Na druhou stranu při vytvoření všech podstromů jako dimenzí – zabrání velkého prostoru  Řešení – indexace všech cest, které končí v jednoduchém termu – Strukturovaný term

30 Strukturované termy  Značení : ( )  V příkladě s Gatesem chybí např: /Book/Author#“Bill“  Podstrom s listy Bill a Gates není strukturovaný term  Používá se pseudo-XPath notace

31 1+|cq| 1+|cd| Výpočet podobnosti  Protože uživatel nezná strukturu textu, je nutné spočítat podobnosti různých cest  CR...podobnost kontextu (context resemblance)  cq...dotaz, cd...dokument,|cq|/|cd|...počet vrcholů dotazu/dokumentu CR(cq,cd)=

32 SMN(q,d) = Σ Σ CR(c k,c l ) Σ weight(q,t,c k ) c k ϵ B c l ϵ B t ϵ V Weight(d,t,c l ) Σ weight^2(d,t,c) c ϵ B,t ϵ V Výpočet podobnosti  Výpočet relevance dokumentu jako celku  Cosinová míra pomocí fce SimNoMerge(SNM) V...slovník nestrukturovaných termů B...množina XML kontextů weight(q,t,c)...váha(hodnocení termu t v dotazu q a kontextu c

33 Výpočet podobnosti  Hodnoty weight se dá počítat klasicky jako IDF nebo DF  SNM není klasická kosinová míra, hodnoty větší než 1  Možnost normalizace

34 SNM - příklad ...strukturovaný term ...získané strukturované termy se shodným termem dotaz CR(c 1,c 1 ) = 1 CR(c 1,c 2 ) = 0 CR(c 1,c 3 ) = 0,63

35 SNM - příklad  Řádek odpovídající podobnosti c 1,c 2 bude ignorován  Dokument s nejvyšší podobností bude d 9  (1 * 0,2) + (0,63 * 0,6) = 0,578

36 SimMerge(SM)  SNM dělá pro separované kontexty zvlášť výpočty  SM počítá statistiky pro všechny spočtení weight(q,t,c) a weight(d,t,c) ze všech kontextů (kromě těch s nulovou podobností  Modifikace rovnice, spojení termů se strukturou odpovídající dotazu  Hra/jméno  Hra/akt/scéna/jméno  Často lepší než SNM /hra/jméno#’Macbeth’

37 INEX  Vyhodnocení vyhledávání v XML  Základní oblast vyhodnocování XML vyhledávání  INitiative for the Evaluation of XML retrieval  Odkazy na kolekce  Množiny dotazů  Posouzení relevance výsledků  Relevance dokumentů je následně posuzovány lidmi

38 INEX historie  2002  Především prezentace výsledků dotazování  Zhruba článků z IEEE žurnálů, 494 MB  1532 uzlů na dokument, průměrná hloubka uzlu - 7  2005  Rozšíření kolekcí  2006  Více článků než wikipedia(en)

39 Zjednodušené schéma INEX dokumentu článek tělo názevodstavec sekce Úvod... Tato práce... základní údaje název žurnálu název článku...

40 INEX – typy informací  2 základní typy informací  CO topics  CAS topics  CAS (Content And Structure)  Obsahují klíčová slova a popis struktury  Viz příklad s letními prázdninami  Složitější výpočet relevance  Na INEX 2002 byla přesnost struktury (správná hloubka) a přesnost tématu (konkrétní části) definována jako dvě ortogonální dimenze

41 CAS – přesnost struktury  Vyhodnocení správnosti nalezené struktury  Není příliš hloboko ve stromě nebo naopak příliš vysoko  4 případy  Přesné pokrytí (E) – hledaná informace je v hlavní části komponenty a daná komponenta je smysluplná  Příliš malé (S) – hledaná informace je v hlavní části komponenty, ale komponenta není smysluplná  Příliš velké (L) – hledaná informace je v článku, ale není to hlavní část  Žádné pokrytí (N) – hledaná informace není součástí komponenty

42 CAS – tématická přesnost  Tématická dimenze má podobně jako strukturální 4 úrovně přesnosti  (3) – velmi relevantní  (2) – relevantní  (1) – méně relevantní  (0) – nerelevantní  Teoreticky je možných 16 kombinací obou dimenzí  Některé možnosti nemohou nastat (3N)

43 CAS – kombinace dimenzí  Přiřazení konstant relevance konkrétním kombinacím z obou dimenzí  Značení Q(rel,cov) 1,003E 0,752E,3L 0,501E,2L,2S 0,251S,1L 0,000N

44 CAS  Výpočet relevantních komponent se dá spočítat například jako  Nepočítá se s překrýváním Σ c ϵ B Q(rel(c), cov(c))

45 Text centrické vs. Data centrické XML dotazování  Předchozí text byl věnován text centrickému přístupu  Porovnávání textu v dotazu s textem v dokumentu  Důležitá struktura i text  Větší sílu má text  Adaptace metod z nestrukturovaných dokumentů Dlouhá textová pole Porovnávání na neúplnou shodu Hodnocení výsledků dle relevance  S tím špatně pracuje relační db

46 Data centrické XML dokumenty  Numerické nebo jinak definované netextové údaje  Vyhledává se na přesnou shodu  Př. Najdi zaměstnance, kteří mají tento měsíc stejné příjmy jako minulý  Používá se pro kolekce dat s danou strukturou  Lepší v případech kdy je potřeba join  Lepší v případech kdy je potřeba přetřídit data  Chceme získat text kapitoly, která následuje po...

47 Data centrické XML dokumenty  Různé jazyky pro data centrické dokumenty  Často inspirováno relačními db, nebo jsou přímo jejich rozšířením  XQuery  Velice silný, složitý a robustní  Pokrývá všechny oblasti dotazování v XML  Vytvoření dotazu může být často složité

48 Materiály Introduction to Information Retrieval Online edition (c)2009 Cambridge UP DRAFT! © April 1,2009 Cambridge University 10 XML retrieval Information retrieval systems are often


Stáhnout ppt "VYHLEDÁVÁNÍ V XML Milan Plachý. Obsah 1. Strukturovaná data 2. NEXI 3. Indexace 4. Vektorový model 5. Výpočty relevance 6. INEX 7. Text centrické vs."

Podobné prezentace


Reklamy Google