DOK
NĚCO K IMPLEMENTACI …
Dokumentografické informační systémy IRS musí parcovat s velmi rozsáhlými ale velmi řídkými maticemi
Řídká matice/vektor Obsahuje převážně nuly (nulový prvek) Implementace dvojrozměrným polem je tudíž dost luxus – 100k x 1M double (8B) by bylo 800GB? Mnoho formátů – Časová složitost je cenou za prostorové úspory
Uložení řídké matice Viz wikipedia Dictionary of keys (DOK) – Pro nenulové prvky si pamatuji (row, column)->value List of lists (LIL) – Seznam seznamů Coordinate list (COO) – Trojice (value, row, column) Yale format + varianty
Námět k implementaci Intuitivní formáty/algoritmy – Řídký vektor Uložíme vektor formou (souřadnice,value), jak to efektivně naimplementovat? Vyhledávání/čtení, vkládání – Řídká matice Nějaký popsaný algoritmus Intuitivně – jako pole řídkých vektorů Na začátku quicksort, binary search pro vyhledávání, binarní vkládání do setřízené posloupnosti Cílem je implementace bez pomoci knihoven (STL, Collections etc.) int [] index double [] hodnota131246
OPAKOVÁNÍ Z PŘEDNÁŠEK…
Vyhledávání na Webu On-page informace plus off-page informace – Využití různých ‘chytrých’ algoritmů – Neuronky atd. PageRank (Google) – Pro každý dokument skóre PR HITS – 2 míry, Authority & HUB RankNet (Bing) – Neuronová síť usuzuje z vlastností dokumentů na jejich rank – bing-works.html
HITS Hyperlink Induced Topic Search 2 kategorie dokumentů – Autority (authorities) Je odkazována mnoha dalšími – Huby (hubs) Odkazuje mnoho dalších Předpoklad – Kvalitní huby odkazují kvalitní autority
HITS Vyhledávání – Keyword search – Rozšíří result set o dokumenty, které linkují vyhledané a které jsou odkazovány z vyhledaných (neighborhood graph) – Zredukuje velikost, iterativně spočítá míry – Přeorganizuje dokumenty
PageRank Inspirován bibliometrickými algoritmy Random surfer model – Začne na náhodném dokumentu – Buď klikne na link nebo (s pravděpodobností d) se ‘teleportuje’ na libovolný dokument v kolekci Každému dokumentu přiřazuje PR – ‘PR dokumentu je dán PR dokumentů, které jej odkazují
PageRank Výpočet – Iterativně (na začátku malé náhodné hodnoty, pak několik iterací výpočtu) – NEBO jako eigenvector Google matice G
PageRank
RankNet Založen na neuronových sítích
RankNet Jako každou neuronku museli RN nejdříve naučit – Udělali to dobře? Poté dokumenty řadí