pobierz plik referatu

Transkrypt

pobierz plik referatu
Rozdział monografii: 'Bazy Danych: Struktury, Algorytmy, Metody', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2006
Rozdział 43
w
Eksploracja danych semistrukturalnych z ustalonym
profilem podobieństwa
w
1 Wstęp
da
.b
w
Streszczenie. Analizę danych semistrukturalnych pod kątem wcześniej wybranych cech można porównać do analizy danych w pełni strukturalnych.
Istnieje jednak potrzeba analizy danych, o których zawartości i kontekstach
użycia trudno przesądzać w momencie tworzenia modelu analitycznego.
Dla analityków takich danych pomocne są narzędzia, które potrafią same wykryć podobieństwa pomiędzy danymi.
Zaproponowana metoda bazuje na algorytmie tree-edit distance, w którym
podstawowe operacje edycyjne realizowane są za pomocą deklaratywnego języka przekształceń XSLT. Podejście deklaratywne pozwala na tworzenie narzędzi dla dowolnych danych XML, które analizują podobieństwo wg profilu
zdefiniowanego przez użytkownika. Automatyzacją może zostać również
ob.jęty etap tworzenia profilu (uczenie maszynowe), jak i późniejszej analizy
danych, w których podobieństwa zostały wykryte (data mining).
pl
s.
Zwiększająca się liczba nowoczesnych aplikacji bazodanowych powoduje szybki przyrost
danych. Rynek wymaga opracowania efektywnych algorytmów do analizy, zwłaszcza
w zakresie formułowania i wykonywania zapytań przybliżonych. W miarę komplikowania
się modelu danych, które nierzadko zawierają elementy multimedialne (obrazy, molekuły,
części mechanicznych konstrukcji), algorytmy te stają się coraz bardzie złożone. Algorytmy bezpośrednio oparte na indeksowaniu nadają się dla umiarkowanie wymiarowych prostych danych – nie sprawdzają się natomiast w środowiskach, gdzie liczba wymiarów jest
znaczna i/lub funkcja odległości jest zmienna [1].
Wiele danych rozproszona jest pomiędzy dużą liczbą serwerów w całym Internecie.
Ważnym stają się metody polegające na porządkowaniu i klasyfikowaniu takiego materiału
[2].
Dane multimedialne, lub ogólniej, semistrukturalne nie dają sortować w tradycyjnym rozumieniu tego słowa tak, jak to miało miejsce w danych wysoce ustrukturalizowanych
w relacyjnych bazach danych. Pojęcia takie jak "większy" czy "mniejszy" w takich danych
nie mają sensu, co czyni dotychczasowe algorytmy porządkujące nieskutecznymi w nowej
sytuacji. Zdefiniowanie funkcji podobieństwa ten obraz zmienia, zaczynają mieć sens zapytania przybliżone. Funkcja podobieństwa (czasem zwana funkcją odległości – ang. distance
Bartłomiej Jabłoński: Uniwersytet Łódzki, Wydział Matematyki,
ul. Banacha 22, 90-238 Łódź, Polska
email:[email protected]
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2006
Rozdział monografii: 'Bazy Danych: Struktury, Algorytmy, Metody', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2006
B. Jabłoński
w
function) pozwala wykryć różnice pomiędzy poszczególnymi dokumentami. Jeśli funkcja
zwraca nieujemne wartości, jest symetryczna i spełnia warunek trójkąta nazywana jest
funkcją metryczną, przestrzeń danych jest metryczna i można stosować wszelkie analizy
danych bazujące na obliczeniach w przestrzeniach metrycznych. Najbardziej popularne
zapytania przybliżone to: k najbliższych (najbardziej podobnych) sąsiadów i zapytania zakresowe (wszystkie dokumenty podobne nie mniej niż p) [3].
Rosnąca popularność zastosowań XML w bazach danych sprawia, że pojawiają się nowe
dokumenty – użytkownicy stawiani są w sytuacji, w której pojawiają się dokumenty o nieznanej wcześniej strukturze. Takie dane też muszą być analizowane [4], [13].
Klastrowanie jest jedną z najważniejszych metod nienadzorowanego wydobywania wiedzy, czyli służy do znajdowania "ukrytych" zależności w kolekcji danych. Potoczna definicja klastrowania wyraża się nastepującymi słowami: "proces organizowania obiektów
w grupy, których elementy są jakoś powiązane ze sobą". Klaster jest zatem kolekcją obiektów, które są do siebie podobne, zaś elementy należące do różnych klastrów są do siebie
"niepodobne" [5].
Użyte w poprzednich akapitach wyrazy "podobny" i "niepodobny" często są stosowane
w potocznym języku. Na użytek analizy muszą one jednak zostać doprecyzowane.
W podrozdziale 3 znajduje się propozycja definicji podobieństwa uwzględniająca indywidualne preferencje użytkownika. Podrozdział 4 omawia podstawowe wnioski wynikające
z implementacji systemu opartego na tej definicji.
W przestrzeniach metrycznych techniki klastrowania dają się zoptymalizować poprzez
pośrednie obliczenia odległości na podstawie danych wyliczonych wcześniej i buforowanych specjalnie w tym celu [3]. Trudności zaczynają się wtedy, gdy tej metryki nie ma
i używa się podobieństwa w jego potocznym znaczeniu. W podrozdziałach 5 i 6 przedstawiono próbę eksploracji wyników, czyli znalezionego w dokumentach podobieństwa.
da
.b
w
w
2 Przegląd dotychczasowych badań
pl
s.
Eksploracja danych semistrukturalnych to nowa dziedzina badań. Wśród metod szukania
podobieństwa w dokumentach XML przeważają głównie metody oparte o algorytm treeedit distance, którego ideę podał Levenshtein (1965).
W zakresie klastrowania dokumentów XML opracowano kilka algorytmów, z czego
tutaj można wymienić trzy prace: algorytmy bazujące na podejściu tree-edit distance [20],
[21] oraz algorytm prezentujący inne efektywniejsze według autorów podejście [19].
We wspomnianych tu pracach operacje edycyjne dokonywane na drzewach są bardzo
proste i najczęściej sprowadzają się do dodawania/usuwania pojedynczych węzłów. W proponowanej w [6] metodzie wykorzystującej transformaty XSL zakłada się, że operacje te
mogą być dowolnie skomplikowane, a jedyne ograniczenia wynikają ze składni stosowanego języka. Podejście to pozwala na dokładniejsze odwzorowanie podobieństwa rozumianego przez użytkownika końcowego.
3 Miara podobieństwa dokumentów XML
Podobieństwo dokumentów można zmierzyć. Innymi słowy konstrukcja funkcji, która dla
dwóch dokumentów zwraca pewną wartość rzeczywistą utożsamianą z podobieństwem jest
możliwa. Cały kłopot polega na tym, aby funkcja taka z jednej strony uwzględniała indywi430
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2006
Rozdział monografii: 'Bazy Danych: Struktury, Algorytmy, Metody', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2006
Eksploracja danych semistrukturalnych z ustalonym profilem podobieństwa.
w
dualne wymagania poszczególnych użytkowników, z drugiej – spełniała wymagania analityczne (nieujemność, zwrotność, symetryczność) i z trzeciej – dawała się policzyć w akceptowalnym dla użytkownika czasie.
Propozycja takiej funkcji mierzącej podobieństwo dla dokumentów XML opisana została w [6]. Zakłada się, że każdy z użytkowników definiuje pewien zestaw przekształceń i nadaje im wagi. Jeżeli da się skonstruować skończony ciąg złożony z tych przekształceń
(przekształcenia mogą się wielokrotnie powtarzać), który przekształca jeden dokument
w drugi, to podobieństwo to można wyrazić jako sumę wag przekształceń tego ciągu.
Przykładową sytuację przedstawia rys. 1.
da
.b
w
w
Rys. 1. Rysunek przedstawia zbiór dokumentów wejściowych (oznaczonych dużą literą D)
i pewnych dokumentów pośrednich (oznaczonych małą literą d) uzyskanych w wyniku
zastosowania trzech transformacji. Dokumenty zawierają opis ułamków matematycznych
(np. w MathML). Trzy transformacje opisują podstawowe działania na tych ułamkach: r –
rozkład na czynniki pierwsze, s – skrócenie o wspólny czynnik, z – wymnożenie czynników pierwszych. Dla uproszczenia pominięto transformacje, które nie zmieniają niczego
(np. rozkład na czynniki liczby już rozłożonej)
pl
s.
Przedstawiona definicja choć prosta, to jednak nie spełnia założonych wcześniej podstawowych kryteriów: analitycznego i praktycznego. Po pierwsze wagi przypisywane przekształceniom muszą być nieujemne (dopuszcza się wagę równą 0 – oznacza ona przekształcenie
definiujące tożsamość dwóch dokumentów). Każdy dokument przed analizą jest,
niezależnie od zdefiniowanych profilów przeksztacany do postaci kanonicznej [18], która
eliminuje różnice wynikające z samego zapisu danych, a nie znaczenia tych danych. Po
drugie, język opisu przekształcenia musi być na tyle elastyczny, aby umożliwiał zmiany
zarówno ze względu na strukturę dokumentu, jak i zawartość poszczególnych znaczników.
Transformaty dokumentów XML opisane przy pomocy języka XSLT v2.0 pozwalają to
kryterium spełnić. Po trzecie, istnienie transformacji (bądź ciągu transformacji) przekształcającej A w B nie gwarantuje istnienia transformacji odwrotnej (transformata taka w ogólnym przypadku nie istnieje lub nie daje się praktycznie skonstruować). Definicja podobieństwa musi zostać zatem rozszerzona o warunek symetrii: jeśli A i B są podobne, to B i A są
podobne w takim samym stopniu. Po czwarte, ponieważ transformata XSLT może analizować tylko jeden dokument wejściowy, to bez kolejnego rozszerzenia definicji nie jest możliwe stwierdzenie podobieństwa polegającego np. na identyczności fragmentów w dwóch
różnych dokumentach. Kolejne rozszerzenie definiuje podobieństwo dokumentów A i B,
gdy istnieje wspólny dokument C, taki że istnieją dwa ciągi transformacji (odpowiednio
{ai} oraz {bi}), które przeprowadzają A i B we wspólny dokument C (każdy taki ciąg
przekształceń nazywamy ścieżką) – miarą tego podobieństwa jest suma wag tych dwóch
431
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2006
Rozdział monografii: 'Bazy Danych: Struktury, Algorytmy, Metody', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2006
B. Jabłoński
ciągów. Dla dokumentów, dla których nie istnieje żadna ścieżka przyjmuje się wartość podobieństwa jako nieskończenie wielką (+∞).
Dla sytuacji przedstawionej na rys. 1. można wyznaczyć macierz odległości, którą tutaj
przedstawiono w tabeli 1.
Tabela 1. Macierz odległości
w
D1/3
D2/8
D6/24
D1/4
D1/3
D2/8
D6/24
D1/4
0
+∞
+∞
+∞
+∞
0
3
1
+∞
3
0
2
+∞
1
2
0
w
w
da
.b
w
Jeśli dla dwóch danych dokumentów A i B istnieje wiele ścieżek, to można przyjąć, że
podobieństwo między nimi jest pewną funkcją tych ścieżek. W badaniach wykorzystano
dwa modele: 1. liczy się tylko ścieżka najkrótsza, 2. liczy się każda ścieżka, ale im dłuższa
tym mniejszy wpływ na końcową wartość podobieństwa.
Wybór transformacji XSLT jako języka opisu transformacji podyktowany został założeniem, że definicja powinna być na tyle uniwersalna, aby można ją było stosować
w dowolnych gałęziach przemysłu, w których dane mają różne struktury. Język ten:
− pozwala na analizę zarówno struktury, jak i zawartości poszczególnych znaczników,
− jest uznanym standardem,
− istnieje wiele parserów tego języka,
− daje się automatycznie modelować.
Ten ostatni punkt wykorzystany został do automatycznego generowania transformat. Podczas eksperymentów przeprowadzonych na implementacji opisanej w kolejnym podrozdziale okazało się, że stosunkowo trudno jest zdefiniować w języku formalnym, to co w języku potocznym dany użytkownik określa mianem podobieństwa. Przykładowo, stworzenie
transformaty XSLT realizującej podobieństwo polegające na tym, że "dwa obrazy muszą
mieć jednocześnie kółko i kwadrat leżące blisko siebie" nawet dla doświadczonego programisty jest pewnym wyzwaniem, a dla przeciętnego użytkownika barierą nie do pokonania.
Trwają prace nad zastosowaniem algorytmów ewolucyjnych do automatycznego generowania takich przekształceń (i wag) na podstawie zbioru testowego przygotowanego przez
użytkownika. W zbiorze takim, użytkownik arbitralnie ustala odległości pomiędzy dokumentami, które służą następnie do zbudowania minimalnego zestawu ważonych transformat pozwalających te odległości otrzymać.
pl
s.
4 Implementacja systemu XMLDist
Opisaną tu definicję podobieństwa dokumentów XML zaimplementowano w bazie danych
Oracle. Podstawowe założenia, jakimi kierowano się przy tworzeniu systemu to:
− w bazie danych może być zdefiniowane wiele różnych profilów użytkowników,
− ta sama transformacja może być użyta w wielu profilach (może mieć wtedy różne
wagi),
− model liczenia podobieństwa dla wielu ścieżek określony jest w profilu,
− system powinien umożliwiać analizę znacznych ilości danych.
System na wejściu dostaje pewną pulę dokumentów oraz definicje profili, a następnie tworzy i stosuje wszystkie możliwe ciągi przekształceń. Jako pośredni wynik otrzymuje się
432
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2006
Rozdział monografii: 'Bazy Danych: Struktury, Algorytmy, Metody', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2006
Eksploracja danych semistrukturalnych z ustalonym profilem podobieństwa.
w
graf złożony z dokumentów wejściowych oraz pewnej (znacznej) liczby dokumentów pośrednich wynikających z wielokrotnego przekształcania dokumentów wejściowych w celu
wyznaczenia ścieżek. Kolejny etap to wykrycie ścieżek dla każdej pary dokumentów oraz
policzenie sum wag dla tych ścieżek dla każdego z profilów oddzielnie. Wynik końcowy to
zestaw macierzy odległości, po jednej dla każdego profilu.
Łatwo się zorientować, że dla odpowiednio długiego ciągu (a taki można utworzyć zawsze poprzez wielokrotnie powtarzanie nawet jednej transformaty) wyznaczanie kolejnych
dokumentów pośrednich w nadziei, że gdzieś na końcu pojawi się ten pożądany jest nieefektywne ze względu na czas obliczeń. Powstaje zatem potrzeba wprowadzenia dodatkowego kryterium, które w sposób arbitralny ograniczy długość ścieżek. Możliwe są tutaj
dwa sposoby ograniczania: na maksymalną liczbę transformat w ścieżce oraz na maksymalną wagę ścieżki. W zaimplementowanym modelu zastosowana oba te ograniczenia, choć
charakter zdefiniowanych transformat ani razu nie doprowadził do ich zastosowania.
Wszystkie transoformaty miały bowiem charakter redukujący – wybierały z dokumentów
jakąś charakterystyczną część/element (w dokumentach SVG wybierane były przykładowo
poszczególne elementy grafiki wektorowej: linie, wielokąty, okręgi, definicje kolorów
i wzorców, itp).
Choć przedstawiona tu definicja odległości pozwala liczyć tę odległość na żądanie, to
ponieważ nie ma w niej konstruktywnego algorytmu znajdowania ścieżki, wyliczanie podobieństwa polega na wygenerowaniu wszystkich możliwych ścieżek, a następnie wybraniu
tych pasujących do danych dokumentów. Opłaca się przed samym liczeniem podobieństwa
przygotować te ścieżki, albowiem wygenerowane dla dwóch danych dokumentów ścieżki
mogą z powodzeniem służyć do wyznaczenia odległości w innych dokumentach. W pewnym sensie można je nazwać indeksem opartym na dokumentach i pozwalającym na szybsze wyznaczenie podobieństwa. Uzyskane eksperymentalnie wyniki pokazały, że utrzymywanie na bieżąco tego indeksu jest niezwykle kosztowne i trudne do zoptymalizowania.
Dlatego też, na obecnym etapie implementacji zaleca się najpierw przygotowanie dokumentów do badania, a dopiero w dalszej kolejności tworzenie indeksu i macierzy odległości. Czas tworzenia takiego indeksu można znacznie skrócić poprzez równoległe przetwarzanie wielu dokumentów jednocześnie.
Ważną cechą tego systemu jest to, że dokumenty wejściowe są fizycznie oddzielone od
dokumentów pośrednich generowanych w celu wyznaczenia ścieżek, czyli indeksu podobieństwa. Pozwala to na indeksowanie dokumentów znajdujących się na innych serwerach
w sieci Internet lub w sytuacjach, w których istotne jest zachowanie prywatności (system
może udzielać odpowiedzi wyłącznie o charakterze statystycznym).
W tak zdefiniowanej funkcji podobieństwa warunek trójkąta nie jest spełniony. Otrzymujemy zatem przestrzeń dokumentów, która nie jest metryczna. Rodzi to konsekwencje
w postaci nieprzydatności istniejących algorytmów stosowanych w eksploracji danych.
Możliwe są dwa wyjścia: skonstruować nowe algorytmy lub znaleźć sposób na "umetrycznienie" przestrzeni. Drugie rozwiązanie oczywiście będzie się wiązało z pewnymi dodatkowymi założeniami, które w określonych sytuacjach mogą nie zostać zaakceptowane przez
użytkownika systemu.
da
.b
w
w
pl
s.
5 Klastrowanie w przestrzeni niemetrycznej
Jako podstawę przyjęto znany od wielu lat iteracyjny algorytm k-średnich (k-means) [5].
W algorytmie tym na samym początku wybiera się liczbę k, a następnie losowo (pewne
optymalizacje algorytmu zakładają ograniczoną dowolność w wyborze) dobiera się z prze433
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2006
Rozdział monografii: 'Bazy Danych: Struktury, Algorytmy, Metody', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2006
B. Jabłoński
w
strzeni danych k punktów - centrów. Kolejny etap to dzielenie przestrzeni danych na k klas
wg kryterium odległościowego: obiekt należy do klasy zawierającej najbliższe centrum.
Następnie w każdej klasie wyznacza się nowy punkt centrum, którym zostaje najczęściej
jakaś średnia (ważona, geometryczna, ...). Dla tych średnich tworzy się nowy podział i...
cykl się zamyka. Po pewnym czasie punkty centralne (a tym samym podział na klasy) się
stabilizuje, co jest sygnałem do zakończenia pętli.
Algorytm ten został adaptowany do sytuacji, w której:
− nie każda para dokumentów może mieć skończoną odległość,
− nie sposób wyznaczyć średniej z dokumentów.
Wybór liczby k klastrów i punktów centralnych jest identyczny jak w tradycyjnym algorytmie i podobnie jak tam, zaleca się wykonanie kilku analiz dla różnych wartości parametru k. Punkty centralne można losować z jednym zastrzeżeniem: ponieważ dopuszcza się
istnienie zerowych wag, to punkty, czyli dokumenty, nie mogą wskazywać na dokumenty
tożsamościowo równe, czyli takie, gdzie istnieje ścieżka, w której suma wag jest równa
zero).
Kolejny etap to podział wszystkich dokumentów na k klas. Aby dokonać tego w jednym
kroku musiałyby istnieć zdefiniowane skończone odległości pomiędzy wszystkimi dokumentami a wybranymi punktami centralnymi. W większości zbadanych przypadków sytuacja taka nie wystąpiła, stąd potrzebna była modyfikacja. Proces ten polega na przyporządkowaniu w pierwszej kolejności tych dokumentów, które mają zdefiniowaną odległość
z punktem centralnym. Każdy następny krok to przyporządkowanie dokumentów, które
mają zdefiniowaną odległość z jednym z dokumentów przyporządkowanych wcześniej.
Proces ten odbywa się równolegle dla wszystkich punktów centralnych i kończy się
w chwili przyporządkowania wszystkich dokumentów (patrz: rys. 2). Tam gdzie w chwili
podejmowania decyzji o przyporządkowaniu dokumentu do klasy, dokument ten posiadał
skończone odległości do kilku klas, decyduje oczywiście odległość najmniejsza. Grupa dokumentów tożsamych (pomiędzy którymi są tylko odległości zerowe) traktowana jest
zawsze łącznie – grupa nie jest dzielona.
Etap wyznaczania "średniej" sprowadza się do wyznaczenia takiego dokumentu, z którego jest najbliżej do wszystkich pozostałych. Dla każdego dokumentu liczy się sumę odległości do wszystkich pozostałych dokumentów zgrupowanych w tym samym klastrze.
Ponieważ przypadek, w którym pomiędzy dowolnymi dwoma dokumentami odległość jest
równa nieskończoności występował często, to w wielu sytuacjach nie było czego porównywać bo wyliczone sumy dla każdego dokumentu były nieskończone. W tym celu na samym
początku wyznacza się pewną skończoną stałą większą od największej odległości w całym
zbiorze, która przy sumowaniu zastępuje wspomniane nieskończoności. Zatem dokument,
który ma odległość nieskończoną z jakimś innym nie jest eliminowany z obliczeń, a jednocześnie preferowane są dokumenty, które takich nieskończonych odległości mają jak
najmniej.
Proces ten podobnie jak w klasycznym algorytmie powtarza się iteracyjnie, a ponieważ
w każdym kroku uzyskuje się lepsze przybliżenie, to w którymś momencie zmiany punktów centralnych i podział na klastry stabilizuje się osiągając lokalne minimum. Wielokrotne
powtórzenie algorytmu dla różnych punktów początkowych daje szansę na znalezienie
jeszcze lepszego rozwiązania.
Warto zauważyć, że sieć połączeń definiujących skończone podobieństwo między dokumentami nie musi być grafem spójnym (patrz rys. 1). W takim przypadku oczywiści podział na klastry ma sens wyłącznie dla spójnych jego podgrafów.
da
.b
w
w
pl
s.
434
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2006
Rozdział monografii: 'Bazy Danych: Struktury, Algorytmy, Metody', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2006
Eksploracja danych semistrukturalnych z ustalonym profilem podobieństwa.
w
w
w
da
.b
Rys. 2. Kolejne etapy przyporządkowania dokumentów do poszczególnych klas. Liczby
przy połączeniach oznaczają odległość (czyli miarę podobieństwa). Linią przerywaną zaznaczono te odległość, która w danym etapie miała wpływ na wybór klasy. Kolor ciemniejszy oznacza obszar wyboru w danym etapie
6 Wyodrębnianie metrycznych atrybutów w przestrzeni dokumentów
XML
pl
s.
Klasyczne algorytmy bazujące na analizie danych liczbowych w przestrzeniach metrycznych można zastosować pod warunkiem, że da się wyodrębnić liczbowe atrybuty z dokumentów. W poprzednich podrozdziałach opisywano podejści opierające sie głównie na badaniu zależności pomiędzy dokumentami bazującymi na funkcji podobieństwa. W tradycyjnej eksploracji danych mamy podejście odwrotne: dysponujemy zestawem atrybutów i dla
nich definiuje się funkcję odległości (nie dla wszystkich algorytmów funkcja taka jest potrzebna). Atrybutami liczbowymi mogą w naszym przypadku być odległości (w sensie
podobieństwa) od pewnych dokumentów wzorcowych. Wzorce te powinny być na tyle
uniwersalne, aby wyznaczone odległości w większości były skończone.
Można zatem utworzyć wzorzec piękna, stylu kubistycznego, muzyki rockowej, łańcucha DNA kodującego dane białko, itd. Definiowanie dokumentów wzorcowych może być
trudne, gdyż muszą one zawierać wszystkie cechy charakterystyczne danego stylu/nurtu.
Wydaje się, że można zastosować w tym miejscu podejście ewolucyjne, przedstawione
wcześniej dla przypadku zdefiniowania profilu użytkownika.
7 Podsumowanie
O ile dla danych strukturalnych metody wyszukiwania wiedzy są już względnie dobrze
poznane, o tyle dane semistrukturalne wciąż stanowią pole do odkryć nowych metod analitycznych. Zaprezentowana propozycja mierzenia podobieństwa pomiędzy dokumentami
XML została zaimplementowana i czeka w tej chwili na praktyczne zastosowania.
435
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2006
Rozdział monografii: 'Bazy Danych: Struktury, Algorytmy, Metody', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2006
B. Jabłoński
w
Definicja podobieństwa uwzględnia indywidualne potrzeby użytkowników i generuje
macierz odległości. Podobnie jak w otaczającej nas rzeczywistości, tak i tutaj podobieństwo
jest nieprzechodnie, czego konsekwencją jest utworzenie niemetrycznej przestrzeni
dokumentów. Niemożność bezpośredniego stosowania algorytmów eksploracyjnych
wymaga ich zaadoptowania lub znalezienia sposobu na odwzorowanie niektórych cech
dokumentów do przestrzeni metrycznej.
Istotnym atutem wprowadzonej metody mierzenia podobieństwa jest zastosowanie transformat opisanych standardem XSLT. Pomimo, iż współczesne parsery nie są dostatecznie
szybkie, by zaprezentowaną tu analizę stosować w profesjonalnych hurtowaniach danych
(pełna analiza, od zbudowania indeksu do podziału na klastry, dla 1000 dokumentów z grafiką wektorową i 6 transformacjami zajmuje ok 3 godz.), to zastosowanie się do uznanych
standardów pozwala mieć nadzieję, że w przyszłości wiele ośrodków programistycznych
będzie nad tym problemem pracować.
w
Literatura
6.
7.
8.
9.
10.
11.
13.
14.
15.
16.
17.
18.
19.
20.
21.
pl
s.
12.
Seidl T., Kriegel H.-P.: Optimal Multi-Step k-Nearest Neighbor Search, SIGMOD '98
Dumais S., Chen H.: Hierarchical Classification of Web Content, SIGIR 2000
Traina C., Traina A., Filho R., Faloutsos C.: How to Improve the Pruning Dynamic Metric
Access Methods, CIKM '02
World Wide Web Consortium. Extensible Markup Language (XML), http://www.w3.org/XML
Mateucci M., A Tutorial On clustering Algorithms
http://www.elet.polimi.it/upload/matteucc/Clustering/tutorial_html/
Jabłoński B., Zakrzewicz M.: Ocena podobieństwa dokumentów XML. Mat. konf. I Krajowej
Konferencji Naukowej Technologie Przetwarzania Danych. Poznań 2005
Polyzotis N., Garofalakis M., Ioannidis Y.: Approximate XML Query Answers., ACM 2004
Groppe S., Bottcher S.: XPath Query Transformation based on XSLT Stylesheets, WIDM '03
Carmel D., Maarek Y., i in.: Searching XML Documents via XML Fragments, SIGIR '02
Weigel F., Meuss H., Schulz K., Bry F.: Content and Structure in Indexing and Ranking XML,
Seventh International Workshop on the Web and Databases WebDB 2004
Bruno E., Maitre J., Murisasco E.: Extending XQuery with Transformation Operators, DocEng
'03
Lew, M. S., Ed. Principles of Visual Information Retrieval. Springer, 2001, ch. Feature
Similarity, pp. 121–143
Harold E. R.: XML Bible, IDG Books Worldwide, 1999
Bimbo, A. Visual information retrieval. Morgan Kaufmann Publishers Inc., 1999
Abiteboul S.. Querying semi-structured data. In Proceedings of the International Conference on
Database Theory, Delphi, Greece, January 1997
Amer-Ahia S., Cho S., Srivastava D., Tree pattern relaxation, Proc. Int’l Conference on
Extending Database Technology, 2002
Bosworth A., A proposal for an XSL query language,
http://www.w3.org/TandS/QL/QL98/pp/microsoft-extensions.html
World Wide Web Consortium. Canonical XML. http://www.w3.org/TR/2001/REC-xml-c14n20010315
Wang L., Cheung D., Mamoulis N., Yiu S.-M.: An Efficient and Scalable Algorithm for
Clustering XML Documents by Structure, IEEE Transactions on Knowledge and Data
Engineering, 2004 vol 16 no. 1 pp. 82-96
Dalamagas T., Cheng T., Winkel K.-J., Sellis T.: Clustering XML documents by structure,
EDBT Workshop 2004, pp. 712-719
Nierman A., Jagadish H. V.: Evaluating Structural Similarity in XML Documents, Proceedings
of the 5th International Workshop on the Web and Databases (WebDB 2002), Madison,
Wisconsin, USA, June 2002
da
.b
4.
5.
w
1.
2.
3.
436
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2006