1 Metavyhledávací stroj Jak vybudovat efektivní a výkonný Metavyhledávací stroj
2 Metavyhledávací stroj Co to je? Kde se používá? Jak funguje? Proč ho vůbec vytvářet?
3 Příklad Vyhledávač 1Vyhledávač 2Vyhledávač 3 Globální rozhraní
4 Ideální stroj Podmínky –Najde všechny relevantní dokumenty s co nejmenšími náklady –Seřadí všechny nalezené dokumenty podle užitečnosti pro uživatele V podstatě ale nelze udělat –Nevíme, co je pro uživatele užitečné Každý člověk se vyjadřuje jinak Ten samý člověk může chtít něco jiného v různou dobu
5 Užitečný dokument Podobnostní funkce –Určuje podobnost dokumentu a daného dotazu. Potenciálně užitečný dokument a)Je mezi n dotazu nejpodobnějšími dokumenty. b)Jeho podobnost dotazu je větší než zadaný práh. Obě podmínky jsou ekvivalentní.
6 Co budeme potřebovat… Výběrčí databáze –Vybere ty databáze, ve kterých jsou nějaké potenciálně užitečné dokumenty Výběrčí dokumentu –Z výsledků jednotlivých databází vybere ty správné dokumenty. Slučovač výsledků –Z částečných výsledků vrácených výběrčím dokumentu vybere n nejlepších.
7 Možné problémy Výběr se řídí podobnostními funkcemi Lokální vyhledávače jsou nezávislé Lokální vyhledávače jsou heterogenní –Indexační metoda, ohodnocování termů, podobnostní funkce, databáze, dokumenty Globální rozhraní a lokální vyhledávače jsou heterogenní
8 Co budeme potřebovat… Výběrčí databáze –Vybere ty databáze, ve kterých jsou nějaké potenciálně užitečné dokumenty Výběrčí dokumentu –Z výsledků jednotlivých databází vybere ty správné dokumenty. Slučovač výsledků –Z částečných výsledků vrácených výběrčím dokumentu vybere n nejlepších.
9 Výběr databází pro hledání Možné přístupy výběru –Naivní –Hrubý –Jakostní –Množstevní –Výběr založený na učení se
10 Naivní výběr Neprovádí žádnou selekci Dotaz se hledá ve všech databázích Výhody –Žádná data ani počítání navíc Nevýhody –Prohledávají se i databáze, kde se nic nenalezne
11 Výběr databází pro hledání Možné přístupy výběru –Naivní –Hrubý –Jakostní –Množstevní –Výběr založený na učení se
12 Hrubý přístup Výběrčí má informace o každé databázi –V textové formě daného formátu –Většinou psáno člověkem Výběrčí porovná podobnost uživatelova dotazu a informace o databázi Při určité shodě ji vybere pro dotaz, jinak zahodí
13 Výhody hrubého přístupu Malý objem redundantních dat Lehká rozšiřitelnost Informace se lehce získávají a udržují Čísla se lehce spočítají
14 Nevýhody hrubého přístupu Výsledné skóre databáze není samovysvětlující Nepřesnost ve výběru databáze –Nepočítá se, kolik je termů v dokumentu –Nepočítá se počet relevantních dokumentů v databázi
15 Výběr databází pro hledání Možné přístupy výběru –Naivní –Hrubý –Jakostní –Množstevní –Výběr založený na učení se
16 Jakostní přístup Značení –q = (t 1,..,t M ) značí dotaz na termy t 1,..,t M Jakostní přístup počítá vhodnost každé databáze vzhledem k dotazu q –Většinou je vhodnost vyjádřena jedním číslem –Seřadí databáze podle vhodnosti vzhledem k danému dotazu
17 D-WISE Metavyhledávač si pamatuje jedno číslo ke každé databázi Počítá s df ij –Počet dokumentů v databázi i, které obsahují term j U každé databáze i si pamatuji CV ij každého termu j
18 D-WISE CVV j je roztyl Cv ij r i je výsledné ohodnocení databáze i výběrčím databáze (M je počet termů v dotazu q) Čím větší r i, tím lepší dokumenty v databázi jsou CV ij vyjadřuje, jak moc odlišuje j-tý term databázi i od ostatních.
19 Výhody a nevýhody D-WISE Výhody –Málo místa potřebného navíc –Lehká škálovatelnost, jednoduché počítání Nevýhody –r i je těžko srozumitelné pro laika –Neberou se v úvahu frekvence termu v rámci dokumentu
20 CORI net Také používá df ij Přidává inverzní databázovou frekvenci –1/počet databází obsahující term j Počítá se nakonec s oběmi veličinami Zabírá dvakrát více místa než D-WISE Stejná metoda se dá použít ke spočítání užitečnosti dokumentu
21 gGlOSS Ke každé databázi si výběrčí pamatuje dvojici (df i,W i ) df i je počet dokumentů obsahující i-tý term W i součet vah i-tého termu ve všech dokumentech dané databáze Ke každému termu t i dotazu q je dána jeho váha q i Uživatel zadá práh T určující mezní podobnost Užitečnost databáze je součet podobností dokumentů, jež překročily mezní podobnost T gGlOSS používá dva přístupy, založené na rozdílných předpokladech
22 gGlOSS – předpoklad vysoké souvztažnosti Předpoklad –Pro každou databázi platí, že pokud term t j se vyskytuje alespoň v tolika dokumentech jako term t k, pak každý dokument obsahující t k obsahuje i t j Počet dokumentů s podobností je df 1 Obecně je df j – df j-1 dokumentů s podobností
23 gGlOSS – předpoklad vysoké souvztažnosti Nalezneme číslo p takové, že a) b) Výsledná vhodnost databáze je Což se rovná
24 gGlOSS – předpoklad nezávislosti Předpoklad –Pro každou databázi platí, že každý dokument obsahuje nejvýše jeden term t j z dotazu q Pak je vhodnost databáze
25 gGlOSS Problémy –Předpoklad vysoké souvztažnosti nadhodnocuje databázi –Předpoklad nezávislosti podhodnocuje databázi Řešení –Často se oba přístupy kombinují Dostaneme tím odhad shora a zdola
26 Výběr databází pro hledání Možné přístupy výběru –Naivní –Hrubý –Jakostní –Množstevní –Výběr založený na učení se
27 Množstevní přístup Jakostní přístup –Která databáze je nejvhodnější pro daný dotaz Množstevní přístup –Jak moc je která databáze vhodná pro dotaz –Nejlépe kolik se v které databázi nalézá relevantních dokumentů Budeme potřebovat informace o jednotlivých dokumentech
28 Množstevní přístup - BIM Binary independet model –Víme dokumentové frekvence termů –Víme pravděpodobnosti výskytu termů –U X s je pravděpodobnost, že nějaký dokument má podobnost s s dotazem q –Sečteme tedy všechny koeficienty u X s, pro s>T Součet*N je počet užitečných dokumentů v databázi
29 Množstevní přístup - BDM Binary dependent model –Stále binární model –Pamatujeme si ale i závislosti mezi termy Dvojice, trojice,…, n-tice termů –Náročné na místo Máme uloženy pouze významné závislosti
30 Výběr databází pro hledání Možné přístupy výběru –Naivní –Hrubý –Jakostní –Množstevní –Výběr založený na učení se
31 Výběr založený na učení se Myšlenka –Výběrčí si pro každou databázi zapamatuje dobré dokumenty vrátila na daný dotaz Pro každou databázi mám vektor (w 1,..,w n ) w i je míra zastoupenosti termu i v databázi –tzn. kolik je tam dokumentů obsahujících term i
32 Výběr založený na učení se S q,e – jak moc je databáze dobrá na dotaz q I t i – inverzní frekvence termu t i p h – potrestání za málo dokumentů p r - potrestání za dlouhý čas odezvy
33 Výběr založený na učení se Myšlenka –Váhu w i každého termu t i použitého v dotazu q změním Zmenším, pokud jsem nic nenašel Zvětším, pokud jsem něco našel –Změním o 1/k (k je počet termů v dotazu)
34 Výhody a nevýhody výběru založeném na učení se Málo dat navíc – w i a I i Střední úsilí na obnovu informace Není moc přesná Všechny termy v dotazu penalizovány/odměněny stejně Nefunguje dobře ze začátku a pro termy, které nebyly mnohokrát použity
35 Srovnání přístupů Přesnost Škálovatelnost Udržovatelnost
36 Přesnost Jak dobře odhaduje použitelnost dané databáze –Naivní –Hrubý Lepší než naivní –Jakostní D-WISE,gGlOSS,CORI net –Množstevní –Založený na učení se
37 Škálovatelnost Záleží na množství uložených dat –Naivní –Hrubý –Jakostní D-WISE – m, gGlOSS, CORI net – 2m –Množstevní –Založený na učení se 2cm
38 Udržovatelnost Jak snadno se informace shromažďují a udržují –Naivní –Hrubý –Jakostní –Množstevní –Založený na učení se
39 Co budeme potřebovat… Výběrčí databáze –Vybere ty databáze, ve kterých jsou nějaké potenciálně užitečné dokumenty Výběrčí dokumentů –Z výsledků jednotlivých databází vybere ty správné dokumenty. Slučovač výsledků –Z částečných výsledků vrácených výběrčím dokumentu vybere n nejlepších.
40 Výběrčí dokumentů Pro každou databázi vybere správný počet relevantních záznamů Relevantních = podle globální podobnostní funkce Správný počet je zadán uživatelem
41 Možné přístupy výběrčího dokumentů Místní rozhodnutí Uživatelovo rozhodnutí Vážená alokace Přístupy založené na učení se Zaručený výběr
42 Místní rozhodnutí Místní systémy určí, kolik dokumentů vrátit Problém –Nevíme, kolik to bude Můžeme dostat tisíce dokumentů
43 Uživatelovo rozhodnutí Uživatel rozhodne, kolik dokumentů chce z které databáze vybrat –Když nerozhodne, vezme se předvolená hodnota Problémy –Při velkém počtu databází může být pro uživatele otravné –Při nezadání se vybírají nezajímavé a zahazují zajímavé dokumenty
44 Vážená alokace Každá databáze je označena číslem, jak dobře je dotaz databází pokryt Číslo může být –Stejné jako u jakostního přístupu –Stejné jako u množstevního přístupu –Počet dokumentů s podobností větší než daná mez –…
45 Vážená alokace v D-WISE Použijí se ohodnocení databáze r i Chceme celkem n dokumentů z N databází Z i-té vybereme
46 Vážená alokace v CORI net Chceme opět n dokumentů z N databází Máme seřazené databáze podle užitečnosti Z i-té databáze vybereme
47 Přístupy založené na učení se Používá trénovací dotazy První možnost –Každé databázi je přiřazen vektor –r i – minimální počet dokumentů k vybrání, aby v nich bylo i relevantních Druhá možnost –Shlukneme podobné dotazy a spočítáme centroid shluku Ke každé databázi a shluk i si pamatujeme w i – počet relevantních dokumentů mezi T nejvýše ohodnocenými –Dotaz umístíme do nejpodobnějšího shluku –Z i-té databáze vybereme dokumentů
48 Zaručený výběr G – globální podobnostní funkce L – lokální podobnostní funkce Chceme zjistit práh T’, aby když G(q,d)>T platilo, že L(q,d)>T’ První krok –Seřadíme databáze podle G(q,d), kde d je nejvýše postavený dokument ve výsledku dané databáze
49 Zaručený výběr Druhý krok –a) Z s nejlepších databází vyber nejlepší dokumenty –b) Spočti o=min G(q,d) pro tyto dokumenty –c) Vyber všechny dokumenty, jejichž G(q,d) je větší než o –d) Máš-li víc než n dokumentů, pak skonči –e) Podívej se na nejlepší dokument s+1-ní databáze. o=min (o,G(q,d)) –f) Běž na krok c)
50 Zaručený výběr Lze dokázat, že tento postup vydá n nejlépe dotazu odpovídajících dokumentů
51 Co budeme potřebovat… Výběrčí databáze –Vybere ty databáze, ve kterých jsou nějaké potenciálně užitečné dokumenty Výběrčí dokumentu –Z výsledků jednotlivých databází vybere ty správné dokumenty. Slučovač výsledků –Z částečných výsledků vrácených výběrčím dokumentu vybere n nejlepších.
52 Slučovač výsledků Jak sloučit výsledky různých databází do jednoho konzistentního výstupu? Problémy –Lokální určení vhodnosti –Různá indexace (výtahy, celé dokumenty) –Ořezávání slov na jejich kořeny –Inverzní frekvence termů
53 Metody řešení Normalizace podobností –Normalizuje různé podobnosti na jeden fixní rozsah Upravení podobností –Upraví lokální podobnosti na základě dalších informací Odhadnutí podobností –Odhadne globální podobnost vrácených dokumentů
54 Normalizace podobností Problém –Lokální podobnosti mohou mít různý rozsah –(0,1), [1,1000],… Řešení –Převedu na horní mez rozsahu nejlepší dokument a určím koeficient k –Přenásobím koeficientem k všechny L(q,d) zbylých dokumentů
55 Upravení pravděpodobností Upraví lokální podobnosti na základě ohodnocení vhodnosti databáze Spočteme váhu databáze –Někdy již už máme spočtenou Např. u kvalitativního a kvantitativního přístupu Lokální podobnost se zohlední vůči váze databáze
56 Odhadnutí podobností První metoda – přinesení dokumentů –Stáhnu celé dokumenty z databáze –Spočtu frekvence termů –Vyber n nejlepších Problémy –Pomalé Můžu je ale stahovat paralelně z jednotlivých databází Lze tolerovat u malých dokumentů
57 Odhadnutí podobností Druhá metoda – získání znalostí –Musíme znát lokální podobnostní funkci –Přídavnými dotazy zjistíme další údaje Např. pokud je lokální fce lze pomocí dotazů na jednotlivé q i získat váhy termů v databázi. Nevýhody –Musíme znát lokální funkci
58 Slučovač výsledků Porovnání –Normalizace podobností Snadné na implementování Nejsou potřeba žádné další informace Pouze heuristika –Upravení pravděpodobností Snadné na implementování Nejsou potřeba žádné další informace Pouze heuristika –Odhadnutí podobností Přesnější Ale dražší, nelze použít vždy…
59 Závěr Pro Metavyhledávací stroj potřebujeme tři komponenty –Výběrčí databází, Výběrčí dokumentů a Slučovač výsledků Každou z nich lze položit na jiné myšlence Je ještě spousta problémů a aspektů ke zdokonalení a výzkumu