Post on 21-Jan-2016
description
Carrot2
Search Results Clustering
2
• Podsumowanie
• System Carrot2
• Wprowadzenie• Definicje i podstawowe informacje;• Model wektorowy;• Podobieństwo dokumentów;
• Podstawy;• Historia i dane techniczne;• Przykładowe algorytmy;
• Bibliografia
Wyszukiwanie Internetowe – Uniwersytet Śląski
Plan prezentacji:Plan prezentacji:
3
• Fraza - uporządkowany ciąg słów zaczerpnięty z tekstu.
• Słowo Kluczowe - słowo reprezentujące znaczenie pewnej dłuższej sekwencji słów, w szczególności całego dokumentu.
• Lematyzacja - sprowadzenie formy fleksyjnej do postaci słownikowej (lematu).
• Lematyzacja w kontekście odkrywania wiedzy - odróżnienie słów o innym znaczeniu od form jednego słowa, które przyjmuje inny zapis w zależności od funkcji w zdaniu.
• Search Results Clustering – efektywne utworzenie sensownych grup tematycznie powiązanych dokumentów, oraz ich zwięzłe opisanie w sposób zrozumiały dla człowieka.
Wyszukiwanie Internetowe – Uniwersytet Śląski
Wprowadzenie Wprowadzenie ( Definicje i podstawowe informacje )
4
Dokument tekstowy może być łatwo reprezentowany w wysoko-wymiarowej przestrzeni wektorowej, gdzie terminy w dokumencie (termy) są powiązane z elementami wektorów. Mówiąc dokładniej, dokument tekstowy d może być traktowany jako sekwencja termów:
d=(ω(1), ω(2), ω(3),... ω(|d|)), gdzie:|d| jest długością dokumentu, oraz ω(t)V. Reprezentacja d w przestrzeni wektorowej jest wówczas zdefiniowana jakorzeczywisty wektor: x R|v|,gdzie każdy element xj jest statystycznie powiązany zwystępowaniem j-tego wpisu słownikowego w dokumencie. Najprostsza reprezentacja wektorowa to reprezentacja boolowska tj. xj {0,1}, wskazuje obecność lub jej brak termu ωj w reprezentowanym dokumencie. Taka reprezentacja zwana jest często pojemnikiem słów (bag of words).
Wyszukiwanie Internetowe – Uniwersytet Śląski
Wprowadzenie Wprowadzenie ( Model wektorowy )
5
• Zbiór unikalnych słów T=t1, t2, … tn ;• Dokumenty (D=d1, d2, … dm) reprezentowane jako n-
wymiarowe wektory:• di=[wi1, wi2, … win], gdzie wij jest wagą j-tego słowa w dokumencie i;
• Wagi słów — jak dane słowo jest charakterystyczne dla dokumentu?• Wiele różnych form:
• binarna — wij=1 lub wij=0;• częstość wystąpień - wij=tfij(tj);• tfidf (Salton) – wij=tfij(tj)*log(N/dfij(tj));
Wyszukiwanie Internetowe – Uniwersytet Śląski
Wprowadzenie Wprowadzenie ( Model wektorowy )
6
Rys. Reprezentacja w przestrzeniwektorowej. Dla każdego z dokumentów,lewy wektor szacuje liczbę pojawiającychsię termów, podczas gdy prawy wektorbazuje na wagach TF-IDF.
Wyszukiwanie Internetowe – Uniwersytet Śląski
Wprowadzenie Wprowadzenie ( Model wektorowy )
7
The t=5 terms:
T1: Information
T2: Singular
T3: Value
T4: Computations
T5: Retrieval
The d=7 documents:
D1: Large Scale Singular Value Computations
D2: Software for the Sparse Singular ValueDecomposition
D3: Introduction to Modern InformationRetrieval
D4: Linear Algebra for Intelligent Information Retrieval
D5: Matrix Computations
D6: Singular Value Analysis of Cryptograms
D7: Automatic Information Organization
Wyszukiwanie Internetowe – Uniwersytet Śląski
Wprowadzenie Wprowadzenie ( Model wektorowy )
8
Możemy zdefiniować podobieństwo pomiędzy dwoma dokumentami d i d’ jako funkcję s(d,d’)R. Funkcja ta, pozwoli nam ustalić zakres klastrów, uzyskanych poprzez grupowanie, w odniesieniu do zadanego pytania (obliczając podobieństwo pomiędzy każdym dokumentem (lub grupami dokumentów), a kwerendą). Klasyczne podejście bazuje na reprezentacji przestrzeni wektorowej, oraz metryce zdefiniowanej jako współczynnik cosinusowy (cosine coefficient) (Salton i McGill – 1983).
,gdzie superskrypt (indeks górny) T symbolizuje operator transpozycji, a xTy efekt w postaci punktu, lub obszaru między dwoma wektorami x, y R, zdefiniowany jako:
Wyszukiwanie Internetowe – Uniwersytet Śląski
Wprowadzenie Wprowadzenie ( Podobieństwo dokumentów )
9
Przykład:
Wyszukiwanie Internetowe – Uniwersytet Śląski
Wprowadzenie Wprowadzenie ( Podobieństwo dokumentów )
The t=5 terms:T1: InformationT2: SingularT3: ValueT4: ComputationsT5: Retrieval
D1: Large Scale Singular Value ComputationsD2: Software for the Sparse Singular Value DecompositionD3: Introduction to Modern Information RetrievalD4: Linear Algebra for Intelligent Information RetrievalD5: Matrix ComputationsD6: Singular Value Analysis of CryptogramsD7: Automatic Information Organization
The d=7 documents:
0.000.000.000.710.710.000.00
0.000.001.000.000.000.000.58
0.000.710.000.000.000.710.58
0.000.710.000.000.000.710.58
1.000.000.000.710.710.000.00
A
10
Przykład cd.:
Zapytanie: Singular Value;
Wyszukiwanie Internetowe – Uniwersytet Śląski
Wprowadzenie Wprowadzenie ( Podobieństwo dokumentów )
Tq 0.000.000.710.710.00ˆ T
T
r
0.00
1.00
0.00
0.00
0.00
1.00
0.81
0.000.000.000.710.710.000.00
0.000.001.000.000.000.000.58
0.000.710.000.000.000.710.58
0.000.710.000.000.000.710.58
1.000.000.000.710.710.000.00
0.00
0.00
0.71
0.71
0.00
11
• Podsumowanie
• System Carrot2
• Wprowadzenie• Definicje i podstawowe informacje;• Model wektorowy;• Podobieństwo dokumentów;
• Podstawy;• Historia i dane techniczne;• Przykładowe algorytmy;
• Bibliografia
Wyszukiwanie Internetowe – Uniwersytet Śląski
Plan prezentacji:Plan prezentacji:
12
• bazujący na komponentach framework efektywnego przetwarzania danych;
• prosta dystrybucja (protokół HTTP POST, sterowany danymi);
• prosta integracja (nacisk na XML-owy format danych);
• problem „przeciążenia danych” (konieczność zgłębiania nieograniczonych bibliotek);
• podproblemy Search Results Clustering :
• Wyodrębnienie podobnych dokumentów;
• Opisanie utworzonych grup;
• Zweryfikowanie jakości wyników.
Wyszukiwanie Internetowe – Uniwersytet Śląski
System Carrot2 System Carrot2 ( Podstawy )
13
• Carrot operuje jedynie na snippetach, bez odczytywania dokumentów źródłowych. Wynika z tego fakt, iż jakość grupowania będzie silnie zależeć od siły opisowej snippetów – krótkich fragmentów tekstu zwróconych przez wyszukiwarkę. W tym aspekcie systemy typu Carrot, będą znacznie ograniczone przez zaimplementowane algorytmy samych wyszukiwarek (Google, Yahoo!, itp.) służące odnalezieniu zdań, które w sposób właściwy opisują temat strony. Daje to jednak pewne korzyści, w postaci krótkiego czasu wyszukiwania (wynikającego z faktu braku konieczności
analizowania całych dokumentów).
Wyszukiwanie Internetowe – Uniwersytet Śląski
System Carrot2 System Carrot2 ( Podstawy )
14
• Carrot daje olbrzymie możliwości analizy wyników zapytania względem tradycyjnych wyszukiwarek. Poprzez ekstrakcję fraz z pierwszych paruset odnośników i ich prezentację w skumulowanej formie uzyskujemy możliwość pobieżnego przeglądu o parę rzędów wielkości większej liczby dokumentów niż miałoby to miejsce przy klasycznym listowym widoku.
• System przekierowuje zapytanie do wyszukiwarki (Google, Yahoo!, itp.), pobiera od niej kilkaset początkowych odnośników, a następnie analizuje je poszukując wspólnych, opisowych fraz. Frazy te, o ile są wystarczająco częste, są traktowane jako reprezentanci grup tematycznych.
Wyszukiwanie Internetowe – Uniwersytet Śląski
System Carrot2 System Carrot2 ( Podstawy )
15
Wyszukiwanie Internetowe – Uniwersytet Śląski
System Carrot2 System Carrot2 ( Podstawy )
16
• Carrot nie był pierwszym systemem grupującym wyniki z wyszukiwarek – wcześniej powstały systemy Grouper, Vivisimo oraz inne, których funkcjonalność jednak nigdy nie wysunęła się poza obszar eksperymentu obliczeniowego. Grouper, jako projekt również typowo badawczy, został usunięty z sieci w roku 2001 (po zakończeniu badań).
• Co warte podkreślenia, Carrot jest jedynym systemem grupującym, działającym dla języków innych niż język angielski.
• Nazwa systemu odnosi się do wcześniejszych owocowych systemów wspomagających odkrywanie wiedzy z danych tekstowych (Lemon, Grape, Orange).
Wyszukiwanie Internetowe – Uniwersytet Śląski
System Carrot2 System Carrot2 ( Historia )
17
• Jedyny otwarty system do eksperymentowania z algorytmami grupowania wyników– Skrócenie czasu weryfikacji nowych pomysłów– Umożliwienie porównania metod– Ponowne użycie raz napisanych elementów
• Wiele istniejących modułów i narzędzi wspomagających– Zaimplementowane algorytmy
• AHC, różne warianty• STC• Lingo
– Komponenty lingwistyczne:• Lematyzator Portera• Lematyzator (własny alg.)
– Inne
Wyszukiwanie Internetowe – Uniwersytet Śląski
System Carrot2 System Carrot2 ( Dane techniczne )
18
• Ilość osób zaangażowanych w projekt:– Ok. 5 - ( 3 studentów, 1 doktorant, 1 opiekun
naukowy);
• Software:– Budowanie systemu: junit, httpunit– Zaawansowane technologie:
• XSLT,XSL:FO,XML data binding, STRUTS, gnuregexp.
• Projekt:– Ogólny rozmiar projektu: 36 MB;– Rozmiar kodu: 227 plików, 1MB, ok. 35000 linii.
Wyszukiwanie Internetowe – Uniwersytet Śląski
System Carrot2 System Carrot2 ( Dane techniczne )
19
• LINGO – fazy:• Przetwarzanie wstępne:
» Oczyszczanie tekstu;» Identyfikacja języka;» Stemming;» Oznaczanie stop-words;
• Wybór cech:» Identyfikacja częstych fraz, bazująca na tablicach przyrostkowych (suffix arrays);
• Wprowadzenie etykiet klastrów:» Singular Value Decomposition (SVD) macierzy termin-dokument;» Bazowe wektory wyprowadzone metodą SVD: pojęcia abstrakcyjne;» Frazy: słowna reprezentacja abstrakcyjnych pojęć;» Dopasowanie abstrakcyjnych pojęć i fraz: odległość cosinusowa = oznaczenie wyniku;» Eliminacja powtórzeń;» Oznaczenia klastrów: słownie określone pojęcia abstrakcyjne;
• Formowanie klastrów;• Przetwarzanie końcowe:
» Oszacowanie wyników klastrów: WynikKlastra=OznaczenieWyniku*LiczbaElementów.
Wyszukiwanie Internetowe – Uniwersytet Śląski
System Carrot2 System Carrot2 ( Przykładowe algorytmy )
20
• LINGO – mocne strony:• Czytelne i różnorodne opisy klastrów;
• Pokrywające się klastry;
• Niezależność językowa;
• Łatwość strojenia;
• Budowa modułowa.
• LINGO – słabe strony:• Stała liczba klastrów;
• Zbyt specjalistyczne oznaczenia grup;
• Wymagania obliczeniowe;
• Brak stopniowego przetwarzania.
Wyszukiwanie Internetowe – Uniwersytet Śląski
System Carrot2 System Carrot2 ( Przykładowe algorytmy )
21
Wyszukiwanie Internetowe – Uniwersytet Śląski
System Carrot2 System Carrot2 ( Przykładowe algorytmy )
Przykład działania LINGO:
22
• Podsumowanie
• System Carrot2
• Wprowadzenie• Definicje i podstawowe informacje;• Model wektorowy;• Podobieństwo dokumentów;
• Podstawy;• Historia i dane techniczne;• Przykładowe algorytmy;
• Bibliografia
Wyszukiwanie Internetowe – Uniwersytet Śląski
Plan prezentacji:Plan prezentacji:
23
• http://demo.carrot2.org/stable/api/ - dokumentacja API systemu;
• http://demo.carrot-search.com/carrot2-webapp/main
http://demo.carrot2.org/demo-stable/main - publiczne wersje projektu;
• „Search Results Clustering in Polish: Evaluation of Carrot” – Dawid Weiss, Jerzy Stefanowski;
• „Grupowanie wyników zapytań do wyszukiwarek internetowych” – Dawid Weiss;
• „The Carrot2 Project” – Paweł Kowalik, Stanisław Osiński, Jerzy
Stefanowski, Dawid Weiss, Michał Wróblewski.
Wyszukiwanie Internetowe – Uniwersytet Śląski
Podsumowanie Podsumowanie ( Bibliografia )