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(oiB) = 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
BC
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