Data mining – Carrot
2Data mining
Definicja 1:
„Nie trywialne wydobywanie ukrytej,
poprzednio nieznanej i potencjalnie użytecznej informacji o danych”
(W. Frawley, G. Piatetsky-Shapiro, C Matheus Knowledge in Databases: An Overview, 1992)
Definiacja 2:
„Nauka zajmująca się wydobywaniem informacji z dużych zbiorów danych lub baz danych”
(D. Hand, H. Mannila, P. Smyt Principles of Data Maining, 2001)
Odkrywanie wiedzy
Czyszczenie danych -
usuwanie szumu, niespójnych danych
Integracja danych – łączenie danych z różnych źródeł
Selekcja danych – wybór ważnych danych
Transformacja danych – do postaci odpowiedniej do DM
Data Mining – zastosowanie odpowiednich metod
Ocena
Prezentacja wiedzy
Data mining - metody
Streszczanie
Poszukiwanie asocjacji
Klasyfikacja
Grupowanie (klastrowanie)
Carrot
2 System służący do grupowania wyników z wyszukiwarek internetowych,
Stworzony przez Polaków: Stanisława Osińskiego i Dawida Weissa,
System open-source.
Carrot
2- działanie
1. Przekierowuje żądania do wyszukiwarki
2. Pobiera kilkaset początkowych wyników
3. Analizuje wyniki poszukując wspólnych, opisowych fraz
4. Frazy te są traktowane jako reprezentanci grup tematycznych.
Opcje wyszukiwania
Carrot
2- grupowanie
Lista rankingowa
Carrot
2- grupowanie
Grupowanie wyników
Carrot
2- grupowanie
Grupowanie na podstawie fragmentu dokumentów (snippet)
+ szybki czas wyszukiwania
- jakość grupowania zależy od snipetów
Carrot
2– działanie algorytmów grupujących
1. Wyszukiwanie w snippetach powtarzających się fraz
2. Tworzenie grup kandydujących
3. Porównanie tych grup i usunięcie grup identycznych
Grupowanie - algorytmy
Możliwość wyboru spośród 5 algorytmów
• Lingo,
• STC (Suffix Tree Clustering),
• K-means,
• by URL,
• by source
STC
1. Czyszczenie danych
◦ Identyfikacja fraz i zdań w snippetach
◦ Eliminacja znaków interpunkcyjncyh
◦ Eliminacja słów niedozwolonych (tzw.
stopwords)
STC
2. Tworzenie drzewa sufiksowego
STC
3. Identyfikacja grup bazowych
STC
4. Łączenie grup bazowych
◦ Podobieństwo między grupami:
Dwie grupy ( Bn , Bm ) są podobne gdy:
Dla a i b:
oraz
◦ Łączenie grup metodą przyrostową
2 2 3
, 1
3 , 2 , 1 3
,
1
3 2 3
, 2 , 1
3 , 2 , 1 3
,
1
Lingo
Stworzony przez Stanisława Osińskiego
Odwrotny proces grupowania – najpierw opisy, później dokumenty
Lingo
• Eliminacja znaków interpunkcyjnych
• Identyfikacja języka
• Eliminacja stopwords
Czyszczenie tekstu
• Drzewo sufiksowe
Identyfikacja fraz częstych
• Stworzenie macierzy termin – dokument
• Dekompozycja SVD
Znalezienie grup tematycznych
Dopisanie frazy opisowej do każdej grup
• Eliminacja powtórzeń
Dopasowanie dokumentów do grup
• Sortowanie
• Wyświetlenie grup
Prezentacja wyników
Lingo vs STC vs k-means
LINGO STC K-means
Różnorodność grup
Wysoka, wyróżniane są
małe grupy
Niska, rzadko wyróżniane małe
grupy
Niska, małe grupy rzadko
wyróżniane Opis grup Długi, bardziej
opisowy
Krótszy, ale wystarczający
Najczęściej jedno słowo,
Wydajność
Niska, przy ponad 1000 dokumentach
duży czas wyszukiwania i
duża zajętość pamięci
Wysoka, szybkie wyszukiwanie w czasie liniowym
Niska
Lingo STC k-means
Kiedy stosować?
• Różnorodność grup
• Wyróżnienie małych grup
• Dobre opisy grup
Lingo
• Szybkość
• Duża liczba dokumentów
STC
• Nie nakładające się grupy
k-means
Carrot
2- narzędzia
Carrot2 Java Api Carrot2 C# Api
Carrot2 Web Application
Carrot2 Command Line Interface Carrot2 Document Clustering
Workbench