Efficient and Effective Clustering Methods for Spatial Data Mining (Αποδοτικές και αποτελεσματικές μέθοδοι ομαδοποίησης για εξόρυξη χωρικών δεδομένων) Των Raymond T. Ng και Jiawei Han (1994) Παρουσίαση : Κατερίνα Ελ Ράχεμπ 1
Εισαγωγή Εξετάζουμε τη σημασία των μεθόδων ομαδοποίησηςστηνεξόρυξηχωρικώνδεδομένων. Παρουσιάζουμε τη μέθοδο ομαδοποίησης CLARANS η οποία βασίζεται σε τυχαία αναζήτηση. Περιγράφουμε δύο προϋπάρχοντες αλγόριθμους, PAM και CLARA στους οποίους βασίζεται ο CLARANS. Παρουσιάζουμε δύο διαφορετικούς αλγορίθμους που χρησιμοποιούν τη μέθοδο CLARANS (SD και NSD). Γίνεται σύγκριση του CLARANS με τις μέχρι τότε υπάρχουσες μεθόδους ομαδοποίησης και μέσα από πειραματικά δεδομένα αποδεικνύεται ότι η CLARANS αποτελεί μια αποτελεσματική και αποδοτική μέθοδο εξόρυξης χωρικών δεδομένων. 2
Εξόρυξη χωρικών δεδομένων Εξόρυξη χωρικών δεδομένων καλείται η ανακάλυψη σημαντικών σχέσεων και χαρακτηριστικών που υπάρχουν σε μια βάση χωρικών δεδομένων. Τα χωρικά δεδομένα στα οποία αναφερόμαστε μπορεί να προέρχονται από μια δορυφορική λήψη, από ιατρικά όργανα ή από βιντεοκάμερες. Οι χωρικές βάσεις δεδομένων συνήθως περιέχουν χωρικά και μη-χωρικά δεδομένα. Χαρακτηριστικό τους είναι ο πολύ μεγάλος όγκος δεδομένων (συνήθως μερικά terabytes) που καθιστά υψηλού κόστους ως πρακτικά αδύνατη τη λεπτομερή ανάλυση των δεδομένων. Η εξόρυξη χωρικών δεδομένων προσπαθεί να εξάγει ενδιαφέροντα χωρικά σχήματα και χαρακτηριστικά και να απεικονίσει σχέσεις μεταξύ χωρικών και μη-χωρικών δεδομένων. 3
Ιδιαιτερότητα των χωρικών δεδομένων Οι ιεραρχικοί αλγόριθμοι εξόρυξης αποτυγχάνουν κυρίως για δύο λόγους: 1. Πρέπει ο χρήστης/ειδικός να εισάγει εκ των προτέρων ιεραρχική γνώση σε σχέση με τα χωρικά δεδομένα, γεγονόςπουδενείναιπάνταεφικτό 2. Στα σημεία όπου πρέπει να γίνει η συνένωση των μικρότερων ομάδων πρέπει επίσης να είναι γνωστή η ιεραρχία. Στην πραγματικότητα ο λόγος που θέλουμε συνήθως να κάνουμε εξόρυξη χωρικών δεδομένων είναι να βρούμε τη ιεραρχία που συνδέει τα δεδομένα Δε μπορούμε να χρησιμοποιήσουμε αλγορίθμους που απαιτούν εκ των προτέρων γνώση της ιεραρχίας. Έτσι καταφεύγουμε στην ανάλυση ομαδοποίησης (cluster analysis), κλάδο της στατιστικής που δίνει τη δυνατότητα να εξάγουμε απευθείας από τα δεδομένα τις δομές και της ομάδες (clusters), χωρίς να βασιζόμαστε σε ιεραρχίες. Παραμένει τα προβλήματα της αποτελεσματικότητας και αποδοτικότητας! (Οι κλασικές μέθοδοι cluster analysis δίνουν ικανοποιητικά αποτελέσματα για μέχρι 2000 αντικείμενα). 4
PAM-Partitioning Around Medoids (1) Προτάθηκε από τους Kauffman και Rousseauw (1990). Ανήκει στις διαμεριστικές μεθόδους συσταδοποίησης (partitioning methods) όπως και οι ευριστικοί k-means και k-medoids, CLARA, CLARANS) Πιο συγκεκριμένα ο PAM ανήκει στην υποκατηγορία των k-medoids μεθόδων, δηλαδή καθορίζει τις ομάδες (clusters) ορίζοντας ένα αντιπροσωπευτικό αντικείμενο για κάθε ομάδα, το οποίο λέγεται medoid. Οι k-medoids πλεονεκτούν έναντι άλλων διαμεριστικών μεθόδων γιατί: 1. παρουσιάζουν ευρωστία όσον αφορά το χειρισμό των μεμονωμένων σημείων (outliers) και του θορύβου 2. τα clusters δεν επηρεάζονται από τη σειρά με την οποία εξετάζονται τα αντικείμενα 3. σύμφωνα με πειραματικά δεδομένα δίνουν αποδοτικούς αλγορίθμους για μεγάλα σύνολα δεδομένων. 5
PAM-Partiotioning Around Medoids (2) Αρχικά επιλέγονται k αντιπροσωπευτικά αντικείμενα (k-medoids). Στη συνέχεια κάθε μη επιλεγμένο αντικείμενο ομαδοποιείται στην ομάδα του πλησιέστερου medoid. Αν Oj είναι μη-επιλεγμένο αντικείμενο και Oi είναι το medoid λέμε ότι το Oj ανήκει στο cluster που αντιπροσωπεύει το Oi αν d(oj,oi)=min Οe d(oj,oe) Όπου min Οe : το ελάχιστο μεταξύ όλων των medoids Ο e και d(oj,oe): ανομοιότητα (dissimilarity) ή απόσταση(distance) μεταξύ των αντικειμένων Oj και Oe. Η ποιότητα της ομαδοποίησης (quality of clustering) υπολογίζεται ως η μέση ανομοιότητα μεταξύ ενός αντικείμένου και του medoid του cluster. 6
PAM-Partitioning Around Medoids (3) Έτσι σε κάθε βήμα γίνεται αντικατάσταση (swap) ενός επιλεγμένου από ένα μη επιλεγμένο αντικείμενο με σκοπό τη βελτίωση της ποιότητας ομαδοποίησης. Η επίδραση που έχει μια αντικατάσταση υπολογίζεται από το κόστος αντιμετάθεσης C jih και υπολογίζεται με τέσσερις διαφορετικές εξισώσεις ανάλογα με την περίπτωση. Το συνολικό κόστος της αντιμετάθεσης του i από το h δίνεται τελικά από το άθροισμα του κόστους όλων των περιπτώσεων TCih = ΣCjih 7
PAM αλγόριθμος (1) Βήμα 1: Όρισε αυθαίρετα k αντιπροσωπευτικά αντικείμενα. Βήμα 2: Υπολόγισε τα TC ih για όλα τα ζεύγη αντικειμένων O i, O h όπου Ο i είναι ήδη επιλεγμένο αντικείμενο και το O h δεν έχει επιλεχθεί ακόμα. Βήμα 3: Επέλεξε ένα ζεύγος O i, O h στο οποίο αντιστοιχεί min OiOh T cih. Αν το ελάχιστο TC ih είναι αρνητικό αντικατέστησε το Ο i με το Ο h και επέστρεψε στο βήμα 2. Βήμα 4: Διαφορετικά για κάθε μη-επιλεγμένο αντικείμενο βρες το πιο κοντινό αντιπροσωπευτικό αντικείμενο και τοποθέτησέ το στην αντίστοιχη ομάδα. 8
PAM αλγόριθμος (2) Πειραματικά δεδομένα δείχνουν ότι ο PAM δουλεύει ικανοποιητικά για μικρά σύνολα δεδομένων (π.χ. 100 αντικείμενα σε 5 ομάδες). Δε συμβαίνει το ίδιο για μεσαίου και μεγάλου μεγέθους σύνολα δεδομένων μια και πρόκειται για αλγόριθμο με κακή απόδοση. Η πολυπλοκότητα του PAM είναι O(k(n-k) 2 ). 9
CLARA-Clustering LARge Applications Προτάθηκε από τους Kauffman και Rousseauw (1990). Αναπτύχθηκε για να αντιμετωπίζει μεγάλα σύνολα δεδομένων, βασίζεται σε δείγματα (samples) καιχρησιμοποιείτονpam. Έτσι αντί να βρίσκει αντιπροσωπευτικά αντικείμενα (medoids) για ολόκληρο το σύνολο δεδομένων, όπως ο PAM, φτιάχνει ένα δείγμα του συνόλου και εφαρμόζει τον PAM πάνω σε αυτό το δείγμα. Αν τα δείγματα επιλεχθούν με «καλό» τυχαίο τρόπο τότε τα medoids προσεγγίζουν ικανοποιητικά τα medoids του συνόλου. Ο CLARA για να πετύχει ένα «καλό δείγμα» επιλέγει μια σειρά από από δείγματα και κρατάει αυτό με που δίνει την καλύτερη ομαδοποίηση. Βάσει πειραμάτων τα 5 δείγματα μεγέθους 40+2k δίνουν ικανοποιητικά αποτελέσματα. 10
CLARA αλγόριθμος (1) Βήμα 1: Για κάθε δείγμα (π.χ. 5) επανέλαβε τα ακόλουθα βήματα: Βήμα 2: Σχημάτισε ένα δείγμα από 40+2k τυχαία αντικείμενα από ολόκληρο το σύνολο δεδομένων και εφάρμοσε τον PAM αλγόριθμο για να βρεις τα k-medoids των δειγμάτων. Βήμα 3: Για κάθε αντικείμενο Oj σε ολόκληρο το σύνολο δεδομένων προσδιόρισε ποια από τα kmedoidsείναι πλησιέστερο στο Oj. Βήμα 4: Υπολόγισε τη μέση ανομοιότητα της ομαδοποίησης που πέτυχε το προηγούμενο βήμα. Αν η τιμή είναι μικρότερη από το τρέχον ελάχιστο, χρησιμοποίησε αυτή την τιμή ως τρέχον ελάχιστο και σημείωσε τα k του βήματος (2) ως την καλύτερη τιμή medoid μέχρι τώρα. Βήμα 5: Επέστρεψε στο βήμα 1 για την επόμενη επανάληψη 11
CLARANS-Clustering LARge Applications based on RANdomized Search (1) Ηεύρεσητωνk-medoids περιγράφεται ως αναζήτηση μέσα σε ένα γράφο G n, k. Ένας κόμβος αναπαρίσταται από ένα είναι ένα σύνολο από k αντικείμενα {Ο m1, O m2, O mk } όπου τα Ο m1, O m2, O mk είναι τα επιλεγμένα medoids. Δύο κόμβοι S 1 = {Ο m1, O m2, O mk } και S 2 = {Ο w1, O w2, O wk } είναι γείτονες (συνδέονται με πλευρά) αν τα σύνολά τους διαφέρουν μόνο κατά ένα αντικείμενο, αν δηλαδή S 1 S 2 = k- 1.Κάθε κόμβος έχει k(n-k) γείτονες. Ο PAM μπορεί με τη σειρά του να περιγραφεί ως αναζήτηση ελαχίστου στο γράφο όπου σε κάθε βήμα όλοι οι γείτονες ενός κόμβου εξετάζονται και το τρέχον κόμβος αντικαθίσταται απότογείτοναμετημεγαλύτερηκάθοδο κόστους. Η αναζήτηση συνεχίζεται μέχρι ένα ελάχιστο. Για μεγάλες τιμές του n (π.χ. n=1000 και k=10) το να εξετάσουμε τους k(n-k) γείτονες είναι προφανώς χρονοβόρο. Από την άλλη ο CLARA προσπαθεί εξετάσει λιγότερους γείτονες περιορίζοντας την αναζήτηση σε μικρότερους υπογράφους του G n, k. Το πρόβλημα είναι ότι οι υπογράφοι που εξετάζονται καθορίζονται εξ ολοκλήρου από τα δείγματα. Ο υπογράφοςgs a, k αποτελείται από όλα τα υποσύνολα του S a. 12
CLARANS-Clustering LARge Applications based on RANdomized Search (2) Έτσι ενώ ο CLARA χρησιμοποιεί τον PAM γιαναεξετάσειεξαντλητικάτοgs a, k η αναζήτηση περιορίζεται. Αν το ελάχιστο M βρίσκεται στον αρχικό γράφο αλλά όχι στον Gs a, k τότε o CLARA προφανώς δε μπορέσει ποτέ να το βρει. Ο CLARANS εν αντιθέσει με τον PAM εξετάζει μόνο ένα δείγμα αντικειμένων, όπως και ο CLARA δεν ψάχνει όλους τους γείτονες κάθε κόμβου. Όμως εν αντιθέσει με τον CLARA δεν περιορίζει την αναζήτηση σε ένα συγκεκριμένο υποσύνολο του γράφου αφού κάθε δείγμα που εξετάζεται σχηματίζεται δυναμικά έτσι ώστε να μη μένουν απ έξω κόμβοι που μπορεί να είναι χρήσιμοι για την ομαδοποίηση. Ενώ ο CLARA επιλέγεί ένα δείγμα από κόμβους στην αρχή της αναζήτησης, ο CLARANS επιλέγει ένα δείγμα από γείτονες σε κάθε βήμα διευρύνοντας έτσι το πεδίο αναζήτησης γεγονός που οδηγεί σε ομαδοποίηση καλύτερης ποιότητας με λιγότερες επαναλήψεις. 13
CLARANS αλγόριθμος (1) Βήμα 1: Θέσε τιμή στις παραμέτρους εισόδου numlocal και maxneighbor. Θέσε i=1 και το mincost ίσο με μια μεγάλη τιμή. Βήμα 2: Όρισε ως τρέχον ένα τυχαίο κόμβο του γράφου Gn,k. Βήμα 3: Θέσε j=1 Βήμα 4: Θεώρησε ένα τυχαίο γείτονα S του τρέχοντος κόμβου και υπολόγισε το κόστος διαφοράς μεταξύ των δύο κόμβων. Βήμα 5: Αν ο S έχει μικρότερο κόστος, κάνε τον S τρέχον κόμβο και πήγαινε στο βήμα (3). Βήμα 6: Διαφορετικά αύξησε το j κατά 1. Αν j<=maxneighbor, πήγαινε στο βήμα (4). Βήμα 7: Διαφορετικά, αν j>maxneighbor, σύγκρινε το κόστος του τρέχοντος κόμβου με το mincost. Αν το τρέχον είναι μικρότερο από το mincost θέσε ως mincost το κόστος του τρέχοντος και θέσε το τρέχον ως βέλτιστο κόμβο (bestnode). Βήμα 8:Αύξησε το i κατά 1. Αν i >numlocal, δώσε ως έξοδο το bestnode και σταμάτα. Διαφορετικά πήγαινε στο βήμα (2). 14
CLARANS παράμετροι maxneighbor: μέγιστος αριθμός γειτόνων που εξετάζονται. numlocal: η τιμή του τοπικού ελαχίστου που επιτυγχάνεται. Όσο μεγαλύτερη είναι η τιμή του maxneighbor τόσο ο CLARANS πλησιάζει τον PAM και τόσο περισσότερο διαρκεί η αναζήτηση του τοπικού ελαχίστου, ταυτόχρονα η ποιότητα του τοπικού ελαχίστου είναι καλύτερη και θα εξετάσουμε λιγότερα τοπικά ελάχιστα. Η τιμές των παραμέτρων προσδιορίζονται πειραματικά έτσι το numlocal τίθεται ίσο με 2, ενώ το maxneighbor ίσο με τη μέγιστη τιμή μεταξύ των 1,25% του k(n-k) και του 250. 15
CLARANS vs PAM Η σύγκριση έγινε για μικρά σύνολα δεδομένων (40, 60, 80 και 100 αντικείμενα σε 5clusters)ως προς το χρόνο εκτέλεσης του αλγορίθμου. H ποιότητα των αλγορίθμων (μέση απόσταση) είναι παρόμοια. Ο CLARANS πλεονεκτεί σημαντικά όσον αφορά την αποδοτικότητα (Σχ.1) Σχήμα 1 16
CLARANS vs CLARA Η σύγκριση έγινε για μικρά σύνολα δεδομένων με περισσότερα από 100 αντικείμενα μια και ο CLARA δεν είναι σχεδιασμένος για μικρά σύνολα. Τα αντικείμενα ανήκαν σε διαφορετικές ομάδες και σε διαφορετικού τύπου ομάδες. Παρατηρώντας ότι παρότι ο CLARA μειονεκτούσε ως προς την ποιότητα σε σχέση με τον CLARANS, πολλές φορές τερμάτιζε γρηγορότερα. Δίνοντας τον ίδιο χρόνο στους δύο αλγορίθμους ο CLARANS και πάλι πλεονεκτεί (Σχ.3) Γιαδεδομένοαριθμόομάδωνόσο μεγαλύτερος είναι ο αριθμός των αντικειμένων τόσο μικραίνει το χάσμα μεταξύ CLARA και CLARANS (Σχ.3), γεγονός που εξηγείται από την πολυπλοκότητα των αλγορίθμων. Σχήμα 2 17
Αλγόριθμοι Εξόρυξης που βασίζονται σε ανάλυση ομαδοποίησης Θεωρούμε ότι οι χωρικές βάσεις δεδομένων αποτελούνται από χωρικά και μη χωρικά δεδομένα και ότι τα μη χωρικά συνδέονται μεταξύ τους με σχέσεις, Η γενική προσέγγιση είναι να εφαρμόσουμε ανάλυση ομαδοποίησης στα χωρικά δεδομένα και κάποιο άλλο εργαλείο όπως το DBLEARN γιαταμηχωρικάδεδομένα. To DBLEARN παίρνει ως είσοδο σχεσιακά δεδομένα, γενικευμένες ιεραρχίες για τα γνωρίσματα και μια ερώτηση/αίτηση. Στη συνέχεια με SQL επερωτήσεις εξάγει ένα σύνολο από σχετικές πλειάδες. Με βάση τις ιεραρχίες γνωρισμάτων, γενικεύει τις πλειάδες. Π.χ. Έστω ότι υποβάλλουμε μια αίτηση για τα γνωρίσματα <πλειοψηφία, εθνικότητα> και η ιεραρχία για την «εθνικότητα» έχει το Ασιάτες ως γενίκευση του Κινέζοι και Ινδοί. Τότε οι πλειάδες της μορφής <m, Κινέζοι>, <m, Ινδοί> να συγχωνεύονται στην πλειάδα <m, Ασιάτες>. Άλλο χαρακτηριστικό του DBLEARN είναι το γνώρισμα count που κρατάει τον αριθμό των αρχικώνπλειάδωνπρογενίκευσηςστηβδ. Έτσι μπορεί να εξάγει προτάσεις «Το 8% των φοιτητών κοινωνιολογίας είναι Ασιάτες» ή αποτελέσματα περαιτέρω γενικεύσεων π.x. «Το 90% των φοιτητών Τεχνών είναι Καναδοί» (εδώ το μη-καναδοί αποτελεί γενίκευση του Ασιάτης). 18
SD(CLARANS) και NSD(CLARANS) Υπάρχουν δύο τρόποι να συνδυάσουμε τον CLARANS με το DBLEARN Προσέγγιση όπου κυριαρχούν τα χωρικά δεδομένα (Spatial Dominant) Προσέγγιση όπου κυριαρχούν τα μη χωρικά δεδομένα (Νon Spatial Dominant) Στην SD(CLARANS) αλγόριθμο πρώτα γίνεται η ομαδοποίηση των χωρικών δεδομένων και στη συνέχεια γίνεται η γενίκευση των πλειάδων των μη χωρικών δεδομένων. Στον ΝSD(CLARANS) αλγόριθμο η ανακάλυψη των ομάδων στα χωρικά δεδομένα γίνεται μέσα από τις πλειάδες των μη χωρικών δεδομένων, μια και συσταδοποίηση με βάση τα μη χωρικά γνωρίσματα προηγείται. Αντίστοιχα θα μπορούσαμε να εφαρμόσουμε SD(PAM) ή SD(CLARA), αλλά όπως είδαμε ο CLARANS πετυχαίνει πιο αποδοτικά καλύτερη ομαδοποίηση. Ο SD(CLARANS) πλεονεκτεί έναντι άλλων μεθόδων που προτάθηκαν στο παρελθόν (Lu et al. 1993) και ακολουθούσαν παρόμοια λογική συνδυασμού DBLEARN και αλγορίθμου εξόρυξης χωρικών δεδομένων στο ότι ο CLARANS μέσω της ομαδοποίησης εξάγει την ιεραρχία απευθείας μέσα από τα χωρικά δεδομένα και δεν απαιτεί a priori γνώση της ιεραρχίας. 19
SD(CLARANS) αλγόριθμος Βήμα 1: Βρες το αρχικό σύνολο σχετικών πλειάδων με τις αντίστοιχες SQL επερωτήσεις. Βήμα 2: Εφάρμοσε τον CLARANS στα χωρικά γνωρίσματα και βρες το πιο φυσικό αριθμό knat ομάδων. Βήμα 3:Για κάθε ένα από τις knat ομάδες που σχηματίστηκαν a. Συγκέντρωσε τα μη-χωρικάμέρητωνπλειάδωνπουπεριλαμβάνονται στην ομάδα b. Εφάρμοσε DBLEARN σε αυτή τη συλλογή από τα μη-χωρικά δεδομένα. 20
Προσδιορισμός του k nat (1) k nat : ο πιο φυσικός αριθμός ομάδων για ένα συγκεκριμένο σύνολο δεδομένων. Δεν είναι εκ των προτέρων γνωστό. Ο προσδιορισμός του αποτελεί σημαντικό πρόβλημακαιδενυπάρχειέναςκαιμοναδικός τρόπος να εκτιμηθεί. Η ευρεστική μέθοδος που εφαρμόζεται εδώ είναι βασίζεται στον υπολογισμού του εύρους περιγράμματος (silhouette width). To περίγραμμα (silhouette) ενός αντικειμένου Oj, είναι ένας αριθμός από το 1 ως 1 που δηλώνει κατά πόσο το αντικείμενο Oj ανήκει στην ομάδα του. Εύρος περιγράμματος: ενός cluster είναι ο μέσος όρος των silhouette όλων των αντικειμένων στο cluster. Εύρος περιγράμματος Ερμηνεία 0,71-1 Πολύ καλή 0,51-0,7 Ικανοποιητική 0,25-0,5 Κακή <=0,25 Δε βρέθηκε 21
Προσδιορισμός του k nat (2) Βήμα 1: Βρες το k με το μεγαλύτερο συντελεστή περιγράμματος (silhouette coefficient). Βήμα 2: Αν όλες οι k ομάδες έχουν εύρος περιγράμματος k nat >=0,51, θέσε k nat = k και τερμάτισε. Βήμα 3: Διαφορετικά, αφαίρεσε από τη συγκεκριμένη ομάδα τα αντικείμενα με εύρος περιγράμματος μικρότερο του 0,5 εφόσον ο αριθμός των αντικειμένων που αφαιρούνται δεν ξεπερνά ένα συγκεκριμένο κατώφλι (π.χ. 25% του συνολικού πληθυσμού). Τα αντικείμενα που αφαιρούνται θεωρούνται μεμονωμένα σημεία(outliers) ή θόρυβος. Επέστρεψε στο βήμα(1) εξετάζοντας το νέο σύνολο δεδομένων χωρίς τα μεμονωμένα σημεία. Βήμα 4: Αν στο βήμα (3) ο αριθμός των μεμονωμένων σημείων που πρέπει να αφαιρεθούν ξεπερνά το κατώφλι, απλά θέσε k nat = 1 δηλώνοντας έτσι ότι καμία ομαδοποίηση δεν είναι εύλογη. 22
ΝSD(CLARANS) αλγόριθμος Βήμα 1: Βρες το αρχικό σύνολο σχετικών πλειάδων με τις αντίστοιχες SQL επερωτήσεις. Βήμα 2: Εφάρμοσε DBLEARN στα μη χωρικά δεδομένα μέχρι ο τελικός αριθμός των πλειάδων να πέσει κάτω από ένα συγκεκριμένο κατώφλι. Βήμα 3: Για κάθε μια πλειάδα από τις παραπάνω a. Συγκέντρωσε τα χωρικά μέρη των πλειάδων που αναπαρίστανται από την τρέχουσα πλειάδα. b. Εφάρμοσε CLARANS και βρες ευρεστικά το k nat (όπως και πιο πάνω) για την εύρεση του πιο φυσικού αριθμού ομάδων. Βήμα 4: Γιακάθεμιαομάδααπόαυτέςπουσχηματίστηκανπιοπάνω, έλεγξε αν υπάρχουν ομάδες που τέμνονται ή επικαλύπτονται. Αν υπάρχουν τέτοιες ομάδες πρέπει να συγχωνευτούν. 23
Η αξιολόγηση-παράδειγμα (1) Ένας τρόπος να αξιολογήσουμε την απόδοση ενός αλγορίθμου εξόρυξη δεδομένων είναι να τον εφαρμόσουμε σε ένα πραγματικό σύνολο δεδομένων και να δούμε τι θα βγάλει! Επειδή είναι δύσκολο τις περισσότερες φορές να ξέρουμε εκ των προτέρων τι περιμένουμε να βγάλει, συνήθως αναπαράγουμε δεδομένα με συγκεκριμένους κανόνες που είναι κοντά στην πραγματικότητα. Παράδειγμα -Ομαδοποίηση 2500 οικιακών μονάδων στο Vancouver A) Πληροφορίες για το μέγεθος, την τιμή και τον τύπο Αν ο τύπος της οικίας είναι μέγαρο τη τιμή βρίσκεται στο διάστημα [1500,3500] κα το μέγεθος στο [6000, 10000] τετραγωνικά πόδια. Αν ο τύπος της οικίας είναι μονοκατοικία η τιμή είναι στο [800,1500] και το μέγεθος [3000, 7000] τετραγωνικά πόδια. Αν ο τύπος της οικίας είναι διαμέρισμα πολυκατοικίας η τιμή είναι στο [300,800] και το μέγεθος [1000,2500] τετραγωνικά πόδια. 24
Η αξιολόγηση-παράδειγμα (2) Β) Κατανομή Υπάρχουν 1200 διαμερίσματα στην περιοχή του κέντρου (Β1) Υπάρχουν περίπου 320 μέγαρα και 80 μονοκατοικίες στην περιοχή κατά μήκος του Marine Drive (Β2). Υπάρχουν περίπου 800 μονοκατοικίες γύρω από το Queen Elizabeth Park(B3). Τέλος υπάρχουν 100 μονοκατοικίες διασκορπισμένες σε διάφορα σημεία στο Vancouver. Β4 Β1 Β3 Β2 Σχήμα 3 25
Αποτελέσματα SD(CLARANS) (1) Ο SD(CLARANS) έθεσε k nat =3, με συντελεστή περιγράμματος 0,7 προσδιόρισε δηλ. 3 ομάδες με πολύ καλή ομαδοποίηση. Έτσι τα βήματα (3) και (4) του αλγορίθμου παραλήφθηκαν. Μετά τον προσδιορισμό του k nat ο CLARANS έκανε 25sec γιαναξεχωρίσειτις3 ομάδες. Η 1η ομάδα περιλάμβανε 832 αντικείμενα τα οποία ήταν όλα μονοκατοικίες και εκ των οποίων τα 800 είναι αυτά της περιοχής B3 του σχήματος. Γιατηνομάδααυτή σωστά ο DBLEARN βρίσκει ότι η τιμή και το μέγεθος είναι στο [800,1500] και [3000, 7000] αντίστοιχα. Η 2η ομάδα περιλάμβανε 1235 αντικείμενα, 1200 εκτωνοποίωνήτανδιαμερίσματα σε πολυκατοικίες είναι αυτά της περιοχής B1 του σχήματος και τα υπόλοιπα μονοκατοικίες 35. Και για τους δύο τύπους ο DBLEARN ανακάλυψε σωστά τα διαστήματα όπου κυμαίνονται οι τιμές κόστους και μεγέθους. 26
Αποτελέσματα SD(CLARANS) (2) Η 3η ομάδα περιλάμβανε 431 αντικείμενα, 320 εκτωνοποίωνήτανμέγαρα(όλα τα αντικείμενα της περιοχής B2) καιταυπόλοιπαμονοκατοικίες. ΚαιπάλιοDBLEARN ανακάλυψε σωστά τα διαστήματα όπου κυμαίνονται οι τιμές κόστους και μεγέθους τόσογιαταμέγαραόσοκαιγιατιςμονοκατοικίες. O SD(CLARANS) είναι αποδοτικός και αποτελεσματικός αφού και ο CLARANS έκανε τη σωστή ομαδοποίηση, παρά την ύπαρξη των μεμονωμένων σημείων (περιοχή Β4) και ο DBLEARN εξήγαγε τη σωστή πληροφορία από τα μη χωρικά δεδομένα. 27
Αποτελέσματα NSD(CLARANS) (1) Στο βήμα (2) του NSD(CLARANS) ο DBLEARN βρίσκει 12 πλειάδες, 4 για κάθε ένα τύπο οικιών. Αν δούμε τις 4 πλειάδες για τον τύπο μέγαρο έχουμε: 1. Τιμή στο [1500, 2600], μέγεθος στο [6000, 8500] 2. Τιμή στο [1500, 2600], μέγεθος στο [8500,10000] 3. Τιμή στο [2600,3500], μέγεθος στο [6000, 8500] 4. Τιμή στο [2600, 3500], μέγεθος στο [8500,10000] Όπωςφαίνεταιστοσχήμααπότηνχωρική κατανομή των οικιών τύπου μέγαρο, όταν ο CLARANSεφαρμόζεται στα σημεία του γράφου, βρίσκει 2 ομάδες. + ομάδα 1 ομάδα 2 Σχήμα 4 Στο βήμα (4) του NSD(CLARANS) συγχωνεύονται οι ομάδες που παρουσιάζουν επικάλυψη και ο αλγόριθμος βρίσκει ότι όλα τα μέγαρα βρίσκονται στην περιοχή Β2. 28
Αποτελέσματα NSD(CLARANS) (2) Αντίστοιχα οι 4 πλειάδες για τον τύπο διαμέρισμα πολυκατοικίας είναι: 1. Τιμή στο [300, 600], μέγεθος στο [1000, 1800] 2. Τιμή στο [300, 600], μέγεθος στο [1800, 2500] 3. Τιμή στο [600, 800], μέγεθος στο [1000, 1800] 4. Τιμή στο [600, 800], μέγεθος στο [1800, 2500] Η διαφορά εδώ είναι ότι για τις 4 πλειάδες δε βρέθηκε καμία ομάδα (είχαμε knat=1) και έτσι ο αλγόριθμος συγχώνεψε όλα τις περιοχές σε μια που αντιστοιχεί ακριβώς μετην περιοχή B1 του σχ.2 Για τις 4 πλειάδες που αντιστοιχούν τύπο στις μονοκατοικίες : 1. Τιμή στο [1200, 1500], μέγεθος στο [3000, 5000] 2. Τιμή στο [1200, 1500], μέγεθος στο [5500, 7000] 3. Τιμή στο [800, 1200], μέγεθος στο [3000, 5000] 4. Τιμή στο [800, 1200], μέγεθος στο [5500, 7000] Εδώ τα πράγματα είναι λίγο πιο πολύπλοκα αφού για κάποιες κατηγορίες ο συντελεστής περιγράμματος ήταν μικρότερος του 0,5 και έπρεπε να αφαιρεθούν κάποια σημεία ως outliers. Μετά την αφαίρεση αυτή εντοπίστηκαν 2 ομάδες μια που αντιστοιχούσε στην περιοχή Β2 και μια στην Β3. Τέλος ο αλγόριθμος προσδιόρισε σωστά τα διαστήματα για τις τιμές κόστους και μεγέθους για τις μονοκατοικίες. 29
Σύγκριση των SD και NSD Τόσο ο SD(CLARANS) όσο και ο NSD(CLARANS) φαίνεται ότι κατέληξαν στα αναμενόμενα αποτελέσματα σύμφωνα με τα δεδομένα και τους κανόνες με τους οποίους παράχθηκαν. Ο SD(CLARANS) πλεονεκτεί όσον αφορά την απόδοση, αφούηπρόωρηεφαρμογήτου CLARANS οδηγεί σε άμεσο καθορισμό των ομάδων. Αντίθετα ο NSD(CLARANS) αρχικά υποδιαιρεί το σύνολο σε μικρότερες συστάδες/πλειάδες γεγονός που έχει ως αποτέλεσμα να σπάει τη συνοχή κάποιων ομάδων και να χρειάζεται η απομάκρυνση των μεμονωμένων σημείων. Αυτή η διαδικασία, όπως και η συγχώνευση των ομάδων που τέμνονται ή επικαλύπτονται κοστίζουν σε χρόνο. Ωστόσο για να είμαστε δίκαιοι πρέπει να ομολογήσουμε ότι το συγκεκριμένο παράδειγμα και η κατανομή των δεδομένων ευνοεί τον SD(CLARANS) μια και δίνεται έμφαση στην εξαγωγή μη χωρικών δεδομένων από ομάδες χωρικών δεδομένων, γεγονός που είναι χαρακτηριστικό τωναλγορίθμωνπουκυριαρχούνταχωρικάδεδομένα. Αντίθετα ένας αλγόριθμος όπου κυριαρχούνταμηχωρικάδεδομέναεστιάζειστο να βρει ομάδες χωρικών δεδομένων μέσα από συστάδες μη χωρικών δεδομένων. Έτσι αν στο παράδειγμά μας η χωρική κατανομή για τις μονοκατοικίες καθορίζονταν από την τιμή και το μέγεθος πιθανώς ο NSD(CLARANS) θα μπορούσε να ήταν αποδοτικότερος του SD(CLARANS) 30
Συμπεράσματα Πέρα από το γεγονός ότι η μέθοδος ομαδοποίησης CLARANS είναι αποδοτική και αποτελεσματική, η ομαδοποίηση δίνει την ευκαιρία να ανακαλύψουμε σχέσεις μεταξύ των ομάδων και άλλων ενδιαφέρον αντικειμένων. Π.χ. στο παράδειγμά μας μπορούμε να συσχετίσουμε τις οικιακές μονάδες με διάφορους χάρτες και αντικείμενα όπως λεωφόρους, λίμνες, πάρκα κτλ και να εξάγουμε πληροφορία όπως «Το 96% τωνοικιώντηςομάδας1 απέχουν 0,6 km από το Queen Elizabeth Park. Μελλοντικές προτάσεις Εξέλιξη της υλοποίησης που παρουσιάσαμε θα μπορούσε να είναι ένας αλγόριθμος που συνδυάζει τον SD και NSD CLARANS και θα λειτουργεί έτσι ώστε να εφαρμόζεται προσέγγιση όπου κυριαρχούν τα χωρικά ή μη χωρικά δεδομένα ανάλογα με το αν προσδιορίζονται καλής ποιότητας συστάδες ή ομάδες αντίστοιχα, σε κάθε βήμα. Οι χωρικές βάσεις δεδομένων μπορούν να σχετίζονται με πολλαπλούς θεματικούς χάρτες. Η εξόρυξη χωρικών δεδομένων σε μια ενιαία εφαρμογή που συνδυάζει και άλλες χωρικές λειτουργίεςόπωςπολλαπλούςθεματικούςχάρτεςαποτελείπρόκληση. Τα χωρικά δεδομένα που εξετάσαμε μέχρι εδώ είναι σημειακά, ενώ θα μπορούσαν να είναι περιοχές ή γραμμές. Το πώς θα μπορούσε ο αλγόριθμος να προσαρμοστεί ώστε να χειρίζεται χωρικά δεδομένα τύπου γραμμών, ώστε να εξετάζουμε π.χ. το πώς τοποθετούνται οι λεωφόροι σε μια πόλη παραμένει ως ερώτημα. 31
Ευχαριστώ! 32
Βιβλιογραφία R. Agrawal, S. Ghosh, T. Imielinski, B. Iyer,and A. Swami. (1992) An Interval Classifier for Database Mining Applications, Proc. 18thVLDB, pp 560-573. R. AgrawaI, T. Imielinski, and A. Swami. (1993)Mining Association Rules between Sets of Items in Large Databases, Proc. 1993 SIGMOD, pp 207-216. W. G. Aref and H. Samet. (1991) Optimization Strategies for Spatial Query Processing, Proc. 17th VLDB, pp. 81-90. A. Borgida and R. J. Brachman (1993) Loading Data into Description Reasoners, Proc. 1993 SIGMOD, pp 217-226. T. Brinkhoff and H.-P. Kriegel and B. Seeger (1993) Eficient Processing of Spatial Joins Using R-trees, Proc. 1993 SIGMOD, pp 237-246. Ο.Giinther. (1993) Efficient Computation ofspatial Joins, Proc. 9th Data Engineering, pp50-60. J. Han, Y. Cai and N. Cercone. (1992) Knowledge Discovery in Databases: an Attribute-Oriented Approach, Proc. 18th VLDB, pp. 547-559. Y. Ioannidis and Y. Kang. (1990) Randomized Algorithms for Optimizing Large Join Queries, Proc. 1990 SIGMOD, pp. 312-321. Y. Ioannidis and E. Wong. (1987) Query Optimization by Simulated Annealing, Proc. 1987 SIGMOD, pp. 9-22. 33
Βιβλιογραφία L. Kaufman and P.J. Rousueeuw. (1990) Finding Groups in Data: an Introduction to Cluster Analysis, John Wiley & Sons. D. Keim and H. Kriegel and T. Seidl. (1994) Supporting Data Mining of Large Databases by Visual Feedbach Queries, Proc. 10th Data Engineering,pp 302-313. R. Laurini and D. Thompson. (1992) Fundamentals of Spatial Information Systems, Academic Press. W. Lu, J. Han and B. C. Ooi. (1993) Discovery of General Knowledge in Large Spatial Databases,Proc. Far East Workshop on Geographic Information Systems, Singapore, pp. 275289. G. Milligan and M. Cooper. (1985) An Ezamination of Procedures for Determining the Number of Clusters in a Data Set, Psychometrika, 50, pp. 159-179. R. Ng and J. Han. (1994) Effective and EflectiveClustering Methods for Spatial Data Mining,Technical Report 9413, University of British Columbia. G. Piatetsky-Shapiro and W. J. Frawley. (1991) Knowledge Discove y in Databases, AAAI/MIT Press. H. Samet. (1990) The Design and Analysis of Spatial Data Structures, Addison- Wesley. H. Spath. (1985) Cluster Dissection and Analysis: Theory, FORTRAN programs, Examples, Ellis Horwood Ltd. 34