1 / 84

TopX

TopX. Rene Fischer. TopX. Čo je to TopX? je to nástroj pre získavanie top-k informácií/dát z textových a polo-štruktúrovaných dát Čo je to top-k získavanie dát? ide o získanie k prvkov zo skupiny dát, ktoré najlepšie vyhovujú položenému dotazu. Osnova prednášky. Všeobecne o Top-X

werner
Download Presentation

TopX

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TopX Rene Fischer

  2. TopX • Čo je to TopX? • je to nástroj pre získavanie top-k informácií/dát z textových a polo-štruktúrovaných dát • Čo je to top-k získavanie dát? • ide o získanie k prvkov zo skupiny dát, ktoré najlepšie vyhovujú položenému dotazu TopX

  3. Osnova prednášky • Všeobecne o Top-X • Architektúra Top-X • Interná reprezentácia dotazu • Skóre model • Základné spracovanie dotazu TopX

  4. Výhody TopX • Po získaní daných top-k prvkov, ukončuje ďalšie prehľadávanie • Podpora pre neurčité a nejasné(vague) vyhľadávanie na 2 typoch podmienok dotazu • obsahové • štrukturálne TopX

  5. Pôvod XML dát • Mnoho zdrojov • Často bez schém • Heterogénne štruktúry a anotácie znemožňujú použitie dotazovacích jazykov ako je XPath a XQuery TopX

  6. TopX model podporuje • full-text obsahové podmienky • značka-výraz(tag-term) kombinácie • traverzovacie podmienky pre všetky XPath osi • absolútne • relatívne • Ontologicky založené relácie výrazov(terms) a názvy značiek(tag names) ako podobnostné podmienky TopX

  7. Typický príklad • //book[about(., Information Retrieval XML) and about(.//reference, PageRank)] //author[about(.//affiliation, Standford)] • v jazyku NEXI • Čo ním vlastne hľadáme? • autorov kníh o „Information Retrieval XML“, ktoré obsahujú následníkov pomenovaných ako „reference“ a „affilation“ s obsahom „PageRank“ a „Standford“ • ľudsky povedané : autorov kníh o získavaní dát z XML, odkazujúcich sa na PageRank, zo Standfordu TopX

  8. Ale... • ...napriek dátam presne vyhovujúcim týmto podmienkam, by to malo prípadne nájsť aj autorov kníh • napr. o „statistical language models for semistructured dat“, ale radené nižšie ako presné zhody • autori nie zo „Standfordu“ ale napr. z „Berkley“ • nie autorov kníh, alebo napríklad monogramov, výskumných článkov ... TopX

  9. Niečo o Top-K algoritmoch • algoritmy, tiež známe ako limitné algoritmy(threshold algorithms) • algoritmus končí po dosiahnutí určitého limitu • spočívajú v prehľadávaní udržiavaných invertovaných indexov zostupne zoradených za výrazmi, hodnotami atribútov • vhodné udržiavanie intervalov skóre a limít pre top-k kandidátov umožňuje prehľadávanie ukončiť po nájdení top-k prvkov, následkom čoho stačí algoritmom často prehľadať iba krátke časti zoznamov TopX

  10. Odbočka - Invertovaný index • indexová dátová štruktúra – mapuje výskyt slov v textoch, dokumente, dokumentoch • 2 typy • pamätajúci si referencie na dokumenty v ktorých sa slovo/výraz nachádza • Record level inverted index • plus pamätajúci si aj jeho pozíciu v rámci dokumentu • vhodné pre full-text vyhľadávanie • Word level inverted index • ( http://en.wikipedia.org/wiki/Inverted_index ) TopX

  11. Record level inverted index "a": {2} "banana": {2} "is": {0, 1, 2} "it": {0, 1, 2} "what": {0, 1} Word level inverted index "a": {(2, 2)} "banana": {(2, 3)} "is": {(0, 1), (0, 4), (1, 1), (2, 1)} "it": {(0, 0), (0, 3), (1, 2), (2, 0)} "what": {(0, 2), (1, 0)} Odbočka 2 - Invertovaný index - príklad texty • T1 = „it is what it is“ • T2 = „what is it“ • T3 = „it is a banana“ TopX

  12. Hlavné problémy riešené TopX • skóre a indexové zoznamy sú robené pre samostatné XML elementy • potreba agregovať skóre na úroveň dokumentu, XML pod-stromu – teda 2 rôzne granuality spracovania dotazu • model pre skóre musí zvažovať aj špecifickosť obsahu výrazu v kombinácií s názvom elementu/atribútu • napr. výraz „transaction“ by mal byť významný v elementoch <section> a <caption> ale nie v <journalname> TopX

  13. Hlavné problémy 2 • relevantné medzivýsledky musia byť testované na spĺňanie traverzovacej podmienky dotazu • čo môže vieš k „drahým“ náhodným prístupom(random access) na disk • miesto vynútenia konjunktívneho vyhodnocovania dotazu, je požadované uvoľniť traverzovacie podmienky • a radiť dokumenty pomocou kombinácie obsahového skóre a počtu splnených traverzovacích podmienok TopX

  14. Hlavné problémy 3 • efektívna stratégia vyhodnocovania dotazu a prerezávanie(prunning) kandidátov musí brať v úvahu odhad oboch • agregovaného skóre • traverzovacie podmienky • možnosť uvoľniť výrazové podmienky, názvy značiek použitím podobnosti založenie na ontológii alebo tezauru. napr : • dotaz na “<book>” o “XML” by mal brať v úvahu„<monograf>“ o “semistructured data” ako kandidáta na výsledok TopX

  15. Hlavné komponenty systému TopX

  16. Hlavné komponenty systému • môžeme ich rozdeliť do 2 hlavných skupín • na vkladanie dát(data-entry) • spracujúce dotaz(query-time) TopX

  17. Hl.komp. – 1. Indexer & Crawler TopX

  18. Hl.komp. – 1. Indexer & Crawler • Indexer • skupina vkladania dát • pri vložení nového dokumentu je dokument • parsovaný • dáta sú analyzované • vytvorenie alebo updatovanie indexových štruktúr • Crawler • ak sa jedná o dáta z webu, intranetu, ..., ktoré sa hyper-linkovo odkazujú, crawler ich môže traverzovať a zbierať dokumenty TopX

  19. Hl.komp. – 2. Ontology Service TopX

  20. Hl.komp. – 2. Ontology Service • Komponenta, ktorá voliteľne spravuje tezaurus alebo „ľahšiu“ ontológiu • s rôznymi druhmi sématnických relácií TopX

  21. Odbočka – Ontológia je • ... výslovný (explicitní) popis určité problematiky. Je to formální a deklarativní reprezentace, která obsahuje glosář (definici pojmů) a tezaurus (definici vztahů mezi jednotlivými pojmy). Ontologie je slovníkem, který slouží k uchovávání a předávání znalosti týkající se určité problematiky. • ( http://cs.wikipedia.org/wiki/Ontologie ) TopX

  22. Hl.komp. - 3. Procesor dotazov TopX

  23. Hl.komp. – 3. Procesor dotazov • pri spracovaní dotazu, procesor • dekomponuje dotaz • vyvolá top-k algoritmus • okrem toho má nastarosti • udržovať medzivýsledky a kandidátov v prioritnej fronte • plánuje sekvenčné náhodné prístupy do pred-počítaného indexového zoznamu – ide o multi-vláknovú architektúru • procesor má k dispozícií viacero komponent(4.-6.), ktoré môžu byť na vyžiadanie zapojené a poskytovať prostriedky pre zmenšenie pracovného času TopX

  24. Hl.komp. – 4. Index Access Scheduler TopX

  25. Hl.komp. – 4. Index Access Scheduler • Plánovač prístupu k indexom • poskytuje množinu plánovacích stratégií pre usporiadaný a náhodný prístup k prvkom indexov. napr. • jednoduché heuristiky, ktoré sú rozumne efektívne s veľmi nízkou réžiou • pokročilé stratégie založené na pravdepodobnostných cenových modeloch, s lepšou redukciou prístupov, ale vyššou réžiou TopX

  26. Hl.komp. – 5. Propabilistic Candidate Prunning TopX

  27. Hl.komp. – 5. Propabilistic Candidate Prunning • Pravdepodobnostné prerezávanie(stromu) kandidátov • založený na matematických modeloch • predpovede skóre kandidátov • odhad výberu v XML elementov • umožňuje to systému odhodiť kandidátov, u ktorých je malá pravdepodobnosť, že by sa dostali do top-k • s kontrolovateľnou garantovanou mierou risku TopX

  28. Hl.komp. – 6. Dynamic Query Expansion TopX

  29. Hl.komp. – 6. Dynamic Query Expansion • Dynamické rozširovanie dotazu • komponenta mapuje kľúčové slová dotazu do konceptov v prístupnom tezaure alebo ontológií a inkrementálne generuje/rozširuje kandidátov • je to prekladané s aktuálnym spracovaním dotazu TopX

  30. Jazyky dotazovania • Podpora 2 typov zápisu dotazov • XPath 2.0 Full-Text • jazyk NEXI • podpora pre XPath.ovske osy • descendant ≡ „//“ • self ≡ „.“ • operátor about • obdoba ftcontains • typický príklad dotazy v NEXI : • //article[//bib[about(.//item, W3C)]] //sec[about(.//title, XML retrieval)] //par[about(., native XML databasese)] TopX

  31. Dátový model • na dáta sa budeme dívať ako na stromový model pre polo-štruktúrované dáta • ignorujú sa • ľubovoľné metadata( <!...>) • odkazy vo forme XLink alebo ID/IDRef atribútov • s atribútmi je zachádzané ako s „deťmi“(priami potomci) príslušného uzlu • textové uzly sú asociované s priamym predchodcom TopX

  32. Pripomenutie príkladu • //article[//bib[about(.//item, W3C)]] //sec[about(.//title, XML retrieval)] //par[about(., native XML databasese)] TopX

  33. Počiatočný tvar stromu/grafu príkladového dotazu TopX

  34. Dotazovací model • cieľový element(target element) • najpravejší, top-level uzlový test na pozíciu na ceste • všetky ostatné uzly označnované ako podporné elementy(support elements) • cieľové elementy dotazu určujú granualitu výsledku • v našom príklade je cieľovým elementom „par“ • „article“, „bib“, „item“, „sec“, „title“ sú podporné elementy TopX

  35. Dotazovací model 2 • použitím osí pre spätný smer, by mohli v grafe dotazu vytvoriť cyklus • TopX je momentálne obmedzený na DAGy • orientované acyklické grafy(Directed Acyclic Graph) TopX

  36. Interná reprezentácia dotazu • Interpreter dotazu • analyzuje dotaz • dekomponuje ho do • navigačných(navigational) podmienok • obsahových podmienok • podmienky potom tvoria uzly DAG grafu • uzly sú spojené tipovanými hranami • ktoré budú predstavovať štrukturálne obmedzenia • každá hrana bude odpovedať nejakej XPath ose TopX

  37. Interná reprezentácia dotazu 2 TopX

  38. Interná reprezentácia dotazu 3 • v našom názorovom príklade teda • výskyt elementov „section“ a „title“ sú navigačné podmienky(teda aj všetky nelistové uzly) • potreba výskytu výrazov „XML“ a „retrieval“ sú obsahové podmienky(teda aj všetky listy) • potreba, aby element „section“ bol spojený s „title“ cez osu nasledovníka(descendant) je štrukturálne obmedzenie(teda aj každá hrana) • po parsovaní, je dotaz interne reprezentovaný ako DAG, takže nezávisle na použitom jazyku TopX

  39. Interná reprezentácia dotazu 4 • Hlavnými stavebnými kameňmi pre spracovanie dotazu sú tzv. značka-výraz páry(tag-term pairs) • vznikajú spojením tokenov z „about“ operátoru s ich rodičmi v dotaze • potrebujeme udržať aj informáciu o tom, že niektoré značka-výraz páry patria k rovnakému elementu, medzi patričné vrcholy sa pridávajú hrany reprezentujúce os „ja“(self) TopX

  40. Interná reprezentácia dotazu 5 TopX

  41. Interná reprezentácia dotazu 6 • Branie v úvahu hrany patriace do tranzitívneho uzáveru doterajšieho grafu • táto úprava je používaná, v prípade, že žiaden kandidát nespĺňa všetky pôvodné štrukturálne podmienky • v takom prípade sa uvoľňujú štrukturálne podmienky pre dosiahnutie aspoň aproximovaných výsledkov TopX

  42. Interná reprezentácia dotazu 7 TopX

  43. Skóre model • Hlavné stavebné bloky • značka-výraz pár – každý získa pred-vypočítané relevantnostné skóre • navigačné podmienky, ktoré nie sú súčasťou značka-výraz páru, prispievajú do agregovaného skóre matchovaného pod-stromu v dokumente statickou skóre hodnotou • ak všetky tranzitivitou vložené štr. podmienky vychádzajúce z daného uzla sú splnené TopX

  44. Skóre model 2 • Môžu nastať prípady, že 1 element splňujúci podmienky dotazu, bude podmienky spĺňať v rámci dokumentu vo viacerých podstromoch • preto pre každý takýto cieľový element vrátime maximum zo skôr všetkých podstromov, v rámci ktorých element spĺňa podmienky • V prípade požadovania výsledku ako celý dokument, obsahujúci element spĺňajúci podmienky, bude dokumentu priradené maximum zo skôr všetkých elementov splňujúcich podmienky TopX

  45. Skóre model 3 • Podpora pre pokročilé vyhľadávacie vlastnosti • ako sú napr. povinné kľúčové slová, negácie, matchovanie fráz v rámci about operátoru • Model je aplikovateľný pre 2 typy interpetácie • konjunktívna – kde každá podmienka musí byť splnená • „andish“ – kde konečné poradie je vyhodnotené pomocou agregácie skóre, kde niektoré podmienky nemusia byť splnené vôbec TopX

  46. Obsahové skóre • Element e spĺňa značka-výraz(tag-term) obsahovú podmienku ak e matchuje meno značky(tag) a podstrom s koreňom e, obsahuje výraz(term) • score(e, A=t) ≡ skóre elementu e s menom A, na obsahovanie výrazu t TopX

  47. Obsahové skóre 2 • occurence = počet výskytov výtazu t v elemente e • specificiy = odvodená z • počet elementov so značkou A v celom(pravdepodobne) dokumente • ako predchádzajúci, ale obsahujúci výraz t • size = zvažuje veľkosť normalizovaného podstromu/elementu(som veľmi nepochopil) TopX

  48. Obsahové skóre 3 • Vzorec pre výpočet skóre je ešte ohýbaný kvôli vyhnutiu sa extrémnym prípadom • Pre about operátor s viac výrazmi pripojenými k elementu e, bude agregované skóre e spočítané ako suma cez skóre elementu každej dvojice značka-term TopX

  49. Štrukturálne skóre • model v podstate ráta počet splnených navigačných podmienok pre kandidátov a to pripája k matchovaním obsahovým podmienkam • pre každú splnenú navigačnú podmienku, ktorá nie je súčasťou značka-výraz páru, priradí malú, konštantnú, nastaviteľnú hodnotu c • každá navigačná podmienka odpovedá presne 1 uzlu v dotazovom DAG grafe • navigačná podmienka je splnená elementom e v dokumente d, ak všetky štrukturálne obmedzenia s tranzitívne rozšírenom grafe splnené • teda hrany vychádzajúce z elemenu e TopX

  50. Štrukturálne skóre 2 TopX

More Related