WPROWADZENIE DO EKSPLORACJI DANYCH TEKSTOWYCH W ŚRODOWISKU WWW WYSZUKIWANIE INFORMACJI WYKŁAD 6 Piotr Gawrysiak pgawrysiak@supermedia.pl Anna Wróblewska Piotr Andruszkiewicz awroble@gmail.com p.andruszkiewicz@ii.pw.edu.pl Politechnika Warszawska Zakład Systemów Informacyjnych 2015
Plan Wyszukiwanie informacji (ang. Information Retrieval) definicja Sposoby wyszukiwania Analiza połączeń Rankingi Wizualizacja
Pojęcia Wyszukiwanie informacji (ang. Information Retrieval, IR) Wyszukiwanie danych (ang. Data Retrieval, DR) Ekstrakcja informacji (ang. Information Extraction, IE)
Wyszukiwanie informacji (ang. Information Retrieval) Wyszukiwanie informacji - jest zadaniem uzyskiwania pożądanych zasobów informacyjnych z kolekcji takich zasobów. Wyszukiwanie może odbywać się na podstawie indeksu obejmującego metadane, pełny tekst, bądź inną zawartość zasobów. Automatyczne wyszukiwanie informacji wykorzystywane jest do redukcji tzw. efektu nadmiaru informacji. Wiele uniwersytetów, bibliotek używa systemów wyszukiwania informacji w celu ułatwienia dostępu do książek, czasopism i innych dokumentów. Wyszukiwarki internetowe są przykładem aplikacji wykorzystujących wyszukiwanie informacji. Tłumaczenie na podstawie angielskiej Wikipedii (2015)
Wyszukiwanie danych (ang. Data Retrieval) Wyszukiwanie danych, w zarządzaniu bazami danych, obejmuje ekstrakcję pożądanych danych z bazy danych. Dwie główne formy wyszukanych danych to raporty i zapytania (ang. queries). Wikipedia
Ekstrakcja informacji (ang. Information Extraction, IE) Ekstrakcja informacji oznacza automatyczne wydobywanie ustrukturalizowanych informacji, takich jak encje, relacje między encjami, atrybuty je opisujące, z nieustrukturalizowanych źródeł. Information Extraction, Sunita Sarawagi Ekstrakcja informacji jest zadaniem automatycznego wydobywania ustrukturalizowanych informacji z nieustrukturalizowanych bądź częściowo ustrukturalizowanych dokumentów, które mogą być odczytywane przez komputery. W większości przypadków to zadanie wykorzystuje przetwarzanie języka naturalnego (NLP). Ostatnie dziłania w zakresie przetwarzania dokumentów multimedialnych, takich jak automatyczna anotacja i wydobywanie zawartości z obrazów, filmów, dźwięku, mogą być postrzegane jako ekstrakcja informacji. Wikipedia
Ekstrakcja informacji Zastosowania Zarządzanie osobistymi informacjami (ang. Personal Information Management) Aplikacje dla nauki (ang. Scientific Applications) Aplikacje internetowe (ang. Web Oriented Applications) Bazy cytowań Bazy opinii Strony społecznościowe (ang. Community Websites) Porównywanie ofert
Wyszukiwanie informacji a wyszukiwanie danych Kryterium Wyszukiwanie informacji, IR Wyszukiwanie danych, DR Dane Tekst, nieustrukturalizowany Tabele w bazie danych, ustrukturalizowane Zapytania Słowa kluczowe, język naturalny SQL, algebra relacji Rezultaty Przybliżone dopasowanie Dokładne dopasowanie Porządek Uporządkowane wg istotności Nieuporządkowane Dostępność Ludzie, którzy nie są ekspertami Doświadczeni użytkownicy i automatyczne procesy
IR w WWW Kryterium Klasyczne IR WWW IR Rozmiar danych Duży Ogromny Jakość danych Wysoka Niska Częstość zmian danych Niska Wysoka Dostępność danych Dane dostępne Dane częściowo dostępne Zróźnicowanie formatów Formaty jednorodne Bardzo zróżnicowane Postać dokumentów Tekst HTML Liczba trafień Niewielka Duża Technika Analiza zawartości Analiza połączeń i zawartości
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 (ang. exact match) w większości wypadków związane z zastosowaniem jakiegoś języka wyszukiwania (czy też raczej języka specyfikacji zapytań ang. query language) rozmyte (ang. 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 zapewnienie wysokiej istotności odpowiedzi zapewnienie wysokiej kompletności odpowiedzi przedstawienie wyniku w zrozumiały i efektywny sposób
Ocena jakości wyszukiwania DB DB baza dokumentów dr dokumenty istotne ds ds dokumenty uznane przez system za istotne dr PR precyzja (ang. precision), R zupełność, kompletność (ang. recall), A dokładność (ang. accuracy), FO zaszumienie (ang. fallout)
Indeksowanie sieci WWW 1999 - Scooter (AltaVista) : 1.5GB RAM, 30GB dysk, 4x533 MHz Alpha, 1GB/s I/O (crawler) 1 miesiąc na pełny recrawl 2000 - ~40% zasobów WWW w indeksach wyszukiwarek, reszta szary internet (ang. 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)
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 (ang. 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
Wyszukiwanie przybliżone (ang. Fuzzy search) 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 k zatem metryka) np. d q il l sim(di, Q) cos(di, Q) l 1 k ql l 1 2 k dil l 1 Proces ten może być powtarzany ang. relevance feedback dzięki możliwości stworzenia zapytania na podstawie zbioru dokumentów 2
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 (ang. 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 (ang. six degrees of separation), rozprzestrzeniania się chorób itp. Albert Laszlo-Barabasi, Linked: How Everything Is Connected to Everything Else and What It Means
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...
Ranking wyników odpowiedzi Ranking odpowiedzi powinien zależny być od istotności do zapytania jakości poszczególnych stron w idealnym przypadku wszystkie strony są równie istotne 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ą
Page Rank Larry Page, Siergiej Brin, 1998 PageRank R(p) strony p: R(q) ( q,p) G outdegree(q) R(p) / n (1 ) gdzie - czynnik wyciszający (ang. 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
Page Rank cont. 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
HITS Jakość stron WWW można różnie interpretować Algorytm HITS (Kleinberg, 1999) oparty o spostrzeżenie, iż istnieją dwa rodzaje dobrych stron WWW authority (wskazywane przez wiele innych stron) hub (wskazują na wiele innych stron) a ( p ) : h(q ) authority q p h( p ) : 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.
Eksploracja sieci internet (ang. 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. Zacznij z niewielką liczbą relacji R Wyszukaj wystąpień R I zapisz jako O Wygeneruj nowe wzorce P, wykorzystując O Zwiększ R przez wyszukiwanie relacji, które pasują do wzorców P Idź do kroku 2 Początkowe przykłady książek Wzorzec adresu URL Wzorzec tekstu Wzorce znalezione podczas pierwszej iteracji
Wspierane przeglądanie (ang. 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 istotności przeglądanych stron.
Wspierane przeglądanie cont. (ang. Focused crawling) 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 Odległość zasobów (jazda na rowerze) Min. odległość od ziarna pobierania (liczba linków) Współpracująca społeczność Liczba serwerów wśród najelpszych 100 Liczba serwerów wśród najelpszych 100 HITS używany do okresowego czyszczenia zebranych stron Odległość zasobów (fundusze inwestycyjne) Min. odległość od ziarna pobierania (liczba linków) Niewspółpracująca społeczność
Wizualizacja dokumentów Wyspy reprezentują dokumenty na ten sam temat i o odmiennym temacie niż inne, więc tworzące potencjalne grupy, którymi użytkownik będzie zainteresowany. Woda reprezentuje różnorodne dokumenty, tworzące semantyczny szum. Szczyty reprezentują grupy bardzo mocno powiązanych dokumentów.
Wizualizacja drzewa hiperboliczne
Wizualizacja cont. grupowanie podobnych dokumentów wizualizacja pozycji słów kluczowych (TileBars, Berkeley) wizualizacja gęstych podgrafów...
Wizualizacja dokumentów http://www.readwriteweb.com/archives/the_best_tools_for_visualization.php
Wizualizacja dokumentów?
Wizualizacja dokumentów
Wizualizacja dokumentów
Wizualizacja dokumentów
Wizualizacja dokumentów
Wizualizacja dokumentów