Eksploracja złożonych typów danych Text i Web Mining Jerzy Stefanowski Instytut Informatyki Politechniki Poznańskiej Wykład AiED, Poznań 2002 Co będzie? Eksploracja danych tekstowych Wyszukiwanie informacji w tekstowych bazach danych Automatyczne przetwarzanie tekstów Web-mining klasyfikacja zadań Wyszukiwanie informacji w Internecie Podsumowanie Text a Web mining Text mining: Analiza i automatyczne przetwarzanie informacji przechowywanych w zbiorach dokumentów i tekstowych bazach danych; dokumenty z różnych źródeł i w różnych formatach Efektywne wyszukiwanie informacji w tekstowych bazach danych (ang. Information Retrieval) Web mining: Poszukiwanie i pozyskiwanie informacji z zasobów WWW, lecz także: analiza struktury powiązań zasobów WWW analiza sposobu korzystania z WWW przez użytkowników 1
Eksploracja tekstowych baz danych - motywacje Znacząca ilość informacji dostępna w postaci różnego rodzaju dokumentów, np.: artykuły, wiadomości, czasopisma, książki, biblioteki elektroniczne, e-maile, news, zasoby WWW Dane tego typu nie są ustrukturalizowane lub ustrukturalizowane w niewielkim stopniu Rozmiary danych tekstowych rosną gwałtownie Problemy z wyszukiwaniem właściwej informacji Wyszukiwanie informacji (Information Retrieval) dziedzina rozwijana równolegle z typowymi bazami danych związana jest z organizacją i wyszukiwaniem informacji z bardzo dużej liczby dokumentów Typowe zadanie: znajdź właściwe dokumenty na podstawie zapytania użytkownika wyspecyfikowanego jako słowa kluczowe lub przykład dokumentu Różnice z systemami zarządzania baz danych (DBMS): DBMS obejmują dobrze zdefiniowane i ustrukturalizowane dane; Podstawowe zagadnienie efektywne przetwarzanie zapytań, zarządzanie transakcjami czy złożonymi obiektami, aktualizacja, itp. IR nieustrukturalizowane informacje, inne spojrzenie na zapytania; poszukiwanie przybliżone, automatyczna indeksacja termami słowami kluczowymi Tekstowe bazy danych modele i techniki indeksacji Model podstawowy: Dokument jest reprezentowany jako ciąg znaków, zbiór słów kluczowych (identyfikatorów, termów w modelu statystycznym) lub jako jednostki leksykalne Bezpośrednie przetwarzanie całego dokumentu (ciągu znaków) nie jest stosowane Reprezentacja za pomocą pojedynczych termów jest najbardziej popularna (tzw. wektory słów) Duże znaczenie doboru właściwych termów i automatycznej indeksacja dokumentów 2
Zapytania w tekstowych bazach danych Zapytanie jest wyrażeniem zbudowanym ze słów kluczowych (termów) połączonych operatorami: np. tea or coffee, car and repair shop, DBMS but_not Oracle W najprostszym modelu zwraca się dokument zawierający lub opisany słowami kluczowymi Ograniczenia modelu słów kluczowych: Synonimy: słowo T nie pojawia się w dokumencie, pomimo że dokument jest ściśle związany z dziedziną lub słowem kluczowym T. Wielosynonimy: to samo słowo ma różne znaczenie w zależności od kontekstu jego użycia, np. mining. Inny typ zapytań: similarity-based retrieval znajdź podobne dokumenty na podstawie stopnia zgodności z termami charakteryzującymi dokumenty. Schemat działania systemu wyszukiwawczego Zapytanie Analiza formalna Charakterystyka wyszukiwawcza zapytania Obliczanie podobieństwa Indeksowane dokumenty Indekser dokumentów Baza dokumentów Odszukane podobne dokumenty Automatyczna indeksacja dokumentów Indeksowanie polega na przypisaniu dokumentowi zbioru identyfikatorów, słów kluczowych charakteryzujących temat lub przedmiot dokumentu i wyrażeniu ich w odpowiednim języku informacyjno-wyszukującym Indeksowanie manualne (eksperci) vs. automatyczne kontrolowane stosowanie odpowiednich słowników, list terminologicznych obiektywne i nieobiektywne identyfikatory tekstów 3
Struktura tekstów naukowych Struktura dokumentów WWW <html> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> <meta name="subject" content="strona osobista Jerzego Stefanowskiego"> <meta name="author" content="jerzy Stefanowski"> <meta name="description" content="this page contains main information on machine learning, knowledge discovery and data mining. The process of knowledge discovery from databases is discussed. Basic methods of discovering various knowledge representations are presented....> <meta name="keywords" content="sztuczna inteligencja, artificial inteligence,...> <title>jerzy Stefanowski's Knowledge Discovery Page</title> <!-- stefan.html, November 29,2001 Jerzy Stefanowski--> </head>... Identyfikatory tekstów Obiektywne identyfikatory to np.: nazwiska autorów, tytuł pracy, miejsce wydania, nazwa wydawcy, data publikacji, długość, liczba stron, bibliograficzne dane katalogowe. Inne identyfikatory dotyczą przedmiotu i zawartości tekstu wybór i stopień ich użyteczności jest różnie realizowany 4
Miary oceny systemów wyszukiwania informacji Dokładność (Precision, P) określa stopień, w jakim odnalezione dokumenty pasują do zapytania P = [ Re levant Re trieved] [ Retrieved] Kompletność (Recall, R) określa jaka część dokumentów pasujących do zapytania została odnaleziona [ Relevant Retrieved] R = [ Relevant] [Retrieved] zbiór odnalezionych dokumentów, [Relevant] zbiór dokumentów pasujących do zapytania Indeksacja pojedynczych termów Podstawowe założenie: Częstotliwość występowania różnych słów w tekście jest związana z ważnością tych słów dla reprezentacji treści Prosty schemat indeksacji: Oblicz Freq ji częstość termu T j w dokumencie D i Oblicz całkowitą częstość termu w zbiorze dokumentów TotalFre j = Σ i Freq ji dla i = 1,2,..., n. Uporządkować termy według całkowitej częstości Wyeliminować termy o zbyt wysokiej i zbyt niskiej częstości Pozostałe termy użyć jako termy indeksujące Wady tego podejścia? Analiza języka naturalnego, podział na termy, cd. Stop listy: Słowa pospolite często występujące w różnych dokumentach, a nie mające znaczenia dla treści tekstu. W języki angielskim np. a, the, and, at, for, no, not, of, there, to, with... analiza gramatyczna dostarcza stop-lists, głównie dla języka angielskiego. Stop listy różnią się dla specjalizowanych zbiorów dokumentów, np. teksty prawne: article lub paragraph. Analiza tzw. language corpus. Lematyzacja (ang. steming): Słowa są zbudowane jako syntaktyczne warianty pewnego podstawowego podsłowa, rdzenia tzw. tematu; np. słowa play, playing, plays, played, player posiadają wspólny temat play Analiza tematów dobrze rozwinięta dla języka angielskiego, np. algorytm PorterStemmer. W innych językach potrzebne bardziej specjalizowane podejścia, problemy w języku polskim. Potrzeba automatycznego rozpoznawania języka dokumentu. Stosowanie tzw. tezaurusów dla zastępowania niektórych słów szczegółowych terminami ogólniejszymi (np. WordNet) 5
Schemat doboru termów Bardziej praktyczny schemat indeksacji: 1. Zidentyfikuj pojedyncze słowa w tekście. 2. Wyeliminuj popularne słowa za pomocą stop list. 3. Użyj lematyzacji dla ograniczenia pozostałych słów do ich podstawowych tematów. 4. Dla wszystkich pozostałych termów T j w każdym dokumencie D i oblicz częstość tf ij jako liczbę wystąpień T j w D i. 5. Wybrać progową częstość T, i przypisać każdemu dokumentowi D i wszystkie termy T j dla których tf ij > T. Czy to jest wystarczające? Miary oceny termów Schematy indeksacji oparte na termach z wysoką częstością są dogodne ze względu na miarę kompletności. Dla miary precyzji dogodne dla indeksacji - tylko jeżeli częste termy występują nierównomiernie w zbiorze dokumentów. Precyzja jest raczej wyższa dla termów rzadko występujących w zbiorze dokumentów! Wykorzystuje się miarę df j liczba dokumentów w zbiorze N dokumentów, w których występuję term T j. Oblicza się tzw. odwrotną częstotliwość idf j = log(n/ df j ). Połączenie obu elementów indeksujących tf ij idf j spełnia oczekiwania wobec precyzji i kompletności wyszukiwania informacji. Wskaźnik ważności termu - tzw. waga termu: w ij = tf ij log(n/ df j ). Automatyczne indeksowanie Blueprint 1. Zidentyfikuj pojedyncze słowa w tekście. 2. Wyeliminuj popularne słowa za pomocą stop list. 3. Użyj lematyzacji dla ograniczenia pozostałych słów do ich podstawowych tematów. 4. Dla wszystkich pozostałych termów T j w każdym dokumencie D i oblicz współczynnik wagi termu w ij = tf ij log(n/ df j ). 5. Przypisz każdemu dokumentowi D i jego reprezentację za pomocą zbioru termów T, i wag im odpowiadającym w ij : D i {T 1, w i1 ;T 2, w i1 ;...; T t, w it } Więcej książka G. Salton Automatic Text Processing. 6
Wektorowy model przestrzeni termów Zbiór N dokumentów jest opisany za pomocą zbioru t termów indeksujących (ozn. T i ) Każdy dokument (zapytanie) D r (Q j ) jest reprezentowany jako wektor w t wymiarowej przestrzeni R t. j-ta składowa wektora, tzw. waga, jest liczbą wyrażającą związek (ważność) termu T i z danym dokumentu. 0 brak wystąpienia lub znaczenia termu w dokumencie, może być różnie obliczana. Zbiór dokumentów reprezentowany w przestrzeni wektorowej jako macierz (term-document matrix). T1 T2 L Tt D1 a11 a12 L a1t D2 a21 a22 L a2t M M M M M D N a N1 a N 2 L a Nt Ważenie termów / słów wagi jak dane słowo, lub term, jest charakterystyczne dla dokumentu? wiele różnych form: binarna w ij =1 lub w ij =0 częstość wystąpień - w ij =tf ij (t j ) tfidf (Salton) w ij =tf ij (t j )log(n/df ij (t j )) rola lematyzacji w procesie obliczania wag rola stop words w procesie obliczania wag macierz term-document (A) kolumny dokumenty wiersze słowa / termy Przykład macierz A 0.58 A = 0.58 0.58 Źródło: Prezentacja Carrot2 Milestone report, Stanisław Osiński 7
Obliczanie podobieństwa Dokument D r =(a r1,a r2,...,a rt ) Zapytanie Qj=(q j1,q j2,...,q jt ) Podobieństwo wektorów x i y mierzone jako iloczyn x y = x y cosα Jeżeli termy są nieskorelowane T i T i = 1 to t sim( D r, Q j ) = k = 1a rk q jk sim( D Q ) = r j t k = 1a rk q jk 2 = 1 = 1 t t k ( a rk ) k ( q jk ) 2 miara kosinusowa mierzy kąt między wektorami; jest znormalizowana <-1,1> i niezależna od wielkości dokumentów oraz liczby przypisanych im termów Pojęcie bliskości w macierzy A jesteśmy zainteresowani kątem jaki tworzą między sobą wektory dokumentów Identyczny kąt dokumenty są złożone z identycznych słów dokumenty są podobne T t a j q a i= ijq 1 i cosθ j = = a t t j q 2 2 2 2 a q i= 1 ij i= 1 i d j Θ q Źródło: Prezentacja Carrot2 Milestone report, Stanisław Osiński Przykład, c.d. ( ) T qˆ = 0.58 r = 0.58 0.58 T 0.81 = T Źródło: Prezentacja Carrot2 Milestone report, Stanisław Osiński 8
Redukcja wymiaru danych Trudności w przetwarzaniu, indeksowaniu i przeszukiwaniu wielu dokumentów opisanych bardzo dużą liczbą termów Potrzeba redukcji wymiaru danych tekstowych: Latent Sematic Indexing Podobne dokumenty mają podobne częstości słów. Macierz czestości dokumentów i termów należy transformować (SVD singular value decomposition) do postaci iloczynu trzech macierzy A,S,B, gdzie A i B mają ortogonalne kolumny a S jest macierzą diagonalną; Uwzględnia się tylko k [100,300] największych wartości S, tworząc nową macierz X rzędu k najbliższą oryginalnej macierzy Stosowane także inne algorytmy, np. grupowania lub SOM Dekompozycja SVD pomijając szczegóły matematyczne kolumny macierzy U tworzą ortogonalną bazę w przestrzeni kolumn macierzy A wektory te wykazują podobieństwo do tematów obecnych w A = A = U Σ T V Źródło: Prezentacja Carrot2 Milestone report, Stanisław Osiński Przykład Lingo 0.65 U = 0.65 0.39 0.75 0.66-0.28-0.28 0.92-0.66 0.75 - P = 0.56 0.83 Zakładamy, że r A = 2 (tzn, pod uwagę brane są dwa pierwsze wektory kolumnowe macierzy U). Źródło: Prezentacja Carrot2 Milestone report, Stanisław Osiński 9
Typowe zadania w Text - Mining Wyszukiwanie dokumentów Znajdź p dokumentów najbliższych zapytaniu Q Określ podobieństwo dwóch dokumentów Rangowanie ważności różnych dokumentów Grupowanie (poszukiwanie klasyfikacji) dokumentów Algorytmy grupowania, zwłaszcza hierarchiczne, wykorzystujące termy Także grupowanie dokumentów na podstawie podobieństw wynikających ze wspólnych autorów, źródła pochodzenia Automatycznie klasyfikowanie dokumentów Analiza powiązań zależności między jednostkami tekstu Analiza dokumentów WWW lub XML WWW: Stan aktualny Ogromna baza informacji, lecz nieustrukturalizowane, niejednorodne i rozproszone środowisko; Gwałtownie i dynamicznie rozwijające się zasoby: średnio 1 nowy serwer co 2 godziny 5 milionów stron WWW w 1995 800 milionów w 1999 1.5 mld dokumentów w 2001 Szybka dezaktualizacja wskaźników i opisów Potrzeba lepszych narzędzi odkrywania wiedzy o zawartości i zasobach. Hosts 40000000 35000000 30000000 25000000 20000000 15000000 10000000 5000000 0 Internet growth Sep-69 Sep-72 Sep-75 Sep-78 Sep-81 Sep-84 Sep-87 Sep-90 Sep-93 Sep-96 Sep-99 The Asilomar Report urges the database research community to contribute in deploying new technologies for resource and information retrieval from the World-Wide Web. WWW: Wyzwania Przykład wzrostu danych: Yahoo! (Kohavi2000) Obsługuje ponad 680 milion żądań stron dziennie. Dane w Web log data narastają w tempie do 6GB/h! Olbrzymie zasoby informacji: artykuły, czasopisma (Elsievier), wiadomości (CNN), sklepy internetowe (Amazon), usługi finansowe (banki, giełda) podróże i usługi turystyczne WWW gigantyczny zbiór dokumentów, także zawierający informacje o powiązaniach (hyper-links); informacje o dostępie i sposobie użycia zasobów 10
Web Mining Klasyfikacja zadań Web Mining Web Content Mining Web Structure Mining Web Usage Mining Web Page Content Mining Search Result Mining General Access Pattern Tracking Customized Usage Tracking wg. J.Han, Data mining Web-mining: Wyszukiwanie informacji w serwisach WWW Internet olbrzymia ilość informacji, lecz gdzie i jak znaleźć to co Nas interesuje? Różnego rodzaju serwisy wspomagające wyszukiwanie: Multiwyszukiwarki Pojedyncze wyszukiwarki pokrywają mała cześć zasobów; Wyszukiwarki udzielają różnych odpowiedzi na te same zapytanie Multiwyszukiwarki (metawyszukiwarki) kierują te same zapytanie jednocześnie do kilku wyszukiwarek 11
Prezentacja wyników Interfejs większości wyszukiwarek udostępnia rankingową listę dokumentów Dokumenty opisane podstawowymi informacjami: adres URL, tytuł dokumentu, streszczenie lub opis dokumentu, data/rozmiar.., tzw. ranking Ranking dokumentów jest przygotowywany: dynamicznie podobieństwo między zapytaniem a dokumentem statycznie (przygotowany off-line): opinie redaktorów, popularność, zawartość informacyjna, PageRank, lokalizacja,... Ograniczenia list rankingowych Idea grupowania wyników zapytań Ranked-list presentation Grouping engine (post-search clustering) Salsa:foods Salsa:dance inne kategorie Więcej: www-idss.cs.put.poznan.pl/carrot 12
Grupowanie odpowiedzi na zapytania Co dalej? Obecne narzędzia ograniczone do przetwarzania informacji tekstowych. Wyszukiwarki do przetwarzania informacji multimedialnych!? Możemy zapytać : Kogo przedstawia to zdjęcie? Lub poprosić : Odnajdź podobne Gdzie szukać dalej? Książki G. Salton: Automatic Text Processing. J. Han, M. Kamber: Data mining. M. Kłopotek: Inteligentne wyszukiwarki internetowe. Internet www.cs.put.poznan.pl/dweiss/sections/carrot/ (spójrz tam na podkatalog publications) Inne wiele, np. http://searchenginewatch.com/ www.vivisimo.com 13