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