560 likes | 731 Views
Uniwersytet Łódzki Katedra Informatyki. W. Bartkiewicz. Wyszukiwanie informacji. Wykład 2a. Katedra Informatyki. Wyszukiwanie w Internecie.
E N D
Uniwersytet Łódzki Katedra Informatyki W. Bartkiewicz Wyszukiwanie informacji Wykład 2a.
Katedra Informatyki Wyszukiwanie w Internecie • Przeglądarka internetowa umożliwia surfowanie w sieci, korzystając z łączy miedzy dokumentami. Tak jak mówiliśmy to wcześniej wobec olbrzymich rozmiarów WWW znalezienie przez użytkownika potrzebnych informacji może być często trudne, jeśli wręcz nie niemożliwe. • Dlatego już stosunkowo wcześnie pojawiły się dodatkowe usługi wchodzące w skład infrastruktury WWW, pozwalające bezpośrednie wyszukiwanie tematyczne określonych dokumentów. • Usługi wyszukiwawcze w Internecie podzielić można na dwie kategorie: • katalogi webowe • wyszukiwarki
Katedra Informatyki Katalogi webowe • Katalog webowy jest po prostu zbiorem hiperłączy prowadzących do skatalogowanych dokumentów, który może być przeglądany przez użytkownika. • Aby ułatwić przeglądanie katalogu, dokumenty te grupowane są w jednorodne tematycznie podzbiory, tworzące kilkupoziomowe hierarchie coraz bardziej szczegółowych kategorii tematycznych. • Proces klasyfikowania dokumentów do określonych podtematów odbywa się na ogół ręcznie, tzn. wykonywany jest przez redaktora-człowieka, który czyta dokument, a następnie przydziela go do odpowiednich kategorii tematycznych. • Pierwsze katalogi w sieci WWW powstały w 1994 roku, jako prekursora wymienia się tu EINet Galaxy. W tym samym roku powstał również najpopularniejszy dziś katalog webowy (i ogólnie jedna z najpopularniejszych usług wyszukiwawczych w sieci) Yahoo.
Katedra Informatyki Wyszukiwarki • Dla odmiany, wyszukiwarki gromadzą informacje o dokumentach w postaci indeksu, który może być następnie przeszukiwany, a nie przeglądany. • Użytkownik formułuje swoją potrzebę informacyjną w postaci zapytania, określającego cechy pożądanych dokumentów (zazwyczaj słowa kluczowe). Wyszukiwarka wyszukuje w indeksie dokumenty o podobnych cechach i zwraca je użytkownikowi w postaci wyniku zapytania. • Indeks wyszukiwarki webowej tworzony jest zazwyczaj automatycznie poprzez specjalny program „wędrujący” po odnośnikach łączących strony i pozyskujący niezbędne cechy odwiedzanych dokumentów. Programy takie nazywamy pająkami, robotami sieciowymi lub z angielska crawlerami (szperaczami). • W przypadku niektórych wyszukiwarek słowa kluczowe podane z zapytaniu mogą być łączone operatorami logicznymi (alternatywa, koniunkcja, negacja, oraz różnego rodzaju operatory złożone).
Katedra Informatyki Wyszukiwarki - Historia • Pierwszą wyszukiwarką w sieci WWW był Wandex, wykorzystujący stworzonego w 1993 roku na MIT przez Matthew Graya pierwszego szperacza webowego WorldWide Web Wanderer. • Wandex i inne wyszukiwarki w początkowym okresie nie potrafiły indeksować całej zawartości stron, ale jedynie adresy, tytuły lub przygotowane w specjalnym pliku opisy. • Pierwsza wyszukiwarka „pełnotekstowa” o nazwie WebCrawler pojawiła się jednak już rok później, w 1994. • W ciągu następnych dwu lat pojawiło się szereg wyszukiwarek, które zdominowały WWW w drugiej połowie lat dziewięć dziesiątych. • Wymienić tu należy przede wszystkim takie usługi jak AltaVista, Excite, Infoseek, Live Search czy Lycos.
Katedra Informatyki Live Search
Katedra Informatyki AltaVista
Katedra Informatyki Szukacz
Katedra Informatyki Wyszukiwarki - Historia • Wymienione wyżej wyszukiwarki jako wykorzystywały jako cechy dokumentów słowa kluczowe. • W 2001 roku pojawiła się nowa wyszukiwarka, uwzględniająca obok słów kluczowych również informacje o połączeniach hipertekstowych między dokumentami, tzw. PageRank, obliczany według algorytmu opracowanego przez Larry’egoPage’a i SergeyaBrina. • Google, ponieważ tak nazwano tę usługę, jest obecnie dominującą wyszukiwarką webową, wykorzystywaną przez większość użytkowników. • Google jest potężnym serwisem wyszukującym, które oferuje swoim użytkownikom poza wyszukiwarką bardzo dużo rozmaitych usług. Google daje możliwość wyszukiwania prostego oraz zaawansowanego. • W formularzu wyszukiwania zaawansowanego można wykorzystać operatory Boolowskie oraz określić filtry języka, formaty pliku, sposób szukania.
Katedra Informatyki Google – wyszukiwanie proste
Katedra Informatyki Google – wyszukiwanie proste
Katedra Informatyki Google – Katalog tematyczny • Ponadto wyszukiwarka Google oferuje katalog tematyczny, w którym można wybrać dziedzinę, a następnie ograniczyć poszukiwanie do zawartości tej dziedziny.
Katedra Informatyki Google – Scholar • W pakiecie usług Google można znaleźć Google Scholar, która jest przeznaczona do wyszukiwania informacji o charakterze naukowym
Katedra Informatyki Google – Maps • Google Maps to serwis, który udostępnia mapy różnych obszarów. Usługa pomoże znaleźć dane miejsca oraz drogę, jak do nich dojechać samochodem, czy nawet środkami komunikacji miejskiej
Katedra Informatyki Google – News i inne
Katedra Informatyki Google – Wszystkie produkty
Katedra Informatyki Google – Labs • Google Labs to szereg dodatkowych projektów, o charakterze eksperymentalnym (jeszcze nie do końca opracowanych lub zarzuconych) – ale często bardzo interesujących i przydatnych.
Katedra Informatyki Google wskazówki wyszukiwania • Bardzo istotne jest wpisanie w oknie narzędzia wyszukującego prawidłowego zapytania. Zbyt ogólnie określenie bardzo często daje dużą liczbę nietrafionych danych. • Stosowanie cudzysłowu podczas wprowadzania zapytania pozwala na ograniczenie liczby wyników.
Katedra Informatyki Google – zapytania
Katedra Informatyki Użytkownik Pająk (crawler) Search Indeksator W W W Indeksy Indeksy dodatkowe Struktura wyszukiwarki
Katedra Informatyki Wyszukiwanie – Model boolowski • Model boolowski jest prostym modelem wyszukiwania, opartym na działaniach na zbiorach i algebrze boolowskiej. • Dokumenty indeksowane są poprzez wyodrębnienie w nich słów kluczowych (termów). • Zapytania specyfikowane są jako wyrażenia boolowskie, np. „bolid and wyścigi and not meteor” • Wynik zapytania jest generowany poprzez przetwarzanie zbiorów dokumentów, odpowiadających poszczególnym termom zapytania.. • Wskutek swojej prostoty i jasnego formalizmu model boolowski przyciągał w przeszłości wiele uwagi i do dziś stanowi podstawę wielu komercyjnych systemów bibliograficznych.
Katedra Informatyki Model boolowski – Podsumowanie • Zalety: • Prostota i jasny formalizm. Zapytania boolowskie są precyzyjne. Uważnie zaprojektowanie, pozwalają na zachowanie pełnej kontroli, transparentności i precyzji procesu wyszukiwania. • Zapytania boolowskie są często preferowane przez profesjonalistów zajmujących się wyszukiwaniem informacji z danej dziedziny. Model ten stanowi podstawę wielu komercyjnych systemów bibliograficznych. • Wady: • Strategia wyszukiwawcza modelu boolowskiego bazuje na binarnym kryterium decyzyjnym – dokument albo jest relewantny, albo nie, bez żadnej pośredniej gradacji. Może to pogarszać jakość działania systemu, zwłaszcza biorąc pod uwagę nieprecyzyjny charakter języka naturalnego. • Pomimo, że wyrażenia boolowskie mają precyzyjną semantykę, wcale nie jest łatwo przełożyć na nie potrzebę informacyjną. Większość, zwłaszcza nieprofesjonalnych użytkowników uważa wyrażanie swoich zapytań w postaci wyrażeń boolowskich za trudne. Ograniczają się do najprostszych warunków, które nie pozwalają na właściwy opis potrzeb informacyjnych.
Katedra Informatyki Rankingowanie • W modelu boolowskim dokument albo odpowiadał zapytaniu, albo nie. • Dobre dla doświadczonych użytkowników, dobrze rozumiejących swoje potrzeby, dziedzinę wyszukiwania i bazę dokumentów. • Nieodpowiednie dla (większości) użytkowników, którzy nie potrafią sformułować swoich potrzeb w postaci wyrażeń logicznych. • Alternatywą jest ocena stopnia relewancji dokumentu dla danego zapytania (scoring). • Dzięki temu dokument może odpowiadać zapytaniu w pewnym stopniu, co pozwala często uzyskać satysfakcjonujące użytkownika wyniki, nawet jeśli potrzeba informacyjna sformułowana jest nie do końca precyzyjnie. • Wynikiem zapytania jest ranking dokumentów, posortowany malejąco według stopnia relewancji. • Najbardziej relewantne dokumenty prezentowane są użytkownikowi na początku rankingu, najmniej relewantne – na końcu. • Ułatwia to przeglądanie wyników zapytania złożonych z wielu dokumentów.
Katedra Informatyki Wyszukiwanie topologiczne • W wyszukiwaniu topologicznym zapytania formułowane są w postaci tzw. zapytania prostego lub „worka słów” (bag of words), czyli zestawu termów (słów kluczowych) nie połączonych żadnymi operatorami logicznymi. • Użytkownik w zapytaniach po prostu określa słowa kluczowe, które odzwierciedlają jego potrzeby informacyjne. • Wyszukiwarka znajduje przechowywane w systemie dokumenty, które opisane są zestawem słów kluczowych „podobnym” do podanych przez użytkownika w zapytaniu. • Podobieństwo to zazwyczaj określane jest z wykorzystaniem miar opartych na podstawie liczby słów kluczowych występujących jednocześnie w opisie dokumentu i w zapytaniu. • Wyszukiwarka tworzy ranking znalezionych dokumentów, prezentując je w kolejności od najbardziej do najmniej podobnych.
Katedra Informatyki Współczynnik dopasowania prostego Problem – nie uwzględnia długości dokumentu i zapytania Współczynnik Dice’a Współczynnik Jaccarda Współczynnik cosinusoidalny Wyszukiwanie topologiczne
Katedra Informatyki Model wektorowy Zapytanie i dokumenty reprezentowane są jako wektory q = [q1, q2,..., qn], dj = [w1j, w2j,..., wnj] w przestrzeni Rn, gdzie n jest liczbą wszystkich termów indeksujących (rozmiar słownika). Współczynnik cosinusoidalny =
Katedra Informatyki Model wektorowy Macierz termów/dokumentów n x N = liczba termów x liczba dokumentów
Katedra Informatyki Model wektorowy Tworzenie rankingu
Katedra Informatyki Model wektorowyWagi termów • Jak dotąd zakładaliśmy, że zarówno wektor zapytania q = [q1, q2,..., qn] jak i opisy dokumentów dj = [w1j, w2j,..., wnj] mają charakter binarny, i zawierają wyłącznie współrzędne 0 i 1. • Wartości binarne oznaczają: • Dany term może wystąpić w dokumencie (zapytaniu) lub nie. • Wszystkie termy w opisie dokumentu (albo zapytaniu) traktowane są równoważnie. • Nie ma możliwości wyspecyfikowania informacji, że pewien term jest bardziej istotny dla treści dokumentu niż inny. • Ponieważ model wektorowy ma (w przeciwieństwie do boolowskiego) charakter algebraiczny, a nie logiczny, możemy łatwo zrezygnować z tego ograniczającego założenia. • Dla wyznaczenia cosinusoidalnej miary podobieństwa (podobnie zresztą jak i dla innych stosowanych miar) nie ma znaczenia czy analizowane wektory mają współrzędne binarne, czy rzeczywiste.
Katedra Informatyki Model wektorowyWagi termów • W modelu wektorowym wyszukiwania informacji zarówno wektory zapytania q = [q1, q2,..., qn], jak i opisu dokumentu dj = [w1j, w2j,..., wnj] mogą być dowolnymi wektorami w przestrzeni Rn. • Term i w opisie dokumentu (zapytania) j, reprezentowany jest przez pewną nieujemną liczbę rzeczywistą wij, nazywaną „wagą”: • Im większa wartość wagi termu, tym bardziej jest on istotny dla opisu treści dokumentu. • Wartość wij = 0 oznacza, że dany term w opisie dokumentu nie występuje.
Katedra Informatyki Model wektorowyWagi termów • Wagi termów zazwyczaj tworzone są przy wykorzystaniu tzw. formuły tf*idf, uwzględniającej dwa podstawowe elementy oceny istotności termu: • Częstość termu tf (term frequency) • Liczba wystąpień termu w dokumencie lub inna miara znaczenia termu dla treści konkretnego dokumentu. • Odwrotność częstości dokumentu idf (inverse document frequency) • Miara wartości informacyjnej termu, czyli jego przydatności dla rozróżniania treści różnych dokumentów w kolekcji. • Jeśli term występuje w wielu dokumentach, to jego wartość dyskryminacyjna jest relatywnie niższa. • Może więc być to po prostu odwrotność liczby dokumentów w których występuje dany term: 1/df(i). • Zazwyczaj jednak stosuje się przyjętą na drodze empirycznej nieco zmodyfikowaną miarę idf(i) = log(N/df(i)), gdzie N jest liczbą dokumentów w kolekcji.
Katedra Informatyki Model wektorowyWagi termów tfij – (term frequency) częstość termu i w dokumencie j, idfi – (inverse document frequency) odwrotność częstości dokumentów N – liczba dokumentów w kolekcji dfi – liczba dokumentów zawierających term i.
Katedra Informatyki Model wektorowy Macierz termów/dokumentów
Katedra Informatyki Model wektorowy Macierz termów/dokumentów
Katedra Informatyki dfi tfij Model wektorowyIndeks odwrotny
Katedra Informatyki Niejednoznaczność zapytań • Opisy dokumentów oraz termy indeksujące stanowią określenia pochodzące z języka naturalnego. • Problem – nieprecyzja języka naturalnego. • Ponieważ systemy wyszukiwawcze specyfikowane są na poziomie leksykalnym, a nie pojęciowym, pojawia się problem dopasowania tych samych (lub powiązanych) pojęć wyspecyfikowanych w zapytaniu i w opisie dokumentu z wykorzystaniem nieprecyzyjnych (np. różnych) słów. • Ludzie rozwiązują problemy nieprecyzji leksykalnej z wykorzystaniem kontekstu. • Modelowanie kontekstu nie jest łatwe. • Problem – zapytania użytkowników są często krótkie, złożone z jednego, dwu termów – brak kontekstu.
Katedra Informatyki Pozycjonowanie stron i spam • Pozycjonowanie stron w wyszukiwarkach (Search Engine Optimization): • „Dostrajanie” strony tak by dla wybranych słów kluczowych pojawiała się wysoko w rankingach wyszukiwania. • Alternatywa do płatnego reklamowania się na popularnych stronach. • Wykonywane zawodowo przez przedsiębiorstwa, webmasterów i konsultantów dla ich klientów. • Czasami doskonale uprawnione, czasami bardzo wątpliwe. • Standardowe techniki: • Wielokrotne powtarzanie wybranych słów kluczowych w dokumencie. Są one indeksowane przez crawlery, tak wiec strona uzyskuje wysoką wartość tf*idf dla danego słowa kluczowego. • Dodawanie wielu słów kluczowych, nie związanych z treścią strony. Dzięki temu strona pojawia się w wynikach wielu zapytań. • Słowa kluczowe dodawane są tak by nie były one widoczne dla przeglądającego go użytkownika (ukrywanie w metadanych, tekst w kolorze tła, sztuczki ze stylami, itp.).
Katedra Informatyki Inne techniki spamowania • Inne techniki spamowania zawartości: • Cloaking – podstawianie pająkowi wyszukiwarki fałszywej zawartości (innej niż użytkownikowi). • Strony-drzwi – strony zoptymalizowane na określone słowo kluczowe, które przekierowują użytkownika do właściwej strony. • Wyszukiwarki internetowe nie mogą polegać wyłącznie na słowach kluczowych. • Dla wyeliminowania spamu (między innymi) wyszukiwarki wykorzystują również informacje o łączach prowadzących do danej strony i z niej wychodzących. • Pozwala to na określenie tzw. prestiżu (reputacji) danej strony. • Spamowanie łączy jest dużo trudniejsze niż spamowanie zawartości. • Tworzenie ukrytych łączy wychodzących do stron o dużym autorytecie (np. poprzez skopiowanie części jednego z popularnych katalogów sieciowych). • Tworzenie grup (społeczności) ważnych stron z użyteczną dla użytkownika informacją, zawierających łącza (często ukryte) do docelowych stron ze spamem.
Katedra Informatyki Inne techniki spamowania • Spamowanie łączy (c.d.): • Tworzenie grup (społeczności) stron z użyteczną dla użytkownika informacją (np. glosariusze terminów z popularnych dziedzin, FAQ, strony z pomocą, itp.), zawierających łącza (zazwyczaj ukryte) do docelowych stron ze spamem. Ponieważ zawierają one istotne informacje, łącza do nich są często dodawane do stron użytkowników. • Dodawanie łączy do stron ze spamem do katalogów webowych. • Wysyłanie łączy do darmowych serwerów z treścią generowaną przez użytkowników (forów dyskusyjnych, blogów, itp.). • Uczestnictwo w wymianie łączy. Spamerzy łączą się w grupy, tak by strony na ich serwerach wskazywały się wzajemnie. • Tworzenie farm spamu. Jeśli spamer kontroluje większą liczbę serwerów, może utworzyć całą struktura łączy, zwiększającą prestiż spamowanych stron docelowych.
Katedra Informatyki Strona B Strona A hiperłącze Kotwica Wykorzystanie tekstu łącza • Założenia: • Łącze między stronami opisuje postrzegany przez autora związek tematyczny między nimi. • Tekst wykorzystany w zakotwiczeniu łącza opisuje stronę docelową.
Katedra Informatyki Analiza łączy
Katedra Informatyki Analiza sieci społecznej • WWW jest siecią społeczną, tzn. siecią podmiotów społecznych (osób i organizacji), wykorzystujących ją do różnego rodzaju komunikacji i oddziaływania. • Poszczególne strony WWW reprezentują podmioty (aktorów społecznych), zaś łącza między nimi reprezentują interakcje i związki między podmiotami. • Wiele koncepcji, pochodzących z dziedziny analizy sieci społecznych może być zaadaptowanych i wykorzystanych w kontekście WWW. • Podstawowymi pojęciami w sieci społecznej są popularność, autorytet i prestiż. • Miary popularności, autorytetu i prestiżu mogą być wykorzystane do rankingowania stron WWW, znalezionych przez wyszukiwarkę. • Idea polega na przypisaniu każdej stronie rangi niezależnej od jej zawartości (tj. słów kluczowych), i opartej wyłącznie na strukturze powiązań hipertekstowych. • Ranga ta wykorzystana może być do uporządkowania stron wyszukanych w odpowiedzi na zapytanie oparte na słowach kluczowych. • W praktyce zazwyczaj stosuje się kombinacje rankingu opartego na treści i łączach.
Katedra Informatyki Analiza sieci społecznej • Dwa najważniejsze algorytmy rankingowania stron webowych: PageRank i HITS, opierają się na pojęciu prestiżu w sieci społecznej. • Analiza i wyznaczanie miar prestiżu opiera się na bibliometrii, nauce wykorzystywanej w bibliotekoznawstwie i systemach informacyjnych m.in. do określania wartości publikacji naukowych. • Wpływ publikacji naukowej określany jest przez liczbę publikacji, które ja cytują oraz ich prestiż. • Ranga prestiżu strony WWW określana więc będzie przez liczbę łączy wejściowych (prowadzących do) strony, oraz rekursywnie prestiż stron na których te łącza zostały umieszczone. • Niech A będzie macierzą powiązań między dokumentami w grafie cytowania, tzn. element A(u, v) = 1 jeśli dokument u cytuje dokument v, oraz A(u, v) = 0 w przeciwnym przypadku.
Katedra Informatyki Analiza sieci społecznej a • Każdy węzeł u ma wartość prestiżu p(u), określoną jako sumę miar prestiżu węzłów, które cytują u, tj.: p(u) = SvA(v, u)p(v) • Używając notacji macierzowej, miary prestiżu p(u) dla wszystkich dokumentów u, mogą być zapisane jako wektor kolumnowy P. Dla danego wstępnego wektora prestiżu P, nowy wektor prestiżu P' zapisać możemy jako: P' = ATP c b
Katedra Informatyki Analiza sieci społecznej • Podstawienie P' do P i rekurencyjne powtarzanie wyznaczania wektora prestiżu prowadzi do wyznaczenia punktu stałego dla P, będącego rozwiązaniem układu równań: l P = ATP • Rozwiązanie tego równania określane jest w algebrze macierzowej rozkładem własnym macierzy. Generalnie dla macierzy o wymiarach nn istnieje n takich wektorów, nazywanych wektorami własnymi macierzy. Z każdym z nich związana jest inna wartość stałe l, nazywanej wartością własną. • Spośród wszystkich wektorów własnych macierzy zainteresowani jesteśmy znalezieniem dominującego (lub podstawowego) wektora własnego, związanego z największą wartością własną.
Katedra Informatyki a 0,548 c 0,726 b 0,414 Analiza sieci społecznej • Dla naszego przykładu rozwiązaniem układu równań l P = ATP, jest największa wartość własna l = 1,325 i wektor własny P = (0,548, 0,414, 0,726)T. • Rozwiązanie to dobrze ilustruje intuicje stojącą za rekursywną definicją prestiżu. • Dokument c otrzymał najwyższą wartość, ponieważ ma dwa cytowania. • Natomiast a i b mają niższe wartości, ponieważ cytowane są tylko raz. • Dokument a otrzymał wyższą wartość niż b, ponieważ jest cytowany przez dokument c, o wyższym prestiżu.
Katedra Informatyki Analiza sieci społecznej • Algorytmy obliczania wartości i wektorów własnych macierzy stanowią standardowy element w zasadzie wszystkich poważnych pakietów numerycznych. • Ponieważ jednak nie interesuje nas wyznaczenie wszystkich wektorów własnych, a jedynie podstawowego, w praktyce do jego obliczenia stosuje się prosty algorytm oparty na tzw. metodzie iteracji potęgowej: P P0 powtarzaj Q P P ATQ P P / ||P|| (normalizacja P) dopóki ||P – Q|| > e • Dla dowolnej wartości początkowej P0, algorytm zbieżny jest do wektora własnego związanego z największą wartością własną. Wektor własny jest znormalizowany (tj. ||P|| = 1) i wartość własna równa jest długości wektora l = ||ATP||.
Katedra Informatyki
Katedra Informatyki PageRank • PageRank jest metodą generowania rankingu stron a wykorzystaniem struktury ich połączeń hipertekstowych, stosowaną w wyszukiwarce Google. • W powiązaniu z opisanymi wyżej metodami analizy sieci społecznej próbuje on określać prawdopodobne ścieżki, po których Użytkownicy Internetu poruszają się między stronami. • PageRank korzysta z metafory „losowego surfera”, klikającego na hiperłącza w losowy sposób z jednostajnym rozkładem prawdopodobieństwa, wykonując w ten sposób błądzenie losowe po grafie WWW. • Obok informacji o łączach wejściowych (prowadzących do strony), PageRank wykorzystuje również informację o łączach wyjściowych. • Załóżmy, że strona u zawiera łącza do Nu stron i jedną z nich jest strona v. • Jeśli więc surfer jest na stronie u, prawdopodobieństwo odwiedzenia strony v wynosi więc 1/Nu. • Strona v powinna więc otrzymywać od u jedynie 1/Nu jej prestiżu.
Katedra Informatyki .08 .1 .05 .05 .03 .09 .08 .03 .03 .03 Idea PageRank-u Propagacja prestiżu strony w PageRank