Transcript Document
WUT TWG 2006 WEDT Wyszukiwanie informacji Wykład 7 Piotr Gawrysiak [email protected] 2006 Wyszukiwanie informacji IR – information retrieval IR to przypadek szczególny klasyfikacji, w której mamy do czynienia jedynie z dwoma klasami dokumentów Dwa podejścia • dokładne (exact match) – w większości wypadków związane z zastosowaniem jakiegoś języka wyszukiwania (czy tez raczej języka specyfikacji zapytań – query language) • rozmyte (fuzzy) – wykorzystuje metody statystyczne do oceny odpowiedniości dokumentu do zapytania • główny problem – konstruowanie zapytania Obecnie najważniejsze repozytorium w którym dokonuje się wyszukiwania to sieć WWW • Trudności (oba wynikają z rozmiaru repozytorium) • zapewnienie wysokiej relewancji odpowiedzi • zapewnienie wysokiej kompletności odpowiedzi • przedstawienie wyniku w zrozumiały i efektywny sposób WUT TWG 2006 Indeksowanie sieci WWW 1999 - Scooter (AltaVista) : 1.5GB RAM, 30GB disk, 4x533 MHz Alpha, 1GB/s I/O (crawler) – 1 miesiąc na pełny „recrawl” 2000 - ~40% zasobów WWW w indeksach wyszukiwarek (reszta – „grey” web) 2005 – Google posiada około 100000 serwerów przechowujących zawartość indeksu wyszukiwarki i lokalne kopie stron WWW, liczba datacenters - >100 (~60 w USA) WUT TWG 2006 Pokrycie sieci przez indeksy WUT TWG 2006 A = cała sieć WWW w zasięgu wyszukiwarki #1 i #2 B = indeks wyszukiwarki #1 C = indeks wyszukiwarki #2 n – liczba elementów w A, nieznana m – liczba elementów w B, znana o – liczba elementów w C, znana p – liczba elementów w B C, nieznana ale może być estymowana poprzez zadawanie tych samych zapytań do #1 i #2 Zakładamy iż zbiory B i C są tworzone losowo. Wtedy prawdopodobieństwo wybrania strony oi należącej do B jest: P(oiB) = m/n. Zatem wśród o elementów ze zbioru C powinno być o* P(oi B) elementów należących do B, zatem p= o* P(oi B), and n = (m*o)/p BC Nie musimy także znać dokładnie jednocześnie m i o – dla dużej liczby zapytań stosunek m i o powinien odpowiadać stosunkowi wielkości odpowiedzi. Proste podejścia do IR Wyszukiwanie dokładne wymaga indeksu pojęć, których można użyć w zapytaniu Najbardziej popularna metoda – zbiory odwrócone (inverted files) a b c d ... z • • • • Bardzo szybkie Bardzo łatwo przy użyciu zbiorów odwróconych przetwarzać zapytania boolowskie Stosunkowo proste w implementacji Dostępne „standardowe” implementacje - Lucene WUT TWG 2006 WUT TWG Fuzzy search • • • • 2006 Poszczególne dokumenty reprezentowane są jako wektory w przestrzeni atrybutów (słów, n-gramów itd.) Zapytania reprezentowane są także jako wektory w tej przestrzeni, potrzebne jest zatem mapowanie zapytanie – wektor Dzięki temu zapytanie może być zbiorem słów kluczowych, ale także dokumentem albo nawet zbiorem dokumentów Wynik to dokumenty najbliższe wektorowi zapytania (potrzebna zatem k metryka) – np. sim(D i , Q) cos(Di , Q) Wyjściowe zapytanie Repozytorium IR d q il l l 1 k ql l 1 Output Selekcja 2 k dil 2 l 1 Output Proces ten może być powtarzany – relevance feedback – dzięki możliwości stworzenia zapytania na podstawie zbioru dokumentów Struktura sieci WWW • • • • Dzięki klasycznym metodom wyszukiwania zwykle otrzymamy interesujące nas dokumenty – pod warunkiem, że indeks wyszukiwarki jest kompletny Problem jaki najczęściej występuje, to zbyt duża liczba otrzymanych dokumentów (niska wartość wskaźnika precyzji) Zwiększenie jakości odpowiedzi wymagałoby dokładniejszej analizy treści dokumentów Można także wykorzystać informację nietekstową, zawartą w WWW • sieć hiperpołączeń pomiędzy stronami (zakładamy, że ktoś już za nas wykonał analizę zawartości stron, jej wynik zawarty jest w grafie hiperpołączeń) • odwiedziny stron przez użytkowników (szczególnie – użytkowników wyszukiwarki) • sieć WWW nie jest grafem przypadkowym (random graph) • analiza grafu WWW pokazuje, iż (podobnie jak to ma miejsce z rozkładem występowania słów) można go modelować przez prawa potęgowe • dalsza analiza pokazuje iż ma on wiele wspólnego z innymi modelami sieciowymi – społecznymi (six degrees of separation), rozprzestrzeniania się chorób itp. Albert Laszlo-Barabasi, „Linked: How Everything Is Connected to Everything Else and What It Means” WUT TWG 2006 WUT TWG Struktura sieci WWW 2006 Niektóre podgrafy WWW wykazują interesującą strukturę – np. tzw. bipartite cores Odnajdywanie takich struktur może być pożyteczne – wydaje się jednak niemożliwe... Bipartite core C4,3 4 Fans 3 Centres •350 milionów stron w WWW (Chakrabarti 1999) • wzrost na początku XXI około 1 milion stron na dzień (Bharat WWW7) • Update rate około 600GB czystego tekstu na dzień (Alexa 1997) WUT TWG 2006 However: Random graph model WUT TWG Oszacujmy liczbę C3,3 dla modelu sieci przypadkowej (100 milionów stron): • n=108, prawdopodobieństwo wystąpienia krawędzi 10-7 (średnie outdegree = 10). • Dla dowolnych 6 węzłów prawdopodobieństwo tego że formują C3,3 = (10-7)9 = 10-63 8 63 10 18 • Liczba C3,3 = 10 10 1 W rzeczywistości (około 2000 r.) 6 133000 C3,3 Potrzebne są zatem inne modele, np. Raghavan et. al.: 1. Nowa strona dodaje hiperpołączenia poprzez kopiowanie z już istniejących stron 2. Sieć WWW to graf rzadki z lokalnymi gęstymi podgrafami 2006 Analiza (hiper) połączeń • Wyszukiwanie interesujących wzorców w grafach jest przydatne także w innych zastosowaniach • Bibliometria – grafy cytowań prac naukowych • Socjometria – sieci społeczne • Collaborative Filtering – analiza podobieństw grafów reprezentujących upodobania różnych osób • ... • Analiza hiperpołączeń w WWW (web mining): • • • • • • porządkowanie dokumentów w odpowiedzi: ranking wybór dokumentów do indeksowania: crawling klasyfikacja stron WWW wg. tematyki odnajdowanie stron podobnych odnajdowanie duplikatów stron WWW ... WUT TWG 2006 WUT TWG Ranking wyników odpowiedzi 2006 • Ranking odpowiedzi powinien zależny być od • relewantności do zapytania • jakości poszczególnych stron w idealnym przypadku wszystkie strony są równie relewantne • Rozwiązanie naiwne: im większa liczba hiperpołączeń wchodzących do danej strony, tym większa jakość strony • każde hiperpołączenie jest jednakowo istotne • słabe wyniki empiryczne • niezwykle podatne na manipulację • Rozwiązanie lepsze: jakość hiperpołączeń jest związana z jakością stron które je zawierają WUT TWG Page Rank 2006 • Larry Page, Siergiej Brin, 1998 • PageRank R(p) strony p: R(p) / n (1 ) R(q) ( q,p)G out degree(q) • gdzie • - dampening factor, zwykle 0.1 lub 0.2 • n – liczba węzłów w grafie G • outdegree(q) – liczba krawędzi wychodzących z węzła q • Rekurencja - obliczenie możliwe iteracyjnie, zwykle mniej niż 100 iteracji do osiągnięcia stanu stabilnego • Wartości Page Rank nie są związane z zapytaniem – można zatem obliczać je co jakiś czas WUT TWG Page Rank cont. 2006 B A P (1-d)* ( 1/4 PageRank strony A + 1/3 PageRank strony B ) +d/n Page Rank cont. • PageRank można interpretować jako opis zachowania użytkownika sieci „podróżującego” losowo po stronach WWW (random surfer) • Użytkownik klika w losowo wybrane hiperlinki na stronach, z jednakowym prawdopodobieństwem. Od czasu do czasu nudzi się i przeskakuje na losową, dowolnie wybraną, stronę WWW • Zachowanie takiego użytkownika można opisać jako proces Markowa p1, p2,p3, … na grafie G, gdzie w każdym kroku: • Każdy węzeł sieci może być węzłem startowym • W węźle pi • z prawdopodobieństwem , węzeł pi+1 jest wybierany losowo ze wszystkich węzłów G • z prawdopodobieństwem 1-, węzeł pi+1 jest wybierany losowo z węzłów – następników pi w grafie G WUT TWG 2006 WUT TWG HITS 2006 • „Jakość” stron WWW można różnie interpretować • Algorytm HITS (Kleinberg, 1999) • oparty o spostrzeżenie iż istnieją dwa rodzaje „dobrych” stron WWW a ( p ) : h(q) authority q p • authority (wskazywane przez wiele innych stron) h( p ) : • hub (wskazują na wiele innych stron) a(q) hub p q • dobra strona authority wskazywana jest przez dobre strony hub • dobre strony hub wskazują na dobre strony authority • rekurencja – także obliczenia iteracyjne • słabo nadaje się do obliczeń dotyczących całej sieci WWW • może być wykorzystany do analizy podgrafu tworzonego przez strony znajdujące się w wyniku zapytania • rozszerzenia – BHITS, WBHITS, CLEVER, ARC itd. Web Mining - przykład Sieć WWW zawiera także wiele informacji, które możemy „wyszukiwać” niekoniecznie na żądanie użytkownika Przykład – wyszukiwanie interesujących związków (np. frazeologicznych) w tekstach stron WWW Dual Iterative Pattern Relation Extraction (DIPRE) – Siergiey Brin 1999 1. 2. 3. 4. 5. Start with small sample of relations R’ Find R’ occurrences and store as O Generate new patterns P using O Increase R’ by searching for relations that match patterns from P Go to step 2 WUT TWG 2006 Focused crawling Wielkość sieci WWW jest na tyle duża, iż rozważano także rozproszone podejścia do tworzenia indeksów i wyszukiwania informacji: • rozproszone wyszukiwarki sieciowe (związane głównie z systemami P2P) • „osobiste” crawlery sieciowe Osobisty crawler nie może działać podobnie do uniwersalnego crawlera wyszukiwarki sieciowej – ograniczenia czasowe i sprzętowe. Powinien być raczej „agentem” wyręczającym użytkownika w procesie przeglądania zasobów sieciowych – musi zatem być wyposażony w mechanizm oceny relewancji przeglądanych stron. WUT TWG 2006 WUT TWG Focused crawling cont. 2006 Focused Crawler (Chakrabarti, van den Berg, Dom’99) • wykorzystuje hierarchię klasyfikacji (z przykładowymi dokumentami) oznaczonymi jako istotne dla danego wyszukiwania • wykorzystuje klasyfikator Bayesowski z modelem dokumentu bag-of-words do klasyfikacji aktualnie analizowanej strony • poszczególne analizowane strony mogą odbiegać od tematu przez pewną liczbę „skoków” – liczba ta zależy od zgodności ostatniej „dobrej” strony z zapytaniem • HITS używany do okresowego „czyszczenia” zebranych stron Cooperative community Competitive community Wizualizacja dokumentów Island represents several documents sharing similar subject, and separated from others - hence creating a group of interest Water represents assorted documents, creating semantic noise Peak represents many strongly related documents WUT TWG 2006 Wizualizacja – hyperbolic trees WUT TWG 2006 Wizualizacja cont. • • • • grupowanie podobnych dokumentów wizualizacja pozycji słów kluczowych (TileBars, Berkeley) wizualizacja gęstych podgrafów ... WUT TWG 2006