Clustering
Σημερινό Μάθημα Μη επιβλεπόμενη εκπαίδευση (Clustering) Μη παραμετρική Μη επιβλεπόμενη εκπαίδευση Μέτρα εγγύτητας Αλγόριθμος k means ISODATA Ιεραρχικό clustering Δεντρογράμματα Demos
Επιβλεπόμενη vs Μη Επιβλεπόμενη Μάθηση Μέχρι τώρα θεωρήσαμε μεθόδους αναγνώρισης με classification όπου το πρότυπο χαρακτηρίζεται από τα μεγέθη {x,ω} Αυτά τα προβλήματα αναγνώρισης ονομάζονται Επιβλεπόμενα (supervised) αφού διατίθενται και το χαρακτηριστικό διάνυσμα και η σωστή απάντηση. Υπάρχουν όμως περιπτώσεις όπου δίνεται το χαρακτηριστικό διάνυσμα χωρίς την κλάση. Αυτές οι μέθοδοι καλούνται Μη Επιβλεπόμενες (unsupervised) λόγω του ότι δεν χρησιμοποιούν τη σωστή απάντηση. η
Επιβλεπόμενη vs Μη Επιβλεπόμενη Μάθηση Αν και η μέθοδοι μη επιβλεπόμενης μάθησης φαίνονται περιορισμένων δυνατοτήτων υπάρχουν πολλές περιπτώσεις που επιβάλλεται η χρήση τους: Ο χαρακτηρισμός πολλών δεδομένων μπορεί να αποβεί δαπανηρός (π.χ. αναγνώριση ομιλίας) Το είδος της κλάσης μπορεί να μην είναι γνωστό ς ης ης μ ρ μη γ εξ αρχής.
Κατηγοριοποιήση των μη επιβλεπόμενων μεθόδων εκμάθησης Παραμετρικές (μείγματα ί κατανομών): Αυτές οι μέθοδοι μοντελοποιούν την υπό συνθήκη πυκνότητα πιθανότητα με ένα μίγμα παραμετρικών πυκνοτήτων με σκοπό να βρουν τις παραμέτρους ρ του μοντέλου. Μη παραμετρικές (clustering): Δεν γίνεται υπόθεση για την πυκνότητα πιθανότητα αλλά επιχειρείται διαχωρισμός των δεδομένων σε κλάσεις.
Μη παραμετρική Μη επιβλεπόμενη εκπαίδευση Δεν ασχολούμαστε με συναρτήσεις πυκνότητας Αναζητούμε ομαδοποιήσεις (clusters) σε ένα σύνολο δεδομένωνδ Το μη παραμετρικό clustering συμπεριλαμβάνει 3 βήματα: Ορισμός ενός μέτρου ομοιότητας (ανομοιότητας) μεταξύ των παραδειγμάτων Ορισμός κριτηρίου για clustering (συνάρτηση) Ορισμός αλγορίθμου βελτιστοποίησης της συνάρτησης κριτηρίου
Μέτρα εγγύτητας Ένας κανόνας μέτρησης της απόστασης d(x,y) μεταξύ δύο διανυσμάτων x και y πρέπει να πληρεί τις ιδιότητες: Αν έχει και την ιδιότητα: Τό λ ί ό δ λώ Τότε καλείται νόρμα και δηλώνεται ως d(x,y)= x y
Μέτρα εγγύτητας Η πιο γενική μορφή ενός μέτρου απόστασης είναι
Γνωστά μέτρα εγγύτητας Μέτρο Minkowski ki( (L k ) Η επιλογή του k εξαρτάται από την έμφαση που θέλουμε να δώσουμε σε μεγάλες διαφορές μεταξύ διαστάσεων Απόσταση Manhattan (L1 norm) Όταν χρησιμοποιείται με δυαδικά διανύσματα είναι γνωστή και ως απόσταση Hamming
Γνωστά μέτρα εγγύτητας Euclidean απόσταση (L2 norm) Chebyshev απόσταση (L norm)
Γνωστά μέτρα εγγύτητας Μη γραμμική απόσταση: Εσωτερικό γινόμενο (απαιτεί κανονικοποιημένα διανύσματα) ) Correlation coefficient (συσχέτιση)
Συνάρτηση κριτηρίου για clustering Όταν έχει ορισθεί μέτρο ομοιότητας (ανομοιότητας) χρειάζεται να ορίσουμε μια συνάρτηση κριτηρίου Η πιο γνωστή συνάρτηση κριτηρίου για clustering είναι το άθροισμα τετραγωνικού λάθους Μετράει πόσο καλά το σετ δεδομένων απέχει από τα κέντρα των clusters Επίσης χρησιμοποιούνται οι scatter matrices από το LDA
Αξιοπιστία cluster Η επιλογή του μέτρου ομοιότητας (ανομοιότητας) έχει άμεση επίδραση στα παραγόμενα clusters H αξιοπιστία των clusters και το πλήθος τους είναι υποκειμενικά
Επαναληπτική βελτιστοποίηση Άπαξ και οριστεί συνάρτηση κριτηρίου, απομένει να ορίσουμε διαμερισμό που να ελαχιστοποιεί το κριτήριο. Εξαντλητική απαρίθμηση όλων των διαμερισμών δεν είναι εφικτή. Φανταστείτε ότι πρόβλημα 5 clusters και 100 παραδειγμάτων δίνει 10 67 διαμερισμούς. μρ μ
Επαναληπτική βελτιστοποίηση Ο πιο κοινός τρόπος είναι η επαναληπτική προσέγγιση: 1. Βρες λογικό αρχικό διαμερισμό 2. Μετέφερε δείγματα ώστε να βελτιστοποιηθεί η συνάρτηση κριτηρίου Τέτοιες προσεγγιστικές μέθοδοι παράγουν υποβέλτιστες λύσεις αλλά είναι υπολογιστικά βολικές
Επαναληπτική βελτιστοποίηση Υπάρχουν δύο κατηγορίες επαναληπτικών προσεγγίσεων: Επίπεδοι αλγόριθμοι για clustering Παράγουν σετ ανεξάρτητων clusters Οι πιο γνωστοί είναι οι k means και ISODATA Ιεραρχικοί αλγόριθμοι για clustering Το αποτέλεσμα είναι μια ιεραρχία εμφωλιασμένων clusters Χωρίζονται στους ενωτικούς (agglomerative) και διαχωριστικούς (divisive)
Basic Sequential Clustering m=1 1 \{number of clusters}\ C m ={x 1 } For i=2 to N Algorithm (BSAS) Find C k : d(x i,c k )=min 1 j m d(x i,c j ) If (d(x i,c k)>θ) AND (m<q) then o m=m+1 o C m ={x i } Else o C k =C k {x i } o Where necessary, update representatives End {if} End {for} 17
Αλγόριθμος k means Είναι απλή διαδικασία clustering που επιδιώκει την ελαχιστοποίηση της συνάρτησης J MSE με επαναληπτική διαδικασία:
Αλγόριθμος k means 1. Όρισε το πλήθος των clusters 2. Αρχικοποίησε clusters με: Τυχαία κατανομή παραδειγμάτων στα clusters Ή τυχαία επιλογή κέντρων clusters 3. Υπολόγισε το μέσο κάθε cluster 4. Απέδωσε κάθε δείγμα στο πλησιέστερο μέσο 5. Αν η κατανομή των δειγμάτων δεν άλλαξε τερμάτισε, αλλιώς βήμα 3
Αλγόριθμος k means Ο k means χρησιμοποιείται στην επεξεργασία σήματος για διανυσματικό κβαντισμό Μονοδιάστατα σήματα κβαντίζονται σε αριθμό επιπέδων για μετάδοση ή αποθήκευση με δυαδικό τρόπο Κβαντίζουμε το πολυδιάστατο διάνυσμα επιλέγοντας ένα σετ πολυδιάστατων προτύπων (κέντρα clusters) Αυτά τα κέντρα των clusters αποτελούν το codebook της εφαρμογής
Αλγόριθμος k means
ISODATA ISODATA A είναι συντομογραφία του Iterative Self Organizing Data Analysis Technique Algorithm Είναι επέκταση του k means που εμπεριέχει ευριστικούς τρόπους για την αυτόματη επιλογή του πλήθους των κλάσεων Ο χρήστης επιλέγει τις παραμέτρους: NMIN_EX ελάχιστο πλήθος δειγμάτων ανά cluster ND επιθυμητό πλήθος cluster σ 2 S μέγιστη διασπορά για διαχωρισμό clusters DMERGE μέγιστη απόσταση για ένωση clusters NMERGE μέγιστο πλήθος clusters που μπορούν να ενωθούν
ISODATA 1. Εκτέλεσε k-means clustering 2. Διάσπασε όσα clusters έχουν αρκετά ανόμοια δεδομένα 3. Ένωσε όσα clusters έχουν αρκετά όμοια δεδομένα 4. Βήμα 1
ISODATA Πλεονεκτήματα Διαθέτει δυνατότητες αυτό οργάνωσης Ευελιξία στον να καταργεί clusters με λίγα δείγματα Ικανότητα να διαιρεί clusters με ανομοιότητες Ικανότητα να ενώνει clusters με ομοιότητες Μειονεκτήματα Τα δεδομένα πρέπει να είναι γραμμικά διαχωριζόμενα Δύσκολος ο προκαθορισμός των παραμέτρων και καθοριστικός Για μεγάλα σετ ή πλήθος clusters υπάρχουν καλύτεροι αλγόριθμοι Στην πράξη εφαρμόζεται για διάφορες παραμέτρους και επιλέγεται ο συνδυασμός με το μικρότερο τετραγωνικό σφάλμα
Ιεραρχικό clustering O k means και ο ISODATA Aδημιουργούν ανεξάρτητα clusters με αποτέσμα μια επίπεδη αναπαράσταση των δεδομένων Μερικές φορές επιθυμούμε ιεραρχική αναπαράσταση με clusters και sub clusters σε δεντρική δομή Οι ιεραρχικές ρχ μέθοδοι χωρίζονται σε: Ενωτικές (Agglomerative ή bottom up): ξεκινούν με Ν clusters που ενώνονται διαδοχικά μέχρι να μείνει ένα Διαχωριστικές (Divisive ή top down): ξεκινούν με ένα cluster που διασπάται μέχρι να δημιουργήθούν Ν
Δεντρογράμματα Προτιμώνται για την αναπαράσταση ιεραρχικών clusters Το δεντρόγραμμα είναι δυαδικό δέντρο που δείχνει τη δομή των clusters Επιπλέον δείχνει το μέτρο ομοιότητας μεταξύ clusters Εναλλακτική αναπαράσταση είναι με σύνολα {{x1, {x2, x3}}, {{{x4, x5}, {x6, x7}}, x8}} Τα δεντρογράμματα δεν δίνουν ποσοτική πληροφορία Μεγάλη ομοιότητα Μικρή ομοιότητα
Διαχωριστικό Clustering 1. Όρισε N C clusters και N EX επιθυμητό 2. Ξεκίνησε με ένα μεγάλο cluster 3. Βρες «χειρότερο» cluster 4. Διαίρεσε το 5. Αν N C < N EX πήγαινε στο 2
Διαχωριστικό Clustering Επιλογή «χειρότερου» ό cluster Μεγαλύτερο πλήθος δειγμάτων Μεγαλύτερη διασπορά Μεγαλύτερο τετραγωνικό λάθος Διαχωρισμός clusters Μέσο ή μεσαίο ως προς ένα χαρακτηριστικό Κάθετα ως προς την κατεύθυνση μεγαλύτερης διασποράς Η διαχωριστικοί είναι πιο επίπονοι υπολογιστικά από τους ενωτικούς
Ενωτικό Clustering 1. Όρισε N C clusters και N EX επιθυμητό 2. Ξεκίνησε με N C cluster ενός μέλους 3. Βρες «κοντινότερα» clusters 4. Ένωσε τα 5. Αν N C >Nex πήγαινε στο 2
Ενωτικό clustering Ελάχιστη Απόσταση Όταν χρησιμοποιείται το d min για την απόσταση μεταξύ clusters, πρόκειται για τον ΝΝ αλγόριθμο (single linkage clustering) Αν ο αλγόριθμος τρέξει μέχρι να μείνει ένα cluster έχουμε ελάχιστο δέντρο Ευνοεί classes μεγάλου μήκους
Ενωτικό clustering Μέγιστη Απόσταση Όταν χρησιμοποιείται το d max πρόκειται για τον αλγόριθμο μακρύτερου γείτονα (farthest neighbor ή complete linkage linkage clustering) Κάθε cluster αποτελεί υπο γράφο Ευνοεί συμπαγείς classes
Ενωτικό clustering Μεσαία και μέση απόσταση Η ελάχιστη και μέγιστη απόσταση είναι ιδιαίτερα ευαίσθητες σε outliers καθώς το μέτρο των μεταξύ κλάσεων αποστάσεων περιέχει μέγιστα ή ελάχιστα Οι μέση και μεσαία απόσταση είναι πιο ευέλικτες Η μεσαία απόσταση είναι πιο ελκυστική υπολογιστικά Η μέση απόσταση περιλαμβάνει τον υπολογισμό N i N j αποστάσεων για κάθε ζεύγος cluster.
Ενωτικό clustering παράδειγμα Εκτέλεσε ενωτικό clustering με ΝΝ για: X = {1, 3, 4, 9, 10, 13, 21, 23, 28, 29} Ένωσε clusters με single linkage li
παράδειγμα (a) The data set X. (b) The single link algorithm dissimilarity dendrogram. (c) The complete link algorithm dissimilarity dendrogram 34
Ενωτικό clustering, ελάχιστη Vs. μέγιστη απόσταση clustering 9 πόλεων στις USA
Hard Clustering An m clustering g R of X, is defined as the partition of X into m sets (clusters), C 1, C 2,,C m, so that C i, i 1,2,..., m m U C X i 1 i C i C j, i j, i, j 1,2,..., m In addition, data in C i are more similar to each other and less similar to the data in the rest of the clusters. Quantifying the terms similar dissimilar depends on the types of clusters that are expected to underlie the structure of X.
Fuzzy clustering Fuzzy clustering: Each point belongs to all clusters up to some degree. A fuzzy clustering of X into m clusters is characterized by m functions u j : x [0,1], j 1,2,..., m m j 1 0 u ( x ) 1, i 1,2,..., N j N i 1 i u ( x ) N, j 1,2,..., m j i
Membership Functions u j ( xi ), j 1,2,..., m u j (x i ) close to 1 high grade of membership of x i u j ( x i ) close to 0 to cluster j. low grade of membership. 38
OTHER CLUSTERING ALGORITHMS Graph theory based clustering algorithms. Competitive learning algorithms. Valley seeking clustering algorithms. Cost optimization clustering algorithms based on: Branch and bound approach. Simulated annealing methodology. Deterministic annealing. Genetic algorithms. Density based clustering algorithms. Clustering algorithms for high h dimensional i data sets. 39
Demos http://home.dei.polimi.it/matteucc/clustering/tutorial_ht / / l / l h ml/index.html http://www.cs.washington.edu/research/imagedatabase/d emo/kmcluster/ http://nlp stanford edu/ danklein/demos/constrained http://nlp.stanford.edu/~danklein/demos/constrainedclustering demo.shtml