Post on 02-Jun-2020
Metody grupowania i ich implementacja do eksploracji danych
postaci symbolicznej
Dariusz Mazur
10 stycznia 2005
2
Spis treści
Spis tabel 6
Spis algorytmów 8
Wykaz ważniejszych oznaczeń 9
Wstęp 10
1 Eksploracja danych 17
1.1 Geneza eksploracji danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.2 Cele i wymagania eksploracji danych . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.3 Ocena jakości eksploracji danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.4 Techniki eksploracji danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.5 Wykorzystywanie zewnętrznej wiedzy . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.6 Eksploracja danych lingwistycznych . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.7 Eksploracja danych biznesowych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
1.7.1 Segmentacja bazy klientów . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
1.7.2 Grupowanie w transakcyjnych bazach danych . . . . . . . . . . . . . . . . . . 38
1.7.3 Analiza koszyka zakupów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
1.7.4 Wysyłanie katalogów reklamowych . . . . . . . . . . . . . . . . . . . . . . . . 39
1.8 Analiza zachowań internautów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
1.9 Zagadnienie grupowania w katalogu towarów . . . . . . . . . . . . . . . . . . . . . . 40
2 Dane 42
2.1 Rodzaje danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.2 Porównywanie danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2.1 Miary odległości . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.2.2 Miara podobieństwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3
4 SPIS TREŚCI
2.2.3 Miary asocjacji . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.2.4 Miary odległości dla grup danych . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.3 Dane symboliczne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.4 Dane lingwistyczne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.4.1 Lingwistyka formalna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.4.2 Wyrażenia symboliczne i lingwistyczne . . . . . . . . . . . . . . . . . . . . . . 55
2.4.3 Rozpoznawanie znaczeń w dokumentach tekstowych . . . . . . . . . . . . . . 57
2.5 Tematyczne bazy danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.6 Wiarygodność danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3 Grupowanie 62
3.1 Wstęp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.1.1 Podział metod grupowania . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.1.2 Zastosowanie grupowania . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.2 Formalny zapis problemu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.3 Grupowanie iteracyjne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.3.1 grupowanie K-średnich . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.3.2 Grupowanie metodą najbliższego sąsiada . . . . . . . . . . . . . . . . . . . . . 73
3.3.3 Grupowanie rozmyte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.4 Aglomeracyjne grupowanie hierarchiczne . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.5 Grupowanie podziałowe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
3.6 Grupowanie dokumentów tekstowych . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
3.7 Grupowanie genetyczne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
3.8 Ocena jakości grupowania . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
3.8.1 Podstawowe definicje związane z pomiarami jakości grupowania . . . . . . . . 91
3.8.2 Miara jednorodności . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
3.8.3 Reguła podziału na 2 części . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
3.8.4 Test χ2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
3.8.5 Przyrost informacji . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
3.8.6 Wskaźnik Xie - Beni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4 Metody oparte o listy decyzyjne 97
4.1 Wprowadzenie list decyzyjnych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.1.1 Tworzenie formuł warunku . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.2 Zasada działania metody grupowania . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.2.1 Analogia do metod hierarchicznych . . . . . . . . . . . . . . . . . . . . . . . . 101
SPIS TREŚCI 5
4.2.2 Tworzenie macierzy przynależności . . . . . . . . . . . . . . . . . . . . . . . . 101
4.2.3 Funkcja kryterium . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.3 Algorytm grupowania wykorzystujący pełny przegląd . . . . . . . . . . . . . . . . . . 102
4.4 Algorytmy oparte na przeszukiwaniu heurystycznym . . . . . . . . . . . . . . . . . . 104
4.5 Algorytm wykorzystujący mechanizm genetyczny . . . . . . . . . . . . . . . . . . . . 105
4.6 Dyskusja na temat zalet grupowania opartego o listy decyzyjne . . . . . . . . . . . . 106
5 Badanie algorytmów grupowania na danych symbolicznych 109
5.1 Program wspomagający eksplorację danych . . . . . . . . . . . . . . . . . . . . . . . 110
5.2 Testowe zbiory danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
5.3 Badanie wrażliwości algorytmów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5.3.1 Cel i zakres badań . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5.3.2 Otrzymane rezultaty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
5.4 Badanie algorytmów nie wymagających funkcji odległości . . . . . . . . . . . . . . . 120
5.4.1 Cel i zakres badań . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
5.4.2 Otrzymane rezultaty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
5.5 Wnioski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
6 Selekcja i grupowanie danych lingwistycznych 135
6.1 Zagadnienie uwzględniania dostępnej wiedzy procesie grupowania . . . . . . . . . . . 136
6.1.1 Wykorzystanie wiedzy zawartej w słowach . . . . . . . . . . . . . . . . . . . . 136
6.1.2 Słownik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
6.1.3 Zasady grupowania nazw towarów . . . . . . . . . . . . . . . . . . . . . . . . 138
6.2 Badanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
6.2.1 Analiza danych wejściowych . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
6.2.2 Konstrukcja nazwy w katalogu towarów . . . . . . . . . . . . . . . . . . . . . 141
6.2.3 Metoda wykorzystania słownika do porównywania bardzo krótkich tekstów . 142
6.2.4 Przebieg badania . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
6.2.5 Badanie funkcji odległości dla danych lingwistycznych . . . . . . . . . . . . . 145
6.2.6 Badanie skuteczności grupowania danych lingwistycznych . . . . . . . . . . . 147
6.3 Wnioski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
7 Podsumowanie 154
Bibliografia 159
Spis tabel
1.1 Porównanie wiedzy cichej i formalnej[101] . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1 Tabela koincydencji dla atrybutów binarnych. . . . . . . . . . . . . . . . . . . . . . 48
2.2 Funkcje podobieństwa stosowane dla dystrybuant zmiennej losowej. . . . . . . . . . 53
2.3 Semantyka składników elementarnych [63]. . . . . . . . . . . . . . . . . . . . . . . . 59
3.1 Tablica koincydencji dla grupy j. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
5.1 Testowa mała baza obiektów. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5.2 Przykład tabeli kodowania danych symbolicznych. . . . . . . . . . . . . . . . . . . . 115
5.3 Grupowanie FCMdd dla różnych funkcji odległości dla małej bazy. . . . . . . . . . . 116
5.4 Podział dla grupowania FCMdd dla różnych funkcji odległosci dla małej bazy. . . . . 116
5.5 Trafność dla grupowania FCMdd dla różnych funkcji odległości dla małej bazy. . . . 117
5.6 Podział dla grupowania aglomeracyjnego mała baza. . . . . . . . . . . . . . . . . . . 117
5.7 Trafność dla grupowania aglomeracyjnego dla małej bazy. . . . . . . . . . . . . . . . 117
5.8 Jakość grupowania aglomeracyjnego dla małej bazy. . . . . . . . . . . . . . . . . . . . 118
5.9 Grupowanie FCMdd dla różnych funkcji odległości dla bazy głosowań . . . . . . . . 118
5.10 Trafność dla grupowania FCMdd dla różnych funkcji odległości dla bazy głosowań . 119
5.11 Dla grupowania aglomeracyjnego dla bazy głosowań . . . . . . . . . . . . . . . . . . 119
5.12 Trafność dla dla grupowania aglomeracyjnego dla bazy głosowań . . . . . . . . . . . 119
5.13 Przyrost informacji dla różnych algorytmów grupowania bez użycia funkcji odległości
dla małej bazy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
5.14 Podział dla algorytmów grupowania bez użycia funkcji odległości dla małej bazy . . 127
5.15 Trafność uzyskanego grupowania dla różnych algorytmów grupowania bez użycia funk-
cji odległości dla małej bazy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
5.16 Lista reguł decyzyjnych pełny przegląd dla małej bazy . . . . . . . . . . . . . . . . . 128
5.17 Lista reguł decyzyjnych algorytm heurystyczny dla małej bazy . . . . . . . . . . . . 128
6
SPIS TABEL 7
5.18 Lista reguł decyzyjnych algorytm genetyczny dla małej bazy . . . . . . . . . . . . . . 128
5.19 Lista reguł decyzyjnych algorytm pełny przegląd dla bazy głosowań . . . . . . . . . . 128
5.20 Lista reguł decyzyjnych algorytm heurystyczny dla bazy głosowań . . . . . . . . . . . 129
5.21 lista reguł decyzyjnych algorytm genetyczny dla bazy głosowań . . . . . . . . . . . . 129
5.22 Przyrost informacji dla algorytmów bez użycia funkcji odległości dla bazy głosowań . 130
5.23 Trafność uzyskanego grupowania dla algorytmów bez użycia funkcji odległości dla
bazy głosowań . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
6.1 Przypisywanie znaczeń na podstawie słownika . . . . . . . . . . . . . . . . . . . . . . 142
6.2 Mały katalog towarów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
6.3 Tablica wag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
6.4 Lista reguł decyzyjnych heurystyczny dla bazy towarów . . . . . . . . . . . . . . . . 145
6.5 Jakość grupowania FCMdd dla różnych funkcji odległości dla bazy towarów . . . . . 147
6.6 Jakość grupowania a różnymi algorytmami bez użycia funkcji odległości dla bazy to-
warów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
6.7 Otrzymany podział dla grupowania algorytmami z tabeli 6.6 . . . . . . . . . . . . . 149
6.8 Otrzymany podział dla grupowania algorytmami z tabeli 6.6 cz.2 . . . . . . . . . . . 150
6.9 Otrzymany podział dla grupowania algorytmami z tabeli 6.6 cz.3 . . . . . . . . . . . 151
Spis algorytmów
3.1 Algorytm grupowania k-średnich . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.2 Grupowanie metodą najbliższego sąsiada . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.3 Algorytm PAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.4 Grupowanie rozmyte FCMdd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.5 Grupowanie aglomeracyjne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
3.6 Grupowanie podziałowe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.7 Przypisywanie obiektów do grup na podstawie listy decyzyjnej . . . . . . . . . . . . 98
4.8 Procedura przypisywania obiektów do grup na podstawie listy reguł . . . . . . . . . 100
4.9 Rekurencyjne przypisywanie obiektów do grup na podstawie listy reguł . . . . . . . 101
4.10 Heurystyczny metoda liniowa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.11 Grupowanie wykorzystujące przeszukiwanie heurystyczne . . . . . . . . . . . . . . . 122
5.12 Grupowanie dokonujące pełnego przeglądu . . . . . . . . . . . . . . . . . . . . . . . . 124
8
Wykaz ważniejszych oznaczeń
A = a1, a2, . . . zbiór wartości atrybutu,
Ai(x) ∈ Ai wartość i-tego atrybutu opisującego obiekt,
α(x) formuła logiczna odwołująca się do wartości
atrybutów obiektu,
X zbiór obiektów,
|X| liczebność zbioru X,
Ci ⊂ X grupa,
|Ci| liczebność grupy i,
d(·) symbol miary odległości pomiędzy obiektami,
C zbiór grup możliwych do wyznaczenia w zbiorze przykładów P ,
|P | liczebność zbioru przykładów,
|PC | liczebność podzbioru przykładów zbioru P należących do grupy C,
pA prawdopodobieństwo że obiekt należy do podzbioru XA,
pAi prawdopodobieństwo że obiekt należący do XA należy do grupy Ci,
V = vj zbiór elementów wzorcowych (prototypów) grup,
U = uik macierz przynależności obiektów do poszczególnych grup.
9
Wstęp
Gwałtowny rozwój techniki obliczeniowej spowodował, że człowiek obecnie zalewany jest stru-
mieniami danych. Gospodarka, nauka, medycyna, meteorologia oraz każda inna dziedzina tworzą
olbrzymie ilości danych, gromadzonych następnie w pamięciach komputerów. Tak jak maszyna pa-
rowa zapoczątkowała rewolucję przemysłową, skutkiem której był wielokrotny, o kilka rzędów wiel-
kości, wzrost wydajności pracownika w zakresie czynności fizycznych, tak komputery spowodowały
ogromny wzrost wydajności pracowników umysłowych. Obecne czasy ogłoszono erą informacji i wie-
dzy, a podstawowymi wyznacznikami są komputer i internet. Możliwości techniczne są olbrzymie,
w komputerach gromadzone są gigantyczne ilości danych, które bez większego trudu mogą zostać
dostarczone w dowolne miejsce świata. Dane zbierane i gromadzone są nieomal wszędzie, często zu-
pełnie automatycznie, bez udziału człowieka. Obserwowany do niedawna brak dostępnych danych
przekształcił się w ich nadmiar, trudny do ogarnięcia i analizy – i to właśnie zaczyna stanowić
poważny, o ile nie najpoważniejszy problem. Kłopot pojawia się na styku człowiek — komputer.
Człowiek ze swym umysłem daleko doskonalszym od najlepszej i najbardziej rozbudowanej maszyny
ma jednak ograniczone możliwości percepcji. Natomiast komputery, mimo dużej objętości pamię-
ci i szybkości działania (dla działań elementarnych przekraczających ludzkie możliwości), potrafią
w znikomym stopniu zrozumieć człowieka i świat (odgadnąć jego zamiary, domyśleć się jego intencji
czy potrzeb). Z uwagi na to, że ostatecznym odbiorcą danych i informacji jest człowiek, dla nie-
go dokonuje się wszelkiego rodzaju przetwarzania danych. Problemem bowiem nie jest efektywne
gromadzenie i przetwarzanie danych, lecz zdolność interpretacji i wyciągania użytecznych wniosków
[38].
Zbieranie i gromadzenie danych ma swój głęboki sens, bo stanowi przyczynek do zdobywania
wiedzy. Po to człowiek bada i analizuje otaczający go świat, by go lepiej poznać. W celu poszerze-
nia swych możliwości konstruuje on systemy, które pomagają osiągać zamierzony cel [96]. Proces
przekształcania danych w Wiedzę jest bardzo złożony, do tej pory poznano zaledwie część z jego
wielu etapów [101]. Wiele wysiłku jest poświęcane skonstruowaniu systemu, który będzie umożliwiał
lub wspomagał w możliwie najszerszym zakresie pozyskiwanie Wiedzy [75]. Wspomaganie człowieka
przez komputer polega na tym, że komputer wykonuje pewne czynności (przekształcenia danych)
10
11
analogicznie, jak to by zrobił człowiek tylko, że wielokrotnie szybciej i taniej.
Główne zagadnienie pozyskiwania wiedzy, jakim jest eksploracja danych, jest bardzo szerokie i ma
charakter interdyscyplinarny [39]. Nawet pobieżne analiza skutkuje wkraczaniem na wiele różnych
obszarów. Stosowane są techniki wywodzące się ze statystyki [64], teorii informacji [118], systemów
uczenia maszynowego [27], baz danych [25], zarządzania wiedzą [11, 101] czy lingwistyki [110, 130].
W ramach eksploracji danych można wyróżnić kilka kierunków badań nad technikami tam stoso-
wanymi. W pracach [38, 25, 3, 11, 89] wymienia się poszukiwanie asocjacji, klasyfikację, grupowanie,
regresję, analizę funkcjonalną, analizę skupień, analizę szeregów czasowych, wyszukiwanie anomalii.
Już sama lista zagadnień pokazuje jak szerokim jest zagadnienie eksploracji danych, każda z technik
umożliwia uzyskanie użytecznych wyników w innej formie bądź dla innego rodzaju interpretacji.
W niniejszej pracy szczególną uwagę poświęcono problemowi eksploracji z danych symbolicznych.
Przegląd literatury w zestawieniu z wielkimi oczekiwaniami i potrzebami w tym zakresie wskazuje
na potrzebę systematycznych badań w tym zakresie [132]. Szacuje się że 70-90 procent informacji ma
postać symboliczną [6, 123, 24]. Wiele z tych danych ma postać lingwistyczną, czasami jest to czysty,
naturalny język z pełną gramatyką, słownikiem a czasami tylko sztucznie wybrany podzbiór, wystar-
czający do reprezentacji przyjętych informacji. Potrzeby są widoczne na każdym etapie eksploracji
danych. Począwszy od przygotowania zbiorów danych, które zawierając dane symboliczne wymagają
różnorodnych technik analizy z uwagi na bardzo szerokie spektrum stosowanych reprezentacji czy
zawartości informacyjnej [42] . W zależności od rodzaju danych można mieć do czynienia z informa-
cją niedokładną, niepewną ale również informacją zależną od kontekstu danych, stosowanego języka,
semantyki [70, 132].
W zakresie eksploracji danych, z uwagi na obszerność tematyki, przeprowadzono dyskusję jed-
nego rodzaju metod, mianowicie grupowania. Pozyskiwanie wiedzy metodami grupowania pozostaje
w kręgu zainteresowań autora w szczególności pozyskiwania wiedzy w zastosowaniach biznesowych i
przetwarzania baz danych pochodzących z systemów internetowych (analiza zachowań internautów),
marketingowych (analiza zachowań konsumentów), medycznych (identyfikacja jednostek chorobo-
wych) [9, 10].
Grupowanie jest zagadnieniem polegającym na identyfikacji naturalnych grup, w których obiekty
podobne do siebie mają zostać umieszczone w jednej grupie, natomiast obiekty znacznie się różniące
w różnych grupach [71]. Grupowanie jest trudnym problemem kombinatorycznym a stosowane w róż-
nych środowiskach i dziedzinach przekłada się na różne koncepcje, metody i efekty możliwe zarówno
do zastosowania jak i do otrzymania [70]. Zagadnienie grupowania jest przedmiotem zainteresowań
badaczy z zakresu statystyki [34], systemów uczących [40, 27], baz danych [99]. Podstawowy podział
metod grupowania omówiony został w [70], zastosowanie do eksploracji baz danych w [25]. Stosuje się
również techniki wykorzystujące metody należące w różnych obszarów, przykładowo w [58, 37, 70].
12 WSTĘP
Istotne znaczenie dla zagadnienia eksploracji danych ma teoria zbiorów rozmytych zaproponowana w
[129]. Samo zagadnienie zastosowanie grupowania, jako problem znajdowania interesujących struktur
wśród zgromadzonych danych, zaprezentowano w [113], w [12] zaprezentowano algorytm grupowania
rozmytego jako szczególny przypadek algorytmu klasyfikacji opisanego w [7]. Innego rodzaju bada-
nia w celu uogólnienia idei grupowania przedstawiono w [80]. Dotyczyły one koncepcji identyfikacji
i ekstrakcji pojedynczych klastrów zamiast dokonywania kompletnego rozdziału zbioru na ustalo-
ną ilość grup. Techniki grupowania wykorzystują metody zaczerpnięte z metod ewolucyjnych [42],
genetycznych [56] i heurystycznych [15, 78].
Zagadnienie grupowania obejmuje trzy aspekty:
• sposób ujęcia przetwarzanych danych,
• sposób określania podobieństwa i niepodobieństwa, zgodnie z którym łączy się obiekty w grupy,
• metody poszukiwania optymalnych rozwiązań, w tym przypadku rozwiązaniem jest dokonaniepodziału na grupy.
Pomimo intensywnego rozwoju technik eksploracji danych, nadal istnieje wiele zagadnień, które
wymagają dalszych badań. W zakresie przetwarzania danych symbolicznych, które ze swej natury
obejmują znacznie większy obszar, wiele zagadnień znajduje się na początkowym etapie rozwią-
zywania. Część z nich jest inspirowane bezpośrednio z technik przetwarzania danych numerycz-
nych, natomiast inne wykorzystują oryginalne rozwiązania. Prace w tym zakresie przedstawiono
w [53, 56, 51, 45].
Kolejnym obszarem grupowania stały się dane lingwistyczne — wykorzystujące język naturalny,
czyli formę wymiany informacji stosowaną od tysięcy lat przez człowieka [105, 109]. Określenia
lingwistyczne realizują pełny opis obiektu, zarówno jakościowy jak i ilościowy [65, 131, 114]. Dalej
dotyczą wykorzystania zasad działania rozumu u człowieka [131], przetwarzaniem wiedzy [103, 101].
Rozszerzenie zakresu zainteresowań na dane symboliczne skutkuje rezygnacją z wielu założeń
leżących u podstawy przetwarzania danych ilościowych. Wymienia się brak możliwości reprezen-
tacji obiektów w sensie punktów w przestrzeni euklidesowej, atrybuty opisujące obiekty należą do
skal słabych lub są całkowicie niemierzalne, przez co niemożliwe jest wykorzystanie wielu funkcji
podobieństwa, z uwagi na zależności kontekstowe trudno definiowalne są heurystyki ograniczające
obszar przeszukiwań. W zależności od badanego rodzaju danych powyższe ograniczenia i problemy
występują z różnym nasileniem.
Należy również w tym miejscu przytoczyć jeden z celów eksploracji danych: ma ona służyć po-
zyskaniu nowej wiedzy. W zakresie pozyskiwania wiedzy istotną rolę odgrywają reguły decyzyjne.
Reprezentacja wiedzy w postaci reguł uznawana jest za czytelniejszą dla człowieka niż inne reprezen-
tacje [28, 29, 97]. Podkreśla się jej modularność i przydatność do analizy przez eksperta. Ponieważ
13
w przewarzającej części wiedzę tworzy człowiek jedynie przy pomocy komputera, to należy stoso-
wać takie metody, które „pomogą” mu w możliwie najlepszy sposób. Jednym z kierunków badań jest
opracowanie nowych metod prezentacji wyników, zgodnych z możliwościami percepcji człowieka, tak
aby możliwie zminimalizować ilość „strat” informacji i wiedzy na styku człowiek – komputer. W tym
kontekście znaczenia nabiera kierunek badań związany z grupowaniem konceptualnym, postrzega-
niem mentalnym [97, 113, 121, 124, 130]. Jednocześnie dla całości grupowania danych rzeczywistych
niezwykle istotne znaczenie ma dobór funkcji określających podobieństwo grupowanych obiektów
[109] i jakość (w sensie realizacji zadanego celu) tworzonych grup. Równie ważne jest rozumienie
znaczenia analizowanych danych i „przekazanie” tej wiedzy maszynie [33].
Cel pracy
Celem pracy jest zbadanie metod eksploracji danych postaci symbolicznej oraz przedstawienie
własnych propozycji metod grupowania. Analizie zostały poddane metody grupowania w kontekście
danych symbolicznych oraz lingwistycznych. W tym celu dokonano przeglądu literatury zawierającej
treści związane z niniejszą tematyką, dokonano analizy dziedziny grupowania, jaką są dane biznesowe
oraz dane lingwistyczne. Przeprowadzono badanie metod grupowania przydatnych do przetwarzania
danych wymienionych postaci. W zakresie własnych propozycji metod grupowania przedstawiono
metodę grupowania opartą o listy decyzyjne. Stanowi ona alternatywne rozwiązanie dla zagadnienia
grupowania danych symbolicznych. W oparciu o tą metodę autor zaproponował i zaimplementował
trzy nowe algorytmy grupowania.
Zakres pracy
Zakres pracy oraz cele szczegółowe są następujące:
• analiza zbiorów danych w aspekcie ich wykorzystania w procesie pozyskiwania wiedzy,
• porównanie metod grupowania danych symbolicznych,
• adaptacja wybranych metod i algorytmów do analizy danych symbolicznych,
• przedstawienie metody uwzględniania dostępnej wiedzy o zbiorze danych w procesie porówny-wania tekstów,
• przedstawienie metody porównywania danych lingwistycznych o szczególnych właściwościach,jakimi są teksty pochodzące z katalogu towarów,
• przedstawienie algorytmu grupowania typu pełny przegląd opartego o listy decyzyjne,
14 WSTĘP
• przedstawienie heurystycznego algorytmu grupowania opartego o listy decyzyjne,
• przedstawienie genetycznego algorytmu grupowania opartego o listy decyzyjne.
Autor niniejszej pracy zaprojektował i napisał program komputerowy, w którym zaimplemen-
tował wszystkie badane algorytmy i metody. Przy jego pomocy dokonał analizy i porównania do-
stępnych metod grupowania w zależności od niektórych elementów takich jak grupowana dziedzina,
stosowane funkcje odległości oraz inne parametry wejściowe. Celem przeprowadzonych badań by-
ło wykazanie istnienia zbiorów danych, dla których zaproponowana metoda daje lepsze wyniki niż
pozostałe metody grupowania.
Teza pracy
W pracy formułuje się następującą tezę:
Zaproponowana metoda grupowania oparta o listy decyzyjne jest alternatywną metodą grupo-
wania danych symbolicznych, a w niektórych przypadkach lepszą od dotychczas stosowanych
metod grupowania.
Tezy szczegółowe:
1. metody grupowania nie wykorzystujące funkcji odległości, oparte wyłącznie o kryterium jakości
grupowania, w niektórych przypadkach lepiej nadają się do grupowania danych symbolicznych,
2. dzięki wykorzystaniu dodatkowej wiedzy o znaczeniu słów, użytych w nazwach grupowanych
obiektów, uzyskuje się lepsze wyniki grupowania (bardziej zgodne z oczekiwaniami ekspertów),
3. dzięki zastosowaniu listy reguł do prezentacji rezultatów grupowania, metoda grupowania opar-
ta o listy decyzyjne, jest lepsza od metod prezentujących wyniki w postaci macierzy przypisań
czy też obiektów wzorcowych, z punktu widzenia percepcji człowieka.
Treść pracy
Rozdział 1 omawia podstawowe obszary, które obejmuje eksploracja danych: powiązanie z potrze-
bami informacyjnymi, pozyskiwaniem wiedzy, stosowane techniki analizy, oczekiwane rezultaty. W
rozdziale tym zawarte jest ogólne, opisowe wprowadzenie do problemu eksploracji danych. Kluczo-
wym w procesie badania metod eksploracji danych jest wyznaczenie hierarchii kryteriów, wg których
dokonana zostanie ocena wyników. Własną hierarchię kryteriów autor niniejszej pracy przedstawił
w podrozdziale 1.3. W podrozdziale 1.7 przedstawiono zagadnienia eksploracji danych wywodzą-
cych się z obszaru danych biznesowych. W podrozdziale 1.8 przedstawiono potrzebę i możliwość
15
eksploracji w obszarach danych związanych w Internetem, takimi jak analiza zachowań internautów
w kontekście zawartości stron internetowych. Omówiono dostępny zakres danych oraz możliwości po-
zyskania wiedzy. Oprócz szeregu znanych z literatury zadań autor zaproponował własne zagadnienie
wchodzące w zakres eksploracji danych jakim jest grupowanie w katalogu towarów (podrozdział
1.9). Tematyka kolejnych rozdziałów obejmuje podstawy teoretyczne wykorzystywane w dalszym
toku pracy.
W rozdziale 2 omówiono rodzaje danych z jakimi ma się do czynienia w procesie eksploracji
danych. Ukazano różnorodność informacyjną danych spotykaną w bazach danych. Przedstawiono
dane numeryczne, symboliczne, lingwistyczne i ich, istotne z punktu widzenia dalszego przetwarzania,
własności.
Rozdział 3 przedstawia podstawowe metody grupowania – głównej techniki eksploracji wykorzy-
stywanej w niniejszej pracy. Omówiono grupowanie hierarchiczne, optymalizacyjne, wykorzystujące
zbiory rozmyte, algorytmy genetyczne.
Rozdział 4 zawiera jedną z głównych propozycji autora jaką są metody grupowania wykorzy-
stujące jako podstawę listy decyzyjne. W rozdziale tym przedstawiono podstawowe założenia tej
metody oraz zaproponowano trzy algorytmy ją wykorzystujące. Są to algorytm pełnego przeglądu,
algorytm heurystyczny metoda liniowa oraz algorytm adaptujący metody genetyczne. Podstawo-
we zalety niniejszej metody to: możliwość grupowania danych symbolicznych bez potrzeby użycia
funkcji odległości (funkcji porównującej obiekty); większa, w stosunku do metod hierarchicznych,
różnorodność kształtów otrzymywanych podziałów; nowa forma prezentacji rezultatu grupowania
jaką jest zapis listy decyzyjnej. W podrozdziale 3.8 autor przedstawił sposób interpretacji i wyko-
rzystania nowej formy prezentacji rezultatu grupowania jakim jest lista reguł. Badania skuteczności
przedstawionej metody autor przeprowadził poprzez porównanie rezultatów grupowania z innymi
metodami. Przebieg badań opisany jest w podrozdziałach 5.4 oraz 6.2.6.
Rozdział 5 zawiera wyniki eksperymentów nad adaptacją niektórych algorytmów do grupowa-
nia danych symbolicznych. W podrozdziale 5.1 opisano zaprojektowany i zaimplementowany pro-
gram komputerowy wykorzystywany do eksperymentów z danymi symbolicznymi. Omówiono zakres
funkcjonalny, strukturę programu, możliwości wprowadzania danych zewnętrznych oraz prezentacji
wyników. Analizowano dwa rodzaje algorytmów: wymagające miary odległości oraz jej nie wymaga-
jące. Podział ten jest podyktowany tym, że w przypadku danych symbolicznych niezwykle trudno
jest o taką definicję odległości, która trafnie by reprezentowała podobieństwo obiektów. Autor badał
wpływ stosowanych rozwiązań na wyniki a jednocześnie poszukiwał rozwiązań dających się zasto-
sować w eksploracji danych biznesowych. Wykazano dużą zależność doboru funkcji porównania od
rodzaju przetwarzanych danych, co jest wadą w procesie eksploracji danych.
16 WSTĘP
Rozdział 6 zawiera przedstawioną przez autora krytyczną analizę przydatności i skuteczności sto-
sowania technik grupowania do analizy niektórych danych biznesowych. Podrozdział 6.1.1 zawiera
propozycję autora wykorzystania dodatkowej, zewnętrznej wiedzy w procesie grupowania niektórych
danych lingwistycznych poprzez zastosowanie słownika. Podrozdział 6.1.3 zawiera rezultaty prac
własnych autora nad problemem grupowania w katalogu towarów zaprezentowanego w podrozdzia-
le 1.9 wykorzystujących metody przedstawione w rozdziałach 4 oraz 6. Zaprezentowano adaptacje
algorytmu FCMdd do grupowania danych lingwistycznych. Wykorzystano technikę uwzględniania
dodatkowej wiedzy w procesie grupowania realizowaną przy pomocy słownika. Przeprowadzony eks-
peryment obejmował również wykorzystanie, zaproponowanych przez autora, algorytmów opartych
o listy decyzyjne. Rezultaty grupowania zaprezentowano w podrozdziale 6.2.6.
Ostatni rozdział zawiera spostrzeżenia i wnioski zdobyte w trakcie badań oraz nakreśla kierunki
dalszych prac.
Rozdział 1
Eksploracja danych
1.1 Geneza eksploracji danych
Pozyskiwanie wiedzy jest zagadnieniem wynikającym z potrzeb informacyjnych [20]. Chęć pozy-
skania nowej wiedzy stanowi kombinację zaspokojenia potrzeb informacyjnych trojakiego rodzaju:
jakie informacje są potrzebne, gdzie można je znaleźć oraz jak można ich użyć. Tak sformułowane
zadanie pozyskiwania wiedzy jest trudne nawet dla człowieka. Rolą systemu komputerowego może
być jedynie wspieranie, pomoc w weryfikacji kolejnych hipotez, pomysłów, idei. Potrzeby informa-
cyjne jako zjawisko są trudne do zdefiniowania, można jedynie scharakteryzować je poprzez analogie
i pojęcia pomocnicze:
• potrzeby informacyjne są obecne w umysłach osób poszukujących nowej wiedzy, w procesiepozyskiwania następuje ujawnienie takich informacji,
• potrzeby informacyjne można wyrazić poprzez identyfikację braków wiedzy, aczkolwiek tylkoczęść potrzeb może być w ten sposób ujawniona,
• potrzeby informacyjne zmieniają się, ewoluują pod wpływem pozyskanej wiedzy i informacji,
• pozyskanie nowej wiedzy powoduje odkrycie nowych obszarów potrzeb informacyjnych.
Z takiej charakterystyki wynika ewolucyjna właściwość potrzeb informacyjnych, które są odkry-
wane i zaspokajane w kolejnych iteracjach procesu pozyskiwania wiedzy.
Termin „Pozyskiwanie wiedzy z baz danych” (ang. KDD - Knowledge Discovery in Databases)
przyjmuje się jako:
poszukiwanie interesujących wzorców i zapisanie ich w zwięzły i wyczerpujący spo-
sób [41].
17
18 Eksploracja danych
Z tak przedstawionej definicji należy wyciągnąć następujący wniosek: poszukiwane są wzorce,
które są prawdziwe, nowatorskie, użyteczne i możliwe do przyswojenia przez człowieka.
Jeżeli mowa o odkrywaniu wiedzy to należy uściślić podstawowe terminy i klasyfikację używa-
ną w tym kontekście. Słowa dane, informacje, wiedza w potocznym znaczeniu często używane są
zamiennie jednak w kontekście badań nad pozyskiwaniem wiedzy należy stanowczo rozdzielić ich
znaczenia i zakres stosowania. Za dane uważa się znaki reprezentujące pomiary, wyniki, obserwacje
[81]. Dane zapisywane są na nośniku przy pomocy odpowiedniej aparatury (w komputerach elementy
do przechowywania danych zwane są pamięcią). Dane również mogą być przekazywane przy pomocy
różnych mediów do innych lokalizacji.
Informacja ustala i umiejscawia znaczenie danych w określonym kontekście i środowisku [81].
Słowo informacja pochodzi od łacińskiego informare, co oznacza „::::::::nadawać
:::::::formę”. Koncepcja in-
formacji sformułowana była na potrzeby telekomunikacji. Znane jest twierdzenie Shannona mate-
matycznie definiujące możliwość przesyłania danej ilości informacji (bitów) w określonym paśmie
częstotliwości. Istotne jest również semantyczne znaczenie informacji. Informacja umożliwia zmianę
sposobu postrzegania rzeczy, obiektów, wpływa na osąd i to odróżnia ją od danych. Słowo wiedza
może być definiowane jako zrozumienie, które uzyskuje się poprzez indywidualne doświadczenie lub
studiowanie faktycznych informacji i danych. Informacja jest „dziełem” zmysłów, a intelekt, czy też
mądrość jest potrzebna aby przekształcić te informacje w wiedzę.
Wiedza opisuje zdolność osoby lub organizacji do działania w nowym kontekście i środowisku.
W informatyce jako wiedzę traktuje się informacje pozwalające na wnioskowanie. Wiedza wykracza
poza informacje, gdyż implikuje zdolność do rozwiązywania problemów, stanowi przesłanki podej-
mowanych działań i rozumowań. Wiedzę utożsamia się ze zbiorem reguł (bazą wiedzy) podczas gdy
informacje utożsamia się z bazą faktów [49]. Wiedza to zdolność do rozwiązywania danej klasy pro-
blemów. Jest pozyskiwana w wyniku procesu uczenia się. Uczenie natomiast jest procesem, podczas
którego ludzie odkrywają problem, opracowują rozwiązanie problemu, realizują rozwiązanie i oce-
niają wyniki. Proces ten prowadzi do odkrywania nowych problemów [5]. Według encyklopedii „The
American Heritage” [107]wiedza to:
— znajomość, świadomość lub zrozumienie uzyskane przez doświadczenie lub studiowanie,
— stan, fakt rozumienia lub specyficzna informacja na temat czegoś,
— suma wszystkiego co zostało doświadczone, odkryte lub nauczone,
— organizacja informacji.
Omawiając termin Wiedza (duża litera podkreśla szerszy sens i znaczenie tego terminu), należy przy-
toczyć podstawowy podział, według którego wiedza jest klasyfikowana. Kryterium podziału wynika
z dostępnych metod przechowywania i przekazywania wiedzy. I tak Wiedza jawna, formalna (ang.
explicit knowledge) jest to wiedza, która może być wypowiedziana, wyartykułowana, dzięki czemu
może podlegać zarejestrowaniu, przeniesieniu na papier lub inny nośnik. Ulega rozpowszechnieniu
1.1 Geneza eksploracji danych 19
Tabela 1.1. Porównanie wiedzy cichej i formalnej[101]
Wiedza cicha (ang. tacit) Wiedza jawna (ang. explicit)Subiektywna Obiektywna
Wypływa z doświadczenia Wynika z racjonalnego rozumowaniaPraktyka Teoria
przy pomocy różnego rodzaju narzędzi w ramach technik zarządzania wiedzą. Przykładowo są to
narzędzia wspomagające pracę grupową, do współdzielenia wiedzy, systemy baz wiedzy (np. help
desk).
Wiedza cicha (ang. tacit knowledge) - rozumiana jako wiedza niewypowiedziana, pozostająca
w ludzkim umyśle. O fakcie istnienia takiej wiedzy można się przekonać podczas bezpośredniego
kontaktu z daną osobą. Jest się przekonanym, że ta osoba posiada wiedzę ale zostaje to przekazywa-
ne w sposób nieformalny, trudny do wychwycenia, niemożliwy do wyrażenia językiem naturalnym.
Możliwe natomiast jest oszacowanie zakresu posiadanej wiedzy oraz przekazanie takiej wiedzy in-
nej osobie, ale przy zachowaniu bezpośredniego kontaktu pomiędzy tymi osobami. W tablicy 1.1
zestawiono dodatkowe atrybuty przypisywane poszczególnym rodzajom wiedzy.
Pojęcie mądrość jest nadrzędne do pozostałych i najtrudniejsze do zdefiniowania. Można przy-
jąć w uproszczeniu, że mądry człowiek (bo mądrość odnosi się wyłącznie do ludzi) to człowiek
posiadający bogatą wiedzę.
W ramach zagadnień zajmujących się przetwarzaniem wiedzy wyróżnia się następujące zadania
[101]:
Pośredniczenie — współdzielenie wiedzy, narzędzia służące przekazywaniu informacji, zapisów,
pomysłów, zarówno bezpośrednio jak i za pośrednictwem bazy wiedzy.
Uzewnętrznienie — narzędzia wspomagające akwizycję wiedzy, przekształcanie jej na postać jaw-
ną, organizowanie wiedzy.
Uwewnętrznienie —polega na przekształcanie wiedzy jawnej w cichą, zachodzi to podczas uczenia
się, przyswajania wiedzy.
Poznawanie —wspomaga podejmowanie decyzji w oparciu o zgromadzoną wiedzę oraz zdobywanie
nowej, korzystając z wymienionych powyżej trzech funkcji.
Wymieniona powyżej klasyfikacja obejmuje występujące w procesie przetwarzania wiedzy prze-
kształcenia i przekazy wiedzy. Pozwala ona wyodrębnić pewne procesy, które następnie można pod-
dać całkowitej bądź częściowej formalizacji, i dalej skomputeryzowaniu.
Eksploracja danych (ang. DM – Data Mining) ściśle się wiąże z pojęciem pozyskiwanie wiedzy.
Stanowi bowiem główny etap w procesie pozyskiwania wiedzy. Całość procesu pozyskiwania składa
20 Eksploracja danych
się 5 etapów. W literaturze spotyka się następująco wyodrębnione etapy [38]:
1. selekcja,
2. przygotowanie,
3. przekształcanie,
4. eksploracja danych (ang. DM – Data Mining),
5. interpretacja.
Pozyskiwanie wiedzy rozpoczyna się od zrozumienia dziedziny, w której planowane jest poszukiwa-
nie. Następnie gromadzi się dostępną wiedzę na dany temat, identyfikuje cele prowadzonych działań
oraz identyfikuje potrzeby. Po przeprowadzonej analizie dostępnych zasobów bazodanowych, zarów-
no pod względem technicznym (format zapisu, format danych, mechanizmy dostępowe, objętość),
jak i merytorycznym (rejestrowane wielkości, reprezentacja rzeczywistych zjawisk, wiarygodność,
kompletność), przygotowuje się przetworzony zbiór danych stanowiący podzbiór bazy wejściowej.
Następnym krokiem jest eksploracja danych w odpowiednio wyselekcjonowanym, przygotowanym i
przekształconym zbiorze. Ostatni etap KDD to ocena i interpretacja rezultatów eksploracji danych
oraz przygotowanie pozyskanej w ten sposób wiedzy do użycia.
Obecnie większość badań koncentruje się na metodach stosowanych w eksploracji danych, chociaż
pozostałe etapy mają również doniosłe znaczenie dla osiągnięcia pomyślnych rezultatów [25, 39].
Jak już powiedziano pozyskiwanie wiedzy stanowi iteracyjny proces zakładający wielokrotną inte-
rakcję z użytkownikiem. Wielokrotnie można wyodrębnić cykle, jakie tworzą się poprzez powtarzanie
lub powrót do wcześniejszych etapów. Jest to spowodowane potrzebą analizy na różnych poziomach
abstrakcji, w różnych stopniach szczegółowości, koncentracji na różnych aspektach danego zagad-
nienia [67]. Eksploracja danych natomiast stanowi najistotniejszy element w procesie pozyskiwania
wiedzy. Ponieważ pozostałe etapy tego procesu są albo zagadnieniami rutynowymi, w porównaniu
do samego zagadnienia eksploracji danych (np. selekcja danych), albo są nierozłącznie związane z
samą eksploracją danych, dlatego w wielu opracowaniach dochodzi do zrównania, lub też utożsa-
mienia pozyskiwania wiedzy z eksploracją danych, poprzez pominięcie wyszczególniania pozostałych
etapów.
Eksploracja danych powstała na gruncie statystyki, sztucznej inteligencji oraz maszynowego ucze-
nia się, korzysta z wyników badań w wielu dziedzinach. Poniżej omówiono poszczególne aspekty
związane z kształtowaniem się eksploracji danych.
1.1 Geneza eksploracji danych 21
Podejście wywodzące się z matematyki i statystyki
Statystyka była najważniejszym źródłem technik stosowanych w analizie danych przez długi
okres czasu. Niewątpliwy wkład miały tu twierdzenia Bayesa, szeroko stosowane w wielu metodach
pozyskiwania wiedzy. Modele oparte o klasyfikator bayesowski, sieci bayesowskie są rozwijane w
wielu publikacjach [64, 104, 119, 26].
Do przetwarzania wiedzy dobrze nadają się nowe koncepcje reprezentacji i przetwarzania. Histo-
rycznie wcześniejsze są zbiory rozmyte (ang. fuzzy sets) zaprezentowane przez L. A. Zadeh [129]. Przy
ich pomocy można reprezentować pojęcie częściowej przynależności do zbioru, zagadnienie spotykane
w świecie realnym. Model ten pomocny jest wszędzie tam, gdzie metody klasyczne niewystarczają.
Drugą koncepcją szeroko wykorzystywaną w zakresie pozyskiwania wiedzy zaprezentowaną przez
Pawlaka [102] są zbiory przybliżone. Przykładem wykorzystania zbiorów przybliżonych w tym za-
kresie jest publikacja W. Ziarko [134].
Podejście wywodzące się z systemów uczących
Proces uczenia się polega na identyfikacji hipotez a następnie selekcji na podstawie prawdziwości,
wiarygodności, wartości z punktu widzenia użytkownika. Techniki i metody uczenia się, jako procesu
odkrywania Wiedzy, mają zastosowanie w eksploracji danych i pozyskiwaniu wiedzy.
Definicja 1. Uczeniem się systemu jest każda autonomiczna zmiana w systemie, zachodząca na
podstawie doświadczeń, która prowadzi do poprawy jakości jego działania [27].
Z tak przedstawionej definicji wynikają następujące aspekty:
• uzyskiwane w wyniku uczenia parametry są nazywane Wiedzą lub umiejętnością,
• musi istnieć przestrzeń hipotez, z której pobierane są poszczególne hipotezy do analizy,
• istnieje mechanizm tworzenia hipotez na podstawie doświadczeń (np. reprezentowanych w baziedanych w postaci transakcji),
• istnieje mechanizm akceptacji i rewizji hipotez,
• system posiada wiedzę wbudowaną oraz nabytą w trakcie uczenia,
• system działa autonomicznie, szczególnie w zakresie odkrywania hipotez, które mogą być wie-dzą, przy założeniu niepewnego statusu wiedzy oraz zawodności systemu traktowanego jako
ucznia.
Reprezentacja hipotez ściśle zależy od dziedziny, w której następuje uczenie się. Jednym ze spo-
sobów reprezentacji jest pojęcie kompleksu. Przy założeniu, że na dziedzinie D są określone pewne
22 Eksploracja danych
nominalne atrybuty, kompleks opisuje jakie warunki muszą być spełnione przez wartości atrybu-
tów przykładów, aby były one przez niego pokryte. Kompleks jest interpretowany jako koniunkcja
warunków nakładanych na pojedyncze atrybuty, nazywane selektorami. Przyjmując, że atrybuty są
uporządkowane i ponumerowane, a selektor vi umieszczony na i-tej pozycji w kompleksie reprezen-
tuje warunek nakładany na wartość atrybutu ai, mającego przeciwdziedzinę Di = vi1, . . . , vim,można zdefiniować następujące selektory:
selektor pojedynczy si =< sik > spełniony dla przykładu x, jeśli atrybut ai dla tego przykładu
ma pewną wartość z jego przeciwdziedziny sik = ai(x),
selektor dysjunkcyjny si =< sia, sib, . . . , siz > spełniony, jeżeli atrybut ma jedną z wymienionych
wartości jego przeciwdziedziny:
sia, sib, . . . , siz ∈ Di, (1.1a)
sia, sib, . . . , siz 6= Di, (1.1b)
co oznacza, że
ai(x) = sia ∨ ai(x) = sib ∨ . . . ∨ ai(x) = siz, (1.1c)
selektor uniwersalny si =< ? > spełniony dla dowolnej wartości przeciwdziedziny ai(x) ∈ Ai,
selektor pusty si =< ∅ >jeżeli warunek nie jest spełniony przez żadną wartość atrybutu.
Kompleks zapisuje się jako listę oddzielonych od siebie przecinkami selektorów, ujętą w nawiasy
trójkątne. Każdy kompleks zawierający przynajmniej jeden selektor pusty nie pokrywa żadnego
przykładu i może być utożsamiany z kompleksem zawierającym wyłącznie selektory puste. Hipoteza
klasyfikuje jako pozytywne tylko i wyłącznie te przykłady, dla których wartości atrybutów spełniają
warunki narzucane przez kompleks, za pomocą których hipoteza ta jest reprezentowana.
Podejście bazodanowe
Dane podlegające eksploracji zazwyczaj przechowywane są w relacyjnej bazie danych, wiele me-
tod korzysta z technik tam stosowanych. Rachunek relacyjny, języki zapytań czy organizacja danych
służy efektywnemu przetwarzaniu związanemu z eksploracją. Rozwój technik eksploracji ma również
wpływ na rozwój systemów bazodanowych. Wiele zadań związanych z agregacją, podsumowaniem,
uogólnianiem, detekcją trendów czy dyskryminacją zmian na stałe weszło do tych narzędzi.
Podejście lingwistyczne
Z uwagi na to, że większość ze zgromadzonych danych ma charakter symboliczny (nienumerycz-
ny), wymagane jest skonstruowanie narzędzi odpowiednich do przetwarzania takich danych. Szacuje
1.2 Cele i wymagania eksploracji danych 23
wiedza posiadana wyodrębnione informacje
R
wiedza nowoodkryta
Rys. 1.1. Cel eksploracji danych.
się że 70-90 procent informacji ma postać symboliczną [6, 123, 24]. Wiele z tych danych ma postać
lingwistyczną, czasami jest to czysty, naturalny język z pełną gramatyką, słownikiem a czasami tylko
sztucznie wybrany podzbiór, wystarczający do reprezentacji przyjętych informacji.
Podejście lingwistyczne charakteryzuje się dużą różnorodnością stosowanych technik. Klasyczna
technika, opierająca się na statystyce występowania słów została przedstawiona w pracy [114]. Ko-
lejne techniki opierają się na analizie syntaktycznej, semantycznej i morfologicznej tekstów [74]. Inne
opierają się na cytowaniach (jak to ma miejsce w przypadku literatury naukowej) bądź odsyłaczach
(przykładem jest hipertekst) [82].
1.2 Cele i wymagania eksploracji danych
Ogólnie mówiąc celem eksploracji danych jest pozyskanie nowej wiedzy. Jednak eksploracja da-
nych jest zagadnieniem ściśle zależnym od zastosowania i różne zastosowania mogą wymagać różnych
technik w celu uzyskania rozwiązania.
Formalnie eksploracja danych polega na poszukiwaniu pewnych wzorców (np. w formie zdań,
reguł), które są interesujące i wiarygodne. Wiarygodność da się w pewien sposób oszacować, np.
poprzez policzenie liczby przykładów, które dany wzorzec potwierdzają, natomiast w kwestii czy
dany wynik jest interesujący sędzią jest użytkownik. Zadanie eksploracji PI w języku zdań L zapisujesię następująco:
PI(l,L) = l ∈ L : L jest interesujące , (1.2)
24 Eksploracja danych
gdzie: L jest językiem, w którym można zapisać wzorce, zdania, oznaczane jako l w przedmiocieeksploracji danych [89].
Przykładowo może to być podanie pytań, na które DM stara się odpowiedzieć. Najbardziej ogólne
mogłoby brzmieć następująco: Proszę powiedzieć coś interesującego o danych. Takie sformułowanie
problemu, chociaż prawidłowe, stawia trudne warunki do zrealizowania. Przede wszystkim pojęcie
coś interesującego jest trudne do zdefiniowania a nawet do wyartykułowania przez użytkownika. Re-
guły i wzorce wygenerowane przed system DM mogą być albo trywialne (i dobrze znane) albo nie
posiadać żadnej wartości dla użytkownika. Nie znany jest również oczekiwany poziom szczegółowości
ani forma prezentowanych wyników. Przykładowo można otrzymać następujące wyniki na podstawie
analizy transakcyjnej bazy danych, pochodzącej z rejestracji transakcji sprzedaży w sklepie samoob-
sługowym:
• częściej wybierane są ceny zakończone na 9 — reguła dobrze znana fachowcom od marketingu,
• mleko jest kupowane średnio co 5 minut — ta reguła nie niesie żadnej użytecznej informacji,
• w piątki średnio mleko sprzedawane jest do 15 — taki wynik sugeruje braki w zaopatrzeniu.
Użytkownik oczywiście potrafi w większości przypadków ocenić na ile prezentowane wyniki są dla
niego interesujące, ale może to uczynić jedynie ręcznie, osobno analizując każdy rezultat. Problemem
jest to, że ludzkie możliwości są ograniczone i taka analiza może dotyczyć niewielu przypadków.
W celu ułatwienia zadania poszukiwania interesujących hipotez stosuje się pewną zasadę do-
tyczącą poszukiwania i wyboru potencjalnie interesujących wzorców. W wyniku badania z zakresu
CPM (ang. combinatoral pattern matching) utworzono następującą regułę [44]:
Jest lepiej używać skomplikowanych wzorców i złożyć je przy pomocy prostych kombinacji
logicznych niż prostych wzorców i używać skomplikowanych kombinacji logicznych.
W celu ukonkretnienia założeń można posłużyć się zadaniem: znaleźć interesujące asocjacje po-
między danymi. Takie postawienie sprawy daje podpowiedź o kierunkach dalszych poszukiwań. W
tym zakresie posługuje się analizą asocjacji (ang. assotiations)[2] występujących pomiędzy zmien-
nymi. Wśród metod temu służących wymienia się analizę koincydencji [85] oraz analizę relacji [1].
Obszarów stosowania eksploracji danych jest wiele, obejmują one te miejsca, w których stosuje
się systemy informatyczne, między innymi w celu gromadzenia pozyskanych danych w postaci baz
danych. Jesteśmy świadkami prawdziwej eksplozji baz danych, mając na myśli ich liczbę i objętość.
Z powodu dużej prostoty konstruowania bazy danych oraz akceptowalnych cen systemy gromadzące
dane stosuje się prawie we wszystkich dziedzinach życia. Wszędzie tam natomiast, gdzie istnieje już
baza danych, pojawia się potrzeba analizy tych danych w celu odkrycia nieznanej dotąd wiedzy.
1.2 Cele i wymagania eksploracji danych 25
Dziedziny, w których szeroko stosuje się eksplorację danych to: technika, medycyna, astronomia,
szeroko pojęty biznes.
Jak już powiedziano na wstępie, cechą wspólną obszarów w których stosuje się DM jest oparcie
się o duże bazy danych zgromadzone w wyniku działania systemu informatycznego, który gromadzi
dane o badanych, kontrolowanych i obserwowanych obiektach. Dane mogą powstawać w wyniku
sztucznie inspirowanego eksperymentu lub rejestracji naturalnych działań.
Aby eksploracja danych była efektywna powinny być spełnione następujące wymagania:
1. Obsługa różnych typów danych.
Dostępne dane mogą być różnej postaci, pochodzić z różnego rodzaju aplikacji, dotyczyć róż-
nych aspektów reprezentowanych w bazie danych. Pomijając bowiem niektóre dane jest się
narażonym na utratę możliwości pozyskania nowej wiedzy. Z uwagi na to, że wiele baz zawiera
dane różnych typów (jednocześnie są w nich obecne dane numeryczne, tekstowe i multimedial-
ne) aplikacje DM winny umożliwiać jak najmniej ograniczoną ich eksplorację.
2. Efektywne i skalowalne algorytmy.
Zazwyczaj analizowane bazy są dużych rozmiarów, z tendencją do powiększania się i to we
wszystkich kierunkach (ilość przykładów, atrybutów, wartości). Aby czas analizy był akcep-
towalny, szczególnie w systemach interaktywnych, należy stosować algorytmy o co najwyżej
wielomianowej złożoności, i to niskiego stopnia.
3. Użyteczne i prawdziwe rezultaty.
Źródłowe dane mają określony stopień wiarygodności, algorytmy wprowadzają pewne uogól-
nienia i przybliżenia, w wyniku czego powstająca wiedza ma określony stopień niepewności,
który należy oszacować poprzez pomiar jakości, użyteczności i wartości pozyskanej wiedzy.
4. Różne sposoby prezentacji rezultatów.
Ostatecznym odbiorcą i cenzorem wyników eksploracji danych jest człowiek, i aby maksymalnie
mu ułatwić, a czasami umożliwić odkrycie nowej wiedzy, winno mu się umożliwić otrzymanie
wyników w różnej postaci (głównie w tym miejscu myśli się o postaci graficznej (wykresy) w
miejsce tabelarycznej - ale nie tylko). Z uwagi na ograniczone możliwości percepcyjne człowieka,
każda technika ułatwiająca przyswojenie rezultatów jest jak najbardziej wskazana.
5. Eksploracja na różnych poziomach abstrakcji.
Ponieważ trudno a priori określić oczekiwaną postać wyników, co właściwie ma być odkryte,
eksploracja danych winna umożliwiać dynamiczne zmiany poziomu abstrakcji, szczegółowości
przetwarzania, aspektów podlegających analizie.
26 Eksploracja danych
1.3 Ocena jakości eksploracji danych
Pozyskiwanie wiedzy i eksploracja danych są zagadnieniami trudno definiowalnymi. Trudność
objawia się poprzez brak jednoznacznej funkcji oceny uzyskiwanych wyników. Jak już wspomnia-
no, celem jest pozyskanie nowej wiedzy. Przy obecnym stanie nauki nie istnieją formalne definicje
pozwalające na pomiar (ocenę, bądź identyfikację) stopnia pozyskania wiedzy. Natomiast można
dokonać pośredniej oceny jakości technik eksploracyjnych. Dokonuje się tego doświadczalnie, wycho-
dząc z dostępnych informacji na temat sposobów tworzenia nowej wiedzy przez człowieka, takich jak
zdolność uczenia się, możliwości percepcji, wnioskowanie itd. W procesie oceny bada się zdolność
człowieka do przyswojenia, uzyskanych danymi technikami eksploracji danych, rezultatów oraz oceny
wytworzonych przez człowieka na tej podstawie wniosków. Oceny jakości wiedzy również dokonuje
człowiek, na podstawie rezultatów podejmowanych decyzji bądź w oparciu o własną wiedzę i do-
świadczenie. Jak pokazano powyżej, w procesie oceny jakości wiedzy, główną rolę odgrywa człowiek,
przy pomocy swojego rozumu, który to proces jest całkowicie (albo prawie całkowicie) nieznany.
Powoduje to powstawania znaczących błędów oceny, z uwagi na zbyt dużą zależność jej wyników od
wiedzy, doświadczenia oraz innych cech, które w różnym stopniu posiada człowiek.
Biorąc pod uwagę powyższe spostrzeżenia trudno jest obiektywnie oceniać jakość poszczególnych
technik i metod. Należy oddzielić wpływ człowieka na ocenę, aczkolwiek jest to duży problem. Propo-
zycją autora niniejszej pracy jest posługiwanie się w procesie oceny jakości eksploracji następującymi
kryteriami:
1. Redukcja ilości danych do poziomu percepcji człowieka, ale w takim zakresie, aby nie zostawały
pominięte istotne własności (trendy, atrybuty); należy dodać, że termin „istotne”’ nie odnosi
się do liczebności czy udziału, gdyż nawet pojedyncze wystąpienia elementów, uwzględnione
w procesie eksploracji, mogą przysłużyć się pozyskaniu wiedzy.
2. Różnorodność form prezentacji – jest powszechnie znana prawda, że stopień absorbcji informa-
cji przez człowieka ściśle zależy od formy jej prezentacji, w tym zakresie spotyka się prezentacje
wyników w formach: tablicy przykładów, wzorców, podziału na podzbiory, zbioru hipotez, listy
reguł, przedstawienia funkcji analitycznych i zależności funkcjonalnych; wiele z wymienionych
postaci jest przekształcalne w inne, natomiast część jest uzyskiwana jedynie w wyniku zasto-
sowania odpowiedniej metody eksploracji.
3. Różnorodność form uzyskiwanych wyników – podobne z nazwy kryterium do powyższego, acz-
kolwiek ocenia się w nim stopień elastyczności otrzymywanych form do reprezentacji; wiele z
metod posiada ograniczenia w zakresie reprezentacji form, ograniczenia takie to przykłado-
wo reprezentacja tylko w postaci obszarów wypukłych, analiza funkcjonalna tylko w zakresie
funkcji liniowych itd.
1.4 Techniki eksploracji danych 27
4. Zgodność z funkcją kryterium – wiele z metod posługuje się funkcją kryterium, w celu zna-
lezienia rozwiązania. Przyjmuje się, że funkcja ta stanowi przybliżenie funkcji oceny jakości
podziału. O ile kryterium samodzielnie nie stanowi o jakości metody, to wykorzystuje się je do
porównywania poszczególnych metod, a w szczególności ich implementacji. Osiąganie lepszych
wartości funkcji kryterium w procesie eksploracji ograniczone być może innymi własnościa-
mi metody eksploracji, które stanowią o jej przewadze. Dodatkowo funkcja kryterium tylko
w przybliżonym stopniu realizuje funkcję oceny, co również w niektórych przypadkach skutku-
je pogorszeniem otrzymywanych wyników. Aczkolwiek, pomijając wpływ wymienionych zja-
wisk, wyniki funkcji kryterium są istotnym elementem w procesie porównywania jakości metod
eksploracji, a co ważniejsze: funkcja kryterium umożliwia porównanie poprzez pomiar, czyli z
pominięciem udziału człowieka.
5. Uwzględnianie wiedzy w procesie eksploracji – każda metoda, która potrafi wykorzystać in-
formacje spoza badanej bazy danych czy też kontekst danych, potencjalnie otrzymuje lepsze
wyniki (bardziej odpowiadające rzeczywistości), dlatego też o jakości metody stanowi zdolność
do przyjmowania danych z innych źródeł.
Powyższa klasyfikacja nie obejmuje wszystkich zagadnień związanych z oceną jakości, nie stano-
wi również ogólnej definicji jakości, którą należało by stosować. Celem autora jest przedstawienie
istotnych kryteriów, które pozwolą na właściwe i możliwie pełne ocenianie metod eksploracji, a
w szczególności metod grupowania danych symbolicznych. W trakcie badań autor wielokrotnie oce-
nia badane algorytmy (patrz podrozdziały 3.8, 4.6).
1.4 Techniki eksploracji danych
Techniki i metody służące eksploracji danych wywodzą się głównie z obszaru badań nad sztuczną
inteligencją. Główne przykłady stosowanych rozwiązań należą do następujących zakresów:
— metody statystyczne,
— sieci neuronowe,
— metody uczenia maszynowego,
— metody ewolucyjne,
— zbiory rozmyte,
— zbiory przybliżone.
W eksploracji danych rozwijane są różne modele przetwarzania, różniące się zakresem zastosowań,
stosowanymi algorytmami rozwiązań, sposobem prezentacji wyników. Wśród nich wyróżnia się:
1. streszczanie,
28 Eksploracja danych
2. poszukiwania asocjacji,
3. analiza funkcjonalna,
4. klasyfikacja,
5. grupowanie.
Ad.1 – Streszczanie
Kolejną techniką stosowaną w DM jest uogólnianie (ang. summarization tools, data generaliza-
tion). Dla danego zbioru przykładów proces streszczania polega na wydobyciu wspólnych elementów
zawartych w przykładach, ich wspólnych właściwości. Rezultatem ma być skoncentrowany opis infor-
macji zawartych w danych, między innymi stosowane są w tym zakresie techniki takie jak indukcja
reguł, tablice koincydencji. Technika ta wykorzystuje różne metody agregacji danych, zmiany pozio-
mów abstrakcji, analizę danych w różnych wymiarach [25].
Ad.2 – Poszukiwania asocjacji
Reguły asocjacyjne reprezentują w najbardziej ogólnym ujęciu wiedzę o tym, że pewne wartości
niektórych atrybutów występują łącznie z innymi wartościami innych atrybutów w pewnej istotnej
częstotliwości.
Definicja 2. Asocjacjami nazywamy reguły (warunkowe zależności, zdania) postaci A → B, gdzie
A i B są zbiorami elementów występującymi w bazie przykładów P [27]:
A→ B, gdzie A ∈ P, B ∈ P, A ∩B = ∅. (1.3)
Poszukiwania asocjacji dokonuje się najczęściej w transakcyjnych bazach danych. W przy-
padku bazy dla firmy handlowej, oznaczonej jako D każda transakcja zawiera zbiór elementówT ⊆ I = i1, . . . , is. Każdy element zbioru I reprezentuje sprzedawany produkt. Ważnym za-gadnieniem w ramach DM jest poszukiwanie wszystkich podzbiorów T takich, że ilość transakcji,
które zawiera analizowany podzbiór T jest większa od pewnego minimum, będącego współczynni-
kiem odcięcia (ang. threshold min-support).
Reguły asocjacyjne, jako szczególny przypadek hipotez, można zapisywać przy pomocy komplek-
sów, dopuszczając w nich jednak wyłącznie selektory pojedyncze i uniwersalne. Reguła asocjacyjna
składa się z dwóch list wartości: warunkujących i warunkowanych.
Definicja 3. Regułą asocjacyjną jest dowolne wyrażenie postaci r = p ⇒ q, gdzie p i q są kom-pleksami zawierającymi wyłącznie selektory pojedyncze i uniwersalne odpowiadające atrybutom okre-
ślonym na rozważanej dziedzinie, przy czym dla żadnego atrybutu selektor pojedynczy nie występuje
jednocześnie w p i q.
1.4 Techniki eksploracji danych 29
W celu scharakteryzowania reguły asocjacyjnej stosuje się liczbowe wskaźniki reprezentujące
zakres i dokładność reguły oznaczane terminami nośnik (ang. support) i wiarygodność (ang. confi-
dence). W literaturze polskiej zamiennie do terminu nośnik stosuje się termin wsparcie.
Definicja 4. Nośnik reguły r = p ⇒ q na zbiorze przykładów D jest określony jako stosunekliczby przykładów ze zbioru P pokrywanych jednocześnie przez kompleksy p i q do liczby wszystkichprzykładów w tym zbiorze, czyli
σr(P) =|Pp∧q||P|
. (1.4)
Definicja 5. Wiarygodność reguły r = p⇒ q na zbiorze przykładów P jest określona jako stosunekliczby przykładów ze zbioru P pokrywanych jednocześnie przez kompleksy p i q do liczby przykładówpokrywanych przez kompleks p
ρr(P) =|Pp∧q||Pp|
. (1.5)
Problem poszukiwania asocjacji sprowadza się do wygenerowania wszelkich możliwych hipotez
i selekcji tych, które posiadają wymaganą wiarygodność oraz nośnik (występują odpowiednio wiele
razy).
Inną metodą selekcji asocjacji jest stosowanie testów statystycznych. Stosowane jest to z dwóch
powodów. Po pierwsze ilość dostępnych danych jest zawsze ograniczona, a nawet gdy jest bardzo
obszerna to ilość przypadków potwierdzających daną hipotezę może być niewielka. Dlatego jest
potrzebna technika skalująca współczynnik odcięcia do rozmiarów bazy danych. Po drugie liczba
możliwych do wystąpienia hipotez rośnie wykładniczo wraz ze wzrostem liczby zmiennych oraz
wzrostem dozwolonych wartości, które te zmienne mogą przyjmować.
W wielu zastosowaniach potencjalnie istotne asocjacje istnieją na dość wysokim poziomie abs-
trakcji. Niestety bazy danych, a co za tym idzie proste algorytmy poszukiwania asocjacji, mogą nie
doprowadzić do ich odkrycia. Transakcyjne bazy danych zazwyczaj zawierają jedynie identyfikatory
towarów (np. kod paskowy EAN), wystarczające do jednoznacznej identyfikacji. Na potrzeby poszu-
kiwania asocjacji należałoby przeanalizować bazę wstępnie poddaną pewnemu uogólnieniu, a w miej-
sce unikalnych identyfikatorów podstawić pewne uogólnione produkty pod względem rodzaju, marki,
gramatury czy opakowania (zamiast „chleba tostowego” tylko „chleb”). Problem poszukiwania aso-
cjacji na wielu poziomach abstrakcji został przedstawiony w [60].
Informacje o poziomach abstrakcji mogą bezpośrednio wynikać z danych, przykładowo można
dokonać uogólniania „dzień” „miesiąc” „rok”. Innym sposobem jest wykorzystanie dostępnejwiedzy, jednak nie zawartej bezpośrednio w bazie. Przykładowo przynależność danego miasta do
konkretnego kraju, czy regionu („Warszawa” „Polska”), chociaż oczywista dla człowieka, abybyła odpowiednio spożytkowana przez komputer musi być najpierw do niego wprowadzona.
Podstawą realizacji analizy na różnych poziomach abstrakcji jest posiadanie właściwej hierarchii
30 Eksploracja danych
(lub innej uporządkowanej struktury) atrybutów opartej o wiedzę o środowisku, które jest reprezen-
towane przez bazę danych. Przykładowo zbiór atrybutów postaci adres (numer, ulica, miejscowość,
gmina, powiat, województwo, państwo) posiada naturalną hierarchię wywodzącą się z semantyki
poszczególnych terminów. Strukturę hierarchii można automatycznie pozyskać bezpośrednio z bazy
danych poprzez analizę koincydencji i częstości występowań poszczególnych wartości atrybutów [59].
Można również wiedzę o strukturze bazy pozyskać od eksperta, lecz może się zdarzyć że wybrana
hierarchia nie będzie optymalna dla danego zadania eksploracji danych. Z tego powodu systemy DM
winny posiadać możliwość dynamicznej modyfikacji zależności pomiędzy atrybutami, na podsta-
wie różnych technik, tak aby możliwa była analiza danych w przekrojach odpowiadających różnym
poziomom abstrakcji ze względu na sposób postrzegania.
Ad.3 – Analiza funkcjonalna
Drugim, jeszcze bardziej zawężonym podejściem do DM jest analiza funkcjonalna. Zależności
funkcjonalne mogą być liniowe jak i nieliniowe. Podstawową cechą odróżniającą analizę funkcjo-
nalną od asocjacyjnej jest to, że zależność funkcjonalna zakłada istnienie kierunku zależności, tzn.
która zmienna jest implikowana przez którą. Reguły asocjacyjne natomiast zakładają jednoczesne
występowanie niektórych zbiorów wartości. Funkcje zawsze przekształcają jedne zmienne w inne,
natomiast w przypadku asocjacji ten kierunek zwykle nie jest możliwy do stwierdzenia. Istotnym
zagadnieniem w ramach analizy funkcjonalnej jest predykcja, której celem jest estymacja przyszłych
wartości atrybutów obiektów.
Pewną odmianą analizy funkcjonalnej jest stosowanie modeli opierających się na przybliżeniu
zależności pomiędzy zmiennymi funkcjami liniowymi, dotyczy zadań aproksymacji i estymacji i po-
dobnych technik statystycznych.
Z punktu widzenia technicznego najlepiej rozpocząć od poszukiwania asocjacji, a następnie
przejść do analizy funkcjonalnej [67].
Ad.4 – Klasyfikacja
Klasyfikacja jest procesem, służącym odkryciu reguł i właściwości, dzięki którym obiekty są kla-
syfikowane do poszczególnych kategorii. Dokonuje się tego na podstawie zbioru trenującego, którego
przykłady posiadają przypisane kategorie (najczęściej przez człowieka). Po przeprowadzeniu ana-
lizy, otrzymane rezultaty służą klasyfikacji przyszłych lub pozostałych danych do poszczególnych
kategorii.
Dzielenie zbioru obiektów na grupy (podzbiory) stanowi podstawową czynność dokonywaną przez
człowieka w celach poznawczych. Klasyfikacja jest jednym z procesów wchodzących w skład myślenia,
postrzegania, uczenia się, podejmowania decyzji. Jest techniką ułatwiającą poznanie rzeczywistości
1.5 Wykorzystywanie zewnętrznej wiedzy 31
poprzez redukcję entropii. Obszarów stosowania klasyfikacji jest wiele, można ją spotkać w ekonomii,
medycynie, antropologii, archeologii, socjologii, lingwistyce, psychologii, biologii.
W zależności od rodzaju dostępnej informacji w ramach klasyfikacji można wyodrębnić dwa
zagadnienia:
• klasyfikację wzorcową, zwaną również analizą dyskryminacyjną, gdy struktura klas jest znanatzn. istnieje charakterystyka klas, do których należy przypisać poszczególne obiekty. Zagadnie-
nie to określa się również jako uczenie lub rozpoznawanie z nauczycielem,
• klasyfikację bezwzorcową, inaczej taksonomia, analiza skupień albo grupowanie występuje wów-czas gdy nic nie wiadomo o strukturze klas, na podstawie obserwacji należy dopiero odkryć
reguły klasyfikacji. W konsekwencji grupowanie określa się mianem uczenia lub rozpoznawania
bez nauczyciela.
Ad.5 – Grupowanie
Jak już powiedziano grupowanie (ang. clustering) wywodzi się z szerszego pojęcia jakim jest
klasyfikacja bezwzorcowa.
Grupowanie powszechnie traktuje się jako uczenie bez nadzoru, w którym uczeń otrzymuje zbiór
trenujący, zawierający przykłady bez określania ich kategorii (przykłady nieetykietowane). Wła-
ściwe kategorie uczeń musi zaproponować samodzielnie na podstawie pewnej zasady grupowania,
wbudowanej w algorytm lub częściowo definiowanej przez użytkownika [27].
Poprzez grupowanie można również rozwiązać problemy z gatunku odkrywania struktury w da-
nych oraz dokonywanie uogólniania.
1.5 Wykorzystywanie zewnętrznej wiedzy
W procesie eksploracji danych, oprócz stosowania różnego rodzaju metod umożliwiających anali-
zę, można również korzystać z wiedzy i informacji, co prawda nie zawartej w samej, źródłowej bazie
danych, ale dostępnej i odnoszącej się do badanego środowiska i zbioru obiektów. Wiedza taka po-
maga w dobraniu odpowiednich metod, przyspiesza proces analizy, umożliwia właściwą interpretację
wyników. Posiadana wiedza może być wykorzystana na każdym etapie eksploracji danych:
• na etapie przygotowania danych, zbiór wartości i atrybutów może zostać rozszerzony i uzupeł-niony na podstawie posiadanych informacji,
• wiedza o źródle danych umożliwia dobranie odpowiednich metod, funkcji wartościujących i oce-niających, mechanizmów przeszukujących obszar rozwiązań,
32 Eksploracja danych
• poprzez implementację i dobór współczynników wartościujących, parametryzujących, zmie-niających charakterystyki funkcji porównujących i oceniających (np. stosowane miary podo-
bieństwa) można wpływać na otrzymywane wyniki. Doboru tych parametrów dokonuje się na
podstawie posiadanej wiedzy,
• wiedza umożliwia dobranie adekwatnych heurystyk, wynikających z możliwych do przepro-wadzenia uogólnień i uproszczeń, a prowadzących do zwiększenia wydajności i efektywności
procesu eksploracji,
• walidacja i interpretacja wyników bez wiedzy o badanym środowisku jest niemożliwa.
1.6 Eksploracja danych lingwistycznych
Jeżeli przytoczymy definicję przetwarzania danych jako pewne określone manipulacje na liczbach
lub symbolach to analogicznie, przez przetwarzanie danych lingwistycznych rozumie się manipula-
cje na słowach z języka naturalnego. Zakłada się przy tym, że podczas przetwarzania wykorzystuje
się znaczenia, jakie zostały poszczególnym słowom (terminom) przypisane w danym języku. Prze-
twarzanie słów (ang. computing with words) [130] jest wzorowane na szczególnej ludzkiej zdolności
rozwiązywania zadań bez jakiegokolwiek pomiaru jak również obliczeń. Zdolności te grają kluczowe
role w umiejętności rozpoznawania i wnioskowania. Najbardziej znamiennym przykładem może tu
być umiejętność napisania streszczenia z danego tekstu. Podstawową różnicą pomiędzy ludzką per-
cepcją a pomiarem jest to, że pomiar ma charakter punktowy, natomiast to co człowiek postrzega ma
charakter rozmyty, nieprecyzyjny. Z drugiej jednak strony określenia słowne mimo swej nieprecyzyj-
ności, w odróżnieniu od danych liczbowych, oddają istotę sprawy. Pojęcie wiek może być określone
numerycznie w latach. Można stwierdzić, że ktoś ma 21 lat i będzie to fakt absolutnie prawdziwy,
dla każdego i w każdej sytuacji, natomiast bez innych informacji nie można dokonać żadnego wnio-
skowania z tym związanego. Korzystając ze słów ktoś może powiedzieć, że dana osoba jest młoda. I
tu następuje szereg niejasności, wątpliwości a nawet sprzeczności. Słowo „młody” można przypisać
do każdej osoby będącej w określonym przedziale wiekowym. Niestety nie ma jednolitej definicji tego
przedziału. Co więcej, może się zdarzyć że osoba „młoda” dla jednych, dla innych jest już „stara”.
Ale jednocześnie można wysnuć następujące wnioski z określenia danej osoby jako „młodej”. Po
pierwsze określenie „młody” nie odnosi się wyłącznie do bezwzględnego wieku danej osoby mierzo-
nego jednostką czasu, może również określać doświadczenie, siły witalne, nastawienie do życia. Taka
wieloznaczność jest powszechna w języku naturalnym. Po drugie można wnioskować o istniejących
relacjach pomiędzy osobą określającą a określaną, można również wysnuć pewne wnioski na temat
osoby określającej. Po trzecie: określenie słowne bardzo często zawiera pewien pierwiastek oceny. Za-
zwyczaj opisu obiektu (sprawy, itp.) dokonuje się w celu późniejszej oceny, dokonania wnioskowania
1.6 Eksploracja danych lingwistycznych 33
czy też podjęcia działań. W podanym przykładzie, jeżeli znany jest charakter zadania, do którego
dobierane są osoby, to podanie określenia, że dany kandydat jest „młody” implikuje jego nadawanie
się bądź nie.
W świecie nauki, odwrotnie niż w życiu codziennym, najczęściej posługujemy się danymi nume-
rycznymi. Istnieją jednak dwa podstawowe wskazania, które mogą zdecydować o użyciu przetwa-
rzania danych lingwistycznych w miejsce numerycznych. Po pierwsze jest to konieczne tam, gdzie
dostępna informacja jest zbyt nieprecyzyjna aby ją zapisać w postaci numerycznej. Po drugie tam,
gdzie w wyniku przetwarzania danych lingwistycznych można otrzymać bardziej reprezentatywne
rozwiązania, lepiej korespondujące z rzeczywistością, przy niższym koszcie obliczeniowym.
Podstawowe zalety stosowania przetwarzania lingwistycznego są następujące:
1. Przetwarzanie lingwistyczne jest najbliższe człowiekowi, najbardziej naturalne. Człowiek naj-
swobodniej wyraża swoje myśli (czyli również zadania, oczekiwania, pragnienia) w formie ję-
zyka naturalnego, który jest równocześnie najbardziej swobodną, dającą najmniej ograniczeń
formą komunikacji.
2. Model lingwistyczny elastycznie dopasowuje się do poziomu ważności. Wynika to bezpośrednio
z ziarnistości informacji, w zależności od wagi poszczególne elementy można przypisać do
większej bądź mniejszej ilości zbiorów. Wskaźnik ilości zbiorów jest charakterystyczny dla
przetwarzania danych reprezentowanych poprzez zbiory. Zwiększając go model ujmuje więcej
detali, staje się bardziej wyraźny, szczegółowy. Natomiast zmniejszając, detale są ukrywane,
co może pomóc w odkryciu głównych elementów rozwiązania. Można określić dowolny poziom
abstrakcji w prezentacji zarówno zapytań jak i odpowiedzi.
3. Tryb modelowania lingwistycznego stawia projektanta na bardziej aktywnej pozycji. Wynika
to z dwóch faktów. Po pierwsze warstwa specyfikacji ziarnistości pomaga w ujęciu problemu
w odpowiedniej perspektywie tak, aby była najlepsza do dalszego używania modelu. Znając
charakter i potrzeby przyszłego użytkownika można dopasować stopień ziarnistości do ocze-
kiwanego stopnia szczegółowości. Po drugie ta sama ziarnistość pomaga w skupieniu się na
pewnych, określonych lingwistycznie przez użytkownika obszarach. Skupienie to może się wy-
razić poprzez zwiększenie stopnia podziału na grupy. Co więcej, taka zmiana rozdzielczości
może nastąpić niezależnie od oczekiwanych danych wejściowych, a tylko kierując się potrzeba-
mi rozwiązania.
4. Model lingwistyczny daje możliwość szybkiego tworzenia prototypu. Model ten nie wymaga
optymalizacji czyli jakiegokolwiek określania parametrów wewnętrznych. Od momentu okre-
ślenia stopnia ziarnistości informacji model jest gotowy do realizacji. Model lingwistyczny nie
34 Eksploracja danych
wymaga wprowadzania tak ograniczających założeń co do przyszłych danych, jak to się często
spotyka z numerycznych modelach przetwarzania.
5. Z uwagi na swój dyskretny charakter rezultatem stosowania modelu lingwistycznego jest ob-
szar obejmujący dopuszczalne wyniki wraz ze stopniem preferencji. Postać taka jest stosunkowo
przyjazna dla człowieka. Dodatkowym atutem jest możliwość wizualizacji wyników, co znako-
micie pomaga w zrozumieniu charakteru i właściwości rozwiązania.
Dane postaci lingwistycznej mają postać słów lub termów, będących elementami języka natural-
nego. Język naturalny to środek komunikowania się ludzi między sobą, służy do opisu otaczającego
świata, własnych przemyśleń, odczuć, wiedzy. Język naturalny powstał na drodze ewolucji. Istnieją
również języki sztucznie wytworzone, zaprojektowane do określonego zastosowania ale wykorzystu-
jące niektóre zasady języka naturalnego przykładowo terminologię, gramatykę. Język sztuczny jest
podzbiorem języka naturalnego i w dalszych rozważaniach nie będzie rozróżniane pochodzenie, sto-
pień zaawansowania czy też inne cechy języka. Najistotniejszą właściwością języka jest możliwość
reprezentacji wiedzy i informacji, również nieprecyzjyjnej, niepewnej. Nie do przecenienia jest moż-
liwość znacznie prostszego opisu danej rzeczywistości (obiektu badań) niż przy pomocy wyłącznie
liczb i to w postaci łatwo przyswajalnej dla człowieka. Człowiek dysponuje aparatem pojęciowym, do
przetwarzania danych lingwistycznych, dzięki któremu łatwo przeprowadza analizy sytuacji,dokonuje
wnioskowania. I wykonuje to bardzo skutecznie tzn. w akceptowalnym czasie i z dużą wiarygodno-
ści. Wiarygodność jest rozumiana jako prawdopowobieństwo, że rzeczywisty wynik (możliwy do
uzyskania/zweryfikowania w toku dalszych badań czy testów) mieści się w ramach proponowanego
rozwiązania. Mimo działania na danych niepewnych i nieprecyzyjnych, przetwarzanie lingwistyczne
utrzymuje swą wiarygodność. Wprowadzenie błędnej danej do algorytmu numerycznego zazwyczaj
powoduje załamanie się jego działania, lub, co gorsza, podanie błędnych wyników. W przypadku da-
nych lingwistycznych informacja w nich zawarta może posłużyć również do weryfikacji uzyskiwanych
wyników. Przykładowo wyniki t = 0 lub t = −10 wyglądają równie prawdopodobnie, natomiast je-żeli zapis obserwacji lodowe kryształki trudno rozpuszczają się we wrzątku przeczyta osoba
znająca prawa fizyki, to winna zauważyć niskie prawdopodobieństwo wystąpienia takiego zdarzenia.
Dane lingwistyczne mogą zawierać informacje o stopniu niepewności i nieprecyzyjności, to należy
do ich natury, dzięki czemu mimo, że rezultaty przetwarzania są nieprecyzyjne, to stosunkowo łatwo
ustala się ich wiarygodność. W wielu sytuacjach nie jest wymagana bardzo precyzyjna informacja,
natomiast winna być ona pewna: na przykład nie jest ważne czy dany człowiek ma 25 czy 30 lat,
ważne że jest dorosły.
Zazwyczaj, w zależności od problemu, wybrany zbiór słów służy do opisania pewnej wiedzy.
Każdy termin posiada określony stopień nieokreśloności i rozmycia. Z drugiej strony semantyka
zbioru rozmytego, służącego reprezentacji zmiennej lingwistycznej jest następująca. Przyjmuje się że
1.6 Eksploracja danych lingwistycznych 35
jest dana funkcja przynależności zwracająca wartości z przedziału [0, 1]. Daną lingwistyczną można
reprezentować przy pomocy zmiennej rozmytej przyjmując, że odzwierciedla ona sposób określania
rzeczywistości. Omówione to zostanie na przykładzie zdania w języku naturalnym:
p = „Jan jest młody”. (1.6)
W zdaniu tym poszczególne słowa mają następujące znaczenie. Słowo „Jan” określa obiekt pod-
legający opisowi. Słowo „jest” określa relację określania, natomiast słowo „młody” jest terminem
niosącym dwa rodzaje informacji. Po pierwsze zawarta jest informacja o rodzaju określanej wła-
ściwości obiektu, w tym przypadku określany jest wiek (długość życia osoby). Po drugie ustalony
zostaje przedział, w którym ten wiek jest zawarty. W zależności od kultury, środowiska czy też
samego wypowiadającego się przedział ten jest różny, przykładowo można przyjąć że jest to wiek
mniejszy niż 25 lat.
Ziarnistość informacji
Granular computing jest terminem określającym te wszystkie techniki służące reprezentowaniu i
przetwarzaniu informacji, które opierają się o ziarnistość informacji (ang. granular – ziarnisty). Idea
granulacji pomaga w gromadzeniu, wyrażaniu i wykorzystaniu wiedzy, ułatwia eksplorację danych,
pozwala na lepszy kontakt pomiędzy maszyną a człowiekiem. Jak wiadomo sposób myślenia w dużej
mierze opiera się na ziarnistej reprezentacji rzeczywistości, więc zarówno podczas wprowadzania da-
nych jak i prezentacji wyników przez komputer posłużenie się modelem wykorzystującym ziarnistość
ułatwia człowiekowi zadanie.
Idea granulacji nie jest nowa, istnieje od początku istnienia cyfrowej techniki obliczeniowej. Kom-
puterowa reprezentacja liczb rzeczywistych jest tylko przybliżeniem wynikającym z dyskretyzacji
takiej liczby na postać cyfrową. Cyfrowe przetwarzanie sygnałów rozpoczyna się od przetworze-
nia sygnału analogowego w cyfrowy (przetwornik A/C) zapis będący skończonym szeregiem liczb o
skończonej liczbie dopuszczalnych wartości odpowiadających wartości sygnału w skończonej ilości
momentów czasowych. W przypadku przetwornika A/C pojedyncze ziarno odpowiada uśrednionej
wartości sygnału przez pewien jednostkowy odcinek czasu o długości większej od zera. Tracona
jest informacja o dokładnej wartości sygnału (znana jest wartość przybliżona o zadanej dokładno-
ści) oraz informacja o zmianach w obrębie jednostkowego odcinka. Siła digitalizacji, a generalniej
przetwarzania opartego o granulację, polega na tym że tracona jest informacja nieistotna z punktu
widzenia dalszego przetwarzania. Oczywiście istotnym zagadnieniem jest takie dobranie mechanizmu
granulacji, który pozwoli na oddzielenie informacji istotnych od nieistotnych.
36 Eksploracja danych
1.7 Eksploracja danych biznesowych
Podrozdział ten poświęcony jest omówieniu zakresu i możliwości stosowania eksploracji baz w
obszarze danych biznesowych. Przedstawione zostaną podstawowe założenia wykorzystania pozyska-
nej z baz danych Wiedzy do podejmowania optymalnych decyzji biznesowych. Następnie dokonany
zostanie przegląd wybranych zadań analizy z uwzględnieniem merytorycznych źródeł takich działań,
możliwości technicznych oraz prawdziwości i realności uzyskiwanych rezultatów. Wśród nich przed-
stawiona zostanie propozycja autora szczególnego zainteresowania się katalogiem towarów zarówno
w perspektywie źródła wiedzy jak i tworzenia lub adaptacji technik analizy odpowiednich dla takiej
klasy zagadnień.
Jak już powiedziano w podrozdziale 1.2 eksploracja danych zajmuje się poszukiwaniem intere-
sujących wzorców w zgromadzonych danych. W definicji 1.2 szczególnie trudne staje się precyzyjne
określenie znaczenia terminu »interesujące«. W tym celu tworzone są kryteria takie jak nośnik czy
wiarygodność [1], mówi się o zawartości informacyjnej [118], nie trywialności, nieoczekiwanych i nie-
spodziewanych rezultatach [87]. W zakresie wykorzystania eksploracji danych w biznesie, w szeroko
pojętym zarządzaniu termin „interesujący” nabiera jeszcze jednego znaczenia. Wzorzec pozyskany z
danych jest interesujący jeżeli można go wykorzystać w trakcie podejmowania decyzji biznesowych.
Dodatkowe kryterium weryfikujące rezultaty zostało określone następująco:
Samo znalezienie wzorca nie wystarcza, należy być zdolnym do wykrywania sytuacji
pasujących do tego wzorca, wykorzystania go, podjęcia na tej podstawie decyzji zwięk-
szającej wartość przedsiębiorstwa [11].
Założenia do zastosowania eksploracji danych w biznesie zostały przedstawione w [77]. Według
tych założeń sprzedawca podejmuje decyzje biznesowe w celu maksymalizacji zysku. W tym kontek-
ście mówi się, że zysk jest funkcją, którą należy maksymalizować:
Z(D, f) = maxx∈D
f(x), (1.7)
gdzie: D jest zbiorem wszystkich możliwych do podjęcia decyzji (strategii marketingowych, celówstrategicznych, planów rozwoju), f(x) jest użytecznością decyzji x odzwierciedlającą trwałość (ist-
nienie) przedsiębiorstwa oraz wielkość możliwego do osiądnięcia zysku, a Z jest całkowitą (globalną)
wartością zysku uzyskiwaną przez przedsiębiorstwo. Równanie 1.7 stanowi sformułowanie problemu
optymalizacji, który leży u podstaw zarządzania każdym przedsiębiorstwem.
W równaniu 1.7 występują dwa obszary. Pierwszy D, obszar podejmowanych decyzji, obejmu-je wnętrze przedsiębiorstwa, decyzje dotyczą tylko tych elementów, na które przedsiębiorstwo ma
bezpośredni wpływ: wielkość produkcji, jakość, cena, nakłady badawczo-rozwojowe, na marketing
i reklamę. Drugi obszar, oznaczony jako f(x) jest funkcją interakcji przedsiębiorstwa z klientami[91].
1.7 Eksploracja danych biznesowych 37
Każdy z klientów ma swój odrębny wpływ na uzyskiwaną wartość zysku, suma zysków uzyskiwanych
w ramach kontaktów z poszczególnymi klientami.
W zależności od ustalonej strategii kontaktów z poszczególnymi klientami globalny zysk przed-
siębiorstwa oblicza się następująco:
f(x) =∑y∈Y
f ′y(x), (1.8)
gdzie: Y jest zbiorem klientów wchodzących w interakcję z przedsiębiorstwem, f ′y(x) jest użyteczno-ścią decyzji x w stosunku do klienta y.
Powyższy problem w postaci formalnej przedstawiamy: zbiór klientów jako zbiór agentów Y orazzbiór strategii marketingowych jako zbiór decyzji D. Wartość funkcji zależy teraz również od podjętejdecyzji, więc otrzymujemy:
Z(D, f) = maxx∈D
∑y∈Y
f ′y(xy). (1.9)
Ponieważ każdy klient ma swój niezależny wkład w zysk, globalny zysk przedsiębiorstwa jest
sumą wkładów uzyskanych od każdego klienta w wyniku podejmowanych decyzji biznesowych. Po-
dejmując jednakową decyzję dla wszystkich klientów (każdego obsługując według takich samych
reguł) nie otrzyma się optymalnych rezultatów, zysk nie będzie maksymalny. Dobre rezultaty otrzy-
muje się indywidualnie podejmując decyzje dla każdego klienta osobno. Wadą takiego podejścia jest
koszt samego procesu podejmowania decyzji, który obciąża każdego klienta indywidualnie oraz koszt
zastosowania decyzji, który maleje wraz ze wzrostem liczby klientów do niego stosowanych (maleje
koszt jednostkowy stosowania). Lepszym rozwiązaniem jest zastosowanie segmentacji portfela klien-
tów. Polega to na podziale klientów na k grup, w której dla każdego klienta podejmuje się tą samą
decyzję, dla różnych grup są różne decyzje. Inaczej mówiąc podejmuje się k decyzji biznesowych
i każdego klienta obsługuje się zgodnie z tą decyzją, która daje najlepszy wynik.
1.7.1 Segmentacja bazy klientów
Ponieważ ilość klientów jest zazwyczaj znacznie większa od liczby możliwych strategii Y >> Dto do części z klientów będzie przypisana ta sama strategia marketingowa. Oprócz ustalenia możli-
wych do zastosowania strategii, podstawowym problemem jest podzielenie bazy klientów na zbiory
przypisane do różnych strategii, w literaturze zwany jako zagadnienie segmentacji bazy klientów [46].
Samo zagadnienie segmentacji ma wiele aspektów, jednak jako problem optymalizacyjny jest ściśle
związane z zagadnieniem grupowania, będącym zagadnieniem algorytmicznym z zakresu eksploracji
danych [70].
W marketingu segmentacja bazy klientów należy do jednej z kluczowych technik, w których mo-
że mieć zastosowanie grupowanie. Segmentacja ma zastosowanie podczas analizy zachowań klientów
38 Eksploracja danych
[79, 116]. Do grupowania stosuje się zarówno techniki z podziałem ostrym, jak i rozmytym. Jednak
lepsze odzwierciedlenie rzeczywistości daje postać rozmyta. W realnym świecie granica pomiędzy
poszczególnymi segmentami klientów, a nawet granica pomiędzy klientami, dostawcami czy konku-
rentami jest rozmyta [23, 69]. To oznacza, że poszczególne grupy zachodzą na siebie, istnieje pewien
stopień niepewności co do przynależności obiektu do grupy.
1.7.2 Grupowanie w transakcyjnych bazach danych
Na posiadanej bazie transakcyjnej można dokonać różnego rodzaju grupowania. Po pierwsze
można grupować elementy obecne w poszczególnych transakcjach. Jeżeli możliwe jest pogrupowanie
elementów w takie grupy, których elementy należące do jednej grupy często razem występują, to po-
zyskana zostanie wiedza, którą można wykorzystać do optymalizacji promocji, gospodarki regałami
[2] [57]. Wykorzystuje się także grupowanie klientów na podstawie rodzaju przeprowadzonych trans-
akcji. Jest to możliwe tam, gdzie klient przestaje być anonimowy, a więc przy sprzedaży wysyłkowej
czy sektorze B2B. Również sektor handlu detalicznego zauważa potrzebę posiadania imiennej bazy
zakupów poszczególnych klientów. Stosując różnego rodzaju rozwiązania techniczne i psychologicz-
ne (identyfikacja poprzez kratę kredytową, kartę stałego klienta, kupony rabatowe) przedsiębiorstwa
gromadzą szczegółowe bazy danych o swoich klientach. Istnienie takich baz z jednej strony, a po-
trzeba pozyskania wartościowej wiedzy z drugiej wytwarzają dużą presję na rozwijanie eksploracji
danych.
1.7.3 Analiza koszyka zakupów
Przykładem zagadnienia będącego w kręgu zainteresowania DM jest analiza zachowań klientów
w oparciu o technikę marketingową znaną jako analiza koszyka zakupów (ang. market basket ana-
lysis MBA). Celem tej techniki jest identyfikacja asocjacji i reguł leżących pomiędzy konsumentami
kupującymi różne produkty w sklepie samoobsługowym. Sklepy samoobsługowe, szczególnie duże,
są bardzo zainteresowane odkryciem reguł, którymi kierują się konsumenci. Do dyspozycji jest baza
danych zawierająca wszystkie transakcje dokonane przez konsumentów w danym okresie czasu oraz
prowadzona polityka cenowa (dokonane w tym czasie promocje oraz inne działania mające wpływ na
sprzedaż). Przykładowo celem może być odkrycie, które pary produktów są często razem kupowane.
Takie odkrycie może być podstawą decyzji biznesowych o rozmieszczeniu tych produktów w bliskim
sąsiedztwie, lub o odpowiedniej promocji. Wiadomo bowiem, że dla produktów skojarzonych, promo-
cja dotycząca tylko jednego z nich skutkuje wzrostem sprzedaży dla obu [54]. Problem odkrywania
reguł i zależności w oparciu o koszyk zakupów (na podstawie baz danych sklepu samoobsługowego)
został zaprezentowany w [1]. W tym zakresie zostaje uszczegółowiony cel stosowania analizy aso-
cjacji z poszukiwania powtarzających się szablonów [106] na poszukiwanie reguł typu:„Jeżeli klient
1.7 Eksploracja danych biznesowych 39
kupuje towar X to prawdopodobnie kupi również towar Y” [18].
1.7.4 Wysyłanie katalogów reklamowych
Inne zastosowanie zagadnienia segmentacji wywodzi się z problemu plecakowego. Przy założeniu,
że przedsiębiorstwo sprzedaje pewien zbiór wyrobów do n swoich klientów i pragnie wydać katalog
zawierający r wyrobów spośród całości problemem jest jak należy tak dobrać wyroby, aby zmak-
symalizować przyszłą sprzedaż. Ponieważ jest to szczególny przypadek problemu plecakowego to
rozwiązanie jest trywialne: wystarczy wybrać r najbardziej popularnych (najlepiej sprzedających
się) wyrobów.
Jeżeli jednak przyjmiemy, że wydawane są dwa katalogi, każdy z r wyrobami, a do każdego
klienta wysyłany jest jeden albo drugi, to problem się znacznie komplikuje. Jeszcze trudniej jest,
gdy nie jest znana całkowita liczba katalogów oraz liczba wyrobów zawartych w każdym z katalogów.
Problem optymalizacji wyznaczają dwie funkcje. Koszt druku katalogu jest proporcjonalny do liczby
rodzajów katalogów. Wartość katalogu dla klienta odpowiada ilości wyrobów, które mu się „podobają”
w otrzymanym katalogu. Problem optymalizacyjny można zapisać następująco:
Z(D, f) =
(n∑i=1
max1¬j¬k
fi(xj)
)− γ ‖D‖ , (1.10)
gdzie:
Z całkowity zysk uzyskany poprzez wysyłkę katalogów
n liczba klientów,
γ koszt druku katalogu,
fi funkcja wartościująca katalog dla klienta i,
xj ∈ D decyzja wysłania katalogu j,
D zbiór wszystkich możliwych do utworzenia katalogów,
‖D‖ liczba katalogów.
W równaniu 1.10 jako składnik wymieniono funkcję wartościującą katalog dla klienta. Podczas
konstruowania takiej funkcji natrafia się na wiele problemów, wynikających z wielu ograniczeń i nie-
wiadomych. Funkcja wartościująca wykorzystuje dostępne informacje o kliencie. Przede wszystkim
są to dostępne informacje statystyczne takie jak wiek, płeć, przynależność do określonej grupy de-
mograficzne. Skuteczność w tym wypadku jest mocno ograniczona poprzez wysoki koszt pozyskania
wymienionych danych oraz poprzez słabą korelację wymienionych danych oraz skłonności do zakupu.
Istnieje drugi rodzaj danych, gromadzonych niemal automatycznie przez każde przedsiębiorstwo.
Są to dane o sprzedaży. Szczególnie tam, gdzie klient nie jest anonimowy, lub przynajmniej jest
40 Eksploracja danych
możliwy do wyodrębnienia zbiór transakcji dokonanych przez pojedynczego klienta, ma się do czy-
nienia z informacją personalną, nieomal osobistą: co dany klient kupił. Ponieważ zgromadzone dane
to dopiero reprezentacja elementarnych zdarzeń, należy dokonać pewnej analizy i przetworzenia na
postać, dzięki której łatwiejsze będzie podjęcie właściwych decyzji i skonstruowanie odpowiedniej
funkcji wartościującej z równania 1.10. W tym zakresie istotną pomoc stanowią techniki eksploracji
danych i grupowania w szczególności.
1.8 Analiza zachowań internautów
Środowiska, których istotą działania ogólnie rzecz nazywając, jest dystrybucja informacji, również
są zainteresowane technikami eksploracji danych. Wszelkiego rodzaju internetowe portale informacyj-
ne, systemy biblioteczne (zarówno klasyczne jak i elektroniczne), systemy pomocy dla użytkownika
itd. gromadzą informacje, najczęściej w postaci elektronicznych dokumentów, które dystrybuowane
są poprzez internet.
W tym zakresie istnieją dwie kategorie zadań dla DM. Pierwsza wynika z problemu odszukania
interesującego dokumentu, tj. zawierającego określoną treść czy wiadomości. Tu pomocne są techniki
odkrywania znaczeń (ang. information retrieval) czy porównywania dokumentów. Drugie zadanie to
optymalne zaprojektowanie systemu dystrybucji, tak aby użytkownik mógł dotrzeć do odpowied-
niej informacji. Dotyczy to zarówno dużych systemów, takie jak główne portale typu Yahoo, Onet,
jak i każdego mniejszego serwisu, zawierającego kilkanaście, kilkadziesiąt stron hipertekstu. Wła-
śnie hipertekst, który mimo że umożliwia łatwe i natychmiastowe przejście z jednego dokumentu
do drugiego, powoduje powstanie nowego problemu. Z uwagi na swą nieliniowość i niejednorodność
może zostać utrudniony dostęp do określonych informacji, użytkownik skłonny będzie do pomijania
pewnych fragmentów. Właściwe zrozumienie sposobu oglądania stron WWWmoże pomóc we właści-
wym ich zaprojektowaniu (dobór odpowiednich powiązań, odpowiedni projekt graficzny). Istniejące
środki techniczne pozwalają śledzić poczynania użytkownika i rejestrować jego zachowanie. Ale gro-
madzenie tych informacji może również bezpośrednio służyć podejmowaniu decyzji biznesowych.
Na podstawie zarejestrowanych zachowań można dokonać klasyfikacji i na tej podstawie przedsta-
wić odpowiednią ofertę klientom, umieścić reklamę, dokonać analizy reakcji. Rejestrację zachowań
internauty jako podstawę jego analizy zaproponowano w [22].
1.9 Zagadnienie grupowania w katalogu towarów
O ile segmentacja bazy klientów jest powszechnie znanym zagadnieniem zarówno marketingowym
jak i w ramach eksploracji danych, to baza towarów/produktów stosunkowo rzadko jest przedmiotem
badań. Ponieważ to właśnie towary są atrybutami, według których dokonuje się porównywania, oceny
1.9 Zagadnienie grupowania w katalogu towarów 41
i grupowania kontrahentów, to autor niniejszej rozprawy przedstawił własne wyniki badań w tym
obszarze oraz przykłady ich wykorzystania do głównego zagadnienia jakim jest segmentacja bazy
klientów.
Grupowanie w katalogu towarów jest istotnym ogniwem w trakcie eksploracji bazy danych przed-
siębiorstwa. W rzeczywistych środowiskach można spotkać katalogi liczące kilkaset lub wiele tysięcy
pozycji. Szczegółowa analiza pojedynczych pozycji, aczkolwiek możliwa, jest nieskuteczna z punktu
widzenia eksploracji danych. Minimalne różnice pomiędzy towarami, skutkujące odrębnym sposo-
bem rejestracji transakcji (różne identyfikatory) są nieistotne w toku poszukiwania wiedzy. Wiele
technik takich jak uogólnianie, streszczanie, agregacja, OLAP opartych jest na klasyfikacji kata-
logu towarów. Dzięki klasyfikacji można dokonywać przetwarzania na wielu poziomach abstrakcji
[67]. Wiele katalogów towarów posiada informacje o klasyfikacji poszczególnych pozycji. Dane te są
wprowadzane ręcznie zgodnie z przyjętą w przedsiębiorstwie systematyką katalogu towarów. Taka
klasyfikacja posiada szereg wad. Poniżej wymieniono kilka z nich:
1. Wpisy o klasyfikacji towaru są uzupełniane z opóźnieniem.
2. Klasyfikacja odzwierciedla tylko podstawowe cechy towaru.
3. Klasyfikacja tworzona jest ręcznie, przez co trudno dokonywać na niej znaczących modyfikacji.
4. Wprowadzanie nowych rodzajów towarów winno skutkować modyfikacją istniejącej systema-
tyki, co czasami jest bardzo długotrwałe.
5. Klasyfikację tworzy się indywidualnie dla danego przedsiębiorstwa, w oparciu o bieżące potrze-
by, co może skutkować uniemożliwieniem realizacji przyszłych wymagań.
Alternatywą może być utworzenie automatycznego systemu klasyfikowania towarów. Poniżej za-
proponowano sposób tworzenia takiego systemu. Opiera się on na grupowaniu przy wykorzystaniu
funkcji podobieństwa opartej na informacji zawartej w nazwach towarów. Wykorzystuje również
teorię granular computing. Takie podejście omija część ograniczeń ręcznej klasyfikacji:
1. System zapewnia sklasyfikowanie każdej pozycji towarowej.
2. System opiera się na wiedzy ekspertów z danej dziedziny, istnieje możliwość wprowadzania
nowych informacji.
3. Istnieje możliwość modyfikacji parametrów klasyfikacji, co przekłada się na otrzymywane re-
zultaty.
4. Brak ograniczeń w ilości analizowanych pozycji.
W dalszej części pracy autor przedstawi swoje propozycje metod i algorytmów grupowania w
katalogu towarów.
Rozdział 2
Dane
Dane przechowywane w postaci zbiorów, w pamięciach komputerów mają różną postać. Jest ona
determinowana charakterem reprezentowanych obiektów, formą pozyskania danych oraz założonymi
metodami przetwarzania danych. W niniejszym rozdziale omówiono pewne własności danych, które
są istotne w zakresie doboru metod odpowiednich do przetwarzania danych. Informacje tu przedsta-
wione posłużą w zakresie przygotowania samych danych oraz przygotowania metod do badań, które
przedstawiono w rozdziale 5 i 6.
2.1 Rodzaje danych
Ważnym zagadnieniem są różne rodzaje danych gromadzone w BD. Do charakteryzowania danych
należy się posłużyć dwoma pojęciami typ i rozmiar. Rozmiar najczęściej jest określany poprzez
określenie liczby obiektów reprezentowanych w bazie oraz ilości atrybutów przypisanych do danego
obiektu. Natomiast określenie typu danych następuje na kilku poziomach.
Typy danych występujące w zbiorach:
numeryczne — powstają w procesie rejestrowania wyników pomiarów bądź liczebności reprezen-
towanego zbioru, można do ich przetwarzania stosować metody ilościowe. Przykładem może
być:
— wektor liczb rzeczywistych X ∈ Rs, co daje s-wymiarową przestrzeń,
— dane całkowitoliczbowe,
— dane „pseudonumeryczne” – w tym cykliczne, mające tylko niektóre właściwości danych
numerycznych, przykładem może być atrybut określający czas (np. 24 godzinny zegar),
42
2.2 Porównywanie danych 43
kolor RGB itd., dla których w pewnym sensie dopuszczalne są operacje dodawania i mno-
żenia,
symboliczne — powstają w wyniku przypisywania określonych wyrażeń symbolicznych poszcze-
gólnym właściwościom obiektu (działania, transakcji, zjawiska). Można wyróżnić następujące
podtypy:
— Etykiety – symbole należące do skończonego lub nieskończonego zbioru dopuszczalnych
symboli. Celem takiego symbolu jest identyfikacja obiektu lub wartości atrybutu. Symbol
etykiety jest tworzony sztucznie na podstawie ustalonego regulaminu. Oprócz wartości
identyfikacyjnej dodatkowa informacja jest dopuszczalna tylko w zakresie ustalonym w
regulaminie (poprzez wyliczenie dodatkowych atrybutów związanych z danym symbolem).
— Zdania w języku naturalnym. Symbole tej postaci są tworzone poprzez użycie wszelkich
elementów języka naturalnego: słowa, składnia, kontekst, znaczenia. Informacja zawarta
w danych tej postaci umieszczona jest na wielu poziomach abstrakcji. Dane tej posta-
ci cechują się najmniejszymi ograniczeniami w stosunku do możliwości rejestracji i od-
zwierciedlania realnego świata. W rzeczywistych zastosowaniach niektóre elementy języka
naturalnego mogą zostać wykluczone (np. ograniczona długość wypowiedzi, limitowany
zakres słownictwa), lecz zawsze jest to jawne uregulowane ograniczenie.
Wewnętrzna reprezentacja danych (zapisana w pamięci komputera) zawsze ma postać liczby. To,
co odróżnia poszczególne rodzaje danych, to zbiór operacji dopuszczalnych do wykonywania nad
tymi danymi. Wykonywanie innych operacji (np. dodanie kodów reprezentujących litery) powoduje,
że otrzymane wyniki tracą jakikolwiek sens i znaczenie.
2.2 Porównywanie danych
Z punktu widzenia porównywania danych istotne są ich właściwości wymieniane w teorii pomiaru.
W teorii pomiaru wymienia się cztery skale pomiaru [122]:
• skala nominalna, zwana również skalą nazw, najczęściej stosowana do pomiaru cech opiso-wych. Poszczególnym wartościom atrybutu nadawane są symboliczne nazwy. Jedyną operacją
dostępną dla tej skali jest operacja równości, tj. czy dane obiekty mają jednakową wartość
atrybutu
Aj(xk) = Aj(xl) lub Aj(xk) 6= Aj(xl), (2.1)
• skala porządkowa (rangowa) występuje wtedy, gdy zbiór wartości jest liniowo uporządkowany(ustalona jest kolejność wartości w zbiorze). Dostępna jest więc operacja porównania „większy”
44 Dane
– „mniejszy”.
Aj(xk) = Aj(xl) lub Aj(xk) < Aj(xl) lub Aj(xk) > Aj(xl), (2.2)
Typowe zastosowanie tej skali to zmienne opisujące ocenę (np. umiejętności, rozmiaru, jakości).
W zbiorze wartości A, który spełnia warunki skali porządkowej zachodzi relacja przechodniości:
a1 > a2 ∧ a2 > a3 ⇒ a1 > a3 (2.3)
oraz asymetrii:
a1 > a2 ∨ a2 < a1, (2.4)
gdzie: A = a1, a2, . . . oraz A(x) ∈ A.
• skala interwałowa (przedziałowa) należy do skal mocnych. Dostępne są operacje dodawaniai odejmowania,
• skala ilorazowa (stosunkowa) to druga skala mocna, w stosunku do poprzedniej różni się moż-liwością wykonania operacji mnożenia i dzielenia.
Nieco odrębną formułą prezentacji rezultatów pomiarów są wyniki w postaci przedziałów lub ob-
szarów. Przykładowo może to dotyczyć określania odcinków czasu trwania danego zjawiska. Istnieje
wiele postaci zapisu wyników tej postaci. Przykładowo mogą to być określenia granic przedziałów
lub wykorzystuje się inne parametry charakteryzujące przedział. Z uwagi na mnogość kształtów
przedziałów i obszarów istnieje duża trudność w znalezieniu prostych formuł je opisujących.
Podstawą działania metod grupowania, jak i klasyfikacji jest istnienie funkcji określającej bliskość
obiektów. Funkcja ta może mieć charakter:
- miary podobieństwa,
- miary odległości,
- miary konicydencji
- miary asocjacji.
Podczas analizy różnych miar bliskości można zauważyć następujący podział: funkcje obliczające
„bliskość” wyłącznie na podstawie danych o obiektach oraz funkcje używające do tego informacji
o pozostałych obiektach, jak również wiedzy o ich otoczeniu i środowisku. Do pierwszej kategorii
należą miary odległości i podobieństwa, natomiast do drugiej funkcje oparte o obliczenia wiązań,
asocjacji, korelacji.
2.2 Porównywanie danych 45
2.2.1 Miary odległości
Funkcja będącą miarą odległości między dwoma obiektami ma postać:
d : X× X→ R+ (2.5)
i spełnia warunki dla metryk.
Definicja 6. Niech X jest zbiorem obiektów oraz d jest miarą odległości obiektów należących do
X[100]. Miarę d nazywa się metryką jeżeli spełnione są następujące warunki dla każdej pary obiektów
x,y ∈ X:
1. d(x,y) = 0, ⇔ x = y, (2.6a)
2. d(x,y) 0, (2.6b)
3. d(x,y) = d(y,x), (2.6c)
4. d(x, z) ¬ d(x,y) + d(y, z). (2.6d)
Dla pewnych dziedzin powyższa definicja może być trudna do spełnienia. Lecz istnieje możliwość
osłabienia pierwszego i czwartego warunku w ten sposób, aby pozbyć się warunków nieistotnych w
procesie grupowania. I tak warunek zerowej odległości wyłącznie dla obiektów identycznych można
zamienić na:
1′. d(x,x) = 0, (2.7)
co oznacza, że mogą istnieć dwa różne obiekty, dla których wyznaczana odległość jest równa zero.
Należy to tłumaczyć tym, że z danego punktu widzenia te dwa obiekty są nierozróżnialne (i mogą
należeć do tego samego klastra).
Z kolei reguła zwana nierównością trójkąta, zapisana w równaniu jest czasami wykorzystywa-
na do optymalizacji. Przykładowo jeżeli mamy trzy obiekty x, y, z i wiemy że para x, y jest sobie
bliska, a para y, z daleka to możemy wnioskować, że para x, z jest również sobie daleka i pominąć
pewne analizy. Dla części dziedzin ten warunek jest trudny do spełnienia i można zastosować miarę
spełniającą następujący warunek [36]:
4′, d(x, z) ¬ α · (d(x,y) + d(y, z)), (2.8)
gdzie α jest stałą większą niż 1 lecz nie zbyt dużą (wartość stałej zależy od grupowanej dziedziny).
Odległość euklidesowa
d2e(x,y) , (x− y)T (x− y), ∀x, y ∈ Ω. (2.9)
46 Dane
Przyjęcie odległości euklidesowej związane jest z niedogodnościami wynikającymi z dużego wpły-
wu zmian skal współrzędnych dla poszczególnych atrybutów na wyniki grupowania obiektów. Dla
uniknięcia tego wpływu zaleca się znormalizować przestrzeń wartości atrybutów, tak aby zbiory
wartości posiadały zerową wartość średnią i jednostkowe odchylenie standardowe. Ponadto dla unie-
zależnienia wyników porównania od wyboru układu współrzędnych można dokonać obrotu układu
współrzędnych, ustalając takie jego położenie, które pokrywać się będzie z kierunkami osi głów-
nych dla rozpatrywanego zbioru obiektów przestrzeni R. Kierunki te odpowiadać będą kierunkomwektorów własnych kowariancji współrzędnych elementów v.
Odległość Sebestyena
Dla zróżnicowania wpływu poszczególnych współrzędnych na odległości pomiędzy obiektami
można wprowadzić wagi współrzędnych. W przestrzeni wartości atrybutów wagi współrzędnych są
wagami kolejnych atrybutów. Prowadzi to do odległości Sebestyena:
d2S(x, y) , (x− y)TW(x− y) ∀x, y ∈ R, (2.10)
gdzieW jest diagonalną macierzą wag.
W =
w1 0 . . . 0
0 w2 . . . 0....... . .
...
0 0 . . . wm
Odległość Mahalanobiusa
Jeżeli przeprowadza się obrót układu współrzędnych R do położenia wyznaczonego przez osiegłówne, a następnie normalizuje współrzędne w tak obróconym układzie, to dla wyznaczenia odległo-
ści euklidesowej w tej nowej przestrzeni G można wykorzystać bezpośrednio współrzędne przestrzeni
R i na ich podstawie wyznaczyć tzw. odległość uogólnioną (Mahalanobiusa):
d2M (x, y) , (x− y)TC−1(x− y) ∀x, y ∈ R, (2.11)
C =1n
n∑j=1
(xj − x)T (xj − x), xj ∈ R, (2.12)
x =1n
n∑j=1
xj (2.13)
gdzie:
2.2 Porównywanie danych 47
C−1 — odwrotna macierz kowariancji,
n — liczba elementów rozpatrywanego zbioru w przestrzeni R,v — średni element rozpatrywanego zbioru,Odległość uogólniona uwzględnia korelację współrzędnych.
Odległość Manhattan
dMn ,1s
s∑i=1
|x[i]− y[i]| ∀x, y ∈ Rs, (2.14)
gdzie: s oznacza ilość wymiarów przestrzeni Rs.
Odległość Canbera
dC ,s∑i=1
|x[i]− y[i]||x[i] + y[i]|
∀x, y ∈ Rs, (2.15)
Uogólniona postać metryki Lp
Oprócz miary euklidesowej, zwanej również jako miara L2, istnieje wiele metryk ogólnie określa-
nych miarą odległości Lp.
dLp ,
(s∑i=1
|x[i]− y[i]|p) 1p
. (2.16)
2.2.2 Miara podobieństwa
W niektórych algorytmach w miejsce miary odległości można bezpośrednio zastosować miarę
podobieństwa zdefiniowaną następująco:
p : X× X→ R+ (2.17)
i spełnia następujące warunki:
p(x, y) = 1, gdy x = y, (2.18a)
p(x, y) ∈ [0, 1], (2.18b)
p(x, y) = p(y, x). (2.18c)
Funkcja podobieństwa jest komplementarna do funkcji odległości. Wyraża się to stwierdzeniem:
im obiekty są bliżej siebie tym są bardziej do siebie podobne. Pod względem wartości funkcji zerowa
odległość odpowiada wartości 1 dla funkcji podobieństwa, natomiast zero dla funkcji podobieństwa
48 Dane
to nieskończona odległość. Istnieją formuły pozwalające przekształcić funkcję odległości w funkcję
podobieństwa.
W przypadku analizy obiektów z atrybutami binarnymi wskaźnik podobieństwa powinien zależeć
od ilości atrybutów, których wartości się zgadzają bądź nie. Bada się jednoczesność występowania
poszczególnych wartości atrybutów – jest to analiza koincydencji. Dla porównania dwóch obiek-
tów, z których każdy opisany jest jednym atrybutem binarnym, zachodzą cztery możliwe przypadki
zapisane w tabeli koincydencji dla atrybutów binarnych 2.1 [50].
Tabela 2.1. Tabela koincydencji dla atrybutów binarnych.
obiekt y1 0
obiekt x 1 a11 a100 a01 a00
Współczynniki aµv = aµv(x, y) oznaczają liczbę przypadków, w których:
aµv = a ∈ A | a(x) = µ, a(y) = v. (2.19)
Przy pomocy tych współczynników można opisać współczynnik podobieństwa. Istnieje kilka miar,
które różnią się między sobą sposobem traktowania kombinacji określonych współczynnikami a01
i a10. Są to [70]:
wskaźnik Jaccarda , jako stosunek wartości zgodnych do wszystkich
p(x, y) =a00 + a11
a00 + a11 + a01 + a10, (2.20)
wskaźnik Sokal and Sneath , w którym zmniejszona jest waga wartości niezgodnych
p(x, y) =a00 + a11
a00 + a11 + 12 (a01 + a10), (2.21)
wskaźnik Rogers and Tanimoto , w którym wartości niezgodnych jest zwiększona [31]
p(x, y) =a00 + a11
a00 + a11 + 2(a01 + a10). (2.22)
Powyżej wymienione funkcje spełniają warunki miary podobieństwa. Analogicznie, w pewnych
zastosowaniach stosowane są wskaźniki (funkcje które nie spełniają warunku symetryczności):
wskaźnik prosty [86]
p(x, y) =a11
a00 + a11 + a01 + a10(2.23)
2.2 Porównywanie danych 49
wskaźnik Jaccarda [70]
p(x, y) =a11
a00 + a11 + a01(2.24)
wskaźnik Dice [70]
p(x, y) =a11
a11 + 12 (a01 + a10)(2.25)
Powyższe funkcje utworzone zostały poprzez analogię do wzorów (2.20),(2.21),(2.22). Nie speł-
niają warunku symetryczności (2.18c), aczkolwiek w pewnych warunkach pełnią rolę funkcji podo-
bieństwa.
2.2.3 Miary asocjacji
Kolejną miarę bliskości tworzy się poprzez zliczenie wszystkich wspólnych sąsiadów dla danej pary
obiektów. Otrzymuje się wskaźnik wiązań (ang. links). Takie podejście opiera się na następującym
założeniu: im więcej wspólnych sąsiadów mają dane obiekty, tym bardziej są sobie bliskie [53]. Pojęcie
sąsiedztwa ściśle zależy od dziedziny, w której dokonuje się grupowania. W zakresie transakcyjnych
baz danych sąsiednie są każde transakcje, które wspólny mają przynajmniej jeden element wchodzący
w skład transakcji. W przypadku obiektów określonych atrybutami opisowymi sąsiedztwo zachodzi
wówczas, gdy co najmniej jeden z atrybutów przyjmuje tą samą wartość dla obu obiektów.
2.2.4 Miary odległości dla grup danych
Oprócz szeregu miar bliskości definiowanych dla par obiektów, w niektórych zastosowaniach
konieczne jest posiadanie miar bliskości zdefiniowanych dla klastrów (grup). Najczęściej mówi się
o odległości pomiędzy klastrami:
Dist(A,B), gdzie A,B ⊂ X. (2.26)
Miary odległości pomiędzy klastrami wykorzystywane są w samym procesie grupowania (przy-
kładowo w hierarchicznym grupowaniu aglomeracyjnym) jak i na etapie walidacji, czy też oceny
jakości grupowania.
Pierwsze dwie metody obliczania odległości pomiędzy klastrami polegają na znalezieniu, odpo-
wiednio, najdalszej lub najbliższej sobie pary obiektów, należących do przeciwnych klastrów. Reguła
najbliższego sąsiada ma następującą formułę:
Dist(A,B)Min = minxi∈A,yj∈B
d|xi, yj |. (2.27)
50 Dane
Analizując właściwości takiej miary można zauważyć, że prowadzi ona do tworzenia jednego lub
kilku dużych klastrów i szeregu jednoelementowych, odizolowanych od siebie. Wynika to z algorytmu
obliczeniowego: im większy klaster tym większe prawdopodobieństwo, że jeden z elementów znajdzie
się blisko dołączanego. Małe klastry przegrywają w „konkurencji” do dużych, a te stają się jeszcze
większe. Drugą istotną cechą jest to, że nie nadaje się ona do porównywania klastrów nakładających,
czy też zachodzących na siebie.
Reguła najdalszego sąsiada jest tworzona analogicznie:
Dist(A,B)Max = maxxi∈A,yj∈B
d|xi, yj |. (2.28)
Dokonując analogicznej analizy jak powyżej, dochodzi się do wniosku, że cechą charakterystyczną
tej reguły jest tworzenie możliwie równolicznych klastrów. Przyczyna jest podobna: średnia odległość
najdalszego sąsiada w stosunku do klastra małego jest mniejsza niż w stosunku do klastra dużego.
Tym samym małe klastry rosną aż się staną równe pozostałym.
Rozwiązaniem pośrednim jest użycie jako miarę średniej odległości pomiędzy obiektami należą-
cymi do obu klastrów:
Dist(A,B)sr =1na
1nb
∑xi∈A
∑yj∈B
d|xi, yj |. (2.29)
Podana reguła minimalizuje wpływ liczebności klastra na uzyskiwany wynik. Wadą jest natomiast
znaczny koszt obliczeniowy.
Uogólnioną postać zawierającą powyższe wzory zaprezentowano w [35]:
Distα(A,B) =
1na
1nb
∑xi∈A
∑yj∈B
d|xi, yj |α( 1α ) , (2.30)
gdzie α ∈ [−∞,∞] jest parametrem, który decyduje o specyficznych właściwościach poszczegól-nych reprezentantów:
α→ −∞ – reguła najbliższego sąsiada
α = −1 – średnia harmoniczna,
α = 0 – średnia geometryczna,
α = 1 – średnia arytmetyczna,
α = 2 – średnia euklidesowa,
α→∞ - reguła najdalszego sąsiada.
2.3 Dane symboliczne
Określenie dane symboliczne należy traktować jako antonim terminu „numeryczny”. W literatu-
rze spotyka się się również pojęcie „dane jakościowe”, ale wydaje się, że termin „symboliczne” lepiej
2.3 Dane symboliczne 51
odzwierciedla różnice i odrębność stosowanych metod. Dane symboliczne obejmują cechy jakościowe
obiektów. Do reprezentacji tych cech najlepiej wykorzystać symbole z języka naturalnego. Ponieważ
z każdym takim symbolem skojarzona jest określona wiedza, można ją wykorzystać na różnych eta-
pach przetwarzania i analizy do osiągnięcia zakładanych celów. Dane symboliczne również nadają
się do reprezentacji niskiej jakości pomiarów, lub wszędzie tam gdzie nieznana jest charakterysty-
ka skali, jednostka pomiarowa, występują braki wartości. Istnieje możliwość przekształcenia danych
symbolicznych na postać numeryczną co zostanie przedstawione poniżej. Należy jednak pamiętać,
że w niektórych przypadkach takie przekształcenie powoduje powstanie całkowicie sztucznego po-
rządku, oderwanego od rzeczywistego znaczenia poszczególnych symboli, co skutkuje uzyskiwaniem
wyników bez praktycznej użyteczności [117].
Metody symboliczne zostały utworzone z myślą o przetwarzaniu danych symbolicznych bez prze-
kształcania na postać numeryczną. Większość metod wykorzystuje teorię informacji oraz algorytmy
heurystyczne. Opierają się na badaniach nad postrzeganiem świata przez człowieka ze szczególnym
odniesieniem podstawowego ludzkiego narzędzia służącego klasyfikacji i wyrażaniu wiedzy jakim jest
język. Do tego należy dodać przewagę metod symbolicznych z uwagi na postać wyniku, który jest
bardziej przyswajalny dla człowieka, może posiadać krótszy zapis, odnosić się do właściwości obiek-
tów. Metody symboliczne nie stawiają żadnych wymagań w odniesieniu do danych podlegających
analizie. Grupowanie danych symbolicznych dokonywane jest wieloma metodami, które, ze względu
na sposób traktowania danych symbolicznych, można następująco sklasyfikować:
1. metody przystosowane do danych symbolicznych,
2. metody przekształcające dane symbolicznych na postać numeryczną,
3. metody powstałe poprzez adaptację metod numerycznych np.: w wyniku zamiany funkcji od-
ległości na funkcję opartą o podobieństwo dystrybuant.
Poniżej opisano sposoby stosowane przez metody wymienione w punktach 2 i 3. Natomiast me-
tody wymienione w punkcie 1 będą opisane w dalszych rozdziałach.
Ad. 2 Przekształcenie danych symbolicznych na postać numeryczną
Jak już powiedziano wiele atrybutów, służących reprezentacji obiektów, ma postać nienumerycz-
ną, opisanych na skalach słabych czyli nominalnych lub porządkowych. W rzeczywistych bazach
danych atrybuty te sąsiadują z atrybutami numerycznymi. Przykładowo tabela zawierająca katalog
samochodów może zawierać atrybut symboliczny «kolor»=’czerwony’,’biały’,’czarny’ jak i nume-ryczny «cena» ∈ R+.Wiele atrybutów symbolicznych służy do reprezentacji pewnych zjawisk fizycznych, które mo-
gą zostać zmierzone. Można więc dokonać zabiegu przekształcenia skali pomiarowej, niejako jej
52 Dane
wzmocnienia. Przykładowo dla zapisu koloru można dokonać podstawienia w miejsce atrybutów no-
minalnych wektorowy zapis składowych RGB. Wiadomo bowiem, że każdy kolor można rozłożyc
na 3 składowe. W miejsce zapisu symbolicznego otrzymuje się postać punktu w przestrzeni trójwy-
miarowej. Dla innych atrybutów można dokonać analogicznej analizy. Aczkolwiek metoda ta daje
dobre wyniki z punktu widzenia inżynieryjnego, natomiast z punktu widzenia przetwarzania wiedzy,
sposobu postrzegania świata przez człowieka może stanowić o uzyskaniu błędnych wyników. Jest to
spowodowane nieliniowością percepcji zmysłów człowieka i różnym wpływie poszczególnych wartości
atrybutów w zależności od otoczenia. Przykładem może być paleta barw stosowana w drukarstwie:
wyróżnionych odcieni koloru białego jest znacznie więcej niż innych kolorów, czyli jeden kolor jest
ważniejszy a nie wynika to reprezentacji koloru w postaci RGB.
Ad.3 Funkcje podobieństwa tworzone na podstawie dystrybuant atrybutów
Prawdopodobieństwa dla dwóch podanych rodzajów atrybutów, wartości atrybutów przy znanej
kategorii oraz kategorii przy znanych wartościach atrybutów, pozwalają na mierzenie podobieństwa
przykładów w danej kategorii i zróżnicowania pomiędzy kategoriami. Analiza prawdopodobieństw
występowania poszczególnych wartości atrybutów, prawdopodobieństwa warunkowego i innych za-
leżności statystycznych może dać wiele interesujących informacji o atrybutach bez wnikania w rze-
czywiste znaczenie poszczególnych atrybutów. Przykłady można znaleźć w pracach związanych z
poszukiwaniem asocjacji w bazach danych [1, 2, 19, 30].
Jeżeli dla przykładów należących do tej samej grupy prawdopodobieństwa Prx∈X(ai(x) = v |c(x) = d) mają podobne wartości dla poszczególnych v ∈ Ai, w szczególności, gdy dla niektórychwartości argumentów są duże (bliskie 1) a dla reszty małe (bliskie 0), to pozwala to przewidywać
wartości tych argumentów. Przynależność do tej samej grupy jest poszukiwana na podstawie podo-
bieństwa dystrybuant atrybutów.
Analogicznie, gdy dla przykładów należących do różnych kategorii wartości prawdopodobieństw
Prx∈Ω(c(x) = d | ai(x) = v) są duże jednocześnie dla kilku kategorii dla wielu wartości argumentów,to kategorie te mają więcej wspólnych atrybutów, czyli są mniej zróżnicowane.
Podobieństwo dwóch obiektów x i x′ należących do skończonego zbioru X może być oszacowanejako podobieństwo pomiędzy dystrybuantami g(y) , P (y | x) oraz g(y) , P (y | x′). Istnieje wielemożliwych do zastosowania funkcji podobieństwa, powszechnie stosowane są wymienione w tabeli
2.2. Warunkowe prawdopodobieństwa obliczane są następująco:
g(y) , P (y | x) = fxy∑y∈Y fxy
(2.31)
gdzie: fxy jest ilością jednoczesnych wystąpień x i y.
2.3 Dane symboliczne 53
Tabela 2.2. Funkcje podobieństwa stosowane dla dystrybuant zmiennej losowej.
KL dywergencja D(q | r) =∑y q(y)
(log q(y)− log r(y)
)
Jensen-Shannon JS(q, r) = 12
[D(q | avg(q, r)
)+D
(r‖avg(q, r)
)]
Skew dywergencja sα(q, r) = D(r‖αq + (1− α)r
)
Euclidesowa euc(q, r) =(∑
y(q(y)− r(y))2) 12
kosinusowa cos(q, r) =
∑yq(y)r(y)√∑
yq(y)2
∑yr(y)2
L1 - manhattan L1(q, r) =∑y|q(y)− r(y)|
confusion conf(q, r, P (x′)) = P (x′)
∑yq(y)r(y)
P (y)
Tau τ(q, r) =
∑y1,y2
sign[(q(y1)−q(y2))(r(y1)−r(y2))](2(|V |2
))
W tabeli 2.2 przedstawione są przykładowe funkcje, stosowane do tworzenia funkcji oceny podo-
bieństwa wykorzystującej dystrybuanty atrybutów [83]. Posiadając funkcje podobieństwa warunko-
wego g(y) i r(y) obliczone ze wzoru (2.31) na podstawie jednego z wzorów z tabeli 2.2 otrzymuje się
funkcję podobieństwa. Doboru stosowanej funkcji dokonuje się doświadczalnie, na podstawie anali-
zowanej dziedziny.
54 Dane
2.4 Dane lingwistyczne
2.4.1 Lingwistyka formalna
Lingwistykę można w przybliżeniu zdefiniować jako badania nad przekazywaniem komunikatów
werbalnych [72]. Lingwistyka jest osadzona w ramach działu nauki zwanym semiotyką.
Semiotyka jest ogólną teorią znaku związaną z logiką i lingwistyką. Semiotyka, jako nauka o prze-
kazywaniu wszelkiego rodzaju komunikatów, jest najbliższym kręgiem otaczającym koncentrycznie
lingwistykę, której pole badań ogranicza się do komunikatów werbalnych, następnym szerszym krę-
giem o wspólnym środku jest zintegrowana nauka o komunikacji. Współczesna postać semiotyki
pochodzi od Ch. Morrisa, który uznał, że powinna ona stanowić podstawę badań nad związkami
między wszelkimi działaniami ludzkimi i ich odzwierciedleniem w systemie znaków. Semiotyka dzieli
się na:
1. Semantykę (w węższym sensie), czyli naukę o znaczeniowej stronie języka, o tym, jakie relacje
zachodzą między znakami i ich znaczeniem (sensem).
2. Syntaktykę rozpatrującą związki zachodzące między znakami i między systemami znaków.
3. Pragmatykę badającą warunki użycia określonych znaków.
Do powyższego podziału czasami dodaje się jeszcze zagadnienie socjalne, zajmujące się proble-
matyką osób używających dany język.
Podstawowe pojęcia stosowane w lingwistyce to:
Alfabet Alfabetem nazywa się dowolny, skończony zbiór znaków (symboli) A = a1, a2, . . . ...anzwanych literami. Rodzaj tych symboli oraz ich postać fizyczna są dowolne. Istotne jest tylko,
aby litery miały charakter dyskretny (różniły się między sobą), a rozpatrywany alfabet był
skończony. Napisem (N) lub słowem (S) w alfabecie A będzie dowolny skończony ciąg literw przyjętym alfabecie. Na ogół wyróżniony jest pewien znak dzielący napisy (N) na słowa
(S). Znakiem tym często są odstępy. Często wyróżnia się również pewne środki syntaktyczne
(składniowe) dzielące dłuższe napisy na podzbiory słów zwane zdaniami. Zbiór wszystkich
możliwych napisów nad alfabetem A jest oznaczony jako A∗. Można w nim wyróżnić pewienpodzbiór napisów, które uznaje się jako napisy (wyrażenia) poprawne. Podzbiór ten będziemy
oznaczać symbolem R.
Gramatyka Zbiór reguł (G) określających strukturę napisów poprawnych, a tym samym okre-
ślających zbiór R, jest nazywany gramatyką języka. Od reguł gramatyki nie zawsze wymaga
się, aby wszystkie utworzone według nich napisy były sensowne. Dziedzina języka (D) jest to
zbiór informacji, którego elementy są oznakowane przez napisy poprawne języka. Znaczenie
2.4 Dane lingwistyczne 55
języka (Z), czyli znaczenie napisów poprawnych jest wyznaczone przez relację wiążącą napisy
poprawne i elementy dziedziny języka. Reguły wyznaczające te relacje są nazywane regułami
znaczeniowymi lub semantycznymi języka. Przez język rozumie się zbiory A,G,D,Z.
Zmienna lingwistyczna Aby skonstruować narzędzia służące przetwarzaniu danych lingwistycz-
nych należy dobrać odpowiednią metodę przetwarzania takich danych. Metoda ta winna trakto-
wać słowa języka naturalnego jako etykiety oparte na ludzkich możliwościach percepcji. Czym
jest zmienna lingwistyczna? Jest po prostu symbolicznym przedstawieniem danego obiektu,
jego cechy, właściwości bądź działania związanego z tym obiektem. Co więcej, pod danym
słowem-symbolem kryje się grupa obiektów (właściwości itd.) nierozróżnialna ze względu na
istotę przedstawianej informacji. Na przykład pod słowem „drzewo” rozumie się rośliny o
pewnych cechach. Zdolność słów do grupowania może być postrzegana jako swoista forma
granulacji czy ziarnistości (ang. granulation) i wykorzystana podczas kwantyzacji do zbiorów
rozmytych. Na tej podstawie zbudowany jest mechanizm translacji słów do postaci zbiorów
rozmytych.
Definicja 7. Zmienna lingwistyczna X jest charakteryzowana przez pięć argumentów (H,-
T (H), U,G,M). H jest nazwą zmiennej czyli słowem ją identyfikującą. T określa zbiór słów,
etykiet, do których należy H, z których każdy określony jest w świecie mowy U . G określa
reguły gramatyczne związane ze zmienną, czyli syntaktykę. M to reguły semantyczne związane
ze znaczeniem zmiennej H.
Słowo (wyraz) jest elementarną jednostką reprezentacji informacji w zakresie lingwistycznej postaci
danych. Każde słowo reprezentuje rozmyty lub ostry zbiór znaczeń określony w świecie realnym
D [127].
2.4.2 Wyrażenia symboliczne i lingwistyczne
Wyrażenia symboliczne mogą być tworzone sztucznie, tylko na potrzeby danej lokalizacji bez
związku ze znaczeniem w języku naturalnym. Najczęściej jednak stosuje się określenia bezpośrednio
stosowane przez ludzi w komunikacji interpersonalnej, między sobą.
Przenoszenie terminów z języka naturalnego do systemu informatycznego implikuje szereg pro-
blemów, wynikających bezpośrednio z pewnych właściwości ludzkiej mowy:
synonimy – różne słowa i frazy mogą wyrażać to samo pojęcie, mieś to samo znaczenie. Przykła-
dowo słowa „robić”,„wytwarzać”,„produkować” mimo, że wyglądają zupełnie różnie to znaczą
mniej więcej to samo,
56 Dane
wieloznaczność – słowa mogą mieć wiele znaczeń. Przykładowo słowo „klucz” występuje w znacze-
niach jako: „klucz do zamka w drzwiach”, „klucz do rozwiązania zagadki”, „klucz do otwarcia
szyfru”,
złożenia słów – niektóre słowa tworzą frazy, o znaczeniu daleko różnym od znaczenia słów wcho-
dzących w skład. Przykładowo termin „odszedł w pokoju” dotyczy osoby zmarłej, czyli w
niczym się nie kojarzy ze znaczeniem słów użytych niezależnie,
kontekst lokalny – znaczenie słów silnie zależy od otoczenia w jakim zostały obe użyte.
Dane lingwistyczne cechuje szereg zalet, które ujawniają się w następujących przypadkach:
• potrzeby rejestrowania danych w formie przyjaznej dla człowieka,
• ograniczonej możliwości rejestracji zapisu rzeczywistości wyłącznie przy pomocy liczb, dotyczyto szczególnie przypadków, w których „obiektem” dokonującym pomiaru jest człowiek,
• faktu, że nie wszystkie zjawiska poddają się ocenie liczbowej,
• potrzeby zapisu wiedzy, posiadanej przez ekspertów i możliwej do wyrażenia jedynie w postacijęzyka naturalnego.
Dane lingwistyczne nie wymagają stosowania określonej struktury formalnej, dzięki czemu w ła-
twy sposób dają się adaptować i rozszerzać w miarę potrzeb objęcia nowych obszarów, dziedzin,
kierunków czy stopnia szczegółowości [105].
Podczas przetwarzania informacji, szczególnie tej wyrażonej w postaci lingwistycznej, należy
szczególnie zwrócić uwagę na kontekst, czyli środowisko i otoczenie w jakim dane powstały i ja-
kie obiekty dane opisują. Pełne znaczenie wyrażenia w języku naturalnym ujawnia się dopiero w
momencie interpretacji w określonym kontekscie użycia (mówimy wtedy o wypowiedzi) np. zja-
wiska referencji (odniesienia do elementów rzeczywistości), anafory (relacji pomiędzy elementami
kolejnych wypowiedzi) czy też presupozycji (warunków nakładanych na stan kontekstu). Od wie-
lu lat ugruntowaną pozycję standardowego formalizmu opisu znaczenia wielozdaniowej wypowiedzi
w języku naturalnym ma „Discourse Representation Theory” [74]. W zakresie eksploracji danych
wyróżnia się kilka rodzajów kontekstu:
• źródłowy (ang. generic) - w zakresie danych lingwistycznych obejmuje podstawowe, leksykalneznaczenie poszczególnych słów,
• logiczny – obejmuje modyfikację znaczenia danego opisu poprzez użycie operatorów logicznychi modyfikatorów leksykalnych (np. „nie”,„lub”,„większość”,„około”),
2.4 Dane lingwistyczne 57
• relacyjny – wynikający z zapisanych relacji do innych obiektów i pojęć (np. „produkt a jesttańszy niż produkt b”),
• regresji – obejmujący właściwości, a w szczególności odchylenie, od zastosowanego modeluliniowego.
Aby rozpocząć omawianie modeli przetwarzania danych lingwistycznych należy sobie zdać sprawę
z ich charakteru. Chodzi mianowicie o to, że pod każdym terminem lingwistycznym (słowem, wyraże-
niem) rozumie się pewną grupę, zbiór obiektów nierozróżnialnych ze względu na swoje podobieństwo,
funkcjonalność, właściwości.
Najważniejsza cecha odróżniająca model numeryczny od symbolicznego wynika ze sposobu otrzy-
mywania wyników [65]. Model numeryczny przekształca wejściowy zbiór danych numerycznych w
zbiór wyjściowy. Natomiast w modelu lingwistycznym otrzymujemy pewne obszary rozwiązań. Wa-
runki wskazujące na przetwarzanie danych lingwistycznych w miejsce numerycznych:
1. Brak wystarczającej precyzji w danych źródłowych, dane nie są wystarczająco wiarygodne.
2. Brak potrzeby dokładnych obliczeń - wystarczą przybliżone, otrzymane niższym kosztem.
3. Brak możliwości rozwiązania problemu tradycyjnymi metodami, nie przekraczając racjonalne-
go kosztu przetwarzania.
4. Problem zbyt skomplikowany aby zdefiniować go w sposób akceptowalny do rozwiązania me-
todami numerycznymi.
2.4.3 Rozpoznawanie znaczeń w dokumentach tekstowych
Pojęcie dokumentu tekstowego należy rozumieć szeroko. Oprócz typowego określania tym termi-
nem wypowiedzi w języku naturalnym zapisanej w postaci tekstu (czyli artykuł, notatka, książka —
forma liniowa), są nimi również strony internetowe (HTML, XML — forma hipertekstowa, nielinio-
wa) oraz wszelkiego rodzaju tabele, formularze posiadające sformalizowaną strukturę ale zawartość
w postaci symbolicznej, w tym elementy języka naturalnego (karty biblioteczne, niektóre rekordy w
bazach danych).
Zagadnienie rozpoznawania znaczeń w dokumentach w dużej mierze polega na określaniu podo-
bieństwa par dokumentów. Jedno z pierwszy podejść do automatycznej analizy tekstu dokonał Luhn.
Zasugerował on oparcie się o porównanie zawartości dwóch identyfikatorów reprezentujących zarów-
no posiadany dokument jak i pytanie użytkownika [88]. Sposoby tworzenia identyfikatorów mogą być
różne, najczęściej powstają w wyniku ekstrakcji pewnych wyselekcjonowanych z dokumentu i zapy-
tania słów, tak by najlepiej odpowiadały zawartej w tekstach informacji. Ekstrakcja słów może być
dokonywana ręcznie, bądź automatycznie w trakcie fazy uczenia, w której są tworzone identyfikatory
58 Dane
na podstawie zbioru treningowego dokumentów. Można również założyć, że w skład identyfikatorów
wchodzą wszystkie występujące słowa, wtedy nie potrzebny jest etap selekcji.
Porównywanie dokumentów jest techniką pozwalającą na rozwiązanie następujących problemów:
kategoryzacja poprzez ocenę do którego dokumentu wzorcowego dany tekst jest najbardziej po-
dobny,
poszukiwanie informacji , które dokonuje się poprzez zadanie pytania, będącego również formą
dokumentu; rozwiązaniem jest dokument najbardziej podobny.
Analiza dokumentów tekstowych może być prowadzona różnymi technikami. Możliwości są na-
stępujące:
1. Statystyczna analiza jednoczesnego występowania poszczególnych słów w danym zbiorze do-
kumentów. Opiera się na założeniu, że samo występowanie słów jest wystarczającą informacją
do porównania tekstów.
2. Selekcja fraz, składających się z kilku słów, i dalszej analizie prowadzonej jak dla pojedynczych
słów. Dzięki takiemu podejściu uwzględnia się niektóre zasady składni i unika się wieloznacz-
ności niektórych słów.
3. Użycie słownika, zgodnie z którym określa się zależności pomiędzy poszczególnymi słowami.
Dzięki czemu możliwe jest rozpoznanie podobieństwa dokumentów w których użyto w takim
samym znaczeniu różnych słów (słowa te są synonimami). Możliwe jest również wstępne grupo-
wanie słów, podobnych pod względem znaczeniowym i na tej podstawie dokonanie rozpoznania
znaczenia dokumentu.
4. Konstruowanie bazy wiedzy oraz użycie metod sztucznej inteligencji do rozpoznania rzeczywi-
stej informacji zawartej w dokumencie, dokonanie porównania dokumentu w sposób analogicz-
ny i na tym samym poziomie abstrakcji, jak to dokonuje człowiek.
2.5 Tematyczne bazy danych
Celem stosowania bazy danych jest przechowywanie zdań. Według Arystotelesa, twórcy logiki ze
starożytnej Grecji, zdanie jest po prostu „reprezentacją czegoś”. Może reprezentować obiekt rzeczy-
wisty, jego właściwość lub cokolwiek innego, dającego się wyrazić w języku naturalnym. Baza danych
musi realizować dwie funkcje: kodowanie i dekodowanie, czyli przekształcenie zdania na swą postać
wewnętrzną oraz proces odwrotny. Z uwagi na to, że świat reprezentowany jest poprzez pojęcia
logiczne, w tabeli 2.3 umieszczono pewne analogie pomiędzy pojęciami.
2.5 Tematyczne bazy danych 59
Tabela 2.3. Semantyka składników elementarnych [63].
logika rzeczywistość język naturalnyargument obiekt rzeczownikfunkcja relacja czasownikwartość właściwość przymiotnik
Działanie bazy danych wynika z interakcji z użytkownikiem, który nią steruje przy pomocy pew-
nego sztucznego języka (zależnego od programu realizującego funkcje bazodanowe), zawierającego
komendy uruchamiające poszczególne procedury programu.
W interakcji z komputerem rozumienie języka naturalnego jest ograniczone wyłącznie do czło-
wieka. Przykładowo jeżeli życzeniem użytkownika jest odnalezienie obiektu „czerwonego”, to tylko
on rozumie to pojęcie jako coś co „odbija światło o określonej długości fali”. We wnętrzu komputera
„czerwony” jest zamieniany na symbol, który jest przetwarzany bez znajomości i interpretacji jego
znaczenia.
To, że komputer nie myśli jest oczywistą prawdą, aczkolwiek możliwe jest skonstruowanie takiego
programu, który wykona polecenia człowieka, jeżeli forma tych poleceń będzie ściśle określonego,
wstępnie zaprogramowanego typu. W zależności od tego, jakie zadania maszyna jest zdolna wykonać,
to można mówić, że potrafi zrozumieć język naturalny na pewnym poziomie, lub też posiada coś
odpowiadającego umiejętnościom poznawczym człowieka.
Kolekcja danych umieszczonych w określony sposób w strukturach odpowiadająca schematowi
jest powszechnie nazywana bazą danych. W niniejszym opracowaniu termin baza danych rozumiany
jest w następującym znaczeniu:
Definicja 8. Bazą danych nazywamy zbiór danych o określonej strukturze, zapisany na zewnętrznym
nośniku pamięciowym komputera, mogący zaspokoić potrzeby użytkowników korzystających z niego w
sposób selektywny w dogodnym dla siebie czasie. W bazie danych są zapisywane fakty i zdarzenia, po
to, aby możliwe były ich odtworzenie i analiza w dowolnej chwili [32].
Gromadzenie informacji w bazie danych oparte jest na następującej definicji elementarnej krotki
w modelu danych [32]:
Definicja 9. Reprezentacja pozyskanej informacji odnośnie obserwowanego zjawiska wyraża się jako:
< „obiekt”, „atrybut obiektu”, „wartość atrybutu”, „moment obserwacji” >, (2.32)
i wyraża zaobserwowaną wartość atrybutu dla danego obiektu.
Istnieje wiele sposobów reprezentowania i powiązania wymienionych aspektów danych – wiele
modeli danych. Częstą modyfikacją jest pomijanie aspektu czasu, szczególnie w stosunku do atry-
butów wolno zmiennych (lub stałych takich jak „data urodzenia”). Przykładami modeli danych jest
60 Dane
model sieciowy, hierarchiczny, jak również relacyjny.
Istnieje niewątpliwa potrzeba grupowania obiektów na podstawie ich właściwości. Grupowanie,
jako jedna z technik eksploracji danych bezpośrednio wpisuje się w to zagadnienie. Równie ważny
jest problem identyfikacji obiektu na podstawie jego właściwości.
Zagadnienia poruszane w niniejszym opracowaniu związane są z wieloma obszarami. Na przykład
dotyczą biznesu, w szczególności z segmentacją portfela klientów - jako jedną z kluczowych technik
marketingowych. Do tego celu stosowane jest grupowanie na podstawie dostępnych informacji o
klientach, a w szczególności na podstawie dokonanych przez nich transakcji zakupu. Cel stosowania
takich technik wynika z potrzeb marketingowych takich jak: selekcja grupy docelowej, dopasowanie
oferty, benchmarking, badanie efektywności kampanii marketingowych, sposobu prezentacji towarów.
Istnieje jednak wiele miejsc, w których problem może być analogicznie sformułowany.
Drugi obszar zastosowań obejmuje problem grupowania osób odwiedzających dany serwis WWW.
Przepisy dotyczące ochrony prywatności, a może przede wszystkim coraz większa świadomość użyt-
kowników w tym zakresie powodują, że bezpośrednie metody identyfikacji (np. numer procesora,
cookies, numer IP) są nieskuteczne jako element identyfikacji, gdyż przykładowo są wyłączane.
Szczegółowej rejestracji mogą podlegać wszelkie działania internauty : przesłane zapytania, wywo-
łania innych stron WWW, sposób nawigacji. Informacje te mogą posłużyć do identyfikacji wzorców
zachowań. Celem jest profilowanie przedstawianej zawartości czy też prezentowanych reklam [98].
Również w medycynie można znaleźć informacje posiadające strukturę opisaną w definicji 9.
Przykładowo może to być baza postaci:
< „pacjent”, „lekarstwo”, „objawy” > . (2.33)
Takich danych można się spodziewać w badaniach nad nowymi lekami czy też nieznanymi chorobami.
Cechą wspólną przedstawionych zagadnień jest objęcie przetwarzaniem danych postaci zarów-
no numerycznej jak i symbolicznej. W każdym przypadku, niezależnie czy są to klienci, internauci
czy pacjenci, występują wszelkie rodzaje atrybutów: wartości liczbowe, wyliczeniowe, symbole języ-
ka naturalnego lub sztucznego, opisowe (teksty w języku naturalnym). Człowiek dokonując oceny
i wartościując pozyskane dane korzysta z całej dostępnej mu wiedzy o środowisku, w którym dane
powstały, sposobach ich rejestracji, znaczeniach przypisywanych poszczególnym symbolom.
2.6 Wiarygodność danych
W kontekście eksploracji danych czy też pozyskiwania wiedzy niewątpliwe znaczenie ma aspekt
wiarygodności. W opracowaniu przyjęto, że dane są opisem jakiegokolwiek zdarzenia lub pojęcia war-
tego zapamiętania i przetwarzania. Z punktu widzenia systemu informatycznego dane są to liczby i
2.6 Wiarygodność danych 61
teksty wprowadzane do systemu informatycznego na podstawie przyjętego schematu organizacyjne-
go, mające za zadanie reprezentować zachodzące procesy[91].
Dane są źródłem pozyskiwania informacji o danym obiekcie czy procesie, na rzecz którego wy-
korzystywany jest system informatyczny. Aby jednak informacja ta była prawdziwa i rzetelna musi
opierać się o wiarygodne dane. Poprzez wiarygodność danych określa się stopień w jakim dane
wprowadzone do komputera odpowiadają stanowi rzeczywistemu. Zmniejszenie wiarygodności jest
powodowane wieloma czynnikami, począwszy od błędów w sposobie modelowania i reprezentacji w
komputerze a skończywszy na błędach występujących podczas przetwarzania danych na informacje.
Rozdział 3
Grupowanie
3.1 Wstęp
Grupowanie jako jedna z metod pozyskiwania wiedzy, a tym samym eksploracji danych jest ściśle
uwarunkowana źródłem danych oraz oczekiwaną postacią rezultatów. W niniejszym rozdziale przed-
stawiono podstawowe aspekty klasyfikacyjne metod grupowania, ze szczególnym uwzględnieniem
tych aspektów, które mają wpływ na przydatność stosowania danej metody w procesie eksploracji
danych. Zwrócono uwagę na sposób przetwarzania danych, przez poszczególne metody, szczególnie
w kontekście danych symbolicznych, omówionych w podrozdziale 2.3.
Grupowanie polega na wyodrębnianiu grup (klas, podzbiorów) na podstawie następująco sfor-
mułowanego zadania:
identyfikacja naturalnych grup, w których obiekty podobne do siebie mają zostać umiesz-
czone w jednej grupie, natomiast obiekty znacznie się różniące w różnych grupach [71].
Wybrane cele dokonywania grupowania są następujące:
• uzyskanie jednorodnych przedmiotów badania, ułatwiających wyodrębnienie ich zasadniczychcech,
• zredukowanie dużej liczby danych pierwotnych do kilku podstawowych kategorii, które mogąbyć traktowane jako przedmioty dalszej analizy,
• zmniejszenie nakładu pracy i czasu analiz, których przedmiotem będzie uzyskanie klasyfikacjiobiektów typowych,
• odkrycie nieznanej struktury analizowanych danych,
62
3.1 Wstęp 63
• porównywanie obiektów wielocechowych.
W zakresie analizy przydatności poszczególnych metod grupowania do eksploracji danych zwró-
cono uwagę na następujące aspekty:
• sposób ujęcia danych,
• sposób określania podobieństwa i niepodobieństwa, zgodnie z którym łączy się obiekty w grupy,
• metody poszukiwania rozwiązań
• forma prezentacji danych.
Grupowanie często jest pierwszym krokiem w procesie poznawania danego zjawiska na podstawie
zbioru obserwacji. Jest to forma maszynowego uczenia bez nadzoru a celem jest uzyskanie hierarchii
pojęć opisujących dane zjawisko. Grupowanie wywodzi się z taksonomii numerycznej oraz anali-
zy skupień i w swym podstawowym ujęciu zajmuje się otrzymywaniem zapisu podziału obiektów
na grupy przy pomocy metod algorytmicznych. Jakkolwiek jest to główne zadanie grupowania, to
jednak z powodu braku lub słabego wykorzystywania różnych aspektów wiedzy dotyczących zbioru
obiektów, ich atrybutów i środowiska, uzyskiwane rezultaty mogą odbiegać od oczekiwań. Kolejnym
problemem jest uzyskiwanie wyników w postaci trudno przekształcalnej na pojęcia służące charak-
teryzacji danego zjawiska. Ideę grupowania pojęciowego (ang. conceptual clustering) przedstawiono
w [121]. W tym celu stosuje się odpowiednie algorytmy grupowania, których wyniki łatwo dają się
przedstawić w formie pojęć czy koncepcji, oraz które umożliwiają uwzględnienie dostępnej wiedzy
np. poprzez stosowanie miary bliskości odzwierciedlającej zależności pomiędzy atrybutami.
Podstawowym kryterium „uczenia się” jest zdolność do autonomicznego pozyskiwania nowej,
nieznanej wiedzy. Otrzymywany w wyniku działania algorytmu grupowania podział reprezentuje
pewne kategorie, czyli pojęcia arbitralnie zdefiniowane przez algorytm, więc wystarczy zapewnić,
że otrzymywane kategorie mają charakter wiedzy i odnoszą się do rzeczywiście istniejących pojęć
opisanych danym zbiorem przykładów. Ponieważ jednak przynależność do danej kategorii opiera się
na podobieństwie przykładów, a podobieństwo umożliwia wnioskowanie to bez wątpienia ma się do
czynienia z wiedzą [27].
3.1.1 Podział metod grupowania
Wykorzystując zadany sposób określania bliskości (podobieństwa, odległości) obiektów w wielo-
wymiarowej przestrzeni cech można podzielić zbiór X na podzbiory (grupy). Ze względu na sposóbprzetwarzania danych stosowane procedury można zaliczyć w większości to jednej z poniższych tech-
nik [70]:
64 Grupowanie
• optymalizacyjno-iteracyjnych, za pomocą których dokonuje się podziału zbioru na m podzbio-rów, przy czym wartość parametru m jest zadawana, algorytmy te polegają na minimalizacji
funkcji kryterium,
– K-średnich (ang. K-means) - grupy reprezentowane są przez „środek ciężkości”
– K-mediana (ang. K-medoids) - grupy reprezentowane są przez jeden z obiektów
• hierarchicznych, w ramach których skupienia tworzą drzewa, gdzie liście reprezentują poszcze-gólne obiekty, a węzły — ich grupy. Skupienia wyższego poziomu zawierają skupienia niższego
poziomu. W ramach metod hierarchicznych, w zależności od sposobu konstruowania hierarchii
klas można wyodrębnić:
– metody aglomeracyjne, w których początkowo każdy element jest traktowany jako odrębna
klasa. Klasy te następnie, na podstawie zadanej funkcji podobieństwa, stopniowo łączy
się, aż do momentu w którym wszystkie obiekty utworzą jeden zbiór. Schemat łączenia
poszczególnych klas tworzy poszczególne poziomy skupień reprezentujących odpowiednie
podziały na grupy,
– metody podziałowe (deglomeracyjne) jest niejako procesem odwrotnym do powyższego.
Rozpoczyna się od pojedynczego zbioru, zawierającego wszystkie obiekty, a następnie
dokonuje się jego sekwencyjnego podziału. Problem określania kryterium podziału jest
oparty o porównywanie wartości cech obiektów, z których wybiera się te najlepiej speł-
niające kryterium dyskryminacji,
• metody grupowania obiektów, których niektóre elementy (atrybuty) są identyczne, wykorzy-stują założenie, że im więcej elementów jest powtórzonych (ang. co-occurence) tym bardziej
obiekty są do siebie podobne,
• metody analizy skupień polegające na identyfikacji regionów o dużej „gęstości” obiektów,
• metody oparte o teorię grafów, traktujące obiekty jako węzły a krawędzie z wagami jako re-prezentacja danego kryterium, wg którego odbywa się grupowanie. Przykładem są algorytmy
Minimum Spanning Tree (MST) oraz Lin-Kernighan Exchange,
• metody oparte o algorytmy genetyczne
• metody oparte o sieci neuronowe,
Inny podział metod grupowania wynika z klasyfikacji postaci otrzymywanych wyników. Wyróżnia
się algorytmy tworzące:
• skupienia rozłączne, w których każdy obiekt należy tylko do jednego zbioru,
3.1 Wstęp 65
• skupienia nierozłączne, w których niektóre obiekty mogą być przypisane do dwu lub więcejzbiorów. W szczególności wyniki tej postaci otrzymywane są przez techniki oparte o zbiory
rozmyte,
• struktura hierarchiczna, jako wielopoziomowa hierarchia, w której poszczególne poziomy sąodwzorowaniem kolejnych podziałów.
Obiekty są grupowane poprzez zastosowanie odpowiedniej metody grupowania zgodnie z za-
łożonym kryterium. Tradycyjne kryterium grupowania wykorzystuje pewne miary bliskości (ang.
distance based), najczęściej wywodzące się z miary odległości czy podobieństwa. Posiadając ma-
tematyczną funkcję bliskości określoną dla każdej pary obiektów można zastosować algorytm do
dokonania grupowania.
Matematycznie metody grupowania oparte są o poszukiwanie takiego podziału na grupy, w wyni-
ku którego zadana funkcja kryterium osiąga minimum. Poszczególne metody różnią się drogą dojścia
do takiego minimum. I tak wśród metod hierarchicznych metody aglomeracyjne poszukują takiego
minimum poprzez łączenie mniejszych grup. Metody podziałowe poszukują takiego podziału, który
zmniejszy entropię. Natomiast metody iteracyjne opierają się na poszukiwaniu pewnych wzorców,
które następnie wyznaczają poszczególne klastry. Możliwość stosowania poszczególnych metod ściśle
zależy od postaci i rodzaju atrybutów opisujących poszczególne obiekty. Szczególnie chodzi o to, czy
mają one dziedzinę ciągłą czy dyskretną i jaką miarą można posłużyć się do ich porównywania.
Drugie podejście oparte jest o rozkład prawdopodobieństw występowań poszczególnych wartości
atrybutów opisujących grupowane obiekty (ang. probability based). Przyjmuje się w założeniu, iż
występujące prawdopodobieństwa są niezależne, poszczególne atrybuty są nieskorelowane ze sobą.
Założenie leży u podstaw części algorytmów hierarchicznych podziałowych, w których podziału zbio-
ru na grupy dokonuje się w celu obniżenia entropii informacji z punktu widzenia jednego atrybutu.
Zupełnie inne podejście do problemu występuje w grupowaniu koncepcyjnym (ang. conceptual
clustering) [21]. Tam obiekty są łączone w klastry jeżeli reprezentują to samo pojęcie (koncep-
cję, znaczenie, interpretację). Dokonuje się tego na podstawie opisu w języku naturalnym (termów
lingwistycznych) związanym z danym obiektem.
Grupowanie jako przeszukiwanie
W większości algorytmów grupowania można doszukać się analogii do pewnego rodzaju uczenia
się, opartego na przeszukiwaniu przestrzeni hipotez w celu znalezienia hipotezy spełniającej pewne
kryteria. Z tej perspektywy można wyróżnić cztery aspekty procesu grupowania, które to charakte-
ryzują poszczególne algorytmy grupowania:
– reprezentacja grupowania, czyli postać wyniku,
66 Grupowanie
– operatory używane do poruszania się w przestrzeni rozwiązań, umożliwiające sprawdzenie in-
nych, również lepszych rozwiązań,
– heurystyczna funkcja oceny grupowania, używana do kierowania procesem przeszukiwania,
– strategia przeszukiwania, czyli opis sposobu wykorzystania operatorów i funkcji heurystycznej
do poszukiwania najlepszego rozwiązania.
Każdy z wymienionych aspektów posiada wiele rozwiązań. Dobór poszczególnych wariantów ściśle
zależy od dziedziny grupowania oraz charakteru oczekiwanych wyników.
Grupowanie nie wymagające miary odległości
Dla wielu dziedzin trudno jest skonstruować odpowiednią miarę odległości. Dotyczy to w szczegól-
ności baz danych zawierające dane opisowe, symboliczne, dla których trudno o ustalenie właściwych
relacji pomiędzy poszczególnymi atrybutami, a co za tym idzie, o policzenie odległości pomiędzy
obiektami. Same metody grupowania winny być oparte na kilku zasadach. Zakłada się, że obiekty
podobne do siebie (czyli takie które winny należeć do tej samej grupy) posiadają te same wartości
niektórych atrybutów. Samo dobranie atrybutów, które decydują o przyłączeniu obiektu do danej
grupy, jest bardzo trudnym zadaniem. Najlepiej, gdy dostępna jest szczegółowa wiedza na temat
szczegółowej klasyfikacji atrybutów, pozwalająca na ustalenie hierarchii ich ważności. Najczęściej
jednak wiedza taka nie jest kompletna, można w takim przypadku posiłkować się pewnymi wskaź-
nikami statystycznymi, pozyskanymi z posiadanej bazy danych o występowaniu, charakterystyce
poszczególnych atrybutów. Wskaźniki takie, przykładowo współczynniki korelacji, częstotliwość wy-
stępowania, pomagają w zdobyciu pewnych reguł pozwalających na ocenę przedstawianego podzia-
łu. Dla algorytmów grupowania nie wymagających miary odległości kluczowym staje się dobranie
właściwej funkcji kryterium jakości grupowania. Sam algorytm polega na generowaniu kolejnych
podziałów, weryfikowaniu ich przy pomocy funkcji kryterium i wybraniu najlepszego rozwiązania.
3.1.2 Zastosowanie grupowania
Grupowania dokonuje się na zbiorze nieetykietowanym, tj. takim, dla którego nie jest znany (nie
jest wykorzystywany podział w trakcie analizy) podział na grupy. Gdy nie ma skojarzonej macierzy
przynależności U(X), to zbiór danych X nazwa się nieetykietowanym (ang. unlabeled) [13].Dziedzina. Dziedziną grupowania jest skończony zbiór obiektów:
X = x1, . . . , xn.
Mogą to być przedmioty, osoby, wydarzenia, sytuacje, zjawiska, stany itd.
Atrybuty.Atrybuty służą do opisywania obiektów. Synonimem atrybutu jest termin „cecha”.
Atrybutem nazywa się dowolną funkcję określoną na dziedzinie grupowania. Niech A1, . . . , An jest
3.1 Wstęp 67
-
-
przygotowanieI?
szacowanie tendencjiII?
analiza skupieńIII?
walidacjaIV?
6
Rys. 3.1. Etapy algorytmu grupowania.
zbiorem atrybutów z dziedzinami odpowiednio A1, . . . ,An. Przyjmuje się, że opis każdego obiektuxi ∈ X składa się z n 1 wartości atrybutów.
Ak : xi → Ak, l ¬ k ¬ n, xi ∈ X .
W zależności od dziedzin poszczególnych atrybutów można wyodrębnić następujący podział atry-
butów [16]:
– kwantytatywne, będące liczbami rzeczywistymi, uzyskanymi w wyniku pomiaru lub liczbami
całkowitymi otrzymanymi w wyniku policzenia. Inaczej zwane cechami ilościowymi,
– opisowe, których wartości są wyrażane poprzez różnego rodzaju symbole, w tym słowa w języku
naturalnym.
Wykorzystując grupowanie na potrzeby eksploracji danych można posłużyć się następującym
schematem. Na rysunku 3.1 zaprezentowano algorytm grupowania składający się z czterech etapów:
przygotowanie – jest etapem mającym na celu przekształcenie bazy danych na formę właściwą
dla stosowanych narzędzi,
szacowanie tendencji – ma za zadanie odgadnąć czy dany zbiór obiektów posiada wewnętrzną
strukturę i to bez szczegółowej analizy danych [70],
analiza skupień — właściwe grupowanie, stosowany w tym etapie jest szereg metod opisanych w
literaturze: grupowanie twarde, rozmyte, oparte o teorię możliwości czy prawdopodobieństwa,
68 Grupowanie
walidacja – polega na sprawdzeniu czy otrzymany podział na grupy realnie odzwierciedla strukturę
wejściowego zbioru danych; udostępnia narzędzia służące do porównywania różnych podziałów,
w celu wyboru optymalnego.
3.2 Formalny zapis problemu
Przedmiotem grupowania jest skończony zbiór X składający się z n obiektów oraz skończony
zbiór A zawierający m atrybutów opisujących właściwości obiektu x ∈ X poprzez przyjmowanieokreślonych wartości xy, gdzie Ay jest oznaczeniem konkretnego atrybutu, którego dziedziną jest
zbiór wartości Ay:
X = xyy∈Y . (3.1)
Zbiór X również nazywany jest populacją.
Przedmiotem analizy dokonywanej w trakcie grupowania jest zbiór klastrówC = C1, C2, . . . , Cc– będący zbiorem podzbiorów X . Klastrem (grupą, segmentem, klasą) nazywamy podzbiór X ⊇ Ci.
X = x1, . . . ,xn =c⋃j=1
Cj (3.2)
Jeżeli spełniony jest warunek opisany równaniem 3.2 pełnego pokrycia całego zbioru X, to takizbiór nazywamy podziałem (ang. partition) lub segmentacją P(X ) (3.3).
P(X) = C1, . . . , Cc. (3.3)
Zbiory Ci określa się mianem grupa, segment, klaster.
Podziału dokonuje się zgodnie z pewnym kryterium grupowania. Kryterium to jest funkcjonałem
określonym na zbiorze wszystkich podzbiorów zbioru X i mierzy stopień wewnętrznej jednorodności
klas oraz międzyklasową heterogeniczność.
Ogólna liczba wszystkich kombinacji, jakie można utworzyć przy grupowaniu n obiektów w m
rozłącznych grup, jest do obliczenia na podstawie wzoru na liczbę Stirlinga drugiego rzędu [4]:
S(m)n =1m!
m∑k=0
[(−1)m−k
(n
k
)kn].
Dla n = 25,m = 5, S525 = 2′436′684′974′110′751. Jak widać złożoność tego problemu jest bardzo
duża, rosnąca jeszcze szybciej, gdy zostanie dopuszczona wielokrotna lub częściowa przynależność
do zbioru. Również liczba grup nie jest zazwyczaj podana a priori, co powoduje, że aby obliczyć
właściwy wynik należy zsumować kilka liczb Stirlinga dla sprawdzanych podziałów.
3.2 Formalny zapis problemu 69
Posiadając nieetykietowany zbiór obiektów w przestrzeni wielowymiarowej postaci xi ∈ Rs, 1 ¬i ¬ n problem grupowania C polega na rozdzieleniu obiektów na podzbiory zwane grupami. Innymisłowy należy znaleźć macierz przynależności każdego elementu xi do poszczególnych grup:
Cc =U ∈ Rc×n | ∀i, k : uik ∈ [0, 1];n∑i=1
uik = 1; 0 <n∑k=i
uik < n, (3.4)
gdzie:n liczba obiektów,
Rc×n oznacza przestrzeń wszystkich macierzy rozmiaru (c× n),U = uik macierz przynależności obiektów do poszczególnych grup,
∀k∈1,c∑ni=1 uik = 1.
Wśród różnych technik grupowania można wyróżnić podział na grupowanie tzw. zwykłe lub
twarde, w którym każdy element jest przydzielony tylko do jednego zbioru, tym samym każdy zbiór
ma wyraźnie oznaczone granice. Formalnie można to zapisać następująco:
uik =
1, xi ∈ Ck,0, xi /∈ Ck.
(3.5)
W tym przypadku funkcja przynależności przyjmuje jedynie dwie wartości zbioru 0, 1 (ang. hardclustering) . Jeżeli funkcja przynależności przyjmuje dowolne wartości z przedziału [0, 1] mówimy o
grupowaniu rozmytym (ang. fuzzy clustering).
Algorytmy znajdujące macierze przynależności polegają na znajdowaniu ekstremum (minimum
lub maksimum) funkcji kryterium będącej wskaźnikiem jakości podziału zbioru elementów na grupy.
Jednym z przykładów takiej minimalizacji funkcji celu jest minimalizacja błędu kwantyzacji zdefi-
niowana następująco (ang. quantization error)[43]:
Eqe =1n
n∑i=1
∥∥xi − vw(i)∥∥2 , (3.6)
gdzie:Eqe błąd kwantyzacji,
n liczba przetwarzanych obiektów,
xi przetwarzany obiekt,
V = vj zbiór elementów wzorcowych ,
vj ∈ Rs j ∈ 1, c,w(i) ∈ 1, c indeks najlepszego dopasowania (numer grupy, do której xi należy),
vw(i) wektor wzorcowy dla grupy w(i).
70 Grupowanie
Minimalizacja wartości Eqe jest znana jako grupowanie oparte o funkcję kryterium i może wy-
stępować również w wersji dla grupowania rozmytego [8].
Bardziej uogólnioną formą równania 3.6 zwaną ważona odległościami suma kwadratów błędu
kwantyzacji (ang. distance-weighted sum-of-squares quantization error), której minimum może rów-
nież być poszukiwane metodami uczenia bez nauczyciela jest następująca:
Eqen =n∑i=1
c∑h=1
kh(xi,Ch), (3.7)
gdzie:kh(xi,Ch) funkcja jądra (ang. kernel function), odpowiada odległości pomiędzy
obiektem xi a grupą Ch,
Funkcja jądra kh(xi,Ch) odpowiada intuicyjnemu przeświadczeniu, że informacja o podziale na
grupy pochodzi od całego układu elementów wzorcowych, a nie wyłącznie od jednego, najbliższego.
Zazwyczaj spełnia następujące warunki:
kh(x,C) 0 jest dodatnia, (3.8a)
kh(x,C) = max⇐ x ∈ Ch osiąga maksimum dla własnej grupy, (3.8b)
(3.8c)
Alternatywną formułą funkcji kosztu jest oparcie się o odległość między klastrami (ang. interc-
luster) [48]. Optymalizacja polega na znalezieniu takiego podziału aby zminimalizować klaster o
największej wartości funkcji kosztu, którą jest największy rozmiar klastra:
Ei = maxi=1,...,c
k(Ci) (3.9)
dla:
k(Ci) = maxxir,xis∈Ci
d(xir,xis). (3.10)
gdzie: d(·) jest symbolem miary odległości pomiędzy obiektami.
Warunek zbieżności
Konieczny warunek gwarantujący znalezienie aproksymacyjnego minimum funkcji 3.7 jest nastę-
pujący:
∂Egen∂Vj
= −n∑i=1
(xi − vj) = kj(d(xi,Cj)), j = 1, . . . , c, (3.11)
3.3 Grupowanie iteracyjne 71
Wzór na obliczenie prototypu v ma postać iteracyjną:
v(e+1)j =∑ni=1 xikj(d(xi,Cj
(e)))∑ng=1 kj(d(xg,Cj
(e))), (3.12)
gdzie: zmienna e reprezentuje numer kolejnej iteracji.
3.3 Grupowanie iteracyjne
Grupowanie iteracyjne oparte jest o funkcję jądra. Polega ono na iteracyjnym poszukiwaniu
zbioru elementów wzorcowych reprezentujących poszczególne klastry. W każdej iteracji poszukuje
się kolejnych przybliżeń wzorców wyliczając je korzystając z zadanych metod. W zależności od
przyjętych założeń elementem wzorcowym może być jeden z elementów populacji X lub należeć dopewnego uniwersum U ⊇ X. W przestrzeniach metrycznych element wzorcowy może być obliczanyjako średnia arytmetyczna i reprezentuje on odpowiednio środek ciężkości klastra.
W ogólności k-klastering algorytm na wejściu ma zbiór obiektów X oraz oczekiwaną liczbę kla-
strów k, a na wyjściu podział na podzbiory C1, C2, . . . , Ck. Najczęściej algorytmy k-klasteringunależą do kategorii algorytmów optymalizacyjnych. Algorytmy optymalizacyjne przyjmują że istnieje
funkcja kosztu typu k : x|X ⊆ S → R+ określona dla każdego podzbioru S. Celem jest znalezieniepodziału z uwagi na minimalizację sumy kosztów:
Eq =k∑i=1
k(Ci) (3.13)
W celu zastosowania algorytmu iteracyjnego należy określić miarę odległości stosowaną w procesie
grupowania, które zostały omówione w rozdziale 2 a ogólny zarys algorytmu w 3.3.1.
Zamiast miediany można zastosować punkt, będący wypadkowym punktem dla danego klastra
(elementem reprezentacyjnym) wyliczonym np. jako średnia geometryczna czy arytmetyczna. Wtedy
mamy do czynienia z algorytmami typu k-średnich (ang. k-means).
k(Ci) =|Ci|∑r=1
d(xi,xir). (3.14)
gdzie: xi średnia arytmetyczna (lub geometryczna) klastra
Tak zdefiniowany problem jest trudno rozwiązywalny, gdyż należy do klasy NP. Istnieją jed-
nak pewne uproszczenia w stosunku do funkcji kosztu. Przykładowo algorytm PAM (Partitioning
Around Medoids) oparty jest o znajdowanie mediany dla każdego klastra Si. Funkcja kosztu dla
algorytmu PAM wygląda następująco [37]:
k(Si) =|Ci|∑r=1
d(xi,xir), gdzie: xi ∈ Ci (3.15)
72 Grupowanie
gdzie: xi mediana klastra
3.3.1 grupowanie K-średnich
Grupowanie K-średnich (ang. K-means) posiada następującą funkcję kryterium:
J1(U,V) =c∑i=1
n∑k=1
(uik)d2ik, (3.16)
gdzie:
V = [vi] macierz wzorców,
vi ∈ Rm wzorzec i-tej grupy,
uik przynależność xk do i-tej grupy, uik ∈ 0, 1dik miara odległości pomiędzy xk,
a elementem wzorcowym grupy vi,
U = [uik] macierz podziału.
Algorytm 3.1. Algorytm grupowania k-średnich
Wejście ≡X = x ; zbiór obiektówc;oczekiwana liczba klastrów
funct g(V,U); znajdowanie nowego wzorca V .
funct d(x, x); odległość pomiędzy obiektami.
funct h(x,C); obliczenie przynależności x do klastra C..
etap 1 ≡wybierz początkowy zbiór wzorców
np. drogą losowania.
etap 2 ≡for i := 1 to |X| dofor j := 1 to c do
znajdź odległości wzorców dla elementu xi
uij := h(xi, j)
od
od.
etap 3 ≡for j := 1 to c do
3.3 Grupowanie iteracyjne 73
oblicz nowe wzorce vj = g(yj , U)
od.
Wyjście ≡zwróć macierz podziału U .
3.3.2 Grupowanie metodą najbliższego sąsiada
Algorytm najbliższego sąsiada (ang. Nearest-neighbourhood-type) został zaproponowany przez Lu
i Fu w 1978 [70] zaprezentowano w tablcy 3.2. Grupowanie metodą najbliższego sąsiada jest prostym
i szybkim algorytmem. Złożoność obliczeniowa jest rzędu O(n(c + 1)) Poprzez dobór progu można
sterować ilością otrzymywanych klastrów. Również w miejsce funkcji odległości można zastosować
funkcję podobieństwa, wystarczą jedynie drobne modyfikacje w implementacji. Do wad należy bardzo
duża zależność otrzymywanych wyników od kolejności ułożenia grupowanych obiektów. Rozrzut
i przypadkowość otrzymywanych wyników jest tak duża (w stosunku do innych algorytmów), że
wyklucza to stosowanie tego algorytmu w większości zastosowań.
Algorytm 3.2. Grupowanie metodą najbliższego sąsiada
dane wejściowe : grupowany zbiór obiektów X
funkcja odległości d(x,C)
próg podziału g
c=1 // liczba klastrów
C_1= // ustaw klaster początkowy na pusty
for i:= 1 to n do begin
for j:= 1 to c do begin
if d(x_i,C_j)<g then begin
//dopisz element do klastra
C_j += x_i
continue
end;
end;
// jeżeli nie dopisano to utwórz nowy klaster
c =c + 1
C_c= x_j
end;
74 Grupowanie
Grupowanie metodą k-mediana
Grupowanie, w którym obiekty reprezentujące poszczególne klastry wywodzą się spośród gru-
powanego zbioru obiektów, należy do klasy algorytmów k-mediana (ang. k-medoids). Istnieje wiele
algorytmów należących do tej klasy: algorytm PAM [70], CLARA [70], CLARANS [99]. Celem tej
techniki grupowania jest wybranie c elementów v1, . . . , vc spośród n elementów populacji X stano-wiących zbiór wzorców (mediany). Podział otrzymuje się poprzez przypisanie obiektów do klastrów
reprezentowanych przez poszczególne mediany zgodnie z regułą:
Cp = xm : d(xm, vp) ¬ d(xm, vr), p, r ∈ 1, . . . , c. (3.17)
W algorytmach k-mediana funkcja kosztu jest sumą odległości pomiędzy obiektami a reprezentu-
jącymi ich klaster medianami. W algorytmie PAM poszukiwanie rozwiązania dokonuje się iteracyjnie
poprzez zamianę obiektu z odpowiadającą mu medianą. Jeżeli funkcja kosztu się zmniejszy to da-
ny przykład staje się podstawą dalszych poszukiwań, jeżeli nie to się go pomija. Zapis algorytmu
przestawiono w (3.3).
Algorytm 3.3. Algorytm PAM
Wejście : zbiór obiektów X=x
oczekiwana liczba klastrów c
funkcja d(x,x) ; odległość pomiędzy obiektami
funkcja EE(V) ; obliczenie sumy odległości - funkcja kosztu
etap 1. wybierz początkowy zbiór wzorców
np. drogą losowania
etap 2. dla każdej możliwej zamiany obiektu z medianą oblicz
nową wartość funkcji kosztu Dn
etap 3. jeżeli Dn<Ds to przyjmij przykład jako nowe rozwiązanie,
przypisz Ds:=Dn
etap 4. jeżeli od ostatniego przypisania sprawdzono wszystkie możliwości
zamian to zakończ inaczej powróć do etapu 2.
Złożoność obliczeniowa algorytmu PAM wynosi O((1 + β)c(n − c)2), gdzie β jest liczbą sku-tecznych zamian (takich, które zmniejszyły wartość funkcji kosztu). Tak wysoka złożoność stanowi o
przydatności tego algorytmu jedynie do niewielkich zbiorów danych. Algorytm CLARA (ang. Cluste-
ring LARge Applications) redukuje koszt obliczeniowy poprzez zastosowanie algorytmu PAM jedynie
do próby losowej całego zbioru. Następnie wielokrotnie powtarza się tą procedurę, dla uzyskanych
median oblicza się sumę odległości dla całej populacji i wybiera najlepsze rozwiązanie. Nieco inne
rozwiązanie zastosowano w algorytmie CLARANS [99]. Zamiany obiektów z medianami ogranicza
3.3 Grupowanie iteracyjne 75
się jedynie do r najbliższych sąsiadów, przeszukiwanie kończy się znalezieniem lokalnego minimum.
Następnie wielokrotnie powtarza się tą procedurę dla nowo wylosowanych elementów startowych i
wybiera najlepsze rozwiązanie.
Algorytmy grupowania iteracyjnego oparte o metody optymalizacyjne funkcji kryterium są dobre
do rozwiązywania tylko pewnej klasy zagadnień grupowania. Ponieważ algorytmy te znajdują lokalne
ekstrema funkcji, to cała metoda staje się bardzo czuła na dobór punktów startowych poszukiwanego
wektora wzorcowego.
3.3.3 Grupowanie rozmyte
Grupowanie rozmyte jest pomocne w przypadku, gdy nie istnieje wyraźna, ostra granica roz-
dzielająca naturalne grupy obiektów. W rzeczywistym świecie często obserwowane jest zjawisko
wielokrotnego bądź częściowego należenia danego obiektu do grupy.
Można wyróżnić dwa rodzaje grupowania rozmytego [128]: pierwsze korzysta z rozmytych relacji
do dokonania grupowania; drugi rodzaj oparty jest o funkcję kryterium, na podstawie której tworzy
się rozmyte grupy.
Jeżeli funkcja jądra ze wzoru (3.7) przyjmuje postać:
kh(xi,C) = k(d(xi,vh)), (3.18)
to przyjmuje ona postać funkcji przynależności charakterystycznej dla zbiorów rozmytych:
(uih)m = k(d(xi,vh)). (3.19)
Ma się wtedy do czynienia z częściową przynależnością do zbioru (grupy). Przykładową funkcję
kryterium dla grupowania rozmytego zaproponował Bezdek [12]:
Jm(U,V) =c∑i=1
n∑k=1
(uik)md2ik, (3.20)
gdzie:
76 Grupowanie
m > 1 współczynnik rozmycia,
c liczba grup,
n liczba obiektów,
V = [vi] macierz wzorców,
vi ∈ R wzorzec i-tej grupy,
uik przynależność xk do i-tej grupy,
dik miara odległości pomiędzy xk,
a elementem wzorcowym grupy vi,
U = [uik] macierz przynależności.
Oprócz miary euklidesowej stosowane są miary L1 zaproponowane w [76], analizę uogólnionej
postaci algorytmu k-średnich dla miary Lp przedstawiono w [62].
Algorytm FCM
Algorytm znajdujący rozwiązanie równania 3.20 można zapisać w następujący sposób [12]:
Krok 1. Ustal parametry wejściowe algorytmu, takie jak ilość przedziałów c, kryterium zakończenia
E, współczynnik rozmycia , inicjalizacja macierzy współczynników przynależnościU(0), indeks
cyklu t = 1.
Krok 2. Obliczenie wektora wzorcowego V(t) i macierzy U(t) zgodnie ze wzorami:
vi =
∑Ni=1(u
(t−1)ij )mxi∑N
i=1(u(t−1)ij )m
, (3.21)
uij =1∑c
j=1
(∥∥xi−v(t)a ∥∥∥∥xi−v(t)j ∥∥) 2m−1
, (3.22)
gdzie t oznacza numer iteracji.
Krok 3. Jeżeli nowa macierz podziału nie różni się o więcej niż o ε oraz nie został osiągnięty limit
iteracji wróć do kroku 2.
Inny wzór na obliczenie macierzy współczynników podziału:
(uik)m =exp−βdik∑cj=1 exp−βdik
. (3.23)
Można również zastosować teorię możliwości [80]:
3.3 Grupowanie iteracyjne 77
uik =1
1 + dikηi(3.24)
lub
uik = exp(−dikηi
). (3.25)
gdzie η, β określają współczynnik rozmycia.
FCMdd – grupowanie rozmyte dla rozwiązań w przestrzeni dyskretnej
W przypadku gdy przestrzeń rozwiązań jest dyskretna (przykładowo jeżeli w skład zbioru pro-
totypów (V ) mogą wchodzić wyłącznie elementy ze zbioru wejściowego X) nie można stosować
typowych technik minimalizacji funkcji kryterium stosowanych dla przestrzeni ciągłych. W miejsce
metod gradientowych użyto funkcji sprawdzającej możliwość wykorzystania poszczególnych obiek-
tów jako wzorca (analogicznie do metod k - mediana). Zapis algorytmu przedstawiono w algorytmie
3.4.
78 Grupowanie
Algorytm 3.4. Grupowanie rozmyte FCMdd
dane wejściowe : liczba klastrów c
grupowany zbiór obiektów X
generuj zbiór prototypów V spośród losowo wybranych elementów X
iter=0
repeat
// obliczanie macierzy przynależności U
for i = 1 to c do begin
for j = 1 to n do begin
u[i,j]=fu(x,v)
end;
end;
Vold = V; //zapamietaj poprzednią wartość wektora wzorcowego
for i = 1 to c do begin
q = szukajmin(X,U)
v[i]=x[q]
end;
iter = iter + 1;
until (Vold=V) or (iter=MAX_ITER);
Ponieważ nie można nowego wektora wzorcowego obliczyć, to poszukuje się go wśród obiektów
wybierając ten, dla którego funkcja kryterium, przy uprzednio obliczonej macierzy przynależności,
osiąga minimum. Niestety podejście to skutkuje kwadratową złożonością obliczeniową algorytmu z
uwagi na konieczność sprawdzenia w każdej iteracji każdego obiektu w roli wzorca. W praktyce naj-
częściej właściwy obiekt należy to tego samego klastra co poprzedni wzorzec, więc można ograniczyć
poszukiwanie tylko do danego klastra, lub bardziej szczegółowo, tylko do k obiektów najbardziej
bliskich w stosunku do poprzedniego wzorca. Wtedy szacowana złożoność algorytmu obniży się do
poziomu O(kn), czyli jest liniowa, w szczególności gdy k jest niewielką liczbą całkowitą.
3.4 Aglomeracyjne grupowanie hierarchiczne
Hierarchiczne grupowanie aglomeracyjne jest jedną z metod grupowania [34, 126]. W metodzie
tej klastry budowane są poprzez łączenie istniejących klastrów, bazując na ich odległości (czy też
innej stosowanej miary bliskości). Algorytmiczny zapis tej metody jest przedstawiono w alg:3.5.
3.4 Aglomeracyjne grupowanie hierarchiczne 79
Algorytm 3.5. Grupowanie aglomeracyjne
1) wybierz początkowy zbiór klastrów
2) znajdź najbliższą sobie parę klastrów i połącz je w jeden
3) powtarzaj krok 2 do osiągnięcia reguły zakończenia
Analizując pracę algorytmu można dojść do kilku wniosków. Po pierwsze: wykonanie każdego
cyklu skutkuje redukcją ilości klastrów o jeden. Drugi wniosek jest następujący: jeżeli dwa obiekty xi i
xj przynależą do tego samego klastra w cyklu k, to również będą przynależały do tego samego klastra
w każdym następnym cyklu pracy algorytmu. Kolejny wniosek mówi, że podziały otrzymywane w
wyniku pracy tego algorytmu tworzą rozłączne podziały, żadna para klastrów istniejących na danym
etapie obliczeń nie ma ze sobą części wspólnej.
Formuły każdego z trzech kroków algorytmu są bardzo ogólne i dają znaczną swobodę w możliwo-
ści ich implementacji oraz możliwością wpływania na osiągane rezultaty. I tak pierwszy krok, mówiąc
o początkowym podziale, nie narzuca dodatkowych wymagań. W najprostszym układzie dane inicju-
jące mają postać jednoelementowych zbiorów (każdy element tworzy samodzielną grupę), ilość grup
jest równa liczebności obiektów. W innym wariancie można wykorzystać, pochodzące z uprzedniego
przetwarzania, informacje odwzorowujące pewną zdobytą już wiedzę o strukturze. Z uwagi na to, że
układ początkowy przenosi się na końcową postać grupowania, możliwość decydowania o układzie
początkowym jest metodą na wykorzystanie posiadanej wiedzy w procesie grupowania.
Drugi krok algorytmu wymaga zdefiniowania miary bliskości, i to na dwóch płaszczyznach. Po
pierwsze w stosunku do pary obiektów, po drugie w stosunku do pary klastrów. Dobór odpowiedniej
miary bliskości ściśle zależy od przedmiotu grupowania.
W ostatnim kroku następuje testowanie warunku zakończenia. Warunek zakończenia może mieć
różnoraką postać. Przykładowo może to być osiągnięcie określonego limitu iteracji lub określonej
liczby grup (te dwa warunki są ze sobą ściśle powiązanie). Również osiągnięcie pewnej maksymalnej
liczebności klastra może stanowić warunek zakończenia grupowania. Kolejna postać warunku za-
kończenia to stan, w którym najmniejsza odległość pomiędzy klastrami przekracza pewną ustaloną
wartość. Również dopuszczalne jest użycie kombinacji logicznej kilku warunków.
Złożoność obliczeniowa powyższego algorytmu jest następująca. Liczba operacji wykonywanych w
każdej iteracji jest rzędu n2, gdyż przeszukiwana jest macierz odległości pomiędzy poszczególnymi
obiektami (liczba obiektów maleje o 1 w każdej iteracji, co nie zmienia rzędu złożoności). Liczba
samych iteracji jest różnicą pomiędzy początkową liczbą obiektów (która wynosi n) i końcową liczbą
klastrów (która jest znacznie mniejsza od n). Reasumują złożoność obliczeniowa jest rzędu O(n3).
W literaturze istnieją algorytmy oparte o metody hierarchiczne o znacznie lepszej złożoności,
przez to lepiej nadające się do przetwarzania dużych zbiorów danych – na przykład algorytm BIRCH
[133] składający się dwóch etapów.
80 Grupowanie
Algorytm CURE
Kolejnym omawianym algorytmem jest CURE [52], stosujący grupowanie hierarchiczne w oparciu
o próbę losową (ang. random sample). Dzięki zmniejszeniu liczebności zbioru grupowanie hierarchicz-
ne dokonuje się w akceptowalnym czasie, następne pozostałe elementy są przypisywane do uprzednio
uzyskanych klastrów zgodnie z przyjętym kryterium (ang. Label data). Użycie próbkowania pozwala
na redukcję liczby elementów podlegających grupowaniu. Jeżeli wielkość próby jest wystarczająco
duża, a układ elementów bardzo źle usytuowany, to otrzymywane wyniki nie odbiegają od wyników
otrzymywanych podczas przetwarzania całego zbioru.
Algorytm ROCK
Kolejny algorytm grupowania zwany ROCK (ang. RObust Clustering using linKs) również używa
metody aglomeracyjnej [53]. Dla zwiększenia skalowalności stosuje grupowanie oparte o próbę loso-
wą. Podstawowym zagadnieniem, które wyróżnia algorytm ROCK, jest użycie w funkcji kryterium
wiązań w miejsce klasycznych miar podobieństwa [53]:
El =c∑i=1
∑pq,pr∈Ci
link(pq, pr)
n1+2f(θ)i
(3.26)
gdzie:
El minimalizowana funkcja kryterium,
c liczba grup,
Ci grupa i,
ni liczba elementów w grupie Ci,
pq, pr grupowane elementy,
link(pq, pr) ilość wiązań (wspólnych sąsiadów) pomiędzy elementamipq, pr,
n1+2f(θ)i oczekiwana liczba wiązań dla zbioru ni elementowego.
Szczegółowe omówienie miary bliskości jaką jest liczba istniejących wiązań pomiędzy poszczegól-
nymi elementami zawarte jest w podrozdziale 2.2.3. Wzór (3.26) jest miarą jakości klastra, stanowi
funkcję kryterium. W algorytmie aglomeracyjnym jest potrzebna funkcja, która uszereguje pary kla-
strów w kolejności do łączenia. W algorytmie ROCK zaproponowaną następującą funkcję bliskości
klastrów:
g(Ci, Cj) =link(Ci, Cj)
(ni + nj)(1+f(θ)) − n(1+f(θ))i − n(1+f(θ))j
(3.27)
gdzie:
3.5 Grupowanie podziałowe 81
Ci, Cj grupy i, j,
ni, nj liczebność grup i, j,
link(Ci, Cj) liczba wiązań pomiędzy klastrami i, j.
3.5 Grupowanie podziałowe
Proces grupowania w ramach metod podziałowych przebiega w odwrotnym kierunku niż w meto-
dach aglomeracyjnych. Rozpoczyna się od jednego zbioru obejmującego wszystkie obiekty a następnie
dzieli się go w kolejnych krokach na podzbiory, aż do uzyskania żądanej liczby podzbiorów. Problem
określania kryterium podziału jest znacznie trudniejszy niż przy łączeniu. Należy bowiem rozważyć
wszystkie możliwe podziały, uwzględniając wszystkie atrybuty obiektów. Najczęściej jednak, z uwagi
na prostotę implementacji, stosuje się metody oparte o podział względem tylko jednej zmiennej w
danym kroku. Ogólną postać algorytmu podziałowego zapisuje się następująco:
Algorytm 3.6. Grupowanie podziałowe
1) Utwórz jeden zbiór (klaster) zawierający wszystkie obiekty.
2) Wygeneruj wszystkie możliwe podziały klastra na dwa lub więcej podzbiory.
3) znajdź najlepszy podział zgodnie z funkcją kryterium i zrealizuj go;
otrzymane podzbiory stają się nowymi klastrami w miejsce źródłowego.
4) Jeżeli każdy z obiektów znajduje się w oddzielnej klasie, zakończ;
w przeciwnym wypadku wykonuj rekurencyjnie kroki 2-4 dla każdego klastra.
Algorytmy oparte o metody podziałowe lepiej nadają się do grupowania obiektów opisanych atry-
butami symbolicznymi niż numerycznymi. Natomiast ograniczeniem jest duża złożoność pamięciowa
i obliczeniowa algorytmów tej klasy, która jest większa od złożoności metod aglomeracyjnych i itera-
cyjnych. Osiągane przez metody podziałowe rezultaty zazwyczaj są gorsze od osiąganych metodami
aglomeracyjnymi [50].
3.6 Grupowanie dokumentów tekstowych
Wstępem do zagadnienia grupowania dokumentów tekstowych jest przyjęcie hipotezy przedsta-
wionej przez van Rijsbergena [110] mówiącej o tym, że podobne do danego pytania dokumenty mogą
stanowić stosowną odpowiedź na to samo pytanie (ang. closely associated documents tend to be
relevant to the same request). Jeżeli dokumenty odnoszą się do tego samego zagadnienia to są do
siebie bardziej podobne. Zagadnienie określania podobieństwa dokumentów, które ma wyrażać po-
dobieństwo tematyki zawartej w dokumencie, realizowane jest na wiele sposobów. Pierwszy sposób
82 Grupowanie
opiera się na spostrzeżeniu, że podobieństwo dokumentów jest ściśle skorelowane z bibliografią czy
też cytowaniami użytymi w tekście. Im więcej „wspólnych” cytowań mają dokumenty, tym są do
siebie bardziej podobne (z punktu widzenia istoty grupowania). Niestety jedynie niewielka ilość do-
stępnych dokumentów posiada bibliografię, znakomita większość jej nie zawiera. Drugą metodą jest
określenie słów kluczowych reprezentujących dany dokument. Tu również podstawową przeszkodą
jest brak takiego zbioru przynależnego do każdego dokumentu. Można oczywiście ręcznie uzupełniać
dokument o słowa kluczowe, ale dla dużych, szybko rozrastających się baz danych może to stanowić
duży wysiłek zarówno finansowy jak i organizacyjny. Najbardziej „niezależny” jest sposób opierający
się wyłącznie na tekście dokumentu. Mówiąc w dużym uproszczeniu polega on na selekcji szeregu
słów ze zbioru źródłowego, które mają stanowić „słowa kluczowe” dla tego dokumentu. Automa-
tyzacja tego procesu jest obarczona dużym ryzykiem. Słowa kluczowe winny reprezentować główne
tezy i zagadnienia przedstawione w dokumencie, coś w rodzaju streszczenia czy podsumowania. Nie
należy ujmować w nim zagadnień związanych z wprowadzeniem, dygresjami, wątkami pobocznymi.
Aby się przed tym ustrzec należy dysponować dodatkową wiedzą na temat struktury dokumentu.
Przykładowo polega to na ograniczeniu się tylko do pierwszych akapitów tekstów, jak to skutecznie
zastosowano przy grupowaniu artykułów z Wall Street Journal, czy też ograniczeniu się do tytułów i
nagłówków [84]. Tego typu zabiegi, aczkolwiek skuteczne, to jednak są ograniczone tylko do danego
źródła dokumentów. Wiedza na temat semantyki, struktury, terminologii danej grupy dokumentów
znakomicie ułatwia, a co za tym idzie przyspiesza oraz zwiększa dokładność prowadzonych analiz.
Zasady grupowania lingwistycznego
Grupowanie danych określonych lingwistycznie bazuje na upodobnieniu do sposobu myślenia
przez człowieka, przede wszystkim wykorzystuje informację zawartą w termach lingwistycznych. Na
drodze budowy narzędzi wzorujących się na człowieku ważne jest opracowanie właściwej metody
grupowania wykorzystującej granulację jako właściwość informacji zapisanej lingwistycznie. W trak-
cie tworzenia odpowiedniego algorytmu grupowania należy rozwiązać szereg problemów. Pierwszy
wynika ze sposobu określenia brzegów przedziałów, które wyznaczają poszczególne grupy. Klasyczne
teorie zbiorów oparte są o ostre krawędzie. Algorytmy na tym oparte wprowadzają znaczący błąd
w przetwarzanie, spowodowany zupełnie różnym traktowaniem elementów bliskich sobie lecz ułożo-
nych po przeciwnych stronach granicy rozdzielających przedziały. Sposób ten również nie odpowiada
intuicyjnemu podejściu do grupowania odpowiedniemu dla ludzkiej percepcji.
Drugi problem grupowania wynika z aspektu częściowej przynależności do zbioru. Teorie klasycz-
ne nie przewidują takiego przypadku. Element może należeć do zbioru bądź nie należeć. Świat realny
wymaga jednak bardziej elastycznego podejścia. Typowe są przykłady określania wzrostu człowieka:
3.6 Grupowanie dokumentów tekstowych 83
osoby określa się mianem „trochę niski”, „prawie wysoki” itd. Idąc dalej można oczekiwać jedno-
czesnego przynależenia do kilku zbiorów. W oparciu o poprzedni przykład oba cytowane określenia
mogą dotyczyć tej samej osoby, a z tego wynika, że przynależy ona jednocześnie do zbioru wysokich
jak i do zbioru niskich.
Zadanie to może być rozwiązane poprzez jawne wprowadzenie takich funkcji przez użytkowni-
ka bądź eksperta lub też poprzez zastosowanie technik grupowania dokonanej na wskazanej bazie
danych. Stosowanie funkcji wprowadzanych jawnie ma pewne ograniczenia. Wynikają one z kilku
czynników. Aby dobrze skonstruować funkcję przynależności należy dobrze znać charakter opisy-
wanych obiektów. Warunek ten jest spełniony dla obiektów z bezpośredniego otoczenia człowieka,
takich, które powszechnie są opisywane i grupowane. Wielkości takie jak wzrost człowieka, tempera-
tura otoczenia przy podaniu dodatkowych parametrów (np. obszar czy środowisko) stosunkowo łatwo
poddają się podziałowi na grupy określone lingwistycznie, a reguły tym rządzące są dla większości
oczywiste. Analogicznie sprawa się przedstawia dla danych, których charakter znany jest grupie
ekspertów. Takie środowisko dysponuje również własnymi terminami lingwistycznymi, dla których
skonstruowanie funkcji przynależności jest możliwe. Natomiast w stosunku do pozostałych obiektów
sprawa się komplikuje. Oczywiście możliwe jest, aby użytkownik przeanalizował bazę danych, odpo-
wiednio pogrupował obiekty i określił funkcje przynależności. Podejście to jest jednak pracochłonne.
Można to próbować dokonać automatycznie, korzystając z technik grupowania.
Zbiór słów – etykiet składających się na zmienną lingwistyczną zależy od opisywanej wielkości
i celu stosowania zmiennej. W zależności od potrzeb można dobierać stopień granulacji wpływa-
jąc tym samym na stopień niepewności, dokładności czy też rozmycia. Jednostkowy przedział [0, 1]
w najprostszym przypadku można „pokryć” trzema słowami: „mało”, „połowa”, „dużo”. Doda-jąc kolejne określenia przechodzimy do bardziej precyzyjnych opisów: „nic”, „mało”, „połowa”,„dużo”, „wszystko” „nic”, „prawie nic”, „mało”, „prawie połowa”, „połowa”, „dużo”, „prawiewszystko”, „wszystko”. Powyższy przykład pokazuje w jaki sposób można wpływać na stopień gra-nulacji zapisywanej informacji.
Reprezentacja dokumentu
Formalny zapis dokumentu ma postać wektora słów [115]:
D = ti, tj , . . . , tp, (3.28)
w którym każde tk reprezentuje słowo zawarte w danym dokumencie D. Zazwyczaj przedmiotem
analizy jest zbiór dokumentów. Zapis 3.28 uogólnia się w następujący sposób: elementami zbioruD są
pary, z których każda składa się ze słowa mogącemu wystąpić w dokumencie oraz wagi odpowiadające
84 Grupowanie
założonej asocjacji pomiędzy danym słowem tk a dokumentem Dd:
Dd = t1, wd1; t2, wd2; . . . ; tt, wdt. (3.29)
W najprostszym przypadku wdk może binarnie oznaczać występowanie wdk = 1 bądź brak wdk = 0
słowa tk w dokumencie Dd.
Miara odległości dla danych postaci lingwistycznej
Większość algorytmów grupowania bazuje na mierze odległości. Odległością nazywamy funkcję
przekształcającą dwa dane obiekty w dodatnią liczbę rzeczywistą zgodnie ze wzorem (2.5). Dla
części danych numerycznych stosuje miary odległości w przestrzeni metrycznej, np. euklidesowa
miara odległości. Dla danych postaci lingwistycznej formuła ta się nie sprawdza. W tym wypadku
należy się odwołać do istoty informacji ukrytej w słowach (termach) lingwistycznych. Na przykład,
jeżeli dany obiekt zawiera adres administracyjny, to można skonstruować algorytm, korzystający
z odpowiedniego słownika, który obliczy odległość geograficzną. Przykładowo dla bazy z trzema
instancjami I = i1 = „KATOWICE”, i2 = „KRAKÓW”, i3 = „WARSZAWA” przyjmuje siędL(i1, i2) = 70km, dL(i1, i3) = 300km (dL jako oznaczenie funkcji liczącej odległość geograficzną
pomiędzy miejscowościami). Obok funkcji odległości pomiędzy obiektami do grupowania stosuje
się również funkcje określające podobieństwo. Przykładem funkcji podobieństwa jest współczynnik
Jaccarda [70].
Aby jednak właściwie obliczyć współczynnik Jaccarda należy odpowiednio przekształcić badane
obiekty tak, aby móc zdefiniować funkcje sumy i iloczynu. Przykładowo podczas porównywania tek-
stów w języku naturalnym dokonuje się przekształcenia tekstu na postać zbioru, którego elementami
są poszczególne słowa. Zakłada się, że podobieństwo dwóch tekstów w języku naturalnym głównie
zależy od jednoczesnego występowania pewnych słów w obu tekstach. Takie założenie dość dobrze
sprawdza się w przypadku przetwarzania dokumentów typu publikacje naukowe, prasowe, katalogo-
wanie stron internetowych. Jednak w wielu zastosowaniach stosuje się inne, bardziej zaawansowane
funkcje obliczania podobieństwa uwzględniające takie czynniki jak: fleksja, wieloznaczność, seman-
tyka i syntaktyka języka.
Zastosowanie zbiorów rozmytych do danych lingwistycznych
Zbiory rozmyte są jedną z form reprezentacji obiektów danej rzeczywistości [67]. Poprzez przyjęcie
koncepcji oraz mechanizmów z dziedziny zbiorów rozmytych ujmuje się niepewną i niedefiniowalną
czasami istotę obiektów i zdarzeń obserwowanych w rzeczywistym świecie. Koncepcyjnie zbiory roz-
myte są rodzajem łącznika pomiędzy niepewną i niepełną wiedzą człowieka, a zdolnością do algoryt-
micznego przetwarzania danych o ostro zaznaczonych granicach (np.danych punktowych).Stanowią
3.6 Grupowanie dokumentów tekstowych 85
również rozwiązanie problemu częściowej przynależności do zbioru, faktu powszechnie występującego
w stosowanych w realnym świecie klasyfikacjach, a niezwykle trudnego do wyrażenia w klasycznej
teorii zbiorów. Należy również podkreślić inną istotną właściwość zbiorów rozmytych. W odróżnieniu
od zbiorów klasycznych, które są nieróżniczkowalne, zbiory rozmyte mają charakter ciągły. Dzię-
ki czemu możliwe jest stosowanie niektórych form optymalizacji gradientowych niedostępnych dla
zbiorów klasycznych. Kolejnym aspektem są narzędzia wprowadzone w ramach zbiorów rozmytych,
a stosowane w realnym świecie. Są to: modyfikatory lingwistyczne (np. bardzo, niewiele), przybliże-
nia lingwistyczne (np. około, więcej niż). Zalete te stanowią o użyciu teorii zbiorów rozmytych jako
podstawy w wielu aplikacjach używanych w realnym świecie [66].
Z uwagi na to, że informacja zawarta w danych lingwistycznych (w termach lingwistycznych)
ma charakter ziarnisty to sposób jej reprezentacji winien odwzorowywać tę postać. Wydaje się, że
zbiory rozmyte najlepiej spełniają ten postulat. Aby wprowadzić miarę odpowiadania reprezentacji
rzeczywistemu obiektowi poprzez zbiór rozmyty potrzeba jest skonstruowania wskaźnika niezdecydo-
wania (ang. hesitation)[67]. Wskaźnik ten ma za zadanie określić, czy dany element jest odpowiednim
reprezentantem zbioru rozmytego. Istnieją dwa graniczne przypadki dotyczące wartości wskaźnika
niezdecydowania:
• jeżeli zbiór rozmyty zawiera wyłącznie jeden element, F = x0, to brak jest niezdecydowaniaco do właściwego reprezentanta,
• jeżeli F obejmuje prawie całą dziedzinę i większość elementów ma stopień przynależności równy1, to wybranie tylko jednego reprezentanta, mającego najlepiej określać cały zbiór F , jest
bardzo trudne, stopień niezdecydowania jest najwyższy.
Te dwa skrajne przypadki wyznaczają granice określające stopień granulacji informacji. Jest to o
tyle istotne, gdyż zazwyczaj stosuje się do reprezentacji danego pojęcia rodzinę zbiorów rozmytych.
W wielu zastosowaniach używa się kilka zbiorów rozmytych, również określanych poprzez etykie-
ty lingwistyczne, które mają za zadanie stać się punktami referencyjnymi podczas przetwarzania
informacji. Poprzez użycie postaci lingwistycznej do opisu danego systemu ułatwione zostanie obej-
ście problemu strukturalnej sprzeczności pomiędzy pełnią znaczeń a precyzją opisów. Zazwyczaj
im model bardziej szczegółowy tym trudniej z niego uzyskać ogólną wiedzę, w przypadku utraty
szczegółowości zwiększa się niebezpieczeństwo pominięcia istotnych przesłanek co prowadzi do uzy-
skania nieprawdziwych wniosków. Przetwarzanie lingwistyczne daje prosty mechanizm wpływania
na stopień szczegółowości danych poprzez regulację stopnia granulacji.
Z formalnego punktu widzenia dana jest rodzina zbiorów rozmytych, określona na dziedzinie X:
F = F1, F2, . . . , Fc (3.30)
gdzie:
86 Grupowanie
Fi zbiór rozmyty,
F rodzina zbiorów rozmytych,
c liczba elementów w rodzinie zbiorówo następujących właściwościach:
1. Pokrycie – F pokrywa tak X, że każdy element X należy przynajmniej do jednego zbioru, coformalnie zapisuje się następująco:
∀x∈X∃i=1,2,...,cFi(x) > 0 (3.31)
gdzie:
X = x zbiór obiektów,
Fi etykieta zbioru rozmytego,
Fi(x) współczynnik przynależności obiektu x do zbioru Fi,
c liczba etykiet,
F rodzina zbiorów rozmytych.
2. Suma współczynników przynależności dla każdego elementu wynosi 1, wtedy model określany
jest jako podział rozmyty (ang. fuzzy partition):
∀x∈Xc∑i=1
Fi(x) = 1. (3.32)
Jednym z zastosowań zbiorów rozmytych jest reprezentacja znaczeń słów języka naturalnego.
Poszczególne zbiory rozmyte stanowią reprezentację znaczeń danego słowa, które to słowo jednocze-
śnie stanowi etykietę lingwistyczną zbioru rozmytego. Istnieją zalecenia, wynikających z analogii do
języka naturalnego, pomagające we właściwym „tłumaczeniu” elementów na etykiety:
1. każda para Ai i Aj są wystarczająco rozdzielne, im lepiej to wymaganie jest spełnione, tym
łatwiej przypisać poszczególne obiekty do etykiet, podział jest bardziej znaczący,
2. liczba elementów A winna być niewielka, zazwyczaj wynosi 7 ± 2 co wynika z pewnych psy-chologicznych właściwości człowieka. Spotyka się również zalecenia do stosowania reguły 4± 2w zakresie gdy do czynienia się ma z pamięcią wzrokową [65].
Zbiory rozmyte stanowią rozwiązanie problemu reprezentacji niepełnych i nieostrych znaczeń
słów języka naturalnego.
3.7 Grupowanie genetyczne 87
3.7 Grupowanie genetyczne
Omówienie zagadnień algorytmów genetycznych i ewolucyjnych w zakresie ich zastosowań w
eksploracji danych i pozyskiwania wiedzy znajduje się w [42].
Algorytmy genetyczne (GA), zaproponowane i rozwinięte przez Hollanda [68] oraz ich rozszerze-
nie: algorytmy ewolucyjne (EA), stanowią próbę przeniesienia naturalnych procesów zachodzących
w świecie organizmów żywych – ewolucji i związanej z nią naturalnej selekcji, do rozwiązywania
problemów polegających na poszukiwaniu rozwiązań optymalnych. Z racji zaczerpnięcia idei pod-
stawowych mechanizmów rządzących systemami biologicznymi, wiele z terminów zapożyczono z
dziedziny genetyki. Podstawowe pojęcia związane z algorytmami ewolucyjnymi:
• osobnik – struktura zawierająca zakodowane istotne parametry zadania,
• populacja – zbiór osobników,
• gen – pojedynczy element genotypu, zawierający jeden z zakodowanych elementów rozwiązania,
• chromosom – uporządkowany ciąg genów (łańcuch kodowy),
• genotyp – zespół chromosomów danego osobnika (zakodowane rozwiązanie),
• fenotyp – zestaw wartości rozwiązania odpowiadających danemu genotypowi (zdekodowanerozwiązanie),
• przystosowanie – jakość osobnika, z punktu widzenia zastosowanego kryterium oceny,
• pokolenie – generacja, iteracja algorytmu,
• rodzice – wybrane do reprodukcji osobniki.
Algorytmy ewolucyjne realizują podstawowe założenia teorii ewolucji: reprodukcję, mutację i
selekcję, tworzą szeroką dziedzinę algorytmów przeszukiwania i optymalizacji. Wspólnymi cechami
algorytmów ewolucyjnych, odróżniającymi je od innych, tradycyjnych metod optymalizacji, są:
• stosowanie operatorów genetycznych, które dostosowane są do postaci rozwiązań,
• przetwarzanie populacji rozwiązań, prowadzące do równoległego przeszukiwania przestrzenirozwiązań z różnych punktów,
• w celu ukierunkowania procesu przeszukiwania wystarczającą informacją jest jakość aktualnychrozwiązań,
• celowe wprowadzenie elementów losowych.
88 Grupowanie
Algorytmy genetyczne zapewniają skuteczne mechanizmy przeszukiwania dużych przestrzeni roz-
wiązań. Ponieważ grupowanie należy do tej kategorii zadań to oczywiste jest, że algorytmy genetycz-
ne stosowane są w grupowaniu. Algorytmy genetyczne są bardziej niezależne od wstępnej inicjalizacji
oraz mniej skłonne do znajdowania lokalnych rozwiązań w miejsce optymalnych. Technika grupowa-
nia genetycznego obejmuje kilka zagadnień potrzebnych do ustalenia:
• ustalenie genomu jako reprezentanta wyniku grupowania
• ustalenie funkcji przystosowania/dopasowania
• ustalenie operatorów przeszukiwania
Tworzenie genomu jest dokonywane w ścisłym skojarzeniu z wybraną metodą grupowania. Naj-
bardziej oczywiste jest utworzenie genomu z tablicy podziału na grupy. Każdy obiekt jest reprezen-
towany w genomie przez określony ciąg bitów, w których zapisana jest przynależność obiektu do
określonej grupy.
Dla metod podziałowych k-means oraz c-means genom reprezentuje wektor wzorcowy względem
którego dokonuje się podziału. Dla obiektów będącymi punktami w przestrzeni wielowymiarowej
genom tworzony jest poprzez „sklejenie” poszczególnych współrzędnych, zapisanych w wybranej no-
tacji binarnej, w jeden ciąg bitów. Funkcja przystosowania wzięta jest bezpośrednio z wymienionych
metod odpowiednio J1 (3.16) i Jm (3.20).
Aby stosować algorytmy genetyczne nie muszą być spełnione żadne specjalne warunki i ograni-
czenia co do danych. Musi tylko istnieć funkcja kryterium (funkcja przystosowania), którą najczęściej
jest sama miara jakości podziału.
Poszczególne algorytmy grupowania, oparte o ideę genu, różnią się od siebie technikami modyfi-
kacji „genu”. Najbardziej rozpowszechnione operatory to:
• krzyżowanie – wymiana „materiału genetycznego” pomiędzy dwoma osobnikami w populacji.W wyniku krzyżowania tworzone są dwa nowe osobniki,
• mutacja – modyfikacja rozwiązania, poprzez zmianę jednego lub więcej genu, poprzez co po-wstaje nowy osobnik. Współczynnik mutacji określa liczbę osobników podlegających mutacji
w danym pokoleniu.
Inne stosowane operatory genetyczne to operator inwersji, duplikacji, delacji, translokacji, segre-
gacji [120].
3.8 Ocena jakości grupowania 89
3.8 Ocena jakości grupowania
Problem oceny jakości dokonanego grupowania jest trudny i wydaje się nie mieć uniwersalnego
rozwiązania. Szczegółową analizę tego problemu w sensie ogólnym, dotyczącym całości zagadnień
eksploracji danych przedstawiono w podrozdziale 1.3. Niniejszy podrozdział omawia zagadnienie
oceny jakości grupowania, w kontekście eksploracji danych. Poniżej wymieniono podstawowe cechy
grupowania, które przyjmuje „dobry” podział [97]:
• prostota — prosta reprezentacja grupowania, czystość reguł podziału, proste zasady przypi-sywania obiektów do grup, chociaż może prowadzić do trywialnych wyników, jednak zawsze
stanowi istotny argument w procesie pozyskiwania wiedzy,
• dopasowanie — rozwiązanie lepiej odzwierciedlające charakter danych ma bardziej skompliko-wany zapis, co rodzi konflikty z kryterium prostoty,
• spójność — określane poprzez dwa wskaźniki: spójność wewnątrz grupową (poszukiwane maksi-mum) i spójność międzygrupową (poszukiwane minimum), spójność zależy od sumy odległości
pomiędzy obiektami w ramach klastra lub klastrów,
• rozłączność — mierzona jako suma wskaźników rozłączności, które definiowane są dla każdejpary klastrów, jako liczba selektorów definiujących te klastry, dla których zbiory wartości
atrybutów są rozłączne,
• wskaźnik dyskryminacji — jest to liczba atrybutów, które samodzielnie stanowią o przypisaniuobiektu do klastra, tj. dla różnych klastrów wartości tych atrybutów są różne.
Jak widać z powyższego wyliczenia kryteria jakości podziału mają formę zaleceń, nieprecyzyjnych
reguł, często prowadzących do konfliktu w procesie wyboru rozwiązania. Ale wynika to z faktu że
problem oceny jakości grupowania leży w zakresie oceny jakości wiedzy, obszaru w którym człowiek
z wielką trudnością formułuje zasady, reguły czy algorytmy postępowania.
Ponieważ nie istnieje jedynie słuszna metoda grupowania, dająca idealne wyniki, to należy skon-
struować kryteria oceny, według których można będzie oceniać otrzymane wyniki. Posiadając odpo-
wiednią funkcję oceny dokonuje się doboru i optymalizacji metod i algorytmów grupowania. Poniżej
wymieniono szereg kryteriów, których spełnienie powinna oceniać funkcja oceny jakości grupowania
[27]:
• dopasowanie grup do przykładów trenujących, mierzone jako łączne rozproszenie wszystkichkompleksów wyznaczających grupowanie,
• złożoność opisu grupy, mierzona jako liczba występujących we wszystkich kompleksach selek-torów nieuniwersalnych,
90 Grupowanie
• zróżnicowanie grup, reprezentowanych przez kompleksy rozłączne, mierzone przez łączne roz-proszenie koniunkcji wszystkich par kompleksów,
• stopień pokrycia zbioru, mierzony przez liczbę nie pokrywanych przez grupowanie przykładów.
Do porównywania poszczególnych metod grupowania zastosowano następujące miary jakości po-
działu:
• miara jednorodności,
• miara utraty informacji,
• miara względnej spójności.
Aby właściwie móc porównywać różne metody grupowania obiektów należy dysponować odpo-
wiednią funkcją oceny podziału. Zgodnie z ideą grupowania, która polega na gromadzeniu obiektów
podobnych w tym samym zbiorze, a obiektów niepodobnych w różnych, funkcja oceny grupowania
winna oceniać spójność wewnątrz grupy oraz spójność między daną grupą a resztą. W przypadku
danych reprezentujących obiekty rzeczywiste funkcja oceny winna odwoływać się do tych samych
zasad kategoryzacji, jaki jest wykorzystywany przez człowieka. Takie „nastawienie” na człowieka
wynika z dwóch przesłanek. Po pierwsze człowiek w ramach rozwoju cywilizacyjnego wykształcił
zaawansowany aparat kategoryzowania wszelkiego rodzaju obiektów, zjawisk, które znajdowały się
w jego otoczeniu. Służą mu do tego takie narzędzia, jak: język (jako środek opisu), wiedza którą
posiada, a nawet elementy tak nieuchwytne jak mądrość czy intuicja. Po drugie najczęściej człowiek
występuje w pewnej relacji z kategoryzowanymi obiektami, jest twórcą, użytkownikiem, decydentem.
Przykładowo jednym z ogólnych zadań eksploracji danych jest przewidywanie przyszłych zachowań
konsumentów na podstawie informacji dotychczas zgromadzonej. Po trzecie to człowiek jest osta-
tecznym odbiorcą wyników grupowania.
W toku badań nad procesem grupowania dokonywanym przez człowieka poznano kilka jego
aspektów [95]:
• każdą kategorię (grupę) tworzy się w oparciu o kontrast, przeciwstawienie jej pozostałym,
• każda grupa ma zwykle jeden lub kilka obiektów „najlepszych”, wzorcowych, będących jejreprezentantami,
• grupy zawierają obiekty, których cechy nie są konieczne lub wystarczające do określenia ichprzynależności do nich,
• grupy mogą być reprezentowane przez współzależność atrybutów obiektów, przy czym siła tejwspółzależności może zostać wykorzystana do oceny ich spójności,
3.8 Ocena jakości grupowania 91
• znając cel grupowania człowiek pewnym atrybutom nadaje większą wagę, tj. atrybuty te mająwiększy wpływ na ostateczną postać grupowania.
Wiele miar jakości podziału zakłada niezależność atrybutów i w ten sposób łączy predyktywność
dla wszystkich atrybutów i wszystkich grup. W świecie rzeczywistym obiekty często opisywane są
atrybutami, które nie są od siebie niezależne. W takim przypadku stosowanie niektórych miar może
prowadzić do wypaczeń. Człowiek w swym procesie klasyfikacji wręcz wykorzystuje współzależność
atrybutów. Zakłada się że podobieństwo obiektów jest funkcją współzależności atrybutów w zbiorze
obiektów [112].
3.8.1 Podstawowe definicje związane z pomiarami jakości grupowania
Jednym z problemów grupowania jest określenie optymalnej ilości grup, na które ma zostać
dokonany podział. Jak już powiedziano poszukiwany jest podział, według którego grupy są dobrze
odseparowane od siebie, a poszczególne elementy w grupach są blisko siebie. Wiele algorytmów
wymaga albo jawnego zadania oczekiwanej liczby grup, albo określenia jednego z kryteriów (np.:
minimalna gęstość), którego spełnienie zakończy poszukiwanie podziału.
Podstawowe definicje związane z pomiarami jakości grupowania:
Definicja 10. Wariancja atrybutu A obiektów ze zbioru X = x1, . . . , xin oznaczana jako σ2(X) ∈R :
σ2(X) =1n
n∑j=1
(A(xj)− x)2, (3.33)
gdzie A(x1), . . . , A(xn) są wartościami atrybutu A obiektów ze zbioru X a x wartością średnią:
x =1n
n∑j=1
A(xk). (3.34)
Definicja 11. Wariancja klastra Ci zawierającego elementy Ci = x1, . . . , xin jest definiowananastępująco:
σ2(Ci, vi) =1ni
n∑j=1
(A(xij )− vi)2, (3.35)
gdzie vi oznacza wzorzec klastra Ci.
Definicja 12. Średnia spójność (ang. scattering) dla c klastrów:
Scat(X,V) =∑ci=1 σ
2(Ci, vi)σ2(X)
(3.36)
gdzie V jest zbiorem elementów wzorcowych.
92 Grupowanie
Tabela 3.1. Tablica koincydencji dla grupy j.
prawidłowoTAK NIE
przypisano TAK aj bjNIE cj dj
Scat(X,V ) jest wskaźnikiem średniej wariancji dla wszystkich klastrów. Małe wartości tego
wskaźnika oznaczają że poszczególne klastry są bardzo spójne (poszczególne klastry grupują obiekty
o dużym podobieństwie).
Definicja 13. Globalna separacja (ang. total separation)pomiędzy klastrami:
Dis(V ) =DmaxDmin
c∑i=1
(1∑c
j=1|vi − vj |
)(3.37)
gdzie Dmax oznacza maksimum a Dmin oznacza minimalną odległość pomiędzy wektorami wzor-
cowymi.
Definicja 14. Wskaźnik dobroci dla zbioru klastrów wyodrębnionych w ramach zbioru X:
G(X,V ) = α · Scat(X,V ) +Dis(R). (3.38)
Jakość podziału zależy zarówno od separacji pomiędzy klastrami jak i spójności wewnątrz grup.
Należy dbać o równoległe polepszanie obu wskaźników. Współczynnik α ma za zadanie wyrównanie
różnicy zakresów dla obu wskaźników tak aby ich wpływ na wartość ostateczną wskaźnika dobroci był
jednakowy [55].
Wskaźniki skuteczności Jeżeli grupowaniu poddawane są zbiory danych o znanej klasyfikacji to
potrzeba oszacowania skuteczności tych działań. Przykładowo podczas rozdzielania zbioru obiektów
na dwie części mogą wystąpić następujące przypadki błędów: nie przypisano elementu, który po-
winien być przypisany oraz przypisano element, który nie powinien być przypisany. W tablicy 3.1
określono możliwe do uzyskania rezultaty. Najlepszy wynik uzyskuje się wówczas gdy bj i cj są równe
0.
Można zdefiniować dwa wskaźniki mierzące skuteczność grupowania:
dokładność (ang. r — recall)
r =a
a+ c, (3.39)
3.8 Ocena jakości grupowania 93
precyzja (ang. p — precision)
p =a
a+ b. (3.40)
Dokładności i precyzja zależy od sposobu grupowania i parametrów wejściowych. Niestety naj-
częściej zmiany danych wejściowych powodują zmiany wymienionych wskaźników w przeciwnych
kierunkach, polepszając jeden pogarsza się drugi. Posiadając dwa wskaźniki trudno jest również wy-
znaczyć optimum. W tym celu można się posłużyć wskaźnikiem F-measure zaproponowanym prze
Van Rijsbergena [110]:
Fβ(r, p) =(β2 + 1)prβ2p+ r
. (3.41)
Często spotykaną postacią wzoru (3.41) jest przypadek dla β = 1. Wtedy:
F1(r, p) =2prp+ r
. (3.42)
Kolejnym zagadnieniem jest podział na wiele grup. Wzory na dokładność i precyzję dotyczą
podziału na dwie grupy (parametry drugiego zbioru są takie same tylko lustrzanym odbiciu roz-
mieszczenia w tablicy 3.1), natomiast w przypadku większej ilości grup można zastosować dwie
techniki zwane: mikro uśrednianie (ang. micro average) oraz makro uśrednianie (ang. macro ave-
rage). Dla makro uśredniania wskaźniki skuteczności (3.40) i (3.39) są indywidualnie obliczane dla
każdej grupy, a następnie uśredniane. Dla mikro uśredniania tablica konicydencji 3.1 jest obliczana
poprzez jednoczesne zsumowanie odpowiednich wartości dla wszystkich grup i w ten sposób oblicza-
ne są wskaźniki skuteczności grupowania. W zależności od przyjętego sposobu obliczania wykazuje
się różny wpływ wyników poszczególnych grup na wynik ostateczny. W przypadku mikro uśred-
niania faworyzuje się większe grupy, natomiast dla makro uśredniania wpływ wszystkich grup jest
jednakowy.
3.8.2 Miara jednorodności
Do oceny jakości podziału stosuje się miary jednorodności albo zróżnicowania (ang. impurity
measure). W zależności od wybranej funkcji poszukuje się jej minimum albo maksimum. Jeżeli dany
jest zbiór obiektówX, które zostały rozdzielone do grup C = C1, . . . , Cc to można utworzyć wektorprawdopodobieństw przynależności do klas postaci:
p = (p1, p2, . . . , pc) =(|C1||X|
,|C2||X|
, . . . ,|Cc||X|
), (3.43)
c∑i=1
pi = 1, (3.44)
94 Grupowanie
gdzie:
pi prawdopodobieństwo przynależności do grupy i,
p wektor prawdopodobieństw przynależności,
c liczba grup,
|Ci| liczebność grupy i,|X| liczebność grupowanych obiektów.
Definicja 15. Funkcję
ϕ : [0, 1]k → R (3.45)
taką, że ϕ(p) 0 dla każdego wektora p, nazywa się funkcją zróżnicowania, jeśli ma następującewłaściwości:
1. ϕ(p) = max ⇒ ∃1¬i¬k pi = 1,
2. ϕ(p) = min ⇒ ∀1¬i¬k pi = 1k ,
3. jest funkcją symetryczną.
Przykładami funkcji zróżnicowania są miara entropii [27], wskaźnik zróżnicowania Giniego [17],
statystyka χ2 [47].
Ponieważ podział zbioru obiektów dokonuje się w oparciu o wartości atrybutów, kryterium wy-
boru powinno być miarą porównującą stopień zróżnicowania ze względu na wartości poszczególnych
argumentów. Dokonuje się tego obliczając średnią ważoną funkcji zróżnicowania ϕ(p) w oparciu o
warunkowe prawdopodobieństwa względem poszczególnych wartości atrybutów:
ψ(C,A) =m∑j=1
|Cj ||X|
ϕ(Cj). (3.46)
3.8.3 Reguła podziału na 2 części
Przykładem miary jakości podziału może być funkcja stosowana w algorytmie CART [17] reguła
podziału na 2 części (ang. twoing rule):
T (X,XA, XB) =pApb
(∑ki=1|pAi − pBi |)2
, (3.47)
gdzie:
XA, XB podział X na dwa podzbiory X = XA ∪XB ,pA, pB prawdopodobieństwo że obiekt należy do podzbioru, odpowiednio, XA XB ,
pAi , pBi prawdopodobieństwo że obiekt należący do XA należy do grupy Ci.
3.8 Ocena jakości grupowania 95
3.8.4 Test χ2
Standardowym testem określającym niezależność zmiennych w tablicach koincydencji jest staty-
styka χ2:
χ2 =r∑i=1
c∑j=1
(Oij − Eij)2
Eij, (3.48)
gdzieOij obserwowana częstotliwość wystąpień w komórce ij,
Eij oczekiwana częstotliwość wystąpień w komórce ij
Eij =
∑j Oij
∑iOij
N, (3.49)
gdzie N jest globalną liczbą obserwacji.
Test χ2 określa czy dane dwa kryteria podziału są zależne czy też nie. Jeżeli kryteria są nieza-
leżne to funkcja przybiera wartość zero. Określenie stopnia zależności kryterium ma istotną wartość
dla szacowania jakości podziału, jako że niezależność kryteriów dowodzi rozdzieleniu obiektów nie-
podobnych do różnych klastrów.
Na mierze χ2 jest opartych wiele wskaźników, przytoczyć można współczynnik Youl‘a, Czuprowa,
Cramera, współczynnik kontygencyjności Pearsona czy współczynnik τ Kendalla.
3.8.5 Przyrost informacji
Niektóre ze sposobów określania miary podobieństwa wywodzą się z teorii informacji. Zakłada
się, że takie grupowanie, które daje największy przyrost informacji jest optymalne, gdyż odpowiada
to małemu zróżnicowaniu kategorii w podzbiorach. Entropia jako miara zróżnicowania wydaje się
być bardzo uniwersalną funkcją, niezależną od charakteru zmiennych.
Informację zawartą w zbiorze etykietowanych przykładów P można wyrazić następująco:
I(P ) =∑d∈D
−|Pd||P |log|P d|P
, (3.50)
gdzie:
|P | liczebność zbioru przykładów,
|P d| liczebność podzbioru przykładów zbioru P należących do kategorii d,D zbiór kategorii możliwych do wyznaczenia w zbiorze przykładów P ,przy czym logarytm może mieć dowolną podstawę, lecz konsekwentnie tę samą.
Entropię przykładów P ze względu na wynik r testu t oblicza się następująco:
Etr(P ) =∑d∈D
−|Pdtr||Ptr|log|P dtr||Ptr|
. (3.51)
gdzie:
96 Grupowanie
|Ptr| liczebność podzbioru przykładów, dla których test t daje wynik r,|P dtr| liczebność podzbioru przykładów zbioru P d, dla których test t daje wynik rD zbiór kategorii możliwych do wyznaczenia w zbiorze przykładów P ,Entropia zbioru przykładów P ze względu na test t jest definiowana jako średnia ważona entropia
dla poszczególnych testów:
Et(P ) =∑r∈Rt
|Ptr||P |
Etr(P ). (3.52)
Przyrost informacji (ang. information gain) jest określony jako różnica:
gt(P ) = I(P )− Et(P ). (3.53)
Ponieważ jednak informacja I(P ) ma wartość niezależną od ocenianego testu i właściwą dla zbioru
przykładów P , jako kryterium wystarczy zastosować minimalizację entropii Etr(P ).
Dla zbioru przykładów przyrost informacji obliczany jest następująco:
gt(P ) =−∑d∈C
(c(x) = d) · log(c(x) = d)
+∑d∈C
(c(x) = d | ai(x) = v) · log(c(x) = d | ai(x) = v)
+∑d∈C
(c(x) = d | ai(x) 6= v) · log(c(x) = d | ai(x) 6= v).
(3.54)
.
Entropia przyjmuje maksymalne wartości wtedy gdy rozkład wartości atrybutów jest równomier-
ny, natomiast osiąga minimum gdy obiekty posiadające atrybuty o danej wartości zgromadzone są w
jednej grupie. Obiekty są do siebie podobne wtedy gdy posiadają równe wartości swych atrybutów.
Tym samym stosowanie funkcji oceny przyrostu informacji jako poszukiwania podziału spełniającego
warunek maksymalizacji wartości tej funkcji pokrywa się z celem grupowania.
argmaxtgt(P ) (3.55)
3.8.6 Wskaźnik Xie - Beni
Do szacowania jakości podziału pozyskanego w wyniku grupowania rozmytego można zastosować
wskaźnik zaproponowany w [125]:
s =∑ci=1
∑nk=1(u
2ik)(vi − xi)
nmini,k
d2(vi − xi)(3.56)
Im mniejsza jest wartość s, tym lepsza jest spójność i separacja. Celem jest minimalizacja wartości
s w zależności oz założonej ilości grup c. Wskaźnik Xie-Beni może służyć jako kryterium doboru
ilości grup, na które dokonuje się podziału.
Rozdział 4
Metody oparte o listy decyzyjne
Wstęp
Rozwój algorytmów indukcji reguł ukierunkowany był przede wszystkim na perspektywę klasy-
fikacji. Zbiór reguł traktowany jest jako klasyfikator, ale jednocześnie jako opis zbioru danych w
perspektywie pozyskiwania wiedzy. Algorytmy grupowania wykorzystujące reguły to powszechnie
znane algorytmy deglomeracyjne. Nowością zaproponowaną przez autora jest zastosowanie zbioru
reguł w formie listy decyzyjnej w procesie grupowania. Dzięki takiemu ujęciu polepszyła się ja-
kość prezentacji wyników grupowania z punktu widzenia ludzkiej percepcji i łatwości przyswojenia.
Zmiana formy zapisu podziału umożliwiła skonstruowanie nowej metody grupowania danych.
Drugą propozycją jest wykorzystanie wyżej wymienionej metody opartej na listach decyzyjnych
do skonstruowania i zaimplementowania nowych algorytmów grupowania. Autor przedstawia w swo-
jej pracy własne propozycje algorytmów pełnego przeglądu, heurystycznego i genetycznego, których
praktyczną implementację oraz weryfikację poprawności przedstawiono w rozdziałach następnych.
Rozdział zakończono dyskusją na temat zalet przedstawionej metody.
4.1 Wprowadzenie list decyzyjnych
Listy decyzyjne stanowią istotny element maszynowego uczenia się. Zostały zaproponowane po
raz pierwszy w [111]. Listy decyzyjne są formą zbioru reguł decyzyjnych, w którym ustalono porzą-
dek, czyli kolejność w jakiej reguły mają być wykorzystane do klasyfikowania przykładów. Hipoteza
reprezentowana przez taki zbiór reguł przyporządkowuje klasyfikowanemu przykładowi kategorię
związaną z pierwszą w kolejności regułą, która ten przykład pokrywa. Listy decyzyjne można rów-
nież traktować jak zdegenerowane drzewo decyzyjne, dla którego z każdego węzła wychodzą dwie
97
98 Metody oparte o listy decyzyjne
gałęzie, z których przynajmniej jedna dochodzi do liścia a ewentualnie pozostała do innego węzła.
Reguły stosowane są do reprezentacji wiedzy o pojęciach klasyfikujących przykłady. Reguły skła-
dają się dwóch elementów: części warunkowej i części decyzyjnej w zapisie:
JEŚLI warunek TO kategoria (4.1)
lub matematycznie:
warunek⇒ kategoria (4.2)
Składnik warunki jest formułą logiczną nałożoną na atrybuty opisujące zbiór obiektów, nato-
miast kategoria stanowi proste przypisanie obiektu do określonej kategorii. Można to przedstawić
następująco:
(∀x ∈ X)(α[a1(x), a2(x), . . . , ar(x)]⇒ h(x) = d). (4.3)
gdzie:ai(x) atrybutów obiektu x,
α(x) formuła logiczna odwołująca się do wartości
atrybutów obiektu,
h(x) funkcja wyznaczająca przypisanie obiektu do danej kategorii,
d ∈ D etykieta konkretnej kategorii.
Jeżeli dany jest zbiór formuł logicznych αi → αi ∈ Θ, w oparciu o które tworzy się reguły ri =α1(x) → dα1 , to mając uporządkowany zbiór takich reguł r1, r2, . . . , rm tworzy się listę decyzyjną.
Wyznaczanie przypisania obiektu do kategorii dokonuje się następująco:
1. dla danego obiektu x sprawdzane jest spełnienie waruneku α1,
2. jeżeli tak, to obiekt x zostaje przypisany do kategorii dα1 ,
3. w przeciwnym przypadku dokonuje się analogicznej analizy przy pomocy następnej reguły.
Zapis algorytmiczny można przedstawić przy pomocy zagnieżdżonej instrukcji warunkowej przed-
stawiono w 4.7, zapis procedury w pseudokodzie w algorytmie 4.8.
Algorytm 4.7. Przypisywanie obiektów do grup na podstawie listy decyzyjnej
IF α1(x) THEN h(x) = dα1ELSE IF α2(x) THEN h(x) = dα2
. . .
. . .
ELSE IF αm(x) THEN h(x) = dαm
4.1 Wprowadzenie list decyzyjnych 99
Lista decyzyjna LD jest listą reguł na rys 4.1, ale często zapisuje się ją w postaci listy par <
warunek,kategoria> czyli:
DL = (α1, dα1), (α2, dα2), . . . , (αm, dαm). (4.4)
R
war 1
A
R
war 2
B
R
war3
A
R
war 4
C B
Rys. 4.1. Lista reguł.
4.1.1 Tworzenie formuł warunku
Formuły warunku można zapisywać przy pomocy kompleksów. Kompleks jest zbiorem selektorów
k =< k1, k2, . . . , km >, poszczególne selektory odpowiadają kolejnym atrybutom opisującym
obiekt. Każdy selektor określa zbiór wartości dozwolonych.
Definicja 16. Selektor odpowiadający atrybutowi a : X → A pokrywa przykład x ∈ X, jeśli α(x) ∈Vs, przy czym Vs oznacza zbiór wartości dozwolonych dla selektora s. Piszemy wówczas s . x [27].
Definicja 17. Kompleks k = 〈s1, s2, . . . , sm〉 pokrywa przykład x ∈ X jeśli każdy selektor si, gdzie1 ¬ i ¬ m pokrywa przykład x.
W niniejszym opracowaniu, na potrzeby przedstawionego algorytmu, używany jest tylko jeden,
specyficzny rodzaj kompleksów, zwanych kompleksami atomowymi. Formalna definicja jest
następująca:
100 Metody oparte o listy decyzyjne
Definicja 18. Kompleksem atomowym nazywa się każdy kompleks zawierający dokładnie jeden se-
lektor pojedynczy lub dysjunkcyjny a pozostałe selektory są selektorami uniwersalnymi
Inaczej rzecz ujmując, formuła logiczna składa się z prostego testu wartości dla pojedynczego
atrybutu. Takie ograniczenie pozwala znacząco zmniejszyć ilość reguł poddawanych analizie.
Proponowana metoda grupowania wymaga znalezienia takiego ułożenia reguł w liście, dzięki
któremu uzyska się najlepszy wynik funkcji kryterium.
Algorytm 4.8. Procedura przypisywania obiektów do grup na podstawie listy reguł
var
tabp tablica przynależności obiektów do grup
grupa grupy odpowiadające spełnionym warunkom reguł
proc PrzypiszGrupy(obiekt)
var
i : integer;
zmienna sterująca pętlą do przeglądania listy reguł
przypisany := false;
begin
while notprzypisany do
inc(i); przejdź do kolejnej reguły
if warunek(obiekt, i) then tabp[obiekt] := grupa[i] fi
jeżeli warunek spełniony przypisz obiekt do grupy
end
end.
4.2 Zasada działania metody grupowania
Autor proponuje zastosowanie list decyzyjnych w metodzie grupowania. Wstępnie omówienie
propozycji użycia list decyzyjnych do grupowania autor niniejszej pracy przedstawił we własnej
publikacji [94].
Proponowana metoda opiera się na następujących założeniach:
1. Brak konieczności kwantyzacji danych symbolicznych.
2. Brak konieczności stosowania funkcji odległości, wystarcza zastosowanie funkcji oceniającej
jakość podziału (na podstawie podrodzału 3.8).
4.2 Zasada działania metody grupowania 101
3. Rozwiązaniem jest lista decyzyjna, z której wprost wyprowadza się macierz przynależności
(wzór 4.9).
4. Obszar rozwiązań to zbiór wszystkich permutacji listy decyzyjnej.
5. Poszukiwane jest rozwiązanie najlepiej spełniające funkcję kryterium.
4.2.1 Analogia do metod hierarchicznych
W algorytmach hierarchicznych rozwiązanie tworzył graf w postaci odwróconego drzewa (dendo-
gramu). W takim drzewie liście reprezentują poszczególne obiekty a gałęzie wyznaczają poszczególne
grupy. Liczba grup zależy od wysokości drzewa, grupy wyznaczają wszystkie gałęzie na danym po-
ziomie. Liście należące do różnych gałęzi reprezentują obiekty należące do różnych grup.
W omawianej metodzie zaproponowano istotną zmianę: graf zostanie utworzony na podstawie
listy decyzyjnej, analogicznie jak to zostało zaproponowane w algorytmie klasyfikacyjnym CN2 [29].
Jak już wspomniano uzyskiwane rozwiązanie ma postać uporządkowanej listy reguł decyzyjnych.
Pojęcie reguł zostało zaczerpnięte z dziedziny symbolicznej klasyfikacji wzorcowej. Reguły te mają
formę:
Dj ::> Ki, (4.5)
gdzie: 0 < j < |D| jest indeksem reguły w liście reguł, |D| liczbą reguł w liście, Dj to warunekopisujący, Ki oznacza klasę, a ::> operator przypisania.
Reguły interpretuje się następująco: Jeżeli dany obiekt spełnia opis Dj to należy do klasy Ki.
W celu adaptacji pojęcia reguł do grupowania zbiorów tekstowych przyjęto następujące założenie.
Reguła będzie miała postać występowania określonego słowa (termu) w tekście, tj. jeżeli słowo użyte
w regule Dj występuje w tekście obiektu Xn to znaczy to, że obiekt Xn zostaje przypisany do klasy
Ki. Reguły w tym przypadku mają postać uporządkowanej listy.
4.2.2 Tworzenie macierzy przynależności
Macierz przynależności (algorytm 4.9) jest ostatecznym rezultatem grupowania. W procesie gru-
powania opartego o listy decyzyjne wymagane jest dokonanie dodatkowego etapu, polegającego na
przypisaniu obiektów do grup na podstawie danej listy decyzyjnej. W wielu zastosowaniach etap ten
jest pomijany, gdyż do dalszego przetwarzania wystarcza sama lista decyzyjna. Natomiast etap ten
jest wymagany w przypadku konieczności uzyskania podziału zbioru. Proces przypisywania obiektów
do grup przedstawiono algorytmem 4.9[29].
Algorytm 4.9. Rekurencyjne przypisywanie obiektów do grup na podstawie listy reguł
102 Metody oparte o listy decyzyjne
dla każdego obiektu
jeżeli reguła umieszczona w głowie listy jest spełniona
to przypisz obiekt do wskazanej grupy
w przeciwnym wypadku powtórz obliczenie dla ogona listy
W proponowanym algorytmie lista przeglądana jest tak długo, aż zostanie znaleziona odpowia-
dająca reguła. Wynika też z tego, że lista powinna zawierać odpowiednią ilość reguł tak, aby każdy
obiekt mógł zostać przypisany. Listę tą można traktować jako gen będący przedmiotem przetwarza-
nia w algorytmach genetycznych. Otrzymana postać grupowania to graf w postaci zdegenerowanego
drzewa, w którym z każdego węzła wychodzi tylko jedna gałąź oraz jeden lub więcej liści. Liście repre-
zentują obiekty przypisane do danej grupy, przy czym grupa obejmuje obiekty obecne w jednym lub
więcej węźle. Jest to istotny element odróżniający od metod hierarchicznych. Algorytmy oparte na
liście decyzyjnej polegają na poszukiwaniu listy reguł najlepiej odpowiadającej funkcji dopasowania
(dającej najlepszy wynik).
4.2.3 Funkcja kryterium
Metody grupowania oparte o listy decyzyjne, analogicznie jak metody deglomeracyjne, wymaga-
ją istnienia funkcji kryterium do porównywania i selekcji kolejnych rozwiązań w toku przetwarzania.
Jako funkcje kryterium często wykorzystuje się wzory zaczerpnięte z teorii informacji. Zakłada się, że
takie grupowanie, które daje największy przyrost informacji jest optymalne, gdyż odpowiada to ma-
łemu zróżnicowaniu kategorii w podzbiorach. Reguły obliczania przyrostu informacji przedstawiono
w podrozdziale 3.8.5.
Własności testu opartego o przyrost informacji
Entropia przyjmuje maksymalne wartości wtedy gdy rozkład wartości atrybutów jest równomier-
ny, natomiast osiąga minimum gdy obiekty posiadające atrybuty o danej wartości zgromadzone są w
jednej grupie. Obiekty są do siebie podobne wtedy gdy posiadają równe wartości swych atrybutów.
Tym samym stosowanie funkcji oceny przyrostu informacji jako poszukiwania podziału spełniającego
warunek maksymalizacji wartości tej funkcji pokrywa się z celem grupowania.
4.3 Algorytm grupowania wykorzystujący pełny przegląd
Pierwszym z algorytmów grupowania zaproponowanych przez autora niniejszej pracy jest algo-
rytm oparty o zasadę pełnego przeglądu [15].
4.3 Algorytm grupowania wykorzystujący pełny przegląd 103
Najprostszym i najpewniejszym sposobem możliwym do zastosowania do grupowania opartego o
listy decyzyjne jest procedura pełnego przeglądu. Ponieważ znana jest liczba reguł wchodzących w
skład listy decyzyjnej wystarczy dokonać przeglądu wszystkich kombinacji ułożenia reguł w liście,
a następnie wybrać takie ułożenie, które daje najlepsze dopasowanie funkcji kryterium. Największą
wadą takiego podejścia jest wysoka złożoność obliczeniowa, już dla kilkunastu reguł czas obliczeń
przestaje być akceptowalny. Natomiast w przypadku mniejszych zbiorów algorytm pełnego przeglą-
du może stanowić model referencyjny, do weryfikacji innych algorytmów. Referencyjne właściwości
niniejszego algorytmu wynikają z właściwości „pełnego przeglądu”. Ponieważ sprawdzane są wszyst-
kie możliwe warianty rozwiązań, to na pewno będzie wśród nich rozwiązanie optymalne – najlepsze
do uzyskania metodą opartą na listach decyzyjnych.
Twierdzenie 1. Algorytm pełnego przeglądu zastosowany do znalezienia optymalnego rozwiązania
grupowania opartego o listy decyzyjne daje zawsze najlepsze rezultaty, spośród możliwych do osią-
gnięcia wymienioną metodą.
Dowód 1. Algorytm pełnego przeglądu polega na wybraniu najlepszego rozwiązania spośród wszyst-
kich istniejących permutacji listy decyzyjnej, więc nie istnieje lista decyzyjna, która by nie była nie
sprawdzana, co dowodzi pewnosci znalezienia rozwiązania optymalnego.
W przypadku omawianego algorytmu procedura pełnego przeglądu dotyczyć będzie przeglądu
listy reguł L, która zawiera w kolejnych węzłach wszystkie możliwe kombinacje reguł i przypisań
do poszczególnych grup to ostatecznym rezultatem grupowania jest jedna (lub wiele równoważnych)
permutacji takiej listy wynikających ze zmiany ułożenia kolejności węzłów. Jeżeli przez |D| oznaczy-my całkowitą liczbę reguł a |K| oczekiwaną liczbę grup, to długość listy reguł |L| wynosi:
|L| = |D||K| (4.6)
gdzie liczbę reguł dyskryminacyjnych można wyznaczyć następująco:
|D| =m∑i=1
|Ai| (4.7)
gdzie:Ai – atrybut opisujący i-ty obiekt
m – ilość atrybutów
|Ai| – liczebność dziedziny atrybutu Ai
Liczba reguł dyskryminacyjnych w przypadku krytycznym może osiągnąć wartość iloczynu liczby
obiektów i liczby atrybutów opisujących, natomiast liczba permutacji wynosi (|L|)! to przeszukiwanyobszar rozwiązań może wydawać się bardzo duży. Należy więc wykorzystać istniejące właściwości,
104 Metody oparte o listy decyzyjne
które pozwolą na uniknięcie dokonywania niepotrzebnych (np. powtarzających się) obliczeń i zwięk-
szenie wydajności algorytmu.
Implementacja algorytmu pełnego przeglądu może zostać zrealizowana w analogii do metod sys-
tematycznego przeszukiwania grafów lub przy pomocy algorytmu wyznaczającego wszystkie permu-
tacje danego ciągu elementów w zależności od zastosowanej reprezentacji listy. W niniejszej pracy
zaprezentowano jeden przykład implementacji algorytmu pełnego przeglądu w zastosowaniu do gru-
powania opartego o listy decyzyjne.
Szczegółowa analiza pokazuje, że można znacząco ograniczyć złożoność obliczeniową prezento-
wanej metody z uwagi na jej następujące właściwości :
• Rzeczywista ilość reguł jest znacznie mniejsza od wspomnianego powyżej przypadku krytycz-nego, aby mówić o grupowaniu to jednak wiele wartości atrybutów musi się powtarzać (obiekty
muszą mieć cechy wspólne, być do siebie „podobne”).
• Część listy reguł jest nieaktywna, gdyż podczas procesu przypisywania brane są pod uwagętylko czołowe reguły i można określić, która z nich jako ostatnia dzieli listę na dwie części.
Kolejność reguł w drugiej części, nieaktywnej nie ma znaczenia dla procesu przypisywania gdyż
reguły te nigdy nie biorą udziału w procesie.
• Istnienie reguł nieistotnych w danym kontekście, tj. takich których możliwe do spełnieniaprzypisania są w pełni pokryte przez wcześniejsze reguły (czyli dany kontekst). Zjawisko to
występuje wtedy, gdy wszystkie obiekty objęte kompleksem z danej reguły zostały wcześniej
(przez reguły umieszczone bliżej głowy listy) przypisane do grup. Tym samym ułożenie takich
reguł pozostaje bez znaczenia na rezultat.
Wykorzystywanie takich właściwości pozwala na uniknięcie dokonywania niepotrzebnych obliczeń
i zwiększenie wydajności algorytmu.
Twierdzenie 2. Niektóre reguły z listy decyzyjnej nie biorą udziału w procesie tworzenia macierzy
podziału.
Dowód 2. W skład listy decyzyjnej wchodzą wszystkie kombinacje reguł i klas (wzór 4.5). Użycie
reguły Dj ::> Ki powoduje, że wszystkie nie przypisane jeszcze obiekty spełniające warunek Dj
zostaną przypisane do grupy Ki. Więc dla każdej z występujących później reguł Dj ::> Kk, gdzie
i 6= k nie nie pozostanie żaden z obiektów mogących podlegać przypisaniu.
4.4 Algorytmy oparte na przeszukiwaniu heurystycznym
Najlepszym algorytmem, pod względem jakości uzyskiwanych wyników (dających najlepsze war-
tości zastosowanej miary jakości) jest algorytm pełnego przeglądu. Natomiast algorytm ten posiada
4.5 Algorytm wykorzystujący mechanizm genetyczny 105
bardzo dużą złożoność obliczeniową. Zasadne jest więc poszukiwanie innego algorytmu, o niższej
złożoności obliczeniowej przy akceptowalnej jakości uzyskiwanych wyników.
Ponieważ proces grupowania polega na poszukiwaniu najlepszego rozwiązania w ramach dopusz-
czalnej przestrzeni rozwiązań, to można do tego wykorzystać metody przeszukiwania heurystycznego
[15]. Poszczególne algorytmy różnią się od siebie strategią przeszukiwania przestrzeni rozwiązań oraz
sposobem wykorzystywania informacji o dziedzinie rozwiązywanego problemu. Zaproponowana przez
autora niniejszej pracy strategia, określona jako liniowe przeszukiwanie, polega na podstawianiu ko-
lejnych reguł na danej pozycji, po znalezieniu najlepszej następuje zmiana pozycji modyfikowanej.
Proponowany algorytm stanowi uproszczoną wersję pełnego przeglądu. Z uwagi na liczbę dopusz-
czalnych kombinacji pełny przegląd nie jest możliwy do zrealizowania już dla stosunkowo niewielkich
baz. Wykorzystano więc metodę doboru reguły niezależnego dla każdej pozycji.
Algorytm 4.10. Heurystyczny metoda liniowa
dla każdej reguły
utwórz nowalista=reguła|poprzednialista
oblicz wskaźnik jakości
zapamiętaj najlepszy wariant
dla najlepszego wariantu
podstaw poprzednialista=najlepszywariant
powtarzaj do momentu aż przestawienie żadnej z reguł nie przynosi
polepszenia wskaźnika jakości
W opisywanym algorytmie strategia przeszukiwania przestrzeni rozwiązań polega na sekwencyj-
nym sprawdzaniu kolejnych wariantów listy. Dla każdego elementu z listy początkowej reguł dokonuje
się generacji nowej listy poprzez przestawienie wybranego elementu na początek listy. Jeżeli tak skon-
struowana lista daje lepsze wyniki, to staje się ona podstawą do dalszego przetwarzania (staje się
listą początkową), a sprawdzania kolejnych reguł dokonuje się od początku. Jak można zauważyć w
powyższym zapisie, przeszukiwanie polega na dokładaniu kolejnych reguł na początek listy.
4.5 Algorytm wykorzystujący mechanizm genetyczny
Na podstawie podrozdziału 3.7 autor wykorzystał techniki genetyczne do opracowania algorytmu
grupowania opartego o listy decyzyjne. Inicjalizacja polega na wygenerowaniu listy reguł. Długość
listy równa jest iloczynowi wszystkich występujących słów i ilości oczekiwanej listy grup. Wynika to
106 Metody oparte o listy decyzyjne
z postaci reguły. W wyniku tej generacji powinna zostać uzyskana lista, w oparciu o którą funkcja
przypisywania podzieli zbiór na wymaganą ilość grup.
Kolejnym elementem algorytmu jest dobranie metody modyfikacji genu. Zaproponowano wpro-
wadzenie pewnej odmiany mutacji. Mianowicie wybierane są losowo dwa elementy z listy i zamieniane
miejscami ze sobą. W trakcie badań zauważono, że wiele tak dokonanych operacji zamiany nie ma
żadnego wpływu na otrzymywany podział na grupy. Dzieje się tak dlatego, gdyż część z listy reguł
jest nieaktywna, nie bierze udziału w procesie przypisywania obiektów do grup. Własność tę wyko-
rzystano w celu zwiększenia szybkości działania algorytmu poprzez unikanie takich niepotrzebnych,
nic nie wnoszących mutacji. Podczas procesu przypisywania brane są pod uwagę tylko czołowe regu-
ły i można określić, która z nich jako ostatnia dzieli listę na dwie części. Kolejność reguł w drugiej
części, nieaktywnej, nie ma znaczenia dla procesu przypisywania, gdyż reguły te nigdy nie biorą
udziału w procesie. W celu wykorzystania tej właściwości zagwarantowano, aby w funkcji mutacji
zawsze jeden z wybieranych elementów pochodził z części aktywnej listy.
Druga propozycja funkcji mutacji różni się od poprzedniej tym, że zamiast zamiany elementów
w liście dokonuje się następującej operacji:
1. Losowanie reguły A z części aktywnej listy.
2. Losowanie reguły B z części nieaktywnej listy.
3. Przeniesienie reguły B i wstawienie bezpośrednio przed regułę A.
Wynika to z następującej właściwości: wstawienie dodatkowej reguły do listy powoduje mniejsze
zmiany układu grup niż zamiana reguł.
4.6 Dyskusja na temat zalet grupowania opartego o listy de-
cyzyjne
Grupowanie oparte o listy decyzyjne korzysta z istotnych cech, które są przypisane regułom. Re-
guły decyzyjne w zakresie pozyskiwania wiedzy odgrywają bowiem istotną rolę. Najprostsza definicja
reguły to wyrażenie logiczne postaci :
Jeżeli spełniony warunek to określona decyzja (o przynależności do określonego po-
jęcia czy klasy),
w którym część warunkowa zawiera koniunkcje warunków elementarnych (inaczej selektor), nato-
miast część decyzyjna określa przynależność obiektu spełniającego warunek (objętego przez selektor)
do danej grupy.
4.6 Dyskusja na temat zalet grupowania opartego o listy decyzyjne 107
Reprezentacja wiedzy w postaci reguł uznawana jest za czytelniejszą dla człowieka niż inne
reprezentacje [28, 29, 97]. Podkreśla się jej modularność i przydatność do analizy przez eksperta.
Reguły decyzyjne są wykorzystywane w wielu pomyślnych zastosowaniach uczenia maszynowego i
odkrywania wiedzy [38, 27].
Proponowane przez autora grupowanie za pośrednictwem atrybutów wnosi szereg zmian jako-
ściowych w zakresie interpretacji i dalszej analizy wyników grupowania. W miejsce długiej tablicy
przypisań obiektów (o długości równej ilości obiektów) otrzymuje się stosunkowo krótką listę reguł.
Samo zmniejszenie zapisu wyniku ma pozytywny wpływ na możliwość dalszego przyswojenia wyniku
przez człowieka. Dodatkowo lista ta jest w określony sposób uporządkowana, co umożliwia nadanie
poszczególnym regułom pewnych cech ważności. Właściwość tą można znakomicie wykorzystać do
porównywania rezultatów grupowania niewiele się od siebie różniących zbiorów. Przykładem takie-
go zagadnienia jest porównywanie tego samego zjawiska ale w różnych momentach czasu. Zbiory
obiektów reprezentujące dane zjawisko podlegają zmianom i modyfikacjom w miarę upływu cza-
su. Do zagadnień eksploracji danych należy poznanie i wyjaśnienie istoty tych zmian. Propozycją
autora niniejszej pracy jest użycie grupowania opartego o listę decyzyjną do objaśniania zmian,
trendów w bazach danych. Wykorzystać do tego celu należy formę prezentacji wyniku grupowa-
nia, jakim jest lista decyzyjna. Kolejność ułożenia reguł w takiej liście jest bowiem bardzo czułym
wskaźnikiem istotności poszczególnych wartości atrybutów, co szczególnego wymiaru nabiera pod-
czas analizy zmian w bazie danych. Objaśnianie takich zmian poprzez przykłady wzorcowe, które są
wynikiem grupowania iteracyjnego, jest utrudnione, gdyż ukryta jest przyczyna i charakter zmian
(brak informacji o własnościach obiektów, które zaważyły na zmianie przykładu wzorcowego).
Metody oparte o listy decyzyjne mogą stanowić alternatywę w stosunku do pozostałych metod
grupowania. Aby w pełni wydobyć ich możliwości należy skonstruować odpowiednie algorytmy. Autor
zaproponował modyfikację trzech rodzajów algorytmów: pełny przegląd, proste wstawianie i gene-
tyczny. Algorytm pełnego przeglądu jest najbardziej dokładny ale zarazem najbardziej kosztowny, w
sensie złożoności obliczeniowej. Drugi algorytm wykorzystuje zaproponowaną strategię heurystycz-
ną. Strategia ta polega na poszukiwaniu położenia danej reguły w liście odrębnie dla każdej reguły.
Przeszukiwanie trwa do momentu, aż przestawienie żadnej z reguł nie powoduje polepszenia wyniku.
Stosowanie heurystyk okupione jest ryzykiem otrzymania rozwiązania tylko lokalnie optymalnego na-
tomiast znaczącym atutem jest znacznie lepsza złożoność od algorytmu pełnego przeglądu. Trzecia
propozycja algorytmu wykorzystuje ideę genomu, w który to przekształcono listę decyzyjną. Z uwa-
gi na nieco inne właściwości listy należało zmodyfikować operatory przeszukiwania. Zrezygnowano
z operatora krzyżowania, a operator mutacji realizuje operację zamiany miejscami dwóch losowo
wybranych elementów.
108 Metody oparte o listy decyzyjne
W dalszych rozdziałach zostaną przedstawione wyniki działania tych algorytmów i porównanie
z innymi metodami. W tym miejscu można wskazać dalsze kierunki prac. Będzie to poszukiwa-
nie nowych algorytmów oraz poszukiwanie i wykorzystywanie ukrytych właściwości pozwalających
zwiększyć wydajność i skuteczność metody.
Rozdział 5
Badanie algorytmów grupowania
na danych symbolicznych
Niniejszy rozdział ma na celu weryfikację założenia o przydatności niektórych algorytmów do
grupowania danych symbolicznych. Spośród metod przedstawionych w rozdziale 3 wybrano te poten-
cjalnie przydatne do grupowania danych symbolicznych, i po dokonaniu adaptacji do analizowanych
zbiorów danych, zaimplementowano i poddano je badaniu. Jednocześnie dokonano algorytmizacji i
implementacji metod przedstawionych w rozdziale 4. Zbadane zostały wybrane algorytmy, funkcje
kryterium oraz funkcje odległości. Oprócz celów szczegółowych, jakimi było wybranie najlepszych
wariantów metod, istotne również stało się poszukiwanie zagadnień, które z jednej strony byłyby
rozwiązywalne metodami grupowania, natomiast z drugiej nadawały się do adaptacji w obszarze
eksploracji danych symbolicznych.
Końcową weryfikację oraz wycenę wartości danej metody eksploracji, a metody grupowania w
szczególności, przynosi wykorzystanie, pozyskanej z jej pomocą, nowej Wiedzy w świecie realnym
(na podstawie naturalnie pozyskanych danych i rzeczywistą lub doświadczalną weryfikacją wyni-
ków). Wiedza jest trudno definiowalna, niesformalizowana, praktycznie niemierzalna. To jest główna
przyczyna, która powoduje, że nie istnieje jedna, uniwersalna funkcja oceny jakości grupowania. Zna-
ne i proponowane metody nadają się tylko do wybranych dziedzin, wymagając spełnienia szeregu
warunków.
W niniejszych badaniach przyjmuje się, że stosowana funkcja kryterium wystarczająco dobrze
przybliża miarę jakości dokonanego podziału. W toku badań poszukiwana jest metoda, która znaj-
dzie lepszy wynik funkcji kryterium, zakłada się bowiem, że w przypadku znalezienia lepszej funkcji
kryterium znaleziona metoda również będzie lepiej działać. Oprócz zdolności do uzyskiwania najlep-
szych wyników oceniana jest również stabilność działania, czyli zdolność do powtórnego uzyskiwania
109
110 Badanie algorytmów grupowania na danych symbolicznych
tak samo dobrych wyników niezależnie od ułożenia danych i kolejności przetwarzania. Kolejnym
badanym przez autora elementem jest wydajność (złożoność obliczeniowa i pamięciowa) metody. W
przypadku biznesowych baz danych rzeczywiste rozmiary mogą być dość znaczne.
5.1 Program wspomagający eksplorację danych
Założenia
Ważnym wynikiem niniejszej pracy jest zaprojektowany i zaimplementowany program kompute-
rowy, wspomagający eksplorację danych. Podstawowym zastosowaniem jest utworzenie stanowiska
pomiarowego. Program ma za zadanie badanie różnych technik i algorytmów grupowania w oparciu
o dane pochodzące z różnych środowisk. Zaimplementowano wszystkie metody grupowania zapro-
ponowane przez autora oraz inne, wybrane w celach porównawczych.
Wszystkie obliczenia i wyniki zaprezentowane w następnych rozdziałach zostały dokonane przy
pomocy tego programu.
Program został napisany w środowisku Delphi 6.0 i przeznaczony dla systemu operacyjnego Win-
dows. Wybór tego środowiska został podyktowany jego dużymi możliwościami w zakresie budowy
i obsługi baz danych, interfejsu użytkownika oraz możliwościami wykonywania i optymalizacji ob-
liczeń. Przeniesienie programu na inne platformy jest możliwe z wyjątkiem utrudnień w zakresie
implementacji konwerterów do niektórych źródeł danych.
Dane wejściowe
Format danych wejściowych ściśle zależy od źródła ich pochodzenia. Program przetwarzający wi-
nien posiadać odpowiedni konwerter obsługujący dany format. Do programy wbudowano możliwość
odczytu danych w formacie tekstowym, DBF i DAT (formaty bazodanowe). Pochodzenie danych
jest dwojakiego rodzaju. Pierwszą część stanowią zbiory z repozytorium UCI [14] powszechnie wy-
korzystywane do badań w obszarze eksploracji baz danych. Drugą część stanowią zbiory pozyskane
z rzeczywistych baz danych przedsiębiorstw. Dokonano w nich jedynie niewielkich przekształceń w
celu zapewnienia tajemnicy i prywatności właścicieli baz, dokonane zmiany są na tyle nieznaczące,
że pozostają bez wpływu na elementy i właściwości istotne z punktu widzenia badań.
W procesie przekształcania danych wejściowych na postać wewnętrzną dokonywana jest również
transformacja wiedzy. Przykładowo może to mieć formę dodawania kolejnych atrybutów i wartości w
oparciu o zewnętrzną bazę wiedzy. Taka dodatkowa wiedza o grupowanych obiektach i ich środowisku
może mieć formę słownika czy też tabeli wag, przypisywanych poszczególnym atrybutom.
5.2 Testowe zbiory danych 111
Obsługa programu
Obsługa programu sprowadza się do wybierania poszczególnych opcji. Wyboru dokonuje się na
trzech poziomach. Po pierwsze należy wybrać źródło danych - czyli zbiór poddany analizie. Dodatko-
wo na tym etapie można dokonać wyboru słownika, jako formy wprowadzenia dodatkowej informacji
i wiedzy. Po drugie należy wybrać stosowany algorytm. Po trzecie dokonuje się wyboru parametrów
szczegółowych takich jak przykładowo: ilość grup na którą dokonywany jest podział, stosowaną miarę
odległości czy funkcję oceny jakości grupowania.
Dane wyjściowe
Rezultatem działania algorytmów grupowania jest przede wszystkim otrzymany podział. Jed-
nocześnie, w przypadku gdy znana jest rzeczywista klasyfikacja obiektów (jak to ma miejsce w
przypadku zbiorów z repozytorium), dołączana jest statystyka błędów. Obliczane są również wskaź-
niki jakości otrzymanego podziału. Do porównywania wydajności poszczególnych metod mierzone są
czasy obliczeń, zliczane ilości iteracji bądź wywołań kluczowych, z punktu widzenia metody, funkcji
(np. ilość wywołań funkcji obliczania odległości).
Moduł prezentacji należało tak opracować, aby uzyskiwane wyniki przedstawiane były w formie
akceptowalnej dla człowieka, dużym utrudnieniem był fakt dużej rozbieżności w zakresie badanych
danych, w szczególności rozbieżności dotyczyły liczby elementów i liczby atrybutów.
Struktura programu
Program został napisany w technice obiektowej. Podstawowe obiekty wynikają z naturalnego
podziału funkcjonalnego programu: konwerter wczytujący dane, moduł obliczeniowy i moduł pre-
zentacji. W obiektach konwertera i prezentacji w szerokim zakresie wykorzystywane są biblioteki
funkcji firm Microsoft, Borland, Madar [90]. Główny i kluczowy jest moduł obliczeniowy, zbudowa-
ny w formie pojedynczego obiektu. Metodami tego obiektu są implementacje poszczególnych algo-
rytmów grupowania, wraz z funkcjami towarzyszącymi, implementacje różnych miar jakości, funk-
cji obliczania wskaźników jakości grupowania. Wśród atrybutów obiektu można wyróżnić tablicę
przechowującą reprezentację wczytanego zbioru danych, której wiersze odzwierciedlają poszczególne
obiekty i składają się z pól binarnych bądź liczbowych, co wystarcza do reprezentacji atrybutów
symbolicznych.
5.2 Testowe zbiory danych
Dane pozyskiwane do badań przechowywane są w zbiorach tekstowych, w postaci ciągu znaków,
w którym wyróżnia się linie reprezentujące posczególne obiekty oraz słowa kodowe reprezentujące
112 Badanie algorytmów grupowania na danych symbolicznych
wartości argumentów. Drugą formą zapisu są relacyjne bazy danych, gdyż ta forma najczęsciej
występuje w obszarze baz danych. Nie stosowano innych formatów, gdyż w zakresie niniejszych
badań forma zapisu danych ma znaczenie drugorzędne, najważniejsza jest znajomość interpretacji
poszczególnych symboli i zdolność przekształcenia ich na formę akceptowalną przez poszczególne
metody przetwarzania (na podstawie rodziału 2).
Do badania algorytmów grupowania wykorzystano dwa zbiory danych. Pierwszy z nich, to stan-
dardowo wykorzystywana do badań baza głosowań w kongresie. Drugi to mała, składająca się z kilku
obiektów baza, zaprojektowana przez autora, mająca na celu zbadanie na prostym przykładzie sku-
teczności niektórych algorytmów. Wartości atrybutów w tej bazie mają celowo nietypowy rozkład, co
skutkuje błędnymi rozwiązaniami uzyskiwanymi podczas grupowania za pomocą niektórych metod.
Baza danych „głosowanie w kongresie”
Baza danych „głosowanie w kongresie” (ang. Congresional Votes) zawiera rezultaty głosowań
pozyskane z [14]. Jest to zapis głosowań w Kongresie Stanów Zjednoczonych w roku 1984. Każdy
rekord koresponduje z jednym senatorem i zawiera jego 16 głosowań w poszczególnych sprawach
(wydatki na edukację, wojsko itd.). Atrybuty mają wartości TAK lub NIE, a część wartości jest
nieznana. Zbiór zawiera 168 Republikanów i 267 Demokratów, zgodnie z ówczesnym stanem Kon-
gresu. Dodatkowego wyjaśnienia wymagają brakujące wartości, których interpretacja ściśle zależy
od analizowanej dziedziny. Stosuje się następujące interpretacje dla wartości brakujących:
1. traktowanie danej nieznanej jako kolejnej dopuszczalnej wartości dla danego atrybutu (co było-
by zgodne z powszechną interpretacją „nieobecności na głosowaniu” jako wyrażenie sprzeciwu
wobec danej sprawy),
2. przyjęcie w takim przypadku, że głosujący jednocześnie oddał głos TAK i NIE, co skutkuje
upodobnieniem przykładu do wszystkich pozostałych.
W niniejszym badaniu przyjęto drugie rozwiązanie, którego podstawową zaletą jest nie zwięk-
szanie liczby analizowanych wartości atrybutów.
Mała baza danych
W tabeli 5.1 przedstawiono sztucznie wygenerowaną przez autora bazę, którą poddano testom.
Baza zawiera 6 obiektów, z których każdy opisany jest sześcioma atrybutami binarnymi (przyjmują-
cych wartości 0− brak i 1− obecny). Celem grupowania jest znalezienie najlepszego podziału zbioruobiektów na dwie grupy. Zbiór został sztucznie spreparowany, posiada on specyficzny rozkład warto-
ści atrybutów. W trakcie analizy podanego przykładu można zauważyć, że atrybut a występuje (ma
wartość 1) w 3 obiektach, a atrybut b w pozostałych trzech. Są to najliczniej występujące atrybuty,
5.3 Badanie wrażliwości algorytmów 113
zupełnie rozdzielone – więc w prosty sposób można na ich podstawie dokonać podziału na dwie
grupy x1, x2, x3, x4, x5, x6. Dokładna analiza wskazuje, że pozostałe atrybuty też są ułożonewg określonego porządku. Dokonanie następującego podziału x1, x2, x4, x3, x5, x6 powodujeże żaden z pozostałych atrybutów (atrybuty c, d, e, f) nie występuje w obu grupach jednocześnie.
Tabela 5.1. Testowa mała baza obiektów.
ob opis a b c d e f g t u v w zx1 acdf 1 0 1 1 0 1 0 0 0 0 0 0x2 adec 1 0 1 1 1 0 0 0 0 0 0 0x3 awtv 1 0 0 0 0 0 1 0 0 1 1 0x4 befg 0 1 0 0 1 1 1 0 0 0 0 0x5 btwz 0 1 0 0 0 0 0 1 0 0 1 1x6 bvzu 0 1 0 0 0 0 0 0 1 1 0 1
Z takiego rozkładu wartości atrybutów wynika następujący wniosek: przyjęcie, że najliczniej
występujące wartości atrybutów decydują o dokonaniu podziału na grupy powoduje, że otrzymany
podział nie respektuje optymalnego rozkładu względem pozostałych wartości atrybutów.
5.3 Badanie wrażliwości algorytmów
5.3.1 Cel i zakres badań
Celem przeprowadzonego badania jest weryfikacja wrażliwości poszczególnych algorytmów na sto-
sowaną funkcję odległości do grupowania danych postaci symbolicznej. Badań dokonano dla dwóch
różnych algorytmów grupowania:
— algorytmu grupowania rozmytego adaptowanego do przestrzeni argumentów symbolicznych
(oznaczanego jako FCMdd),
— algorytmu aglomeracyjnego z warunkiem minimalizacji odległości pomiędzy najodleglejszymi
obiektami.
Algorytm aglomeracyjny, tak jak wszystkie metody hierarchiczne, dobrze nadaje się do grupo-
wania danych symbolicznych, jedynie stosowana funkcja porównująca obiekty i grupy winna być do-
stosowana do danej dziedziny. Dokonane modyfikacje przedstawiono poniżej w punkcie „Adaptacja
algorytmu aglomeracyjnego”. Natomiast w przypadku metod iteracyjnych (gradientowych) potrzeb-
ne jest dokonanie kilku modyfikacji. Po pierwsze należy zrezygnować z obliczania obiektu „średniego”
na rzecz mediany. Po drugie nie jest możliwe korzystanie z metod gradientowych podczas poszukiwa-
nia elementów wzorcowych. Do niniejszego badania użyto algorytm grupowania rozmytego FCMdd,
a dokonane adaptacje przedstawiono w punkcie „Adaptacja algorytmu iteracyjnego”.
114 Badanie algorytmów grupowania na danych symbolicznych
Istnieje wiele funkcji mogących pełnić rolę miary odległości w algorytmach grupowania. Część z
nich opisano w rozdziale 2. Do niniejszego badania użyto czterech – arbitralnie wybranych funkcji
spośród wielu prezentowanych w literaturze. Badania przeprowadzono dla następujących funkcji
odległości:
A Wskaźnik Jaccarda (wzór (2.20)).
B Miara kosinusowa (w tabeli 2.2).
C KL dywergencja (w tabeli 2.2).
D Euklidesowa miara odległości L2 (wzór(2.9)).
E Odległość Manhattan L1 (wzór (2.14)).
Miara euklidesowa jest funkcją odległości pomiędzy obiektami w zwykłej wielowymiarowej prze-
strzeni. Odległość Manhattan często stosowana jest do porównywania obiektów z atrybutami zapisa-
nymi w formacie binarnym. Miara kosinusowa jest funkcją stosowaną do porównywania dokumentów
tekstowych [114]. Wskaźnik Jaccarda stosowany jest do porównywania zbiorów. Wszystkie wymie-
nione funkcje można zastosować jako funkcję odległości w algorytmach grupowania, różnią się one
przede wszystkim charakterystyką. Może się zdarzyć, że dla danych dwóch par jedna funkcja wskaże
pierwszą jako bliższą sobie, inna że to obiekty w drugiej parze są umieszczone bliżej siebie. Wyboru
funkcji dokonano tak, aby maksymalnie się od siebie różniły charakterystyką i właściwościami.
Funkcja kryterium
W niniejszym badaniu rolę funkcji kryterium pełni funkcja przyrost informacji opisana wzorem
(3.54).
Adaptacja bazy danych
Poszczególne funkcje obliczające odległość (lub podobieństwo) wymagają danych o odpowied-
nich właściwościach. Dla baz danych symbolicznych trudno jest o naturalne funkcje porównywania
obiektów, w większości stosowane miary opierają się na przyjęciu pewnych uproszczeń. Jednocze-
śnie należy dokonać przekształcenia danych. Najczęściej polegają one na umownym przekształceniu
występującej skali nominalnej na skalę mocną. Przykładowy schemat kodowania zaprezentowano w
tabeli 5.2. Dla skali nominalnej jedyną funkcją porównującą wartości atrybutów jest relacja identycz-
ności. Jest to wystarczające dla funkcji opartych o wskaźnik Jaccarda, czy wskaźnik kosinusowy. W
przypadku miar opartych o metrykę Euklidesową wymagana jest zdefiniowanie relacji posiadanych
przez skale mocne opisane w podrozdziale (2.2).
5.3 Badanie wrażliwości algorytmów 115
Tabela 5.2. Przykład tabeli kodowania danych symbolicznych.
wartość symboliczna skala nominalna skala mocnagłosowanie TAK a 1głosowanie NIE b -1
głosowanie nieokreślone c 0
Adaptacji również wymaga sama forma reprezantacji bazy danych. W zależności od technik
implementacji algorytmu wymagane są różne formaty danych wejściowych. W przypadku danych
symbolicznych jest to o tyle istotne, że w niektórych przypadkach symbole posiadają wiele znaczeń,
które mogą zostać utracone w procesie konwersji. Proces przygotowania danych w znacznym wpływa
na jakość uzyskiwanych wyników.
Adaptacja algorytmu grupowania rozmytego
W badaniu wykorzystano i zaimplementowano algorytm grupowania rozmytego FCMdd (3.3.3).
Kluczowe dla tego typu algorytmów jest dobranie funkcji odległości odwzorowujących podobieństwo
obiektów. W trakcie badań okazało się, że algorytm może być niestabilny. Podstawowe modyfikacje
związane z adaptacją algorytmu iteracyjnego do grupowania danych symbolicznych są zmiany w czę-
ści poszukiwania elementów wzorcowych. Po pierwsze nie można zezwolić na poszukiwanie elementu
średniego, gdyż dla nie zawsze takowy istnieje. Operacja uśredniania nie jest możliwa do zdefiniowa-
nia dla danych określanych na skalach słabych, a dane o takim charakterze występują w zbiorach.
Dlatego też w miejsce średniej wybiera się medianę albo testu dokonuje się dla każdego z wystę-
pujących obiektów. Po drugie niemożliwe jest skorzystanie z metod gradientowych do poszukiwania
pubktu opimum, gdyż nie jest spełniony warunek ciągłości dla danych.
Warunek końca iteracji jest stosunkowo prosto dobrać. Należy sprawdzać, czy w danym cyklu
nie zmieniły się elementy wzorcowe, co spowodowałoby zmianę przypisania obiektów do grup. Jeżeli
zmiana nie nastąpiła, to należy zakończyć obliczenia, gdyż w następnej iteracji i każdej następnej
otrzymamy te same wyniki. Zdarza się bowiem, że dla danego układu danych algorytm jest niesta-
bilny i cyklicznie podaje kilka podobnych do siebie rozwiązań. W takim przypadku przyjęty warunek
zakończenia jest nieskuteczny i należy go wspomóc wspomnianym ograniczeniem. W tym celu do
głównej pętli obliczającej wprowadzić górne ograniczenie ilości iteracji.
Adaptacja algorytmu aglomeracyjnego
Algorytm aglomeracyjny do swego działania potrzebuje funkcji odwzorującej odległość pomiędzy
grupami. Jeżeli grupy są jednoobiektowe to jest to wprost funkcja odległości pomiędzy obiektami. W
przypadku większych grup stosuje się wybrane techniki (2.2.4). W niniejszym badaniu wykorzystano
regułę najdalszego sąsiada, na podstawie podrozdziału 2.2.4.
116 Badanie algorytmów grupowania na danych symbolicznych
5.3.2 Otrzymane rezultaty
Badaniu poddano wymienione dwa algorytmy, stosując sześć funkcji odległości. Badanie prze-
prowadzono na dwóch zbiorach danych, „mała baza” i „baza głosowań w kongresie” opisanych w
podrozdziale 5.2. Badanie polegało na uzyskaniu podziału zadanych zbiorów danych dla każdego
wariantu wynikającego ze stosowanych algorytmów, funkcji odległości i zbioru danych. W trakcie
badania mierzono następujące rezultaty:
• trafność – liczona jako stosunek elementów prawidłowo przypisanych do wszystkich, zgodnieze wzorem (3.8.1),
• przyrost informacji – funkcja mierząca jakość podziału opisana wzorem (3.54).
• czas obliczeń – czas, jaki upływa od momentu startu do uzyskania podziału.
W tabelach (5.3) do (5.12) przedstawiono uzyskiwane podziały dla poszczególnych miar odległo-
ści.
Tabela 5.3. Grupowanie FCMdd dla różnych funkcji odległości dla małej bazy.
funkcja odległości przyrost informacji czas obliczeńA jaccadr 1,2455 00:00:22B cosine 1,2455 00:00:22C KL dywergencja 1,2455 00:00:27D L1 manhattan 1,2455 00:00:23E L2 euklidesowa 0,961 00:00:22
Tabela 5.4. Podział dla grupowania FCMdd dla różnych funkcji odległosci dla małej bazy.
metodaobiekt A B C D Ea c d f 1 1 1 1 1a d e c 2 1 2 1 1a w t v 1 2 1 2 1b e f g 1 1 1 1 1b t z w 1 1 1 1 1b v z u 1 1 1 1 2
Zbadano dwa algorytmy grupowania, każdy dla pięciu funkcji porównywania (odległości). Pierw-
szy zbiór wyników, przedstawiony w tabeli 5.3, dotyczy badań z wykorzystaniem małej bazy opisanej
w podrozdziale 5.2. Jak już powiedziano jest to niewielki zbiór obiektów o sztucznie przypisanych
wartościach atrybutów. Wyniki uzyskane przy udziale drugiego algorytmu przedstawiono w tabeli
5.6. Wymienione tabele przedstawiają macierze podziału uzyskane poszczególnymi algorytmami dla
badanych funkcji odległości.
5.3 Badanie wrażliwości algorytmów 117
Tabela 5.5. Trafność dla grupowania FCMdd dla różnych funkcji odległości dla małej bazy.
algorytm QQ QQ PP PP trafnośćTAK NIE TAN NIE %
A jaccadr 3 0 1 3 66,67B cosine 3 0 1 3 66,67C KL dywergencja 2 1 0 2 33,33D L1 manhattan 3 0 1 3 66,67E L2 euklidesowa 3 0 1 3 66,67
Tabela 5.6. Podział dla grupowania aglomeracyjnego mała baza.
metodaobiekt A B C D Ea c d f 1 2 1 1 1a d e c 1 2 1 1 1a w t v 1 1 1 1 1b e f g 1 1 1 1 1b t z w 1 2 1 1 1b v z u 2 2 2 2 2
Tabela 5.7. Trafność dla grupowania aglomeracyjnego dla małej bazy.
funkcja odległości QQ QQ PP PP trafnośćTAK NIE TAN NIE %
A jaccard 2 1 1 2 50,00B cosine 3 0 1 3 66,67C KL dywergencja 3 0 1 3 66,67D L1 manhattan 3 0 1 3 66,67E L2 euklidesowa 3 0 1 3 66,67
118 Badanie algorytmów grupowania na danych symbolicznych
Tabela 5.8. Jakość grupowania aglomeracyjnego dla małej bazy.
funkcja odległości przyrost informacji czas obliczeńA jaccard 1,1056 00:00:22B cosine 0,961 00:00:39C KL dywergencja 0,961 00:00:49D L1 manhattan 0,961 00:00:39E L2 euklidesowa 0,961 00:00:22
W tabelach 5.5 oraz 5.7 zamieszczono uzyskane liczebności uzyskanych podzbiorów w podza-
le ze względu na zgodność z podziałem referencyjnym. Dla umownie nazwanych grup QQ i PP
wyznaczono liczby elementów zgodnych i błędnych oraz wyznaczono wartości trafności.
Należy zauważyć, że miara Jaccarda dała najlepsze wyniki i to zarówno dla algorytmu FCMdd jak
i dla grupowania aglomeracyjnego. Powyższy przykład obrazuje, że w pewnych przypadkach dobór
funkcji porównywania jest bardziej istotny od samej metody grupowania. Potwierdza to wnioski
innych badaczy, którzy poszukując optymalne funkcje porównywania dla różnych dziedzin danych
proponowali różne miary [115, 61, 124].
Kolejną serię badań przeprowadzono ze zbiorem danych baza głosowań opisanego w podrozdiale
5.2. Dla tych samych algorytmów: FCMdd i aglomeracyjnego, oraz tych samych miar odległości po-
wtórzono badania. Celem jest porównanie zachowania algorytmu dla zmienionego zbioru danych przy
tych samych funkcjach porównywania obiektów. Z uwagi na obszerność materiału nie zamieszczono
macierz przypisań, trafność przedstawiono odpowiednio w tablicach 5.10 oraz 5.11.
Tabela 5.9. Grupowanie FCMdd dla różnych funkcji odległości dla bazy głosowań
funkcja odległości przyrost informacji czas obliczeńA jaccadr 1,0507 09:20:00B cosine 0,801 15:06:40C KL dywergencja 0,624 15:06:40D L1 manhattan 0,740 12:26:40E L2 euklidesowa 0,660 07:33:20
Badanie algorytmu algomeracyjnego potwierdziło dużą wrażliwość uzyskiwanych wyników na za-
stosowaną miarę podobieństwa. Wyniki uzyskiwanej trafności, przedstawione w tabeli 5.12 ukazują
dość dużą zbieżność w stosunku do wyników przedstawionych w tablicy 5.10, w szczególności jeże-
li zostaną porównane względne zmiany pomiędzy wynikami dla poszczególnych miar podobieństwa.
Zgodnie z przypuszczeniami, najsłabsze wyniki uzyskała miara euklidesowa. Odległość geometryczna
stanowi dość słabe przybliżenie funkcji podobieństwa badanych obiektów z bazy głosowań. Zgodnie
z charakteryką przedstawioną w podrozdziale 2.2.4, na wynik porównania obiektów miarą euklide-
sową bardziej wpływają atrybuty różne. A zgodnie z przyjętą klasyfikacją w danym zastosowaniu,
5.3 Badanie wrażliwości algorytmów 119
Tabela 5.10. Trafność dla grupowania FCMdd dla różnych funkcji odległości dla bazy głosowań
funkcja odległości demokraci demokraci republikanie republikanie trafnośćTAK NIE TAN NIE %
A jaccadr 242 25 46 222 86,21B cosine 215 52 67 197 71,61C KL dywergencja 207 60 61 207 61,61D L1 manhattan 141 126 74 148 53,57E L2 euklidesowa 266 1 100 166 41,15
bardziej „liczą” się atrybuty wspólne – czyli jednakowe decyzje w głosowaniach. Miara euklidesowan
natomiast dobrze przybliża obiekty opisywane atrybutami ilościowymi, takimi jak wymiary płatków
w zbiorze IRYS [56].
Tabela 5.11. Dla grupowania aglomeracyjnego dla bazy głosowań
funkcja odległości przyrost informacji czas obliczeńA jaccard 1,120 09:46:40B cosine 0,962 08:26:39C KL dywergencja 0,962 12:26:40D L1 manhattan 0,730 12:13:20E L2 euklidesowa 0,690 11:20:00
Tabela 5.12. Trafność dla dla grupowania aglomeracyjnego dla bazy głosowań
funkcja odległości demokraci demokraci republikanie republikanie trafnośćTAK NIE TAN NIE %
A jaccard 257 10 1 267 81,49B cosine 240 27 64 203 75,61C KL dywergencja 206 61 60 207 61,61D L1 manhattan 140 127 75 147 49,61E L2 euklidesowa 147 120 75 147 51,03
120 Badanie algorytmów grupowania na danych symbolicznych
Wnioski
Dokonana analiza dowodzi dużej wrażliwości metod grupowania na rodzaj danych źródłowych.
W poszczególnych badaniach, w zależności od przetwarzanego zbioru danych różne funkcje okazy-
wały się być optymalne. Np.: wskaźnik Jaccarda dla „bazy głosowań” dał najgorsze wyniki, gdy
dla „małej bazy” należał do najlepszych. Krytyczne dla prawidłowych wyników jest skonstruowa-
nie właściwych funkcji odległości (podobieństwa), na których opierają się przedstawione metody.
Kolejnym problemem jest skłonność niektórych algorytmów (w szczególności algorytmów podziało-
wych) do znajdowania rozwiązań lokalnych. Z uwagi na brak ustaleń co do wymagań i ograniczeń
dotyczących charakterystyki danych symbolicznych, to należy się spodziewać źle uwarunkowanych
zadań, co może skutkować otrzymywaniem znacząco błędnych wyników. Podana właściwość znaczą-
co utrudnia konstruowanie odpowiednich narzędzi grupowania. Z uwagi na brak wystarczającego
aparatu formalnego do opisu właściwości każdego rodzaju danych symbolicznych, dla wielu zastoso-
wań wymagane jest doświadczalne dobranie odpowiedniech funkcji odwzorowujących podobieństwo
pomiędzy obiekami.
5.4 Badanie algorytmów nie wymagających funkcji odległo-
ści
Istnieje grupa algorytmów nie wymagających istnienia funkcji odległości pomiędzy grupowanymi
obiektami, wykorzystuje się w nich mianowicie funkcję oceny jakości grupowania, której wartość jest
testowana w toku kolejnych etapów przeszukiwania przestrzeni rozwiązań. Najczęściej stosowane
są miary oparte o teorię informacji jak przykładowo przyrost informacji. Ponieważ funkcja oceny
jakości grupowania całościowo ujmuje zagadnienie podziału to jest bardziej odporna na powstanie
dużego błędu systematycznego występującego w błędnie skonstruowanych funkcjach odległości.
Celem przeprowadzonego badania jest porównanie takich właśnie algorytmów grupowania nie
wymagających stosowania funkcji odległości w zastosowaniu do danych symbolicznych. Wśród po-
równywanych algorytmów umieszczono algorytmy zaproponowane przez autora w rozdziale 4 oparte
o listy decyzyjne. We wszystkich badanych algorytmach użyto tej samej funkcji jakości, a celem było
wybranie algorytmu znajdującego najlepsze rozwiązania z punktu widzenia wymienionej funkcji.
5.4.1 Cel i zakres badań
Celem przeprowadzonego badania jest weryfikacja przydatności do grupowania danych symbo-
licznych algorytmów nie wymagających stosowania funkcji odległości.
5.4 Badanie algorytmów nie wymagających funkcji odległości 121
Badane algorytmy
Do badania użyto baz danych opisanych w podrozdziale 5.2. W przypadku braku potrzeby defi-
niowania funkcji odległości przestaje być również potrzebne przekształcanie danych symbolicznych
na atrybuty określone na skalach mocnych.
Badane algorytmy:
A algorytm hierarchiczny podziałowy,
B algorytm grupowania z zastosowaniem pełnego przeglądu,
C algorytm pełnego przeglądu oparty o listy decyzyjne,
D algorytm przeszukiwania heurystycznego oparty o listy decyzyjne.
E algorytm genetyczny prosty,
F algorytm genetyczny oparty o listy decyzyjne.
Algorytmy hierarchiczne z natury swej dobrze nadają się do grupowania danych symbolicznych.
Algorytm deglomeracyjny, opisany w podrozdziale 3.5, polega na przeszukiwaniu kolejnych podzia-
łów i wyborze tych, które dają najlepsze wartości wskaźnika jakości. Podziału dokonuje się poprzez
ustalenie kryterium podziału, którym jest przyjmowanie określonych wartości przez określone atry-
buty. Dla tak otrzymanych podzbiorów, jako rezultat podziału, dokonuje się kolejnego wyboru kry-
terium, odrębnie dla każdego podzbioru. W przyjętym rozwiązaniu zastosowano zasadę tworzenia
kryterium na podstawie wartości pojedynczego atrybutu. Ponieważ dokonuje się podziału na dwie
grupy wystarcza znalezienie jednego kryterium. Algorytm grupowania z zastosowaniem pełnego prze-
glądu, w niniejszym badaniu wyznacza poziom referencyjny dla pozostałych algorytmów. Algorytm
ten umożliwia znalezienie najlepszego istniejącego w danych warunkach rozwiązania. Pozostałe al-
gorytmy co najwyżej osiągają taki sam rezultat. Algorytmy genetyczne posiadają znany mechanizm
poszukiwania rozwiązań. W niniejszym badaniu dokonano analizy dwóch wariantów zastosowania al-
gorytmu genetycznego, które odróżniały formuły reprezentacji zadania przez chromosom. Algorytm
genetyczny prosty przedstawiono w podrozdziale 5.4.1, a oparty o listy decyzyjne, będący propozy-
cją autora w podrozdziale 4.5. Algorytm przeszukiwania heurystycznego opary o listy decyzyjne jest
również propozycją autora zaprezentowaną w podrozdziale 4.4.
Adaptacja algorytmu grupowania genetycznego prostego
Najbardziej trywialna implementacja algorytmu genetycznego do grupowania jest następująca:
chromosom odpowiadający rozwiązaniu składa się z genów, które reprezentują poszczególne obiekty.
Wartość zapisana w każdym z genów odpowiada przypisaniu danego obiektu do odpowiedniej grupy.
122 Badanie algorytmów grupowania na danych symbolicznych
Długość chromosomu równa jest więc ilości grupowanych obiektów, a ilość wartości przyjmowanych
przez geny równa docelowej ilości grup. To również tłumaczy przyjęte określenie „grupowanie gene-
tyczne poste”, gdyż przyjęto bezpośrednie przekształcenie zapisu grupowania na chromosom. Rolę
funkcji przystosowania pełni funkcja określająca jakość dokonanego podziału na grupy. Populację
początkową wybierano w sposób losowy. Stosowane zostały operatory mutacji i inwersji. Kryterium
zakończenia działania algorytmu genetycznego było następujące: jeżeli przez dłuższy czas nie docho-
dziło do odkrycia lepszego rozwiązania to zakończ działanie. Kryterium takie wynikało z przyjętego
założenia, że głównym zadaniem jest znalezienie optymalnego rozwiązania, bez względu na potrzeb-
ny do tego czas (w akceptowalnym, liczonych w godzinach, limicie czasowym). Z uwagi na brak
realnych limitów czasowych i brak potrzeby optymalizacji czasowej działania algorytmu badanie dla
różnych wartości parametrów (rozmiar populacji, prawdopodobieństwo zastosowania konkretnych
operatorów genetycznych) jest bezprzedmiotowe.
Adaptacja algorytmów grupowania opartych o listy decyzyjne
Algorytmy oparte o listy decyzyjne zostały zaprezentowane w rozdziale 4. Podczas badania za-
chowano te same warunki, jakie użyto do badania algorytmów deglomeracyjnego i genetycznego
prostego. W szczególności chodzi o zastosowaną funkcję kryterium oraz losowanie układu początko-
wego
Implementacja algorytmu wykorzystującego przeszukiwanie heurystyczne
Poniżej przedstawiono fragment implementacji algorytmu grupowania, obejmujący główną pętlę
przeszukiwania.
Algorytm 5.11. Grupowanie wykorzystujące przeszukiwanie heurystyczne
funct szukajPoziomS(pz : integer) : integer;
var
pzz,
j, k,
i, io : integer;
begin
pzz := poz;
maxJ := poz;
for i := maxJ to pz do
5.4 Badanie algorytmów nie wymagających funkcji odległości 123
tabS[i+ 1] := tabS[i];
end
inc(maxJ);
inc(poz);
e2 := przyrostInf(nrb, kk);
yo := 0;
for j := 1 to slowaCount do
for k := 1 to kk do
tabS[pz] := (kshl16) + j;
if ustawUklad(nrb) = 0 then continue fi
e1 := przyrostInf(nrb, kk);
if e1 < e2 then
e2 := e1;
yo := tabS[pz];
fi
end
end
if yo <> 0 then
tabS[pz] := yo;
ustawUklad(nrb);
result := 1;
else
poz := pzz;
maxJ := pzz;
for i := pz to pzz do
tabS[i] := tabS[i+ 1];
end
ustawUklad(nrb);
e1 := przyrostInf(nrb, kk);
if e2 = e1 then
result := −2else
result := −1;fi
fi
124 Badanie algorytmów grupowania na danych symbolicznych
end
begin
var j,
repeat
j := 0;
repeat
inc(j);
until szukajPoziomS(j) < 0;
jeżeli znaleziono lepsze rozwiązanie potwórz pętlę
until j = 1;
end.
Funkcja szukajPoziomS jest odpowiedzialna za przeszukiwanie przestrzeni rozwiązań. Polega
ono na sekwencyjnym dopisywaniu reguł do „głowy” listy. Jeżeli po takim dostawieniu nowej reguły
otrzymana lista daje lepszy wynik, to staje się ona podstawą do dalszego przeszukiwania.
Algorytm pełny przegląd
Procedura pełnego przeglądu polega na sprawdzeniu wszystkich permutacji listy decyzyjnej, skła-
dającej się ze wszystkich reguł. W tablicach 5.16 i 5.19 przedstawiono otrzymaną listę reguł dla małej
bazy.
Algorytm 5.12. Grupowanie dokonujące pełnego przeglądu
proc pelnyprzegladA;
var
wj,
l, j, i : integer;
a, b,
c1, c2 : integer;
ee : array[0..22]ofdouble;
begin
result := false;
ee[1] := przyrostInf(nrw, kk);
ee[2] := ee[1];
5.4 Badanie algorytmów nie wymagających funkcji odległości 125
for i := 1 to nn do
wj := wyniki[i, nrw];
for j := 1 to kk do
if j = wj then continue fi
wyniki[i, nrw] := j;
ee[3] := przyrostInf(nrw, kk);
if ee[3] < ee[1] then
wj := wyniki[i, nrw];
ee[1] := ee[3];
fi
end
wyniki[i, nrw] := wj;
end
if ee[1] = ee[2] then result := true fi
end
126 Badanie algorytmów grupowania na danych symbolicznych
5.4.2 Otrzymane rezultaty
Badaniu poddano wymienione dwa algorytmy, stosując sześć funkcji odległości. Badanie prze-
prowadzono na dwóch zbiorach danych, „mała baza” i „baza głosowań w kongresie” opisanych w
podrozdziale 5.2. Badanie polegało na uzyskaniu podziału zadanych zbiorów danych dla każdego
wariantu wynikającego ze stosowanych algorytmów, funkcji odległości i zbioru danych. W trakcie
badania mierzono następujące rezultaty:
• trafność – liczona jako stosunek elementów prawidłowo przypisanych do wszystkich, zgodnieze wzorem (3.8.1),
• przyrost informacji – funkcja mierząca jakość podziału opisana wzorem (3.54).
• czas obliczeń – czas, jaki upływa od momentu startu do uzyskania podziału.
W tabelach (5.16) do (5.23) przedstawiono uzyskiwane macierze podziału dla poszczególnych
miar odległości. Następnie przedstawiono otrzymane listy reguł dla obliczeń metodą opartą o listy
decyzyjne, są to tablice 5.16, 5.17, 5.18. Reguły przedstawione są w postaci par atrybut, grupa. Dlamałej bazy atrybut reprezentuje pojedyncza litera, natomiast w przypadku bazy głosowań atrybut
jest zakodowany: obejmuje numer głosowania (liczbowo) oraz oddany głos (T lub N), symbol S
dodany jest ze względów technicznych i nie ma znaczenia w procesie interpretacji wyników.
Tabela 5.13: Przyrost informacji dla różnych algorytmów grupowania bez użycia funkcji odległościdla małej bazy
algorytm przyrost informacji czas obliczeńgenetyczny prosty 0,3312 04:26:40deglomeracyjny 0,4815 16:40:00proste szukanie heurystyczne 0,3312 00:00:00Decision List pełny przegląd 0,3312 20:26:40Decision List heurystyczne 0,3312 13:06:40Decision List genetyczny 0,3312 18:00:00
Wyniki badań nad „małą bazą” służą przede wszystkim potwierdzeniu słuszności założenia, że
wybrane algorytmy grupowania bez użycia funkcji odległości nadają się grupowania danych symbo-
licznych. Potwierdzono prawidłowość konstrukcji algorytmów oraz prawidłowość ich implementacji.
Przedstawione algorytmy są na początkowym etapie badań i nie przeprowadzono bardziej zaawan-
sowanych technik związanych z analizą algorytmów, takich jak dowód o poprawności algorytmu,
obliczenie złożoności itd. Badania w tym zakresie autor na tym etapie przeprowadził empirycznie,
poprzez sprawdzenie na wybranych przez siebie zbiorach danych.
W porównaniu do algorytmów wykorzystujących funkcję odległości widać wyraźnie znacznie lep-
sze wyniki. Prawie wszytkie metody (oprócz metody deglomeracyjnej) odgadły prawidłowy podział
5.4 Badanie algorytmów nie wymagających funkcji odległości 127
Tabela 5.14. Podział dla algorytmów grupowania bez użycia funkcji odległości dla małej bazy
atrybuty ilość przypisańobiektów dla algorytmu
A B C D E Fa c d f 2 2 2 2 2 1a d e c 2 2 2 2 2 1a w t v 1 1 1 1 1 2b e f g 2 1 2 2 2 1b t z w 1 1 1 1 1 2b v z u 1 1 1 1 1 2
Tabela 5.15: Trafność uzyskanego grupowania dla różnych algorytmów grupowania bez użycia funkcjiodległości dla małej bazy
algorytm QQ QQ PP PP trafnośćTAK NIE TAN NIE %
genetyczny 3 0 3 3 100,00deglomeracyjny 2 1 3 2 83,33proste szukanie heurystyczne 3 0 3 3 100,00Decision List pełny przegląd 3 0 3 3 100,00Decision List heurystyczne 3 0 3 3 100,00Decision List genetyczny 3 0 3 3 100,00
(patrz tabele 5.14 i 5.15). Jest to argument za tym, że dla niektórych baz danych, dla których trud-
no jest wskzać odpowiednią funkcję podobieństwa (odległości) lepiej do grupowania jest zastosowań
metodę opartą o wskaźnik porządku w danej strukturze (w tym przypadku jest nim wskaźnik przy-
rostu informacji). Sposób obliczenia i przedstawienia trafności jest analogiczny jak dla poprzedniego
badania.
128 Badanie algorytmów grupowania na danych symbolicznych
Tabela 5.16. Lista reguł decyzyjnych pełny przegląd dla małej bazy
jeżeli atrybut to grupaV 1C 2W 1B 2
Tabela 5.17. Lista reguł decyzyjnych algorytm heurystyczny dla małej bazy
jeżeli atrybut to grupaC 2F 2C 1F 1T 1Z 1
Tabela 5.18. Lista reguł decyzyjnych algorytm genetyczny dla małej bazy
jeżeli atrybut to grupaZ 1C 2D 2A 1A 1A 1A 1A 1A 1V 1F 2
Tabela 5.19. Lista reguł decyzyjnych algorytm pełny przegląd dla bazy głosowań
jeżeli atrybut to grupaS8N 1S5N 2S4T 1S14N 2S7T 2S10N 2S2N 2S1N 1S2T 1
5.4 Badanie algorytmów nie wymagających funkcji odległości 129
Tabela 5.20. Lista reguł decyzyjnych algorytm heurystyczny dla bazy głosowań
jeżeli atrybut to grupaS8N 1S5N 2S4T 1S14N 2S7T 2S10N 2S2N 2S1N 1S2T 1
Tabela 5.21. lista reguł decyzyjnych algorytm genetyczny dla bazy głosowań
jeżeli atrybut to grupaS8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S8N 1S5N 2S14N 2S3N 1S6T 1S6T 2S7T 2
130 Badanie algorytmów grupowania na danych symbolicznych
Tabela 5.22. Przyrost informacji dla algorytmów bez użycia funkcji odległości dla bazy głosowań
algorytm przyrost informacji czas obliczeńgenetyczny 1,4413 01:46:40deglomeracyjny 1,0383 00:00:00proste szukanie heurystyczne 1,0147 19:59:59Decision List pełny przegląd 1,0237 21:46:40Decision List heurystyczne 1,0237 15:06:40decision list genetyczny 1,0252 18:13:20
Tabela 5.23: Trafność uzyskanego grupowania dla algorytmów bez użycia funkcji odległości dla bazygłosowań
algorytm demokraci republikanie trafnośćTAK NIE TAK NIE %
genetyczny 137 130 82 137 50,35deglomeracyjny 212 55 157 212 84,83proste szukanie heurystyczne 216 51 162 216 86,90Decision List pełny przegląd 213 54 161 213 85,98Decision List heurystyczne 213 54 161 213 85,98Decision List genetyczny 211 56 161 211 85,52
Dla badań w zakresie przetwarzania „bazy głosowań” ważnym wskaźnikiem jest trafność (na pod-
stawie rozdziału 3.8.1). Porównywane zostaje podział otrzymany w wyniku grupowania i faktycznie
zapisany w bazie. Należy jednak pamiętać, że baza przedstawia rzeczywisty obraz głosowań, który
to daleki jest od podziału idealnego (np. zgodnego z liniami programowymi poszczególnych partii).
Aczkolwiek potwierdza się reguła o związku pomiędzy wartościami atrybutów (w tym przypadku
są to decyzje w poszczególnych głosowaniach) a przynależnością do partii. Trafność przedstawiono
w tabeli 5.23 natomiast czas obliczeń oraz wynikowy przyrost informacji w tabeli 5.22. W tabelach
5.19, 5.20 oraz 5.21 przedstawiono otrzymane podziały w postaci reguł. Dodatkowym argumentem
za taką postacią przedstawienia grupowania jest informacja o kluczowych atrybutach, skutkujących
przypisaniem do danej grupy. Pozostałe sposoby przedstawienia grupowania, w postaci podzbiorów
oraz elementów wzorcowych nie dają takiej możliwości.
Najlepszy wynik dało proste przeszukiwanie, ale zarazem najdłużej trwało. Podobne wyniki dał
algorytm oparty o listy decyzyjne i nieco gorsze algorytm hierarchiczny. Również metoda wykorzy-
stująca algorytmy genetyczne w swej bezpośredniej, prostej postaci nie daje najlepszych wyników.
Należy zauważyć wskaźnik jakości, który odzwierciedla ilość popełnionych błędów w grupowaniu.
Omówienie wyników metody pełnego przeglądu
Metoda pełnego przeglądu dała najlepsze rezultaty (z punktu widzenia ninimalizacji funkcji kry-
terium). Jest to oczekiwane działanie tego algorytmu. Ponieważ sprawdza on każdy wariant podziału
5.4 Badanie algorytmów nie wymagających funkcji odległości 131
znajduje więc rozwiązanie optymalne. Wadą tej metody jest natomiast duży koszt obliczeniowy co
potwierdziły wyniki pomiaru czasu obliczeń.
Omówienie wyników metody deglomeracyjnej
Metoda grupowania algorytmem deglomeracyjnym jest najszybszą z testowanych metod. Wyni-
ka to z charakteru poszukiwanej formuły, dzięki której dokonywane jest grupowanie. W niniejszym
badaniu sprowadza się to do poszukiwania kryterium składającego się z testu wartości pojedynczego
atrybutu. Dla zbioru mała baza metoda deglomeracyjna uzyskała najgorszy wynik. Jest to spo-
wodowane specyficzną charakterystyką danych: dwie najliczniej reprezentowane wartości atrybutów,
mimo dzielenia zbioru obiektów na dwa równoliczne podzbiory, wskazują na niewłaściwy rezultat po-
działu. Ponieważ przedstawiona metoda korzysta z kryteriów zawierających wartości pojedynczego
atrybutu, to zbiory wymagające kryteriów bardziej skomplikowanych dzielone są niewłaściwie.
Omówienie właściwości algorytmu genetycznego
Algorytmy genetyczne, mimo swych niewątpliwych zalet w ramach przeszukiwania dużych prze-
strzeni rozwiązań posiadają istotną ułomność prowadzącą do niemożności znalezienia rozwiązania
najlepszego. Czynności modyfikujące gen na kolejnych etapach, takie jak krzyżowanie czy muta-
cja, chociaż dobrze sprawdzają się w początkowych etapach poszukiwania rozwiązania, to jednak
prowadzą do znalezienia rozwiązań lokalnie optymalnych. Porównując otrzymane innymi metodami
rozwiązanie (wystarczy, że jest lepsze od uzyskanego algorytmem genetycznym) i rozwiązanie uzy-
skane algorytmem genetycznym można zauważyć następujący problem. Aby algorytm genetyczny
znalazł lepsze rozwiązanie musiałby w jednym etapie zmutować na wielu pozycjach, czyli zmienić
przypisanie wielu obiektów do grup jednocześnie. Nie można tego wykonać na „raty”, gdyż roz-
wiązania pośrednie są znacznie gorsze. Problem ten wynika z samej istoty obliczania wskaźnika
przyrostu informacji. Najlepszy wynik otrzymuje się, gdy dany atrybut albo w całości zawiera się
w jednej z grup albo nie występuje wcale. W rzeczywistości, w podanej klasie danych, takie rozło-
żenie obiektów aby wszystkie atrybuty były rozłożone optymalnie jest niemożliwe. Wiele atrybutów
ma rozkład wykluczający taką możliwość. Następuje więc próba znalezienia porządku w zbiorze
atrybutów. Zbiór obiektów grupuje się ze względu na niektóre atrybuty „kosztem” innych. Algorytm
genetyczny znajduje takie rozwiązania. W celu znalezienia kolejnego, lepszego rozwiązania należało
by wybrać i „przegrupować” pewną ilość obiektów wg jednego atrybutu kosztem innego. W tym celu
zaproponowano algorytm opisany w kolejnym punkcie.
Autor zaproponował w niniejszej pracy odpowiednią modyfikację metody ewolucyjnej tak aby
ominąć niepożądane właściwości. Propozycja polega na wykorzystaniu metod grupowania opartych
o listy decyzyjne w połączeniu z algorytmem genetycznym jako funkcją przeszukiwania (patrz 4.5).
132 Badanie algorytmów grupowania na danych symbolicznych
Atuty algorytmu decision list opartego o algorytm genetyczny
W porównaniu do algorytmu genetycznego z bezpośrednim przypisywaniem obiektów do grup
algorytm „Proste Decision List” ma następujące zalety:
• jest szybszy, wymaga mniejszej liczby iteracji w celu otrzymania tego samego wyniku,
• daje dokładniejsze rozwiązania, rzadziej zatrzymuje się na rozwiązaniach lokalnych.
Większa wydajność wynika z faktu, że pomimo iż całkowita długość listy reguł zazwyczaj jest
dłuższa od tablicy przypisań, to samo rozwiązanie w postaci części aktywnej listy reguł jest znacznie
krótsze od rozwiązania w postaci tablicy przypisań. Kolejnym aspektem jest to, że wiele reguł jest
od siebie niezależnych (całkowicie lub tylko w danym lokalnym zakresie), ich względny układ nie ma
wpływu na ostateczny wynik. Ostateczne więc rozwiązanie może występować w wielu permutacjach,
co ułatwia jego znalezienie.
Omówienie właściwości algorytmu heurystycznego
Algorytmy heurystyczne dokonują przeszukiwania zadanego obszaru zgodnie z pewnymi założo-
nymi regułami. Przeszukiwania dokonuje się w pewnym ustalonym porządku, pomijając w procesie
przetwarzania pewne obszary, co skutkuje przyspieszeniem działania algorytmu w stosunku do algo-
rytmu pełnego przeglądu. Przyjmuje się założenie, że w obrębie pomijanych obszarów nie znajduje
się szukane rozwiązanie. W przyjętym rozwiązaniu zastosowano następujące zasady przeszukiwania
heurystycznego opisanego algorytmem 4.10. Potwierdzono jego przydatność do grupowania metodą
opartą o listy decyzyjne. Uzyskane rezultaty potwierdziły jego mniejszą złożoność od metody pełnego
przeglądu przy porównywalnej skuteczności znajdowania rozwiązania optymalnego. Przewiduje się
możliwość zastosowania bardziej zaawansowanych technik heurystycznych w celu polepszenia wydaj-
ności algorytmu. Wymagane są również dalsze prace formalne nad określeniem obszaru stosowalności
przedstawionej metody (danych, dla których znajdowane jest rozwiązanie optymalne).
5.5 Wnioski
Grupowanie danych symbolicznych wymaga wielu adaptacji stosowanych metod, począwszy od
ustalenia sposobu interpretacji i normalizacji danych wejściowych po modyfikacje stosowanych algo-
rytmów. W zależności od grupowanej dziedziny i oczekiwanych rezultatów należy dobrać odpowied-
nią metodę grupowania.
W niniejszym rozdziale autor zbadał własności kilku metod grupowania dla kilku wybranych
baz zawierających dane symboliczne. Potwierdziła się silna zależność jakości uzyskiwanych wyników
od użycia odpowiedniej metody w stosunku do analizowanego zbioru danych. Najbardziej wrażliwe
5.5 Wnioski 133
są metody wymagające stosowania miary odległości pomiędzy obiektami. Konieczność dobierania
funkcji odległości do rodzaju przetwarzanych danych w zakresie eksploracji stanowi istotną wadę
gdyż zmiana źródła danych wymaga dokonania testów, w celu doboru optymalnych warunków gru-
powania. Natomiast zaletą takich metod jest duża wydajność obliczeniowa.
Pod względem jakości uzyskiwanych wyników lepiej sprawują się algorytmy nie wymagające sto-
sowania miary odległości. Jedyną metodą dającą wyraźnie gorsze wyniki pod względem jakości po-
działu, jest metoda deglomeracyjna, co wynika z prostoty metody – nie jest ona w stanie odwzorować
bardziej skomplikowanej struktury podziału. Natomiast dzięki swej prostocie jest to metoda bardzo
szybka, co również potwierdziły wyniki pomiarów. W zakresie grupowania bez udziału funkcji odle-
głości autor dokonał badania własnej metody grupowania opartej o listy decyzyjne w postaci trzech
algorytmów grupowania. Otrzymane wyniki są poprawne oraz potwierdzają możliwość wykorzysta-
nia proponowanych metod do grupowania danych symbolicznych. Należy dodać, że przedstawione
metody są dopiero na początkowym etapie rozwoju, do skutkuje pewnymi niedoskonałościami. Przy-
kładem jest wielokrotnie powtórzona reguła w liście reguł utworzonych przez algorytm genetyczny
(tabela 5.21), nie wpływa to na ostateczny podział i uzyskane wskaźniki trafności i przyrostu infor-
macji, natomiast bardzo utrudnia dalszą interpretację wyniku.
Interesującym spostrzeżeniem z badań było odkrycie przyczyny słabości metody grupowania
opartego o algorytmy genetyczne wykorzystujące bezpośrednie zapis obiektów w genomie (podroz-
dział 3.7). Pomijając fakt słabej efektywności (czas znajdowania rozwiązania znacznie przewyższał
pozostałe z badanych metod), to również jakość pozyskanych wyników budziła wątpliwości. Wynika-
ło to z faktu znajdowania przez tą metodę rozwiązań jedynie lokalnie optymalnych. Podczas badań
okazało się, że dla pewnych danych algorytm genetyczny nie znajduje rozwiązania optymalnego, bez
względu na przeznaczony czas. W trakcie przetwarzania algorytm „wpada” w lokalne optimum i w
zasadzie nie „potrafi” z niego wyjść. Dzieje się tak wówczas, gdy genom reprezentował wszystkie gru-
powane obiekty (każdy fragment odrębny obiekt). Dokładna analiza ujawniła przyczyny tego faktu.
Różnica pomiędzy rozwiązaniem podanym przez algorytm genetyczny, a optymalnym dotyczy kilku
(kilkunastu) obiektów, które mają zmienione przynależności do grup. Dla wszystkich rozwiązań po-
średnich wartość funkcji kryterium jest większa, więc „przeniesienie” tylko kilku obiektów powoduje
uzyskanie gorszego wyniku, co jest eliminowane z populacji. Prawdopodobieństwo przejścia od roz-
wiązania lokalnego do rozwiązania optymalnego jest minimalne, gdyż operatory przeszukujące nie
potrafią dokonać takiego „przeskoku” w pojedynczym cyklu.
W podrozdziale 5.4.1 przedstawiono przykład, w jaki sposób prezentacja wyniku grupowania w
postaci reguł wpływa na dalsze możliwości wnioskowania. Dla przykładu grupowania „bazy głoso-
wań” wynik zawiera informację o kluczowych atrybutach (w tym przypadku głosowaniach) skutku-
jących identyfikacją przypidania do danej grupy (partii politycznej).
134 Badanie algorytmów grupowania na danych symbolicznych
W trakcie prac nad tworzeniem programu komputerowego natknięto się na szereg problemów wy-
magających rozwiązania. Pojawiały się one we wszystkich tworzonych modułach. W module importu
i przygotowania danych należało skonstruować odpowiednie mechanizmy czytające dane o określo-
nym formacie, a następnie, w szczególności dla danych symbolicznych, dostosowanie do wewnętrz-
nych wymagań reprezentacyjnych. W zakresie implementacji poszczególnych algorytmów trudniejsze
prace dotyczyły zwiększenia wydajności algorytmu poprzez jego optymalny zapis, zmniejszenia wy-
magań na zasoby systemu takie jak pamięć operacyjne oraz zapewnieniu poprawnego działania dla
źle uwarunkowanych danych (w jednym przypadku oryginalny algorytm „zapętlał się”). Wymienione
zagadnienia rozwiązano w sposób doświadczalny. Wymagane są dalsze prace, szczególnie w zakre-
sie formalnym, które dadzą pełniejszy obraz co do możliwości i zakresu stosowania poszczególnych
metod.
Rozdział 6
Selekcja i grupowanie danych
lingwistycznych
Dane lingwistyczne obejmują olbrzymi obszar informacji, które łączy forma gromadzenia, mia-
nowicie wyrażone są przy użyciu języka naturalnego lub wykorzystują pewne elementy tego języka.
Aby mówić o eksploracji danych lingwistycznych należy wybrać takie bazy, które potencjalnie
zawierają interesujące informacje, a następnie dobrać odpowiednie metody analizy tych danych.
W tym rozdziale autor dokonuje analizy pewnego rodzaju danych lingwistycznych występujących w
bazach biznesowych, ze szczególnym uwzględnieniem rodzaju informacji w nich ukrytych, możliwości
odkrycia nowej wiedzy oraz wymagań i ograniczeń stawianych przed stosowanymi metodami analizy
[93].
Propozycja autora obejmuje zastosowanie grupowania katalogu towarów jako przedmiot eksplora-
cji danych. Jak już wskazano w podrozdziale 1.9 grupowanie w katalogu towarów jest istotnym ogni-
wem w trakcie eksploracji bazy danych przedsiębiorstwa. Baza zawierająca katalog istnieje niemal
we wszystkich systemach informacyjnych przedsiębiorstw. Nazwy katalogowe towarów w naturalny
sposób odzwierciedlają podobieństwo poszczególnych towarów.
Na podstawie dotychczasowych doświadczeń z grupowaniem danych symbolicznych oraz przed-
stawionych założeń eksploracji danych autor dokonuje adaptacji niektórych metod do sformułowane-
go powyżej zagadnienia. Wstępnego omówienia problemu dokonano w podrozdziałach 1.9 i 6.1.3 oraz
publikacji własnej autora [92]. W niniejszym rozdziale autor analizuje strukturę informacji zawartych
w katalogu towarów, zarówno pod względem syntaktycznym jak i semantycznym, następnie przedsta-
wia wyniki działania algorytmów grupowania na dwóch katalogach: sztucznie spreparowanym oraz
rzeczywistym. Badaniu zostaną poddane te same algorytmy, których przydatność do grupowania
danych symbolicznych stwierdzono w rozdziale 5.
135
136 Selekcja i grupowanie danych lingwistycznych
6.1 Zagadnienie uwzględniania dostępnej wiedzy procesie
grupowania
Podstawą konstrukcji systemów informatycznych „rozumiejących” język naturalny jest metoda
formalnej interpretacji jego znaczenia. Metoda taka musi obejmować dwa elementy: język sztuczny
o precyzyjnie zdefiniowanej semantyce oraz algorytm translacji pomiędzy wyrażeniami języka natu-
ralnego i sztucznego. Siła ekspresji wyrażeń języka sztucznego wyznacza granice zjawisk językowych
możliwych do opisu.
W pracy [108] zaprezentowano przykłady warstw informacyjnych zawartych w zbiorach HTML
na stronach internetowych portali, możliwych do wykorzystania w procesie grupowania:
• treść tekstowa, na podstawie wektora częstości występowania poszczególnych słów,
• struktura hipertekstowa: liczba odsyłaczy do których prowadzi strona i liczba stron zawiera-jących odsyłacze do strony badanej,
• miara popularności danej strony wyrażona w liczbie odwiedzin (wejść) danej strony.
Powyższe wyliczenie ukazuje różnorodność informacyjną zawartą w dokumencie. Dowodzi rów-
nież potrzeby analizy dostępnych danych związanych z dokumentami i możliwego wykorzystania tych
danych w procesie eksploracji. Przykładem jest skojarzenie liczby wejść na stronę z miarą popularno-
ści, szczegółowa analiza korelacji liczby wejść z powiązaniami i treścią stron wykorzystywana jest w
wielu zagadnieniach, przykładowo analizie ergonomii serwisu czy też identyfikacji profilu internauty.
6.1.1 Wykorzystanie wiedzy zawartej w słowach
Wposzczególnych słowach, które składają się na opis obiektu, zawarta jest pewna ilość informacji.
Ponieważ atrybuty lingwistyczne człowiek przypisuje do obiektów w celu opisania danego obiektu,
to opisują one wiernie charakter obiektu, w szczególności właściwości istotne z punktu widzenia
danego zastosowania. Wiedza o znaczeniu poszczególnych słów posłużyć może do skonstruowania
funkcji obliczającej podobieństwo poszczególnych obiektów.
Ogólnie rzecz ujmując każdy grupowany obiekt opisany jest szeregiem symboli w postaci słów
i liczb, których znaczenie wynika z kilku elementów. Po pierwsze znaczenie danego symbolu jest jakby
absolutne, gdy dane słowo istnieje w języku naturalnym i zastosowano go w takim samym znacze-
niu. Takie słowa to przykładowo: „samochód”, „czerwony”. Kolejne symbole nabierają znaczenia,
gdy zostaną skojarzone ze znaczeniami jakie im przypisano. Znaczenia poszczególnych symboli de-
finiowane są poprzez książkę kodową, słownik, treść normy itd. Wtedy znaczenia nabierają symbole
postaci „E40”, „V70”, „XT”, czy chociażby marki poszczególnych produktów, nie będące słowami
6.1 Zagadnienie uwzględniania dostępnej wiedzy procesie grupowania 137
języka naturalnego, ale dla znawców danej dziedziny stają się terminami o określonym znaczeniu.
Natomiast symbole postaci numerycznej tylko wtedy są nośnikami informacji, o ile znany jest ich
kontekst.
6.1.2 Słownik
Słownik jest zbiorem elementów (słów lub wyrażeń symbolicznych) wraz ze zbiorem relacji po-
między tymi elementami. W pewnych wypadkach słownik w systemach pozyskiwania wiedzy określa
się mianem bazy wiedzy. Ze słownikiem związane są następujące trzy aspekty. Pierwszy to sposób
konstruowania. Wyróżnia się sposoby ręczne, automatyczne oraz pozyskiwane z zewnątrz (np. bazy
typu WordNet dostępne w Internecie). Należy odróżnić słowniki pozyskiwane z zewnątrz, gdyż ich
właściwości znaczącą odbiegają od możliwych do uzyskania samodzielnie. Dzieje się tak z powodu
stosowania do ich konstruowania różnorakich metod i technik. Mimo ich niewątpliwej wartości ich
przydatność w danym zastosowaniu jest ograniczona z uwagi na nie pokrywanie się dziedziny słow-
nika z dziedziną zastosowania. Drugim aspektem jest metoda korzystania, szczegółowy algorytm
umożliwiający uzyskiwanie odpowiedzi na zadane pytanie. Trzeci aspekt jest związany z jakością
słownika. Jak wspomniano powyżej zależy to od sposobu konstrukcji, lecz z uwagi na doniosłe
znaczenie słownika w dalszym procesie pozyskiwania wiedzy, dbanie o jego doskonalenie owocuje
lepszymi rezultatami.
Elementy, które może zawierać słownik (do każdego terminu w słowniku można przypisać) [73]:
— znaczenie, w zarówno w wąskim zakresie (ang. NT - Narrow Term) jak i szerokim (ang. BT -
Broader Term),
— relacje do innych słów (ang. RT - Related To): antonimy i synonimy,
— sposób użycia (ang. UF - Used For),
— genezę słowa, pochodzenie.
Badania związane z zastosowaniem słownika do rozpoznawania znaczeń datują się od prac Spark
Jones nad automatycznym klasyfikowaniem słów [73], Saltona nad automatycznym konstruowaniem
słownika [114].
Zagadnienia, do rozwiązania których pomocny jest słownik :
— poszczególne części mowy mają różny wpływ na zawartość tematyczną danego dokumentu;
nawet rozpoznanie podstawowego podziału na rzeczowniki, przymiotniki, czasowniki itd. zna-
komicie ułatwia proces analizy,
— niektóre ze znaczeń wynikają z układu słów w zdaniu; słownik może zawierać wybrane wyrazy,
będące niejako węzłami struktury zdania, stanowiące o możliwości rozpoznania danego układu
i dalej rozpoznaniu znaczenia,
138 Selekcja i grupowanie danych lingwistycznych
— możliwość wyodrębnienia elementów relewantnych — tj. istotnych dla komunikacji językowej
od tych które nie mają takiego znaczenia,
— z uwagi na możliwość zastosowania różnych słów w danym kontekście, na opisanie tego sa-
mego znaczenia, wykrycie podobieństwa znaczeń na odstawie identyczności użytych słów, ma
ograniczona skuteczność; słownik umożliwia oszacowanie relacji pomiędzy słowami i dalej roz-
poznanie jednakowego znaczenia w tekstach, w których użyto różnych słów.
6.1.3 Zasady grupowania nazw towarów
Wśród wielu danych opisujących daną pozycję towarową na potrzeby niniejszych rozważań istot-
ny jest słowny zapis nazwy danej pozycji towarowej. Dzięki analizie tej nazwy można dokonać porów-
nania nazw poszczególnych towarów i dalej dokonać grupowania. Grupowanie może zautomatyzować
bądź wspomóc tworzenie nowych i polepszanie starych klasyfikacji towarów.
Na podstawie konsultacji z ekspertami i potencjalnymi użytkownikami przyjęto następujące za-
łożenia grupowania:
— towary są łączone na podstawie posiadanych wspólnych wartości atrybutów,
— nie dokonuje się wstępnej kwantyzacji atrybutów symbolicznych,
— podobieństwo zależy od atrybutów porównywanych obiektów, ale również korelacji z innymi
obiektami,
— poszczególne atrybuty mają różną wagę, którą należy oszacować na podstawie dostępnych
danych,
— zakłada się istnienie dodatkowych, możliwych do wykorzystania informacji.
Propozycją autora jest, aby nazwy towarów traktować jako bardzo krótkie teksty, więc do ich ana-
lizy można zastosować mechanizmy opracowane na potrzeby pozyskiwania informacji z dokumentów.
Należy jednak wziąć pod uwagę pewne różnice, które stanowią o ich odrębności i wymagają zmiany
podejścia. W systemach grupowania dokumentów poszczególne dokumenty są reprezentowane jako
następujące wektory słów [115]:
x = x1, . . . , xn (6.1)
gdzie: n jest liczbą wszystkich słów i termów występujących w bazie dokumentów, a xi współ-
czynnikiem zależnym od częstości i sposobu występowania danego słowa.
W postaci określonej wzorem (6.1) często odrzuca się informacje o wzajemnym ułożeniu słów,
pozostawiając jedynie informacje o częstości występowania. Takie uproszczenie jest stosowane do
wielu rodzajów tekstów i nie wpływa znacząco na pogorszenie jakości otrzymywanych wyników.
Wydaje się więc, że na potrzeby nazw towarów również można je wykorzystać. Ponieważ reguły
6.2 Badanie 139
gramatyczne i formalne stosowane podczas tworzenia nazw towarów są bardzo proste, same nazwy
są tak konstruowane, aby maksymalnie zminimalizować mogące wystąpić niejednoznaczności. Za-
zwyczaj znaczenie danego terminu nie jest zależne od jego położenia w nazwie, a w przypadkach
gdy jednak pozycja ma znaczenie, to jest to uwarunkowane ścisłymi regułami formalnymi, co można
wykorzystać do skonstruowania tzw. parsera tłumaczącego nazwy do postaci bezkontekstowej.
Podobieństwo dwóch tekstów zależy od każdego elementu w nich występującego. Zmiana tylko
jednego słowa bądź drobna zmiana kolejności może diametralnie wpłynąć na znaczenie (opisywane
pojęcia) danego tekstu, a tym samym na podobieństwo do innych dokumentów. Jednak szczegółowa
i kompletna analiza jest niemożliwa do zrealizowania z powodu niemożności uwzględnienia wszyst-
kich aspektów wpływających na znaczenie tekstu. Aby jednak móc grupować dokumenty tekstowe
stosuje się pewne uproszczenia pozwalające na utworzenie funkcji porównującej teksty z pewnym
dopuszczalnym błędem. Zakłada się, że dokumenty są do siebie bardziej podobne, gdy więcej słów
powtarza się w obu dokumentach. Jednak dokładna analiza takiego podejścia ujawnia, że nie należy
jednakowo traktować wszystkich słów. W języku naturalnym wyróżnia się różnego typu słowa, które
spełniając różne funkcje. Przykładowo na potrzeby porównywania tekstów należy pomijać słowa, któ-
re mogą wystąpić w każdym kontekście takie jak łączniki „i”, „oraz”. Można również przeprowadzić
analizę statystyczną występowania poszczególnych słów i na tej podstawie ustalić wpływ występo-
wania poszczególnych słów na znaczenie całego dokumentu. Salton w swej pracy [115] przeanalizował
kilka takich wskaźników i doszedł do wniosku, że najlepszym wskaźnikiem (oddającym najwierniej
podobieństwo dwóch tekstów) jest wskaźnik TF-IDF (ang. Term frequency inverse document frequ-
ency). W tym wskaźniku znaczenie słowa zwiększa się gdy słowo więcej razy występuje w danym
dokumencie a zmniejsza, gdy często występuje w całej analizowanej zbiorowości dokumentów.
Podczas przeprowadzania badań zauważono, że w przypadku katalogu towarów stosowanie wskaź-
nika TF-IDF prowadziłoby do błędnych wyników. W analizowanym przykładzie hipotetycznego ka-
talogu wyrobów piekarniczych słowo „chleb” będzie występować w połowie nazw, a słowo „tostowy”
tylko w niewielkiej części. Wg wskaźnika TF-IDF słowo „chleb” miało by niższą wagę, co kłóci się
ze zdrowym rozsądkiem. Dzieje się tak, gdyż nazwy towarów są tworzone inaczej, w innym celu.
Katalog towarów gromadzi w sobie zbiór bardzo podobnych do siebie dokumentów tekstowych (są-
siadujące pozycje zazwyczaj niewiele się od siebie różnią). Dlatego też zupełnie inne są rozkłady
statystyczne występowania poszczególnych słów. Należy więc przyjąć inną zasadę przypisywania
wag poszczególnym słowom.
6.2 Badanie
Celem eksperymentu jest opracowanie metodologii grupowania rekordów w bazie danych zawiera-
jącej nazwy katalogowe produktów. Wychodząc z ogólnej definicji grupowania, w przypadku katalogu
140 Selekcja i grupowanie danych lingwistycznych
towarów celem jest więc znalezienie naturalnych grup gromadzących wybrane pozycje z katalogu.
Mimo że dla części istniejących katalogów została zdefiniowana klasyfikacja, to jednak wielokrotnie
obserwowano zjawisko nieadekwatności klasyfikacji katalogu towarów do dalszej analizy danych biz-
nesowych. Przyczyny tego stanu mogą być różnorakie: klasyfikacja się zdezaktualizowała, stała się
niereprezentatywna, pomijała nowo powstałe kwestie itd. Przykładowo „samochód” i „benzyna” sto-
ją w ściślejszej relacji niż para „samochód” i „rower”, chociaż ta ostatnia para jest bardziej do siebie
podobna [109]. Natomiast sama powszechność stosowania klasyfikacji towarów dowodzi potrzeby jej
stosowania.
6.2.1 Analiza danych wejściowych
Towarem nazywa się obiekt podlegający transakcji sprzedaży. W transakcyjnych bazach da-
nych, rejestrujących przebieg procesów biznesowych w przedsiębiorstwie, rejestracja faktu dokonania
transakcji sprzedaży jest ważnym elementem. I z uwagi na istotę faktu dokonania sprzedaży różne
przedsiębiorstwa stosują wiele metod rejestracji, jednak można wyróżnić kilka elementów wspólnych.
Takim wspólnym elementem jest rejestracja sprzedawanego obiektu: towaru, produktu, usługi. W
niniejszym opracowaniu rozpatruje się tylko takie bazy danych, w których towary zgromadzone są
w postaci katalogu towarów.
Na potrzeby niniejszej analizy towarem nazywa się każdy obiekt będący przedmiotem transakcji,
niekoniecznie rzecz, może to być usługa, licencja bądź cokolwiek innego. Z tym identyfikatorem sko-
jarzona jest baza zawierająca pewne katalogowe informacje dotyczące poszczególnych produktów.
Każdy identyfikator jednoznacznie wskazuje na daną pozycję katalogową, a podstawową informacją
zawartą w takiej bazie jest nazwa i opis produktu, zapisana w formie zrozumiałej dla człowieka. Każ-
dy towar na swoje identyfikatory, których może być jeden lub więcej. Identyfikator może mieć postać
symboliczną, czy też sztucznie wygenerowaną na podstawie wewnętrznych ustaleń. Najczęściej jest
to ciąg znaków alfanumerycznych. Inna postać to nazwa, którą tworzy się w oparciu o wiedzę o
towarze, jego właściwościach, relacjach w stosunku do innych towarów w tym samym katalogu. W
nazwie tej zawarta jest informacja o położeniu danego towaru w pewnej, przyjętej do stosowania w
przedsiębiorstwie, systematyce. W nazwach stosuje się terminy i zwroty stosowane w języku natural-
nym, stosowane w danej dziedzinie, dopuszcza się również stosowanie skrótów oraz symboli, których
znaczenie definiowane jest przez wewnętrzne ustalenia. W zależności od realizacji może zawierać
informacje opisowe (powszechnie stosowane określenia, czasami ich skróty), kodowe (symboliczny
zapis poszczególnych właściwości produktu na podstawie słownika i reguł stworzonych na potrzeby
danej realizacji) oraz liczbowe, reprezentujące określone wielkości danych parametrów.Rozróżnienie
rodzajów identyfikatorów nie jest przedmiotem rozważania, istotne natomiast jest wskazanie istnienia
pewnych faktów, które mogą być wykorzystane w trakcie przetwarzania danych.
6.2 Badanie 141
Analizując zbiór danych, składający się z nazw towarów, zauważono następujące właściwości:
— duża ilość powtórzeń poszczególnych słów,
— ograniczona liczebność występujących słów,
— możliwość występowania wyrazów i symboli istniejących i nieistniejących w języku naturalnym,
— nazwy można traktować jako dokumenty tekstowe,
— nazwy zawierają tylko kilka słów,
— występują szczególne przypadki, gdy nazwy różnią się tylko jednym słowem.
Podane właściwości należy uwzględnić w procesie grupowania. Część z nich wykorzystuje się w
celu polepszenia uzyskiwanych rezultatów, część w celu zwiększenia efektywności działania algoryt-
mów.
6.2.2 Konstrukcja nazwy w katalogu towarów
Konstrukcja nazwy zazwyczaj jest następująca: nazwa towaru składa się z niewielkiego ciągu zna-
ków, rzadko przekracza on długość kilkuset znaków, a zazwyczaj jest mniejszy niż 100. W strukturze
nazwy można wyróżnić słowa. Występuje jedno lub więcej słów, które ustalają rodzaj produktu, jego
podstawową klasyfikację. Często są to powszechnie znane słowa występujące w języku naturalnym.
Pozostałe terminy mogą odpowiadać za poszczególne właściwości towarów. Cechą charakterystyczną
katalogu towarów jest stosowanie ograniczonego zbioru słów i symboli stosowanych w zapisie nazw
towarów. Poszczególne elementy nazwy służą identyfikacji bądź do opisu właściwości towaru, więc
oczekuje się od takich symboli ustalonego znaczenia, określonego poprzez praktykę stosowania. W
typowym katalogu zaleca się stosowanie tych samych symboli dla oznaczenia tych samych właściwo-
ści. Należy jednak pamiętać, że katalogi tworzą ludzie, przy użyciu języka naturalnego, więc można
się spodziewać wszelkich utrudnień jakie towarzyszą przetwarzaniu języka naturalnego, takich jak
wieloznaczności, niedomówienia, synonimy, aczkolwiek w dość ograniczonym zakresie.
Analizując nazwy poszczególnych produktów można zauważyć następującą właściwość: jeżeli
potraktujemy nazwę produktu jako ciąg słów:
litera = „a” . . . „Z” ,słowo = letter,[litera],nazwa = słowo,[słowo]to wiele par produktów posiada podobne nazwy, tzn. jedno lub więcej słów występuje w obu
nazwach produktów. Wykorzystując znajomość faktu, że człowiek tworząc nazwy dla nowych pro-
duktów stara się aby były one podobne do innych podobnych produktów i tylko zmienia lub dodaje
jedno lub więcej słów tak, aby nowa nazwa wystarczająco identyfikowała nowy produkt, można
przyjąć, że w pewnym zakresie i z pewną dokładnością badając stopień podobieństwa nazw pro-
duktów otrzymuje się współczynniki określające podobieństwo samych produktów. Z drugiej jednak
142 Selekcja i grupowanie danych lingwistycznych
strony istnieje tendencja do maksymalnego skracania poszczególnych nazw, jeżeli tylko da się unik-
nąć powstawania niejednoznaczności. Przykładowo w analizowanym katalogu wyrobów hipotetycznej
piekarni pomija się oznaczenie wyrobu jako „pieczywo”, pomimo iż nie wszystkie wyroby należą do
tej kategorii. Informacja że dany wyrób należy do kategorii „pieczywo” może wynikać z użycia ter-
minu „chleb”. Jedną z wielu informacji, którą można odkryć analizując różne znaczenia ukryte pod
tym terminem, jest to że produkt „chleb” należy do kategorii pieczywo.
6.2.3 Metoda wykorzystania słownika do porównywania bardzo krótkich
tekstów
Porównywanie dokumentów tekstowym pod względem znaczeniowym opiera się o właściwość
wyznaczania podobieństwa na podstawie jednoczesnego występowania niektórych wyrazów w obu
tekstach. Metody stosujące tą właściwość bezpośrednio, do niemodyfikowanych tekstów dają dobre
rezultaty dla dokumentów dłuższych. W przypadku, gdy analizowane dokumenty są bardzo krótkie,
stosowany jest szeroki zasób słów i znaczenia nabiera każdy wyraz metoda ta jest zbyt ogólna, pomija
bowiem podobieństwo znaczeniowe różnych wyrazów. Szczególnie jest to widoczne w przypadku
grupowania tekstów jakimi są nazwy towarów (patrz 6.1.3).
Wykorzystanie funkcji porównywania tekstów opisanej w podrozdziale 6.1.3 wymaga dokona-
nia pewnych modyfikacji. Autor zaproponował odpowiednio przekształcić napis nazwy produktu.
Przekształcenie to dokonuje się na podstawie uprzednio zgromadzonej wiedzy. Wiedza ta obejmuje
zbiór prostych formalnie reguł opisujących relacje pomiędzy niektórymi ze stosowanych terminów. W
szczególności chodzi o relacje zawierania się znaczeniowego, od terminów szczegółowych do bardziej
ogólnych. W niniejszej pracy zaproponowano następującą metodę zapisu i późniejszego wykorzysta-
nia reguł: zastosowano słownik, w którym występują „tłumaczone” terminy oraz skojarzone z nimi
inne terminy określające bardziej ogólną informację. Korzystając z już przytaczanego przykładu
słownik będzie przypisywał znaczenia zgodnie z przykładem pokazanym w tablicy 6.1.
Tabela 6.1. Przypisywanie znaczeń na podstawie słownika
słowo źródłowe termin uzupełniający„chleb” → „pieczywo”„bułka” → „pieczywo”
Tłumaczone są terminy „chleb” i „pieczywo”, termin „pieczywo” stanowi bardziej ogólne obja-
śnienie. Funkcje porównujące dokumenty opierają się na przeliczeniu stosunku występowań danego
słowa w danych dwu tekstach. Korzystając z tu zaproponowanego słownika dopisuje się do nazwy
produktu szereg słów określających pewne ogólne właściwości danego produktu, które „wyprowa-
dza” się z właściwości szczegółowych, wynikających ze znaczeń poszczególnych słów. Operację taką
6.2 Badanie 143
wykonuje się automatycznie na podstawie zgromadzonych reguł. Opierając się na tak „rozwiniętych”
nazwach dokonuje się porównania tekstów. Następuje tu wykorzystanie następującej właściwości: im
bardziej produkty do siebie są podobne, tym mają więcej cech wspólnych, co winno się objawiać
większą ilością powtórzeń w „rozwiniętych” nazwach produktów. Większa ilość słów jednocześnie
występująca w analizowanych nazwach skutkuje wyższym współczynnikiem podobieństwa otrzyma-
nym z funkcji porównującej teksty.
Tworzenie funkcji porównującej teksty wymaga rozwiązania jeszcze jednego problemu. Znaczenie
i wpływ poszczególnych słów na końcowy wynik nie jest bowiem jednakowy dla wszystkich słów. Dla
dokumentów nie związanych ze sobą (np. artykuły, abstrakty itd.) zapisanych tekstem naturalnym
przyjmuje się następujące zasady przypisywania wag. Słowa, które występują tylko w pojedynczych
dokumentach otrzymują wagę zero z uwagi na znikomy wpływ na klasyfikację. Jednocześnie taką
samą wagę przypisuje się słowom, które występuję w dużej części dokumentów. Jest to spowodowa-
ne następującym faktem. W języku naturalnym istnieje wiele słów mających charakter pomocniczy,
przykładowo są nimi spójniki. Słowa te, mimo iż występują bardzo często nie wpływają na klasyfi-
kację tekstu. W niniejszym opracowaniu dokument jaki powstaje z rozwinięcia nazwy towaru przy
pomocy słownika na inny charakter. Tutaj każde słowo ma istotne znaczenie dla klasyfikacji. Wy-
stępują również te słowa, które zwyczajowo się pomija w z uwagi na pozostałe występujące słowa w
tekście. Korzystając z takiego sztucznego rozwijania nazw uzyskujemy następujący efekt. Niektóre
ze słów występują znacznie częściej niż inne, ale można zauważyć że częstość występowania zależy od
stopnia szczegółowości danego terminu, słowa będące bardzo ogólnymi terminami występują częściej
a te szczegółowe rzadziej. Wynika to ze sztuczności zabiegu rozwijania nazw. W mowie naturalnej
jeżeli użyje się terminu szczegółowego dotyczącego danej właściwości to terminy ogólne się pomija. W
niniejszej analizie, gdzie sztucznie uzupełniane są poszczególne opisy takie terminy ogólne są zawsze
obecne, albo były od początku, albo zostały dodane na podstawie analizy terminów bardziej szcze-
gółowych. Wracając do przykładu: albo słowo „pieczywo” było w nazwie, albo zostanie dodane gdy
w nazwie znajdzie się słowo z grupy („chleb”, „bułka”). Człowiek intuicyjnie wie, że słowo „pieczy-
wo” jest bardziej ogólnym określeniem niż słowo „chleb”, niestety komputer musi otrzymać liczbowe
dane na ten temat. Trudno jest wprowadzać takie dane ręcznie, np. zasięgając opinii eksperta gdyż
wiązało by się to ze znacznym kosztem przygotowania bazy słownika. Wystarczy jednak policzyć
ilość wystąpień danego słowa we wszystkich nazwach produktów. Zgodnie z zasadami tworzenia i
uzupełniania nazw dany termin pojawi się wszędzie tam, gdzie towar należy do grupy określanej
przez ten termin, tym samym stopień ogólności terminu jest proporcjonalny do ilości wystąpień.
Idąc dalej tym tokiem rozumowania można obliczyć stopień podobieństwa dwóch nazw produktów.
144 Selekcja i grupowanie danych lingwistycznych
6.2.4 Przebieg badania
Wzięto do analizy zestaw nazw 6 produktów, są to nazwy występujące w rzeczywistej bazie da-
nych. Wybrano tylko 6 nazw, aby sprawdzić przydatność proponowanej metody grupowania. Dla tak
małej liczby elementów weryfikacja jest możliwa do przeprowadzenia przez człowieka. Wykorzystano
do tego wiedzę ekspertów z danej dziedziny, którzy przedstawili własne propozycje macierzy podzia-
łu oraz macierzy podobieństw. Nazwy obiektów przedstawiono w tablicy 6.2, łącznie z przykładem
rozwinięcia nazw i uzyskanymi współczynnikami podobieństwa.
Nie przeprowadzono badania bez uwzględniania znaczenia poszczególnych wyrazów z powodu
braku możliwości określania postępowania dla nazw towarów nie mających wspólnych elementów.
Dla obiektów „rogal” i „bułka kajzerka” stopień podobieństwa wyznaczony jedynie na podstawie
zakodowanych nazw powinien wynosić 0, co jest błędnym założeniem. Co więcej, obiekt „rogal” jest
równie niepodobny (zgodnie z przyjętymi założeniami) do wszystkich pozostałych obiektów. Więc
oczekiwany na tej podstawie podział na dwie grupy to: „rogal” – pierwsza grupa a w drugiej –wszystkie pozostałe obiekty.
Tabela 6.2. Mały katalog towarów
nazwa w bazie nazwa po wzorzecuzupełnieniu ROGAL CHLEB RAZOWY
BUŁKA KAJZERKA Pieczywo, białe, małe 1.000 0.000BUŁKA WIEJSKI Pieczywo białe, małe 0.935 0.065ROGAL Pieczywo białe, małe 1.000 0.000CHLEB RAZOWY Pieczywo, podłużne 0.000 1.000CHLEB WIEJSKI Pieczywo, podłużne 0.065 0.935CHLEB TOSTOWY Pieczywo, podłużne 0.000 1.000
Wykonano podział na dwie grupy. Tak jak oczekiwano podział nastąpił pomiędzy bułki a chleby.
Na powyższym przykładzie można przeanalizować wpływ słownika na obliczanie funkcji podobień-
stwa. Atrybut „wiejski” ma stosunkowo niewielką wagę, dzieje się tak z następującego powodu.
Atrybuty „białe”, „bułka”, „chleb” występują w większej ilości nazw, tym samym wagi im przypi-
sane są większe.
Dla większej ilości danych można oczekiwać że różnica występowania słów „chleb”, „bułka” a słów
„wiejski”, „tostowy” będzie jeszcze większa, co spowoduje przypisywanie odpowiednio większych
wag, co będzie zgodne z regułami panującymi w rzeczywistym świecie.
Kolejną serię pomiarów dokonano na bazie towarów, pozyskanej z rzeczywistego przedsiębior-
stwa. Zawartość bazy przedstawiono w tabeli 6.7 przy okazji przedstawionych wyników grupowania.
Na takiej rzeczywistej bazie widocznych jest wiele wtrąceń, w postaci nazw towarów niezupełnie pa-
sujących do zasadniczej części bazy. W świecie realnym takie zdarzenia mają miejsce nader często,
mówi się o szumie informacyjnym. Problem polega natomiast na tym, aby algorytmy eksploracji, a
6.2 Badanie 145
Tabela 6.3. Tablica wag
Słowo Ilość wystąpieńCHLEB 3PIECZYWO 6JEDZENIE 6PODŁUŻNE 3DUŻE 3BUŁKA 3BIALE 3MALE 3WIEJSKI 2
Tabela 6.4. Lista reguł decyzyjnych heurystyczny dla bazy towarów
jeżeli atrybut to grupaMALE 32421-22 22421-23 1SREDNIE 1CIASTKO 42421-21 2RAZOWY 1Z 4
CHALKA 3SUROWIEC 4GRAHAM 3TOSTOWY 2SNIADANIOWY 2CHLEB 12421-41 4
w tym przypadku algorytmy grupowania, „poradziły” sobie z takimi danymi. Przedstawione poniżej
tabele pokazują, że jest to możliwe, przedstawione metody i algorytmy dały poprawne wyniki.
6.2.5 Badanie funkcji odległości dla danych lingwistycznych
Warunkiem koniecznym do zastosowania metod iteracyjnych, a w szczególności metody grupo-
wania rozmytego opisanej w podrozdziale 3.3.3 jest skonstruowanie odpowiedniej miary odległości.
Funkcja odległości ma za zadanie odzwierciedlić stopień „niepodobieństwa” poszczególnych obiek-
tów. Punktem wyjścia do eksperymentu jest katalog towarów, w którym nazwy zostały już „rozwinię-
te” przy pomocy słownika. Każda nazwa składa się więc z części oryginalnej oraz słów dopisanych na
podstawie przeprowadzonej analizy. Dla tak skonstruowanej bazy dokumentów należy dobrać odpo-
wiednią funkcję określającą podobieństwo tekstów. Przeanalizowano kilka funkcji (szczegółowy opis
146 Selekcja i grupowanie danych lingwistycznych
w podrozdziale 2.2.2). W niniejszej pracy zaimplementowano i przetestowano 5 funkcji odległości,
możliwych do zbudowania dla badanego zbioru obiektów.
— Euklidesowa miara odległości L2 (wzór(2.9)).
— Odległość Manhattan L1 (wzór (2.14)).
— Miara kosinusowa (w tabeli 2.2).
— Wskaźnik Jaccarda (wzór (2.20)).
— KL dywergencja (w tabeli 2.2).
Funkcja odległości obliczana jest przy następujących założeniach: zbiór słów i termów występu-
jących w nazwach towarów odwzorowany jest w zbiór [115]:
T = t1, . . . , tp. (6.2)
gdzie:
T - wektor słów reprezentujący nazwę towaru,
ti - liczba wystąpień słowa o indeksie i w reprezentowanej nazwie.Następnie każdą nazwę towaru można odwzorować w wektor T o rozmiarze p, gdzie p jest liczbą
słów występujących we wszystkich nazwach, a poszczególne współczynniki odzwierciedlają występo-
wanie odpowiadających słów. W niniejszej pracy poddano analizie następujące funkcje spełniające
kryteria wymagane przez algorytmy grupowania:
1. Funkcja oparta o wskaźnik Jaccarda 2.24
djac(T1, T2) =a00 + a11 + a01
a11− 1, (6.3)
gdzie:
Ti - porównywany dokument(nazwa towaru) zapisany w postaci wektora słów,
a11 - oznacza liczbę słów jednocześnie występujących w obu towarach,
a10, a01 - oznacza liczbę słów występujących tylko w jednej z nazw.
Wyniki otrzymywanie przy zastosowaniu tej funkcji do porównywania obiektów potwierdzi-
ły przewidywaną jej słabość. Ponieważ funkcja ta jednakowo traktuje wszystkie słowa i nie
rozróżnia ich pod względem ważności, to nie można się spodziewać aby wiernie odtwarzała
rzeczywiste relacje leżące pomiędzy poszczególnymi towarami.
2. Funkcja oparta o wskaźnik Jaccarda przy uwzględnieniu wag ważności poszczególnych słów.
Na podstawie: 3.29
T = (t1, wt1 ; t2, wt2 ; . . . ; tp, wtp). (6.4)
6.2 Badanie 147
Tabela 6.5. Jakość grupowania FCMdd dla różnych funkcji odległości dla bazy towarów
funkcja odległości przyrost informacji czas obliczeńjaccadr 1,3129 10:02:00cosine 4,4940 20:53:20KL dywergencja 4,8897 10:40:00L1 manhattan 5,0159 07:33:20L2 euklidesowa 0,5633 20:53:20
a11(TA, TB) =p∑i=1
wA(i)wB(i)wti . (6.5)
Użyte przykłady obliczania wartości wag słów:
(a) wti = |ti| – waga jest proporcjonalna do ilości wystąpień słowa ti,
(b) wti = |ti| 1log |ti| – funkcja analogiczna w współczynnika TF-IDF,
(c) wti =|ti|N log
|ti|N – jak powyżej po dokonaniu normalizacji (N oznacza liczbę dokumentów,
a tym samym maksymalną ilość wystąpień słowa ti.
gdzie:
ti słowo występujące w dokumentach,
wA(i) przyjmuje wartość 1 jeżeli słowo ti występuje w TA, 0 w przeciwnym przypadku,
wti waga przypisana do słowa ti.
Rezultaty badań poszczególnych funkcji odległości dla bazy towarów, przy użyciu algorytmu
FCMdd zostały przedstawione w tablicy 6.5.
6.2.6 Badanie skuteczności grupowania danych lingwistycznych
Do grupowania nazwa z katalogu towarów użyto tych samych algorytmów, które zostały poddane
badaniu w rozdziale 5:
1. algorytmu hierarchiczny deglomeracyjny,
2. algorytm genetyczny prosty,
3. algorytm genetyczny oparty o listy decyzyjne,
4. algorytm przeszukiwania heurystycznego oparty o listy decyzyjne.
5. algorytm grupowania rozmytego adaptowanego do przestrzeni argumentów symbolicznych,
148 Selekcja i grupowanie danych lingwistycznych
Tabela 6.6: Jakość grupowania a różnymi algorytmami bez użycia funkcji odległości dla bazy towarów
funkcja odległości przyrost informacji czas obliczeńgenetyczny 0,5956 03:33:19deglomeracyjny 0,3946 10:40:00proste szukanie heurystyczne 0,4105 15:06:40Decision List pełny przegląd 0,3858 17:46:40Decision List heurystyczne 0,3861 13:20:00decision list genetyczny 0,3868 20:53:19
6. algorytm aglomeracyjnego z warunkiem minimalizacji odległości pomiędzy najodleglejszymi
obiektami.
Wszystkie algorytmy zostały porównane pod względem szybkości uzyskiwania wyników, powta-
rzalności rezultatów oraz uzyskiwanej wartości funkcji kryterium. Rezultaty grupowania, wraz z
czasem obliczeń przedstawiono w tablicy 6.6. Na uwagę zasługują słabe wyniki algorytmu genetycz-
nego (wersja bezpośrednia).
W tabeli 6.7 przestawiono macierz przynależności do poszczególnych grup. Dla sześciu kolumn
z liczbami, które odpowiadają sześciu badaniom dla powyżej wymienionych algorytmów, zawarto
numery grup do których poszczególne obiekty zostały przypisane. Ponieważ w grupowaniu nie ma
wstępnie nazwanych grup, poszczególne algorytmy różnią się od siebie kolejnością „wykorzystywania”
kolejnych podzbiorów. Dopiero dokładniejsza analiza pomaga w porównaniu wyników: grupa 3 dla
algorytmu genetycznego prostego i grupa 4 dla algorytmu genetycznego opartego o listy decyzyjne
stanowią w zasadzie tą samą grupę. Dodatkowym celem przytoczenia tychże wyników, jest ukazanie
jak trudna w wykorzystaniu do eksploracji danych jest postać normalna grupowania, czyli macierz
podziału.
6.2 Badanie 149
Tabela 6.7. Otrzymany podział dla grupowania algorytmami z tabeli 6.6
metodanazwa towaru 1 2 3 4 5 6CHLEB GRAHAM FOREMKOWY 2421-23 3 2 2 3 2 4CHLEB TOSTOWY 2421-41 3 2 1 3 4 1CHLEB STAROWIEJSKI 2421-22 3 4 4 1 4 1CHLEB POWSZEDNI 2421-22 2 4 4 1 4 1CHLEB TRZY ZIARNA 0.6KG 2421-23 3 2 2 1 4 1CHLEB TOST-żYTNI 1/2 2421-23 1 2 2 3 4 1CHLEB CEBULOWY 2421-21 1 2 1 3 4 1CHLEB śNIADANIOWY 2421-41 3 2 1 3 4 1CHLEB STAROPOLSKI 2421-22 3 4 4 1 4 1CHLEB STAROWIEJSKI KROJONY 2421-22 1 4 4 1 4 1BUłKA STAROPOLSKA 2421-23 3 3 3 4 3 3BUłKA MAŚLANA 2421-41 1 3 3 4 3 3CHLEB RAZOWY KROJONY 2421-24 4 2 2 1 2 4CHLEB RAZOWY 2421-24 3 2 2 1 2 4CHLEB RAZOWY Z SłONECZNIKIEM 2421-24 4 2 2 1 2 4CHLEB DIETETYCZNY 2421-23 3 2 2 3 4 1CHLEB ZDROWIA 2421-23 4 2 2 3 4 1CHLEB SOJOWY 2421-22 1 4 4 1 4 1CHLEB KRóLEWSKI 0.4KG 2421-23 4 2 2 3 4 1CHLEB CHłOPSKI 2421-22 1 4 4 1 4 1CHLEB KRóLEWSKI 0.5KG 2421-23 4 2 2 3 4 1BUłKA GRAHAM żYTNIA PACZKOWANA 2421-23 2 3 3 4 3 3BUłKA MINI GRAHAM PACZKOWANA 2421-23 2 3 3 4 3 3PALUCH GRAHAM 2421-23 2 2 1 3 2 4PALUCH HOT-DOG 2421-4 3 2 1 3 2 4PALUCH LUXUS Z MAKIEM 2421-31 1 2 1 3 2 4PALUCH LUXUS BEZ MAKU 2421-31 3 2 1 3 2 4Pół PALUCH 2421-3 4 2 1 3 2 4BATON LUXUS 2421-3 4 2 1 3 2 4BATON LUXUS KROJONY 2421-3 3 2 1 3 2 4BUłKA HAMBURGER 2421-4 3 3 3 4 3 3BUłKA WIEJSKA Z SEZAMEM 2421-22 2 3 3 4 1 3BUłKA GRAHAM 2421-23 4 3 3 4 3 3BUłKA KAJZERKA 2421-31 1 3 3 4 3 3BUłKA GRAHAM żYTNIA 2421-32 4 3 3 4 3 3MINI GRAHAM żYTNIA 2421-32 3 1 3 4 3 3CHLEB OKRĄGłY 2421-31 1 2 1 3 2 4OBWARZANEK KRUCHY 2421-41 4 1 1 2 3 2
150 Selekcja i grupowanie danych lingwistycznych
Tabela 6.8. Otrzymany podział dla grupowania algorytmami z tabeli 6.6 cz.2
metodanazwa towaru 1 2 3 4 5 6BAGIETKA FRANCUSKA 2422-31 4 2 1 3 2 4PALUCH KORNSPITZ 2421-32 4 2 1 3 2 4JAGODZIANKA 2422-1 2 1 2 2 1 2CIASTKO 2422-2 4 1 2 2 1 2ROżEK 2422-2 1 3 3 4 3 3ROGAL 2422-2 2 3 3 4 3 3BUŁKA Z CZEKOLADĄ 2422-1 4 3 3 4 1 3BUŁKA FIRMOWA DUżA PACZKOWANA 2421-31 2 3 3 4 3 3BUłKA FIRMOWA 5X0,09 2421-31 1 3 3 4 3 3BUłKA FIRMOWA DUżA 2421-31 1 3 3 4 3 3BUłKA FIRMOWA MAłA 2421-31 3 3 3 4 3 3BUłKA MAX 2421-31 2 3 3 4 3 3CHLEB ZWYKłY 0,50 2421-22 3 4 4 1 4 1CHLEB KROJONY ZWYKłY 2421-22 3 4 4 1 4 1CHLEB MIESZANY DUżY 2421-22 2 4 4 1 4 1CHLEB MIESZANY śREDNI 2421-22 2 4 4 1 4 1CHLEB MIESZANY ZWYKłY 2421-22 4 4 4 1 4 1CHLEB KATOWICKI 2421-23 4 2 2 3 4 1CHLEB KASZUBSKI 2421-22 1 4 4 1 4 1CHLEB ZAKOPIAńSKI 2421-22 4 4 4 1 4 1CHLEB WIEJSKI 2421-22 4 4 4 1 4 1CHLEB KROJONY 0.6KG 2421-22 1 4 4 1 4 1CHLEB KROJONY 0.9KG 2421-22 3 4 4 1 4 1CHLEB WIEJSKI 0.6KG 2421-22 3 4 4 1 4 1CHLEB ZWYKłY FOREMKA 0.85KG 2421-22 4 4 4 1 4 1DROżDżóWKI PAKOWANE 2422-1 2 1 2 2 1 2BUłKA DROżDżOWA Z SEREM 2422-1 4 3 3 4 1 3BUłKA DROżDżOWA Z MARMOLADą 2422-1 2 3 3 4 1 3BUłKA DROżDżOWA Z MAKIEM 2422-1 2 3 3 4 1 3BUłKA DROżDżOWA Z BUDYNIEM 2422-1 3 3 3 4 1 3CHAłKA DUżA MLECZNA 2421-41 2 3 3 4 3 3CHAłKA MAłA MLECZNA 2421-41 4 3 3 4 3 3ROGAL MLECZNY 2421-41 1 3 3 4 3 3BUłKA MLECZNA 2421-41 4 3 3 4 3 3CHAłKA MINI 2421-41 1 3 3 4 3 3MINI ROGAL Z MAKIEM 2421-41 4 3 3 4 1 3PąCZEK 2422-1 4 1 2 2 1 2BUłKA DROżDżOWA 2422-1 3 3 3 4 1 3CHLEB KOłODZIEJ 2421-23 1 2 2 3 4 1CHLEB ZIARNISTY 0.35KG 2421-23 4 2 2 3 4 1CHLEB KANAPKOWY 2421-21 2 2 1 3 4 1CHLEB żYTNI RAZOWY 2421-23 4 2 2 1 2 4CHLEB SIEDEM ZIAREN 2421-23 4 2 2 3 4 1CHLEB ZIEMIACZANY 2421-22 2 4 4 1 4 1
6.2 Badanie 151
Tabela 6.9. Otrzymany podział dla grupowania algorytmami z tabeli 6.6 cz.3
metodanazwa towaru 1 2 3 4 5 6CHLEB SZWAJCARSKI SEROWY 2421-21 3 2 1 3 4 1CHLEB ZIOłOWY 0.3KG 2421-21 1 2 1 3 4 1CHLEB OWSIANY 2421-22 3 4 4 1 4 1CHLEB OMEGA 2421-23 2 2 2 3 4 1BATON ZWYKłY 2421-31 1 2 1 3 2 4BUłKA CEBULOWA 2421-21 2 3 3 4 3 3CIASTO Z TRUSKAWKAMI 2422-7 3 1 3 2 1 2CIASTO Z JABłKAMI 2422-7 1 1 3 2 1 2CIASTO Z śLIWKAMI 2422-7 2 1 3 2 1 2ROLADA Z MAKIEM 2422-7 1 1 3 2 1 2BABKA DOMOWA Z LUKREM 2422-7 1 1 2 2 1 2CHLEB KANAPKOWY 0.75KG 2421-21 1 2 1 3 4 1BUłKA TARTA 2421-92 3 3 3 4 1 3MAKA 750 2411-229 3 1 4 2 1 2POJEMNIK PIEKARSKI 2 1 4 2 1 2TOREBKI PAPIEROWE 3 1 4 2 1 2CHLEB ZWYKłY 0.6KG 2421-22 3 4 4 1 4 1BUłKA MAśLANA PACZKOWANA 2421-41 2 3 3 4 3 3BUłKA SANDWICH 2421-32 1 3 3 4 3 3
152 Selekcja i grupowanie danych lingwistycznych
6.3 Wnioski
Mimo wielu analogii i podobieństw do grupowania dokumentów grupowanie w katalogu towa-
rów jest istotnie różne. Po pierwsze wymagane jest skorzystanie z zewnętrznej wiedzy, gdyż dane
zawarte w bazie nie wystarczają do pogrupowania towarów. Po drugie wiele z przesłanek wykorzy-
stywanych podczas grupowania dokumentów (np. wykrywania słów nieznaczących) musi być inaczej
interpretowanych. Po trzecie brak jest optymalnej funkcji oceny jakości podziału. Wydaje się jed-
nak że funkcja entropii, stosowana jako kryterium, stanowi wystarczające przybliżenie funkcji oceny
jakości. Wniosek ten powstał w wyniku konsultacji uzyskiwanych podziałów z ekspertami i porów-
nywaniem z wartością funkcji kryterium. Ważne natomiast jest aby algorytm znajdował najlepsze
rozwiązanie, zatrzymywanie się na minimum lokalnym dowodzi o jego niestabilności.
Podobieństwo dokumentów tekstowych wyznacza się na podstawie analizy statystycznej słów
występujących w dokumentach lub na podstawie analizy strukturalnej opartej na bazie odsyłaczy
oraz innych elementów łączących znaczeniowo dokumenty. Zaproponowana metoda uwzględniania
zewnętrznej wiedzy w procesie porównywania dokumentów wykorzystuje informację strukturalną
zawartą w nazwach towarów a ukrytą w znaczeniach poszczególnych słów. Terminy dopisane do
nazwy na podstawie słownika stają się łącznikami wiążącymi poszczególne nazwy. Dalszej analizy
podobieństwa dokonuje się poprzez porównanie podobieństwa strukturalnego bądź analizy staty-
stycznej występujących słów. W procesie porównywania tekstów istotne znaczenie ma przypisanie
odpowiednich wag poszczególnym słowom. Według badań Saltona [115] najlepszym wskaźnikiem
do określania wag jest wskaźnik TD-IDF. Badanie dotyczyło jednak zwykłych tekstów prasowych.
W badanym przypadku analizie poddano teksty dość znacznie różniące się charakterem od tek-
stów prasowych. Dlatego też, na podstawie wstępnych oszacowań, zaproponowano zmianę sposobu
wyznaczania wag. Uzyskane wyniki potwierdziły przyjęte założenia, otrzymano lepsze wyniki. Do
wyznaczenia optymalnej funkcji naliczania wag dla słów należy bardziej szczegółowych testów.
Skorzystanie z zewnętrznej wiedzy o obiektach i ich właściwościach, daje lepsze wyniki. W niektó-
rych przypadkach, wyniki uzyskiwane bez uwzględniania takiej wiedzy, mogą być całkowicie błędne
(z punktu widzenia możliwości pozyskania nowej wiedzy).
Badanie dokonane na rzeczywistej bazy danych, pozyskanej z działającego przedsiębiorstwa, uwy-
puklają wpływ stosowanych metod na uzyskiwane wyniki. Dobre wyniki dają metody oparte o listy
decyzyjne co potwierdza ich użyteczność. Metody wykorzystujące miarę odległości są bardzo „wraż-
liwe” na stosowaną funkcję. Autor przeprowadził konsultację z ekspertami w zakresie otrzymanych
wyników grupowania. Ekspertyza potwierdziła zgodność otrzymanego podziału z oczekiwaniami.
Również zauważono korelację pomiędzy wartościami stosowanej funkcji kryterium a jakością otrzy-
manego podziału.
6.3 Wnioski 153
Ciekawe spostrzeżenia wynikają z porównania działania algorytmu genetycznego zwykłego z al-
gorytmem opartym na listach decyzyjnych. W badanych przykładach algorytm zwykły nie potrafił
znaleźć rozwiązania optymalnego, gdyż wpadał w lokalnie optymalne rozwiązanie. Zmiana sposobu
ujęcia danych, poprzez odwzorowanie listy decyzyjnej w postaci genu, spowodowania, że dla podane-
go przykładu uniknięto zagrożenia znalezienia rozwiązania nieoptymalnego. Dalsze badania formalne
natomiast są konieczne, dla wykazania, dla których rodzajów danych przedstawiona metoda daje
lepsze wyniki.
Badania potwierdziły skuteczność i przydatność metod opartych o listy decyzyjne. Poza algoryt-
mem pełnego przeglądu, którego złożoność obliczeniowa nie pozwala na zastosowanie do większych
baz danych, pozostałe dwa (heurystyczny i genetyczny) dały dobre wyniki w akceptowalnym czasie.
W niektórych przypadkach (rzeczywista baza towarów), uzyskany wynik funkcji kryterium był lepszy
niż otrzymany metodami klasycznymi. Również przedstawiono ekspertom różne postacie otrzymy-
wanych wyników, wynikające ze stosowanych metod. Zgodnie z przypuszczeniami, eksperci ocenili,
że potencjalnie lista decyzyjna nadaje się do analizy i wnioskowania, w szczególności do analizy
zmian i trendów
Rozdział 7
Podsumowanie
W niniejszej pracy autor dokonał szczegółowej analizy możliwości grupowania zbiorów zawierają-
cych dane symboliczne oraz możliwości zastosowania rezultatów grupowania do eksploracji danych.
Badania dotyczyły metod i algorytmów grupowania, technik porównywania i weryfikacji uzyskiwa-
nych rezultatów rezultatów.
Szczegółowe wyniki rozprawy
Najważniejsze szczegółowe wyniki rozprawy są następujące:
1. Omówiono aspekty eksploracji danych, z uwzględnieniem jej usytuowania jako etapu w procesie
pozyskiwania wiedzy oraz formy jej realizacji na przykładzie grupowania danych (rozdział 1).
2. Zaprezentowano krytyczną dyskusję różnych metod analizy danych postaci symbolicznej, szcze-
gólnie w kontekście grupowania danych tej postaci ( rozdziały 2 i 3) oraz w zakresie przeprowa-
dzonych badań (rozdziału 5 i 6). Wykazano szereg warunków (szczegółowo opisanych poniżej)
istotnych w procesie eksploracji danych.
3. Wprowadzono oryginalną metodę grupowania danych w oparciu o listy decyzyjne oraz zapro-
ponowano 3 algorytmy w oparciu o tą metodę (rozdział 4). Metoda ta umożliwia grupowanie
obiektów opisanych atrybutami symbolicznymi oraz umożliwia prezentację wyników w postaci
reguł.
4. Dokonano adaptacji i implementacji wybranych metod do grupowania danych symbolicznych,
oraz porównano ich efektywności w zakresie przetwarzania przygotowanych zbiorów danych
(rozdział 5). Wskazano przypadki, dla których metody nie wymagające stosowania funkcji
odległości dają lepsze wyniki.
154
155
5. Przedstawiono metodę grupowania dokumentów tekstowych o nietypowej postaci, jakimi są
nazwy występujące w katalogu towarów (rozdział 6). Przedstawiono przykład, w którym dzięki
wykorzystaniu zewnętrznej wiedzy wyniki grupowania były lepsze.
Analiza praktycznych aspektów eksploracji danych wskazuje, że sukces rozwiązania danego pro-
blemu eksploracji danych zależy nie tylko od wyboru specyficznego algorytmu czy metody analizy,
ale także od właściwej realizacji innych etapów całego procesu, począwszy od poprawnego zrozu-
mienia kontekstu i interpretacji zgromadzonych danych, doboru właściwych metod reprezentacji i
przetwarzania a skończywszy na odpowiednich, dla danego zagadnienia, formach prezentacji wyni-
ków.
Grupowanie danych symbolicznych stanowi istotną technikę eksploracji danych. Aby otrzymy-
wane wyniki były wiarygodne, rzetelne, o dużych walorach poznawczych, winny być spełnione na-
stępujące warunki:
1. Źródło danych
Źródło, czyli przetwarzana baza danych, winno być wiarygodne, gdyż wnioski wysnute z nie-
prawdziwych, niepełnych, czy niepewnych danych mogą być błędne. Aby wyniki dokonanej
eksploracji danych były realne i wiarygodne, to musi zostać spełnionych kilka przesłanek:
— znana musi być rzeczywista interpretacja poszczególnych danych i ich miejsce w procesie
odwzorowywania rzeczywistości oraz zależności w stosunku do podejmowanych decyzji;
— zazwyczaj bazy danych reprezentują rzeczywiste obiekty w połączeniu z zewnętrznie okre-
ślonymi regułami i zasadami, pomijanie tej zewnętrznej wiedzy może prowadzić do uzy-
skania nieadekwatnych wyników,
— źródło danych winno być wiarygodne, gdyż posługiwanie się niewiarygodnymi, niepew-
nymi czy niepełnymi informacjami może prowadzić do błędnego wnioskowania, i dalej do
błędnych decyzji.
Potwierdzeniem tezy o konieczności skorzystania z zewnętrznej wiedzy o obiektach i ich atry-
butach jest badanie dotyczące grupowania nazw towarów przedstawione w rozdziale 6. Bez
uwzględnienia znaczenia poszczególnych słów nie jest możliwe dokonanie grupowania, z uwagi
na brak możliwości oznaczenia podobieństwa niektórych towarów.
2. Algorytmy
Analizowane zbiory danych posiadają formę symboliczną, więc niektóre z algorytmów należy
adaptować do takiej dziedziny. Dotyczy to w szczególności algorytmów iteracyjnych (autor
dokonał adaptacji algorytmu FCMdd). Dla tych algorytmów, które przeznaczone są do danych
określonych symbolicznie, jak na przykład algorytmów hierarchicznych, wymagana jest jedy-
nie właściwa implementacja algorytmu w danym środowisku programistycznym. W zakresie
156 Podsumowanie
algorytmów autor zaproponował własną metodę grupowania opartą o listy decyzyjne (przed-
stawiona w rozdziale 4) wraz z trzema algorytmami ją wykorzystującymi: pełny przegląd,
algorytm heurystyczny metoda liniowa oraz genetyczny.
3. Funkcja kryterium
Praktycznie każdy algorytm grupowania wykorzystuje w toku swej pracy funkcje kryterium,
czy w postaci entropii czy jako suma odległości. Funkcja kryterium winna odzwierciedlać jakość
otrzymanego podziału z punktu widzenia jego oczekiwanych własności. Autor dokonał badań,
przyjmując jako funkcję kryterium miarę entropii, porównanie wyników z wiedzą ekspertów
potwierdziło przydatność takiego rozwiązania.
4. Funkcja odległości
Niektóre z algorytmów wymagają zdefiniowania odległości pomiędzy poszczególnymi obiekta-
mi, w przypadku danych symbolicznych zazwyczaj dokonuje się tego sztucznie, poprzez przyję-
cie pewnych analogii do przestrzeni liczb rzeczywistych. Jak każde uproszczenie czy przybliżenie
może prowadzić otrzymania niewłaściwych wyników. Szczególnie gdy funkcja kryterium opiera
się na funkcji odległości, początkowy błąd może być zwielokrotniony i prowadzić do błędnych
rezultatów.
Zaobserwowano silne rozbieżności dla różnych funkcji, w zależności od badanych danych, z tego
wynika konieczność doboru funkcji kryterium dla badanej dziedziny. Innym rozwiązaniem jest
wykorzystanie metod grupowania nie wymagających stosowania takiej funkcji. Przykładowe
metody omówiono w podrozdziałach 3.5 i 3.7.
5. Ewaluacja wyników
Ostatni etap eksploracji danych, związany z krytyczną analizą uzyskanych rezultatów i możli-
wościami ich użycia do pozyskania nowej wiedzy. Kryteria oceny autor niniejszej pracy przed-
stawił w podrozdziale 1.3 zgodnie z którymi dokonano analizy przydatności. Część badań autor
wykonał w oparciu o rzeczywiste dane przedsiębiorstw, których wyniki porównano ze spostrze-
żeniami i wnioskami ekspertów uprzednio badającymi dane testowe. Dodatkowym atutem me-
tody grupowania opartej o listy decyzyjne jest sposób prezentacji rezultatów w postaci listy
reguł, co jak wiadomo przyczynia się do zwiększenia czytelności i przyswajalności wyników.
W trakcie badań zauważono pewne właściwości grupowania. Podczas przydzielania obiektów do
grup należy kierować się zasadą łączenia obiektów podobnych, czyli posiadających te same wartości
atrybutów, a rozdzielać (przypisywać do różnych grup) obiekty posiadające różne wartości atrybu-
tów. Funkcja kryterium mierzy wewnętrzny porządek wynikający z powyżej opisanego „rozłożenia”
157
poszczególnych wartości atrybutów. Wartości atrybutów stają się kryterium podziału na grupy. Po-
nieważ podziały dokonywane wg różnych atrybutów, są różne to należy ustalić kolejność (hierarchię)
poszczególnych kryteriów. Przykładem metody wykorzystującej przedstawioną zasadę jest grupo-
wanie podziałowe opisane w podrozdziale 3.5. Metoda ta nie nadaje się do grupowania niektórych
zbiorów danych, jak to przedstawiono w podrozdziale 5.4. Autor zaproponował własną metodę gru-
powania, wykorzystującą właściwości atrybutów jako kryterium podziału. Zaproponowana metoda
nadaje się do grupowania danych postaci symbolicznej i lingwistycznej, co wykazano w rozdziałach
5 i 6. Wykazano to poprzez porównanie do pozostałych metod, wskazując, że przedstawiona metoda
uzyskuje poprawne rezultaty dla każdej z analizowanych zbiorów danych. Uzyskane wyniki stanowią
przesłankę do dalszej pracy nad formalnym zbadaniem przedstawionej metody. Na uwagę zasługuje
nowa forma prezentacji wyniku grupowania poprzez listę reguł. Doświadczenie potwierdza przy-
datność takiej formy prezentacji w procesie eksploracji danych. Analiza wyników wykazała większą
elastyczność form grup w stosunku do tych uzyskiwanych metodami FCMdd oraz hierarchicznymi,
co przekłada się na uzyskaniu lepszych wartości funkcji kryterium.
Szczegółowa specyfikacja różnic pomiędzy proponowaną metodą grupowania a innymi metodami:
• od metod iteracyjnych i aglomeracyjnych różni się oparciem wyłącznie o funkcję kryteriumodwzorowującego jakość podziału, bez konieczności stosowania miary podobieństwa dla poje-
dynczych obiektów czy grup,
• brak konieczności definiowania funkcji jądra i zapewnienia spełnienia kryterium zbieżności, takjak jest to wymagane dla grupowania iteracyjnego,
• prezentacja wyników w postaci listy decyzyjnej, w miejsce dendogramu dla metody hierar-chicznej oraz elementów wzorcowych dla metody iteracyjnej;
• algorytmy genetyczne są stosowane do grupowania poprzez adaptację różnych metod grupo-wania (np. iteracyjnych lub deglomeracyjnych), przedstawiono nowy sposób wykorzystania
algorytmu genetycznego w procesie grupowania, co dało polepszenie otrzymywanych wyników,
• przedstawiona metoda posiada wiele wspólnych cech w stosunku do metody deglomeracyjnej:również jest oparta o funkcję kryterium, reprezentacja w postaci listy decyzyjnej jest szczegól-
nym przypadkiem grafu; natomiast różnice to pewne ograniczenia metody deglomeracyjej: dla
wariantu opartego o selekcję pojedynczego atrybutu według którego dokonuje się podziału, co
stanowi duże ograniczenie w konstruowaniu grup; a w przypadku testowania każdego możli-
wego podziału złożoność obliczeniowa jest porównywalna z algorytmem pełnego przeglądu.
Przedstawione wyniki badań stanowią przesłankę do dalszych prac nad zaproponowanymi me-
todami. Doświadczalnie potwierdzono istnienie zbiorów danych, dla których przedstawiona metoda
158 Podsumowanie
daje lepsze wyniki niż inne znane metody grupowania. Oprócz doskonalenia samych metod grupo-
wania, co zostało już zaznaczone we wnioskach z rozdziału 4 należy również odszukać dziedziny, dla
których podane metody będą efektywne.
Kierunki dalszych badań
Praca ta nie wyczerpuje całości prezentowanej problematyki. Kierunków do dalszych badań do-
starczają wszystkie etapy prowadzonych prac. W każdym z nich można dokonać pogłębionych lub
zakrojonych na szerszą skalę badań, co sygnalizowano w treści poszczególnych rozdziałów. Główny
kierunek dalszych badań, które autor zamierza prowadzić, związane są z obszarami powiązanymi
z proponowaną metodą grupowania opartą o lisy decyzyjne. Istotne jest przeprowadzenie badań w
zakresie formalnych. Dotyczy to przede wszystkim badań weryfikacją poprawności metody, określe-
niem obszaru zastosowań oraz oszacowaniu złożoności obliczeniowej. Dalsze badania dotyczyć winny
poszukiwania nowych algorytmów wykorzystującymi przedstawioną metodę grupowania.
Drugi obszar badawczy obejmuje prace nad zwiększeniem właściwości użytkowych podanych
metod eksploracji, w tym nad możliwościami wdrożenia proponowanych rozwiązań w rzeczywistych
przedsiębiorstwach. Temu również służą prowadzone prace nad rozwojem programu do grupowania
danych w postaci symbolicznej. Kolejny obszar to badania nad doborem funkcji stosowanych w
algorytmach do porównywania danych symbolicznych, chodzi przede wszystkim o funkcje odległości
i funkcje oceny jakości grupowania. Jak już wspomniano we wnioskach, mają one krytyczny wpływ
na jakość uzyskiwanych wyników, właściwy dobór funkcji stanowi kluczowy punkt w dostosowaniu
metod grupowania do przetwarzania danych z danej dziedziny.
Podziękowania
Panu dr hab. inż. Janowi Kałuskiemu prof. Pol. Śl. promotorowi tej pracy składam serdeczne
podziękowania za wsparcie merytoryczne, nieocenioną pomoc, okazaną życzliwość, zachęcanie do
podejmowania kolejnych wysiłków oraz doprowadzenie do szczęśliwego zakończenia.
Specjalne podziękowania dla prof. dr hab. inż. Jacka Łęskiego za inspirację do pracy i wiele
cennych uwag.
Dziękuję swojej żonie za nieustanne dopingowanie do intensywniejszej pracy i podtrzymywanie
na duchu w chwilach zwątpienia.
Bibliografia
[1] R. Agrawal, T. Imielinski, A. N. Swami. Mining association rules between sets of items in
large databases. P. Buneman, S. Jajodia, redaktorzy, Proceedings of the 1993 ACM SIGMOD
International Conference on Management of Data, strony 207–216, Washington, 26–28 1993.
[2] R. Agrawal, H. Mannila, R. Srikant, H. Toivonen, A. Verkamo. Fast discovery of association
rules. Advances in Knowledge Discovery and Data Mining, strony 307–328, 1996.
[3] R. Agrawal, M. Mehta, J. C. Shafer, R. Srikant, A. Arning, T. Bollinger. The quest data
mining system. E. Simoudis, J. Han, U. M. Fayyad, redaktorzy, Proc. 2nd Int. Conf. Knowledge
Discovery and Data Mining, KDD, strony 244–249. AAAI Press, 2–4 1996.
[4] M. R. Andenberg. Cluster analysis for applications. Academic Press, 1973.
[5] C. Argyris. Reasoning, Learning and Action. Jonssey-Bass, San Francisco, CA, 1982.
[6] J. Bair, J. Fenn, R. Hunter, D. Bosik, E. Brethenoux. Foundations for enterprise knowledge
management. GARTNER, 1997.
[7] G. H. Ball, D. J. Hall. A clustering technique for summarizing multivariate data. Behavioral
Science, 12:153–155, 1967.
[8] A. Baraldi, L. Schenato. Soft-to-hard model transition in clustering: a review. Raport insty-
tutowy TR-99-010, ICSI, Berkeley, CA, 1999.
[9] P. Berkhin. Survey of clustering data mining techniques. Raport instytutowy, Accrue Software,
San Jose, CA, 2002.
[10] A. Bernstein, S. Clearwater, S. Hill, C. Perlich, F. Provost. Discovering knowledge from
relational data extracted from business news. S. Dzeroski, L. D. Raedt, S. Wrobel, redaktorzy,
MRDM 2002, strony 7–20. University of Alberta, Edmonton, Canada, July 2002.
[11] M. J. Berry, G. Linoff. Data Mining Techniques. John-Wiley, New York, 1997.
159
160 BIBLIOGRAFIA
[12] J. C. Bezdek. Pattern recognition with fuzzy objective algorithms. Plenum Press, 1981.
[13] J. C. Bezdek, N. R. Pal. Some new indexes of cluster validity. IEEE Transaction on Systems,
Man, and Cybernetics, 28:301–315, 1998.
[14] C. L. Blake, C. J. Merz. UCI repository of machine learning databases, 1998.
[15] L. Bolc, J. Cytowski. Metody przeszukiwania heurystycznego. PWN, Warszawa, 1989.
[16] T. Borys. Elementy teorii jakości. PWN, Warszawa, 1980.
[17] L. Breiman, J. H. Friedmann, R. Olshen, C. J. Stone. Classification and regresion trees. 1994.
[18] S. Brin, R. Motwani, C. Silverstein. Beyond market baskets: generalizing association rules
to correlations. ACM SIGMOD International Conference on Management of Data, strony
265–276, 1997.
[19] S. Brin, R. Motwani, J. D. Ullman, S. Tsur. Dynamic itemset counting and implication rules
for market basket data. ACM SIGMOD International Conference on Management of Data,
strony 255–264, 1997.
[20] I. Campbell. Supporting information needs by ostensive definition in an adaptive information
space, 1995.
[21] C. Cardie. Using decision trees to improve case–based learning. Proceedings of the Tenth
International Conference on Machine Learning, strony 25–32. Morgan Kaufmann Publishers,
Inc., 1993.
[22] L. D. Catledge, J. E. Pitkow. Characterizing browsing strategies in the World-Wide Web.
Computer Networks and ISDN Systems, 27(6):1065–1073, 1995.
[23] R. B. Cattell. The Scientific Use of Factor Analysis in the Behavioral and Life-Sciences.
Plenum Press, New York, 1978.
[24] V. D. Chase. Made to Order - IBM makes sense of unstructured data. IBM, 2002.
[25] M.-S. Chen, J. Han, P. S. Yu. Data mining: an overview from a database perspective. IEEE
Trans. On Knowledge And Data Engineering, 8:866–883, 1996.
[26] J. Cheng, R. Greiner, J. Kelly, D. Bell, W. Liu. Learning bayesian networks from data: an
information-theory based approach. Artif. Intell., 137(1-2):43–90, 2002.
[27] P. Cichosz. Systemy uczące się. WNT, Warszawa, 2000.
BIBLIOGRAFIA 161
[28] K. J. Cios, W. Pedrycz, R. Swiniarski. Data Mining Methods for Knowledge Discovery. Kluwer,
1998.
[29] P. Clark, T. Niblett. The CN2 induction algorithm. Machine Learning, 3:261–283, 1989.
[30] G. Das, H. Mannila, P. Ronkainen. Similarity of attributes by external probes. Knowledge
Discovery and Data Mining, strony 23–29, 1998.
[31] P. M. Dean. Molecular Similarity in Drug Design. Blackie Academic and Profesional, London,
1995.
[32] C. Delobel, M. Adiba. Relacyjne bazy danych. WNT, Warszawa, 1989.
[33] W. Duch, Y. Hayashi. Computational intelligence methods and data understanding. Interna-
tional Symposium on Computational Intelligence, 2000.
[34] R. O. Duda, P. E. Hart. Pattern Classification and Scene Analysis. Wiley, New York, 1973.
[35] H. Dyckhoff, W. Pedrycz. Generalized means as model of compensative connectives. Fuzzy
Sets and Systems, 14:143–154, 1984.
[36] R. Fagin, L. Stockmeyer. Relaxing the triangle inequality in pattern matching. IJCV: Inter-
national Journal of Computer Vision, 30, 1998.
[37] D. Fasulo. An analysis of recent work on clustering algorithms. Raport instytutowy TR-01-
02-02, University of Washington, 1999.
[38] U. Fayyad, G. Piatetsky-Shapiro, P. Smyth. From data mining to knowledge discovery in
databases. Ai Magazine, 17:37–54, 1996.
[39] U. M. Fayyad, G. Piatetsky-Shapiro, P. Smyth, R. Uthurusamy. Advances in Knowledge
Discovery and Data Mining. AAAI/MIT Press, 1996.
[40] D. Fisher. Iterative optimization and simplification of hierarchical clusterings. Journal of
Artificial Intelligence Research, 4:147–180, 1996.
[41] W. J. Frawley, G. Piatetsky-Shapiro, C. J. Matheus. Knowledge discovery in databases - an
overview. Ai Magazine, 13:57–70, 1992.
[42] A. Freitas. A survey of evolutionary algorithms for data mining and knowledge discovery,
2001.
[43] B. Fritzke. Some competitive learning methods, 1997.
162 BIBLIOGRAFIA
[44] Z. Galil, E. Ukkonen. 6th Annual Symposium on Combinatorial Pattern Matching (CPM 95).
Springer, 1995.
[45] V. Ganti, J. Gehrke, R. Ramakrishnan. CACTUS - clustering categorical data using summa-
ries. Knowledge Discovery and Data Mining, strony 73–83, 1999.
[46] L. Garbarski, I. Rutkowski, W. Wrzosek. Marketing. Polskie Wydawnictwo Ekonomiczne,
Warszawa, 2001.
[47] E. Gatnar. Symboliczne metody klasyfikacji danych. PWN, Warszawa, 1998.
[48] T. F. Gonzalez. Clustering to minimize the maximum intercluster distance. 38:293–306, 1985.
[49] J. Gołuchowski, S. Kędzierski. Zarządzanie wiedzą w zinformatyzowanej organizacji gospodar-
czej. Akademia Informatyczna, Katowice, 1998.
[50] J. Grabmeier, A. Rudolph. Techniques of cluster algorithms in data mining. Data Mining and
Knowledge Discovery, 6:303–360, 2002.
[51] S. Guha, R. Rastogi, K. Shim. Clustering algorithm for categorical attributes. Raport insty-
tutowy, Bell Laboratories, Murray Hill, 1997.
[52] S. Guha, R. Rastogi, K. Shim. CURE: an efficient clustering algorithm for large databases.
strony 73–84, 1998.
[53] S. Guha, R. Rastogi, K. Shim. ROCK: A robust clustering algorithm for categorical attributes.
Information Systems, 25(5):345–366, 2000.
[54] P. Guidici, G. Passerone. Data mining of association structures to model consumer behaviour.
Computational statistic and data analysis, 2002.
[55] A. Gyenesei. Fuzzy partitioning of quantitative attribute domains by a cluster goodness index.
Raport instytutowy TR-00-368, TUCS, 2000.
[56] L. O. Hall, I. B. Ozyurt, J. C. Bezdek. Clustering with a genetically optimized approach.
IEEE Trans. on Evolutionary Computation, 3(2):103–112, 1999.
[57] E. Han, G. Karypis, V. Kumar. Scalable parallel data mining for association rules. Proceedings
of ACM SIGMOD, 1997.
[58] E. Han, G. Karypis, V. Kumar, B. Mobasher. Clustering based on association rule hypergraphs.
Research Issues on Data Mining and Knowledge Discovery, 1997.
BIBLIOGRAFIA 163
[59] J. Han, Y. Fu. Dynamic generation and refinement of concept hierarchies for knowledge
discovery in databases. KDD Workshop, strony 157–168, 1994.
[60] J. Han, Y. Fu. Discovery of multiple-level association rules from large databases. Proc. of Int’l
Conf. on Very Large Data Bases (VLDB’95), Zurich, Switzerland, strony 420–431, 1995.
[61] R. J. Hathaway, J. C. Bezdek. Nefr c-means: Non-euclidean relational fuzzy clustering. Pattern
Recognition, 27:429–437, 1994.
[62] R. J. Hathaway, J. C. Bezdek, Y. K. Hu. Generalized fuzzy c-means clustering strategies using
lp norm distances. IEEE Trans. on Fuzzy Systems, 8:576–582, 2000.
[63] R. Hausser. Database semantics for natural language. Artifical Intelligence, 130:27–74, 2001.
[64] D. Heckerman. A tutorial on learning with bayesian networks, 1995.
[65] F. Herrera, E. Herrera-Viedma. Aggregation operators for linguistic weighted information.
IEEE Transactions on Systems, Man, and Cybernetics, 1997.
[66] K. Hirota. Industrial Applications of Fuzzy Technology. Springer Verlag, 1993.
[67] K. Hirota, W. Pedrycz. Fuzzy computing for data mining. Proc. of the IEEE, 87, 1999.
[68] J. H. Holland. Adaptation in natural and artificial systems. MIT Press, 1975.
[69] T. Hsu. An application of fuzzy clustering in group-positioning analysis. Proc. National Science
Council ROC(C), 10(2):157–167, 2000.
[70] A. K. Jain, R. Dubes. Algorithms for Clustering Data. Prentice Hall, New Jersey, 1988.
[71] A. K. Jain, M. N. Murty, P. J. Flynn. Data clustering: a review. ACM Computing Surveys,
31(3):264–323, 1999.
[72] R. Jakobson. W poszukiwaniu istoty języka. PIW Warszawa, 1989.
[73] K. S. Jones, R. M. Needham. Automatic term classification and retrieval. Information Pro-
cessing and Management, 4:91–100, 1968.
[74] H. Kamp, U. Reyle. From Discourse to Logic: Introduction to Modeltheoretic Semantics of
Natural Language, Formal Logic and Discourse Representation Theory. Kluwer, Dordrecht,
1993.
[75] K. A. Kaufman, R. S. Michalski. A multistrategy conceptual analysis of economic data.
[76] R. R. Kerstein. The fuzzy median and fuzzy MAD. in Proc. ISUMA-NAFIPS, 1995.
164 BIBLIOGRAFIA
[77] J. Kleinberg, C. Papadimitriou, P. Raghavan. Segmentation problems. Proceedings of the
ACM Symposium on Theory of Computing, strony 473–482, 1998.
[78] R. E. Korf. Planning as search: a quantitative approach, 1987.
[79] P. Kotler. Marketing Management: Analysis, Planing, Implementation and Control. Prentice
Hall, New Jersey, 1997.
[80] R. Krishnapuram, J. Keller. A possibilistic approach to clustering. IEEE Transactions on
Fuzzy Systems, 1(2):98–110, 1993.
[81] B. Langefors. Information systems theory. Inf. Syst., 2(4):207–219, 1977.
[82] S. Lawrence, C. L. Giles, K. Bollacker. Digital libraries and Autonomous Citation Indexing.
IEEE Computer, 32(6):67–71, 1999.
[83] L. Lee. On the effectiveness of the skew divergence for statistical language analysis. Artificial
Intelligence and Statistics, strony 65–72, 2001.
[84] A. Leouski, W. Croft. An evaluation of techniques for clustering search results, 1996.
[85] C.-S. Li, P. S. Yu, V. Castelli. Hierarchyscan: A hierarchical similarity search algorithm for
databases of long sequences. S. Y. W. Su, redaktor, Proceedings of the Twelfth International
Conference on Data Engineering, February 26 - March 1, 1996, New Orleans, Louisiana, strony
546–553. IEEE Computer Society, 1996.
[86] K.-I. Lin, R. Kondadadi. A word-based soft clustering algorithm for documents. Proceedings
of 16th International Conference on Computers and Their Applications, 2001.
[87] B. Liu, W. Hsu. Post-analysis of learned rules. AAAI/IAAI, Vol. 1, strony 828–834, 1996.
[88] H. Luhn. A statistical approach to then mechanized encoding and searching of literatury
information. IBM Journal of Research and Development, 1:4:509–317, 1957.
[89] H. Mannila. Methods and problems in data mining. ICDT, strony 41–55, 1997.
[90] A. Mazur, D. Mazur. Dokumentacja techniczna Systemu Zintegrowanego MADAR. Zabrze,
2003. http://www.madar.com.pl.
[91] D. Mazur. Wiarygodność danych zawartych w systemach informatycznych przedsiębiorstw.
Elementy wspomagania decyzji w zintegrowanych systemach kierowania produkcją, strony 39–
52. Wydawnictwo Politechniki Śląskiej, Gliwice, 2000.
BIBLIOGRAFIA 165
[92] D. Mazur. Computing similarity measure based on names of goods for fuzzy clustering.Methods
of Artificial Intelligence, Gliwice, 2002.
[93] D. Mazur. Wykorzystywanie danych określonych lingwistycznie w systemach pozyskiwania
wiedzy. SWO, Ustroń, 2002.
[94] D. Mazur. Clustering algorithm based on a sequence of discriminant rules. Methods of Artificial
Intelligence, Gliwice, 2003.
[95] D. L. Medin, E. E. Smith. Categories and concepts. Jarvard University Press, Cambrige,
Mass., 1981.
[96] R. Michalski. Searching for knowledge in a world flooded with facts. Applied Stochastic Models
and Data Analysis, 1991.
[97] R. S. Michalski, R. Stepp. Automated construction of classifications: Conceptual clustering
versus numerical taxonomy. IEEE Transactions on PAMI, 5(4):396–410, 1983.
[98] B. Mobasher, N. Jain, E. Han, J. Srivastava. Web mining: Pattern discovery from world wide
web transactions, 1996.
[99] R. T. Ng, J. Han. Efficient and effective clustering methods for spatial data mining. J. Bocca,
M. Jarke, C. Zaniolo, redaktorzy, 20th International Conference on Very Large Data Bases,
strony 144–155, Los Altos, USA, 1994. Morgan Kaufmann Publishers.
[100] N. T. Nguyen. Metody wyboru consensusu i ich zastosowanie w rozwiązywaniu konfliktów w
systemach rozproszonych. Oficyna Wydawnicza Politechniki Wrocławskiej, 2002.
[101] I. Nonaka, H. Takeuchi. Then Knowledge-Creating Company. Oxford University Press, NY,
1995.
[102] Z. Pawlak. Data analysis - the rough sets perespective. Zbiory rozmyte i ich zastosowania,
Gliwice, 2001. Wydawnictwo Politechniki Śląskiej.
[103] M. J. Pazzani, D. F. Kibler. The utility of knowledge in inductive learning. Machine Learning,
9:57–94, 1992.
[104] J. M. Peña, J. A. Lozano, P. Larrañaga. An improved bayesian structural em
algorithm for learning bayesian networks for clustering. Pattern Recogn. Lett., 21(9):779–786,
2000.
[105] W. Pedrycz, A. V. Vasilakos. Linguistic models and linguistic modeling. IEEE Transaction
on Systems, Man and Cybernetics, strony 745–757, 1999.
166 BIBLIOGRAFIA
[106] G. Piatetsky-Shapiro, W. J. Frawley. Knowledge Discovery in Databases. AAAI Press/The
MIT Press, Menlo Park, California, 1991.
[107] J. P. Pickett, redaktor. The American Heritage r© Dictionary of the English Language. Ho-ughton Mifflin, 2000.
[108] P. Pirolli, J. Pitkow, R. Rao. Silk from a sow’s ear: extracting usable structures from the
web. Proceedings of the SIGCHI conference on Human factors in computing systems, strony
118–125. ACM Press, 1996.
[109] P. Resnik. Semantic similarity in a taxonomy: An information-based measure and its applica-
tion to problems of ambiguity in natural language. Journal of Artificial Intelligence Research,
11:95–130, 1999.
[110] C. J. V. Rijsbergen. Information Retrieval, 2nd edition. Dept. of Computer Science, University
of Glasgow, 1979.
[111] R. L. Rivest. Learning decision lists. Machine Learning, 2(3):229–246, 1987.
[112] E. Rosch. Principles of categorization. E. Rosch, B. Lloyd, redaktorzy, Cognition and Catego-
rization, Connection Science. Erlbaum, 1978.
[113] E. H. Ruspini. A new approach to clustering. Information and Control, 15(1):22–32, 1969.
[114] G. Salton. Automatic term class construction using relevance - a summary of word in automatic
pseudoclassification. Information Processing and Management, 16(1):1–15, 1980.
[115] G. Salton, C. Buckley. Term weighting approaches in automatic text retrieval. Information
Processing and Management, 24(5):513–523, 1988.
[116] M. Setnes, U. Kaymak. Fuzzy modeling of client preference in data-rich marketing environ-
ments, 2000.
[117] D. A. Simovici, D. Cristofor, L. Cristofor. Generalized entropy and projection clustering of
categorical data. Proceedings of the 4th European Conference on Principles of Data Mining
and Knowledge Discovery, strony 619–625. Springer-Verlag, 2000.
[118] P. Smyth, R. M. Goodman. Rule induction using information theory. Piatetsky-Shapiro, G.
and Frawley, W.J. (Eds.),Knowledge Discovery in Databases, strony 159–176, 1991.
[119] P. L. Spirtes. Data mining tasks and methods: Probabilistic and casual networks: mining for
probabilistic networks. strony 403–409. Oxford University Press, Inc., 2002.
BIBLIOGRAFIA 167
[120] T. Starkweather, S. McDaniel, K. Mathias, D. Whitley, C. Whitley. A comparison of genetic
sequencing operators. R. Belew, L. Booker, redaktorzy, Proceedings of the Fourth International
Conference on Genetic Algorithms, strony 69–76, San Mateo, CA, 1991. Morgan Kaufman.
[121] R. E. Stepp, R. S. Michalski. Conceptual clustering: Inventing goal oriented classifications
of structured objects. J. G. Carbonell, R. S. Michalski, T. M. Mitchell, redaktorzy, Machine
Learning: An Artificial Intelligence Approach, Volume II, strony 471–498. Morgan Kaufmann,
Los Altos, CA, 1986.
[122] S. S. Stevens. Measurement, Psychophisics, and Utility. Wiley, New York, 1959.
[123] M. Valenti. Data mining – advances in decision support software and services. Frost & Sullivan,
2003.
[124] W. E. Winkler. The state of record linkage and current research problems, 1999.
[125] X. L. Xie, G. Beni. A validity measure for fuzzy clustering. TPAMI, 1991.
[126] R. R. Yager. Intelligent control of the hierarchical agglomerative clustering process. IEEE
Transactions on Systems, Man, Cybernetics – Part B: Cybernetics, 30(6):835–845, 2000.
[127] J. D. Yang. A fuzzy database model for supporting a concept-based query evaluation over
disjunctive fuzzy information, 1998.
[128] M. Yang. On a class of fuzzy classification maximum likelihood procedures. Fuzzy Sets and
Systems, 57(3):365–375, 1993.
[129] L. A. Zadeh. Fuzzy sets. Information and Control, 8:338–353, 1965.
[130] L. A. Zadeh. From computing with numbers to computing with words — from manipulation
of measurements to manipulations of perception. IEEE Trans. On Circuits and Systems,
45:105–119, 1999.
[131] L. A. Zadeh. From computing with numbers to computing with words-from manipulation
of measurements to manipulation of perceptions. IEEE Transactions on On Circuits and
Systems, strony 105–119, 1999.
[132] O. R. Zaiane, A. Foss, C.-H. Lee, W.Wang. On data clustering analysis: Scalability, constraints,
and validation. M.-S. Cheng, P. S. Yu, B. Liu, redaktorzy, Advances in Knowledge Discovery
and Data Mining, 6th Pacific-Asia Conference, PAKDD 2002, Taipei, Taiwan, May 6-8, 2002,
Proceedings, wolumen 2336 serii Lecture Notes in Computer Science, strony 28–39. Springer,
2002.
168 BIBLIOGRAFIA
[133] T. Zhang, R. Ramakrishnan, M. Livny. BIRCH: an efficient data clustering method for very
large databases. ACM SIGMOD International Conference on Management of Data, strony
103–114, 1996.
[134] W. Ziarko. The Discovery, Analysis, and Representation of Data Dependencies in databa-
ses, strony 195–209. MA. AAAI/MIT Press, wydanie Knowledge Discovery in Databases G.
Piatetsky-Shapiro and W. J. Frawley , eds. Cambridge, 1991.