Ταξινόμηση I. Εισαγωγή. Ορισμός. Ορισμός. Τεχνικές Ταξινόμησης. Εισαγωγή

Σχετικά έγγραφα
Ταξινόμηση. Εισαγωγή. Ορισμός. Ορισμός. Τεχνικές Ταξινόμησης. Εισαγωγή

Ταξινόμηση II Σύντομη Ανακεφαλαίωση

Οι διαφάνειες στηρίζονται στο P.-N. Tan, M.Steinbach, V. Kumar, «Introduction to Data Mining», Addison Wesley, 2006

Οι διαφάνειες στηρίζονται στο P.-N. Tan, M.Steinbach, V. Kumar, «Introduction to Data Mining», Addison Wesley, 2006

Ταξινόμηση ΙI. Σύντομη Επανάληψη. Εισαγωγή Κατασκευή έντρου Απόφασης. Εξόρυξη Δεδομένων

Ταξινόμηση. Lecture Notes for Chapter 4. Introduction to Data Mining. by Tan, Steinbach, Kumar

Αποθήκες εδομένων και Εξόρυξη εδομένων:

Κατηγοριοποίηση (classification) Το γενικό πρόβλημα της ανάθεσης ενός αντικειμένου σε μία ή περισσότερες προκαθορισμένες κατηγορίες (κλάσεις)

Αποθήκες Δεδομένων και Εξόρυξη Δεδομένων

Κατηγοριοποίηση βάσει διανύσματος χαρακτηριστικών

Υπερπροσαρμογή (Overfitting) (1)

ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ. Κατηγοριοποίηση. Αριστείδης Γ. Βραχάτης, Dipl-Ing, M.Sc, PhD

Δέντρα Απόφασης (Decision(

ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ ΚΑΙ ΓΛΩΣΣΙΚΑ ΕΡΓΑΛΕΙΑ. Data Mining - Classification

Ευφυής Προγραμματισμός

Μάθηση και Γενίκευση. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Τεχνητή Νοημοσύνη. 16η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Αποθήκες Δεδομένων και Εξόρυξη Δεδομένων

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων

Ανάλυση Συσχέτισης IΙ

Ευφυής Προγραμματισμός

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1

Επεξεργασία Ερωτήσεων

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Κεφ.11: Ευρετήρια και Κατακερματισμός

Αποθήκες Δεδομένων και Εξόρυξη Δεδομένων:

Εισαγωγή στην. Εισαγωγή Σ Β. Αρχεία ευρετηρίου Κατάλογος. συστήματος. Αρχεία δεδομένων

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Αποθήκες και Εξόρυξη Δεδομένων

Πανεπιστήµιο Πειραιώς Τµήµα Πληροφορικής. Εξόρυξη Γνώσης από εδοµένα (Data Mining) Συσταδοποίηση. Γιάννης Θεοδωρίδης

Διάλεξη 14: Δέντρα IV - B-Δένδρα

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Το εσωτερικό ενός Σ Β

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Αποθήκες εδομένων και Εξόρυξη εδομένων:

επιστρέφει το αμέσως μεγαλύτερο από το x στοιχείο του S επιστρέφει το αμέσως μικρότερο από το x στοιχείο του S

5. Απλή Ταξινόμηση. ομές εδομένων. Χρήστος ουλκερίδης. Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων

Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο

Μάθηση με παραδείγματα Δέντρα Απόφασης

Αποθήκες Δεδομένων και Εξόρυξη Δεδομένων:

ΚΕΦΑΛΑΙΟ Μηχανική Μάθηση

HMY 795: Αναγνώριση Προτύπων

Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

έντρα ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη

Μηχανική Μάθηση: γιατί;

MBR Ελάχιστο Περιβάλλον Ορθογώνιο (Minimum Bounding Rectangle) Το µικρότερο ορθογώνιο που περιβάλλει πλήρως το αντικείµενο 7 Παραδείγµατα MBR 8 6.

Ουρές Προτεραιότητας: Υπενθύμιση. Σωροί / Αναδρομή / Ταξινόμηση. Υλοποίηση Σωρού. Σωρός (Εισαγωγή) Ορέστης Τελέλης

Διακριτικές Συναρτήσεις

Σύνοψη Προηγούμενου. Πίνακες (Arrays) Πίνακες (Arrays): Βασικές Λειτουργίες. Πίνακες (Arrays) Ορέστης Τελέλης

Ταξινόμηση κάδου και ταξινόμηση Ρίζας Bucket-Sort και Radix-Sort

Αποθήκες εδοµένων και Εξόρυξη Γνώσης (Data Warehousing & Data Mining)

Διπλωματική Εργασία: «Συγκριτική Μελέτη Μηχανισμών Εκτίμησης Ελλιπούς Πληροφορίας σε Ασύρματα Δίκτυα Αισθητήρων»

4.3. Γραµµικοί ταξινοµητές

Επεξεργασία Ερωτήσεων

Υπολογιστική Νοημοσύνη. Μάθημα 9: Γενίκευση

Αποθήκες Δεδομένων και Εξόρυξη Δεδομένων:

Τεχνητή Νοημοσύνη. 6η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Εξόρυξη Γνώσης από Βιολογικά εδομένα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ

Αναγνώριση Προτύπων Ι

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

LOGO. Εξόρυξη Δεδομένων. Δειγματοληψία. Πίνακες συνάφειας. Καμπύλες ROC και AUC. Σύγκριση Μεθόδων Εξόρυξης

Δομές Δεδομένων & Αλγόριθμοι

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΕΦΑΡΜΟΣΜΕΝΩΝ ΜΑΘΗΜΑΤΙΚΩΝ ΚΑΙ ΦΥΣΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΛΗΡΟΦΟΡΙΑΣ ΠΑΡΟΥΣΙΑΣΗ ΤΕΛΙΚΗΣ ΕΡΓΑΣΙΑΣ ΛΙΝΑ ΜΑΣΣΟΥ

Insert(K,I,S) Delete(K,S)

Σχεδίαση Αλγορίθμων -Τμήμα Πληροφορικής ΑΠΘ - Εξάμηνο 4ο

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων

Επίλυση Προβλημάτων 1

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

Επίλυση προβληµάτων. Περιγραφή προβληµάτων Αλγόριθµοι αναζήτησης Αλγόριθµοι τυφλής αναζήτησης Αλγόριθµοι ευρετικής αναζήτησης

υποδείγματος για την αξιολόγηση αυτοκινήτων με τεχνικές Data Mining.»

Ταχεία Ταξινόμηση Quick-Sort

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Heapsort Using Multiple Heaps

Ασκήσεις μελέτης της 16 ης διάλεξης

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Ανάλυση αλγορίθμων. Χρόνος εκτέλεσης: Αναμενόμενη περίπτωση. - απαιτεί γνώση της κατανομής εισόδου

Ομαδοποίηση Ι (Clustering)

ΗΥ360 Αρχεία και Βάσεις εδοµένων

Εισαγωγή στην επιστήμη των υπολογιστών. Λογισμικό Υπολογιστών Κεφάλαιο 8ο Αλγόριθμοι

Ανάκτηση Πληροφορίας

Χαλκίδης Νέστωρας, Τσαγιοπούλου Μαρία, Παπακωνσταντίνου Νίκος, Μωυσιάδης Θεόδωρος. Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης 2016

Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες)

Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ

Μπιτσάκη Αντωνία-Χρυσάνθη Ταουσάκος Θανάσης

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Συμβολοσειρές. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Διάλεξη 14: Δέντρα IV B Δένδρα. Διδάσκων: Παναγιώτης Ανδρέου

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Δέντρα Αναζήτησης. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Τι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές

Transcript:

Εισαγωγή Ταξινόμηση (classification) Το γενικό πρόβλημα της ανάθεσης ενός αντικειμένου σε μια ή περισσότερες προκαθορισμένες κατηγορίες (κλάσεις) Ταξινόμηση I Οι διαφάνειες στηρίζονται στο P.-N. Tan, M.Steinbach, V. Kumar, «Introduction to Data Mining», Addison Wesley, 2006 Παραδείγματα Εντοπισμός spam emails, με βάση πχ την επικεφαλίδα τους ή το περιεχόμενό τους Πρόβλεψη καρκινικών κυττάρων χαρακτηρίζοντας ταωςκαλοήθηήκακοήθη Κατηγοριοποίηση συναλλαγών με πιστωτικές κάρτες ως νόμιμες ή προϊόν απάτης Κατηγοριοποίηση δευτερευόντων δομών πρωτείνης ως alpha-helix, beta-sheet, ή random coil Χαρακτηρισμός ειδήσεων ως οικονομικές, αθλητικές, πολιτιστικές, πρόβλεψης καιρού, κλπ Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 2 Είσοδος: συλλογή από εγγραφές Κάθε εγγραφή περιέχει ένα σύνολο από γνωρίσματα (attributes) Ένα από τα γνωρίσματα είναι η κλάση (class) Βρες (έξοδος) ένα μοντέλο (model) για το γνώρισμα κλάση ως μια συνάρτηση των τιμών των άλλων γνωρισμάτων Στόχος: νέες εγγραφές θα πρέπει να ανατίθενται σε μία από τις κλάσεις με τη μεγαλύτερη δυνατή ακρίβεια. Tid κατηγορικό Επιστροφή Οικογενειακή Κατάσταση Ορισμός κατηγορικό συνεχές Φορολογητέο Εισόδημα Single 25K 2 0K 3 Single 70K 4 20K Απάτη 5 Divorced 95K 6 60K 7 Divorced 220K 8 Single 85K 9 75K Single 90K κλάση Είσοδος: συλλογή από εγγραφές Κάθε εγγραφή περιέχει ένα σύνολο από γνωρίσματα (attributes) Ένα από τα γνωρίσματα είναι η κλάση (class) Βρες ένα μοντέλο (model) για το γνώρισμα κλάση ως μια συνάρτηση των τιμών των άλλων γνωρισμάτων Στόχος: νέες εγγραφές θα πρέπει να ανατίθενται σε μία κλάσημετημεγαλύτερηδυνατήακρίβεια. Ταξινόμηση είναι η διαδικασία εκμάθησης μιας συνάρτησης στόχου (target function) f που απεικονίζει κάθε σύνολο γνωρισμάτων x σε μια από τις προκαθορισμένες ετικέτες κλάσεις y. Συνήθως το σύνολο δεδομένων εισόδου χωρίζεται σε: ένα σύνολο εκπαίδευσης (training set) και ένα σύνολο ελέγχου (test test) Το σύνολο εκπαίδευσης χρησιμοποιείται για να κατασκευαστεί το μοντέλο και το σύνολο ελέγχου γιανατοεπικυρώσει. Ορισμός Σύνολο εγγραφών (x) Μοντέλο Ταξινόμησης Ετικέτα κλάσης (y) Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 3 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 4 Εισαγωγή Τεχνικές Ταξινόμησης Χρησιμοποιείται ως: Περιγραφικό μοντέλο (descriptive modeling): ως επεξηγηματικό εργαλείο πχ ποια χαρακτηριστικά κάνουν ένα ζώο να χαρακτηριστεί ως θηλαστικό Μοντέλο πρόβλεψης (predictive modeling): για τη πρόβλεψη της κλάσης άγνωστων εγγραφών πχ δοσμένων των χαρακτηριστικών κάποιου ζώου να προβλέψουμε αν είναι θηλαστικό, πτηνό, ερπετό ή αμφίβιο Κατάλληλη κυρίως για: δυαδικές κατηγορίες ή κατηγορίες για τις οποίες δεν υπάρχει διάταξη διακριτές (nominal) vs διατεταγμένες (ordinal) για μη ιεραρχικές κατηγορίες Βήματα Ταξινόμησης Tid Attrib Attrib2 Attrib3 Class Large 25K 2 Medium 0K 3 Small 70K 4 Medium 20K 5 Large 95K 6 Medium 60K 7 Large 220K 8 Small 85K 9 Medium 75K Small 90K Σύνολο Εκπαίδευσης Attrib Attrib2 Attrib3 Tid Class Small 55K? Επαγωγή Induction Αφαίρεση Deduction Αλγόριθμος Μάθησης Κατασκευή Μοντέλου Εφαρμογή Μοντέλου Ταιριάζει δεδομένα εκπαίδευσης Προβλέπει την κλάση των δεδομένων ελέγχου Καλή δυνατότητα γενίκευσης Μοντέλο Η τιμή (ετικέτα) της κλάσης y είναι διακριτή τιμή - ιαφορά από regression (οπισθοδρόμηση) όπου το γνώρισμα y παίρνει συνεχείς τιμές 2 Medium 80K? 3 Large K? 4 Small 95K? 5 Large 67K? Σύνολο Ελέγχου Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 5 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 6

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 7 Ορισμός Τεχνικές ταξινόμησης Τεχνικές βασισμένες σε έντρα Απόφασης (decision trees) Τεχνικές βασισμένες σε Κανόνες (Rule-based Methods) Memory based reasoning Νευρωνικά ίκτυα Naïve Bayes and Bayesian Belief Networks Support Vector Machines έντρα Απόφασης Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 8 έντρο Απόφασης: Παράδειγμα έντρο Απόφασης: Παράδειγμα εδομένα Εκπαίδευσης Tid Marital κατηγορικό κατηγορικό Single 25K 2 0K 3 Single 70K 4 20K 5 Divorced 95K 6 60K 7 Divorced 220K 8 Single 85K 9 75K Single 90K συνεχές κλάση Φύλλα στα οποία αντιστοιχεί μια (ετικέτα) κλάσης Παράδειγμα Μοντέλου Ρίζα Γνωρίσματα ιαχωρισμού Splitting Attributes Single, Divorced Μοντέλο: έντρο Απόφασης Εσωτερικοί κόμβοι Μοντέλο = έντρο Απόφασης Εσωτερικοί κόμβοι αντιστοιχούν σε κάποιο γνώρισμα ιαχωρισμός (split) ενός κόμβου σε παιδιά η ετικέτα στην ακμή = συνθήκη/έλεγχος Φύλλα αντιστοιχούν σε κλάσεις Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 9 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ έντρο Απόφασης: Βήματα έντρο Απόφασης: Εφαρμογή Μοντέλου Tid Attrib Attrib2 Attrib3 Class Large 25K 2 Medium 0K 3 Small 70K 4 Medium 20K 5 Large 95K Induction Tree Induction algorithm Ξεκίνα από τη ρίζα του δέντρου. εδομένα Ελέγχου Marital 80K? 6 Medium 60K 7 Large 220K 8 Small 85K Learn Model 9 Medium 75K Small 90K Training Set Attrib Attrib2 Tid Attrib3 Class Small 55K? 2 Medium 80K? 3 Large K? 4 Small 95K? 5 Large 67K? Deduction Apply Model Model Δέντρο Απόφασης Single, Divorced Test Set Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 2

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 3 έντρο Απόφασης: Εφαρμογή Μοντέλου έντρο Απόφασης: Εφαρμογή Μοντέλου Test Data Test Data Marital Marital 80K? 80K? Single, Divorced Single, Divorced Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 4 έντρο Απόφασης: Εφαρμογή Μοντέλου έντρο Απόφασης: Εφαρμογή Μοντέλου Test Data Test Data Marital Marital 80K? 80K? Single, Divorced Single, Divorced Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 5 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 6 έντρο Απόφασης: Εφαρμογή Μοντέλου έντρο Απόφασης Είσοδος (δεδομένο ελέγχου) Marital 80K? Tid Attrib Attrib2 Attrib3 Class Large 25K 2 Medium 0K 3 Small 70K 4 Medium 20K 5 Large 95K Induction Tree Induction algorithm Single, Divorced Ανάθεση στο 6 Medium 60K 7 Large 220K 8 Small 85K 9 Medium 75K Small 90K Training Set Attrib Attrib2 Tid Attrib3 Class Small 55K? Learn Model Apply Model Model Decision Tree 2 Medium 80K? 3 Large K? 4 Small 95K? Deduction 5 Large 67K? Test Set Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 7 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 8

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 9 Tid Marital έντρο Απόφασης: Παράδειγμα έντρο Απόφασης: Κατασκευή Single 25K 2 0K 3 Single 70K 4 20K 5 Divorced 95K 6 60K 7 Divorced 220K 8 Single 85K 9 75K Single 90K Για το ίδιο σύνολο εκπαίδευσης υπάρχουν διαφορετικά δέντρα Single, Divorced Single, Divorced < 80K > 80K Ο αριθμός των πιθανών έντρων Απόφασης είναι εκθετικός. Πολλοί αλγόριθμοι για την επαγωγή (induction) του δέντρου οι οποίοι ακολουθούν μια greedy στρατηγική: γιανακτίσουντοδέντρο απόφασης παίρνοντας μια σειρά από τοπικά βέλτιστες αποφάσεις Hunt s Algorithm (από τους πρώτους) CART ID3, C4.5 SLIQ, SPRINT Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 20 Κτίζει το δέντρο αναδρομικά έντρο Απόφασης: Αλγόριθμος του Hunt D t : το σύνολο των εγγραφών εκπαίδευσης που έχουν φτάσει στον κόμβο t Γενική ιαδικασία: Αν το D t περιέχει εγγραφές που ανήκουν στην ίδια κλάση y t, τότε ο κόμβος t είναι κόμβος φύλλο με ετικέτα y t Αν D t είναι το κενό σύνολο, τότε ο κόμβος t είναι κόμβος φύλλο με ετικέτα την default κλάση, y d Αν το D t περιέχει εγγραφές που ανήκουν σε περισσότερες από μία κλάσεις, χρησιμοποίησε έναν έλεγχο-γνωρίσματος για το διαχωρισμό των δεδομένων σε μικρότερα υποσύνολα Εφάρμοσε την ιαδικασία αναδρομικά σε κάθε υποσύνολο. Tid Marital Single 25K 2 0K 3 Single 70K 4 20K Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 2 5 Divorced 95K 6 60K 7 Divorced 220K 8 Single 85K 9 75K Single 90K? D t Don t Don t Single, Divorced Don t Marital έντρο Απόφασης: Αλγόριθμος του Hunt Don t Don t Don t Single, Divorced Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 22 Marital < 80K >= 80K Don t Don t Tid Marital Single 25K 2 0K 3 Single 70K 4 20K 5 Divorced 95K 6 60K 7 Divorced 220K 8 Single 85K 9 75K Single 90K έντρο Απόφασης: Αλγόριθμος του Hunt Γενική ιαδικασία (πιο αναλυτικά): Αν το D t περιέχει εγγραφές που ανήκουν στην ίδια κλάση y t, τότε ο κόμβος t είναι κόμβος φύλλο με ετικέτα y t Αν D t είναι το κενό σύνολο, αυτό σημαίνει ότι δεν υπάρχει εγγραφή στο σύνολο εκπαίδευσης με αυτό το συνδυασμό τιμών, τότε D t γίνεται φύλλο με κλάση αυτή της πλειοψηφίας των εγγραφών εκπαίδευσης ή ανάθεση κάποιας default κλάσης Αν το D t περιέχει εγγραφές που ανήκουν σε περισσότερες από μία κλάσεις, χρησιμοποίησε έναν έλεγχο-γνωρίσματος για το διαχωρισμό των δεδομένων σε μικρότερα υποσύνολα Εφάρμοσε την ιαδικασία αναδρομικά σε κάθε υποσύνολο. Το παραπάνω δεν είναι δυνατόν αν όλες οι εγγραφές έχουν τις ίδιες τιμές σε όλαταγνωρίσματα(δηλαδή, ο ίδιος συνδυασμός αντιστοιχεί σε περισσότερες από μία κλάσεις) τότε φύλλο με κλάση αυτής της πλειοψηφίας των εγγραφών εκπαίδευσης Πως θα γίνει η διάσπαση του κόμβου; Greedy στρατηγική. ιάσπαση εγγραφών με βάση έναν έλεγχο γνωρίσματος που βελτιστοποιεί ένα συγκεκριμένο κριτήριο Θέματα Καθορισμός του τρόπου διαχωρισμού των εγγραφών Καθορισμός του ελέγχου γνωρίσματος Καθορισμός του βέλτιστου διαχωρισμού Πότε θα σταματήσει ο διαχωρισμός (συνθήκη τερματισμού) Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 23 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 24

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 25 ιαχωρισμός βασισμένος σε διακριτές τιμές Καθορισμός των συνθηκών του ελέγχου για τα γνωρίσματα Πολλαπλός διαχωρισμός: Χρησιμοποίησε τόσες διασπάσεις όσες οι διαφορετικές τιμές Family Luxury Sports Εξαρτάται από τον τύπο των γνωρισμάτων ιακριτές -minal ιατεταγμένες -Ordinal Συνεχείς - Continuous Εξαρτάται από τον αριθμό των διαφορετικών τρόπων διάσπασης 2-αδική διάσπαση -2-way split Πολλαπλή διάσπαση -Multi-way split υαδικός ιαχωρισμός: Χωρίζει τις τιμές σε δύο υποσύνολα. Πρέπει να βρει το βέλτιστο διαχωρισμό (partitioning). {Sports, Luxury} {Family} Η Γενικά, αν κ τιμές, 2 κ- τρόποι Όταν υπάρχει διάταξη, πρέπει οι διασπάσεις να μη την παραβιάζουν Αυτός ο διαχωρισμός; {Small, Large} {Family, Luxury} Size {Sports} {Medium} Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 26 ιαχωρισμός βασισμένος σε συνεχείς τιμές ιαχωρισμός βασισμένος σε συνεχείς τιμές Τρόποι χειρισμού > 80K? Δυαδικός διαχωρισμός < K? > 80K [K,25K) [25K,50K) [50K,80K) Πολλαπλός διαχωρισμός Discretization (διακριτοποίηση) ώστε να προκύψει ένα διατεταγμένο κατηγορικό γνώρισμα Ταξινόμηση των τιμών και χωρισμός τους σε περιοχές καθορίζοντας n σημεία διαχωρισμού, απεικόνιση όλων των τιμών μιας περιοχής στην ίδια κατηγορική τιμή Στατικό μια φορά στην αρχή υναμικό εύρεση των περιοχών πχ έτσι ώστε οι περιοχές να έχουν το ίδιο διάστημα ή τις ίδιες συχνότητες εμφάνισης ή με χρήση συσταδοποίησης υαδική Απόφαση: (A < v) or (A v) εξετάζει όλους τους δυνατούς διαχωρισμούς (τιμές του v) και επιλέγει τον καλύτερο υπολογιστικά βαρύ Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 27 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 28 Greedy στρατηγική. ιάσπαση εγγραφών με βάση έναν έλεγχο γνωρίσματος που βελτιστοποιεί ένα συγκεκριμένο κριτήριο Θέματα Καθορισμός του τρόπου διαχωρισμού των εγγραφών Καθορισμός του ελέγχου γνωρίσματος Καθορισμός του βέλτιστου διαχωρισμού Πότε θα σταματήσει ο διαχωρισμός (συνθήκη τερματισμού) C0: 6 C: 4 Own Car? Βέλτιστος ιαχωρισμός Πριν το διαχωρισμό: εγγραφές της κλάσης 0, εγγραφές της κλάσης C0: 4 C: 6 C0: C: 3 Car Type? Family Sports C0: 8 C: 0 Luxury c c C0: C: 7 C0: C: 0 C0: C: 0 Ποια από τις 3 διασπάσεις να προτιμήσουμε; Ποια συνθήκη ελέγχου είναι καλύτερη;... Student ID? c C0: 0 C: c 20... C0: 0 C: Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 29 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 30

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 3 Βέλτιστος ιαχωρισμός Greedy προσέγγιση: προτιμούνται οι κόμβοι με ομοιογενείς κατανομές κλάσεων (homogeneous class distribution) Χρειαζόμαστε μία μέτρηση της μη καθαρότητας ενός κόμβου (node impurity) «Καλός» κόμβος!! Ν C 0 C2 6 Μη καθαρότητα ~ 0 C0: 5 C: 5 Ν2 C C2 5 ενδιάμεση Μη-ομοιογενής, Μεγάλος βαθμός μη καθαρότητας Ν3 C 2 C2 4 ενδιάμεση αλλά μεγαλύτερη Ν4 Ι(Ν) < Ι(N2) < I(N3) < I(N4) C0: 9 C: Ομοιογενής, Μικρός βαθμός μη καθαρότητας C 3 C2 3 Μεγάλη μη καθαρότητα Πως θα χρησιμοποιήσουμε τη μέτρηση καθαρότητας; Κριτήριο για διάσπαση Το τι κερδίζουμε από την διάσπαση: Έστω ότι έχουμε ένα μέτρο για τη μέτρηση αυτής της καθαρότητας ενός κόμβου n: I(n) Κοιτάμε την καθαρότητα του γονέα (πριν τη διάσπαση) και των παιδιών του (μετά τη διάσπαση) Δ = I( parent) i= N είναι ο αριθμός των εγγραφών στο γονέα και Ν(u i ) του i-οστού παιδιού k N( u ) ιαλέγουμε την «καλύτερη» διάσπαση (μεγαλύτερο ) N i Βάρος (εξαρτάται από τον αριθμό εγγραφών) I( u ) i Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 32 Παράδειγμα έντρο Απόφασης: Κατασκευή Πριν τη διάσπαση: C0 C N00 N0 M0 A? B? Μέτρα μη Καθαρότητας de N C0 N C N de N2 C0 N20 C N2 de N3 C0 N30 C N3 de N4 C0 N40 C N4. Ευρετήριο Gini - Gini Index 2. Εντροπία -Entropy M M2 M3 M4 3. Λάθος ταξινομήσεις - Misclassification error M2 Gain (κέρδος) = M0 M2 vs M0 M34 M34 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 33 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 34 Ευρετήριο Gini για τον κόμβο t : Παραδείγματα: C 0 C2 6 Gini=0.000 GINI( t) = c j= [ p( j t)] p( j t) σχετική συχνότητα της κλάσης j στον κόμβο t (ποσοστό εγγραφών της κλάσης j στον κόμβο t) c αριθμός κλάσεων Ν Ν2 Ν3 Ν4 C C 2 C2 5 C2 4 Gini=0.278 Gini=0.444 2 C 3 C2 3 Gini=0.500 Ευρετήριο Gini για τον κόμβο t : GINI( t) = c j= [ p( j t)] p( j t) σχετική συχνότητα της κλάσης j στον κόμβο t c αριθμός κλάσεων Ελάχιστη τιμή (0.0) όταν όλες οι εγγραφές ανήκουν σε μία κλάση (που σημαίνει την πιο ενδιαφέρουσα πληροφορία) Μέγιστη τιμή ( - /c) όταν όλες οι εγγραφές είναι ομοιόμορφα κατανεμημένες στις κλάσεις (που σημαίνει τη λιγότερο ενδιαφέρουσα πληροφορία) εξαρτάται από τον αριθμό των κλάσεων 2 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 35 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 36

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 37 GINI split = k i= Χρήση του στην κατασκευή του δέντρου απόφασης Χρησιμοποιείται στα CART, SLIQ, SPRINT. Όταν ένας κόμβος p διασπάται σε k κόμβους (παιδιά), (που σημαίνει ότι το σύνολο των εγγραφών του κόμβου χωρίζεται σε k υποσύνολα), η ποιότητα του διαχωρισμού υπολογίζεται ως: ni GINI ( i) n όπου, n i = αριθμός εγγραφών του παιδιού i, n= αριθμός εγγραφών του κόμβου p. Ψάχνουμε για: Πιο καθαρές Πιο μεγάλες (σε αριθμό) μικρές διασπάσεις Παράδειγμα Εφαρμογής Περίπτωση : υαδικά Γνωρίσματα C 4 C2 3 de N N N2 C 4 2 C2 3 3 Gini=0.486 A? C 6 C2 6 de N2 C 2 C2 3 Gini(N) = (4/7) 2 (3/7) 2 = 0.49 Gini(N2) = (2/5) 2 (3/5) 2 = 0.48 Αρχικός κόμβος Parent C 6 C2 6 Gini = 0.500 Gini(Children) = 7/2 * 0.49 + 5/2 * 0.48 = 0.486 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 38 Παράδειγμα Εφαρμογής (συνέχεια) C 5 C2 2 de N B? C 6 C2 6 de N2 Parent C 6 C2 6 Gini = 0.500 C C2 4 Υπενθύμιση: με βάση το Α N N2 C 4 2 C2 3 3 Gini=0.486 Περίπτωση 2: Κατηγορικά Γνωρίσματα Δυαδική διάσπαση (βρες τον καλύτερο διαχωρισμό των τιμών) Για κάθε διαφορετική τιμή, μέτρησε τις τιμές στα δεδομένα που ανήκουν σε κάθε κλάση Χρησιμοποίησε τον πίνακα με τους μετρητές για να πάρεις την απόφαση {Family, Luxury} {Sports} N N2 C 5 C2 2 4 Gini=0.37 Gini(N) = (5/7) 2 (2/7) 2 = 0.408 Gini(N2) = (/5) 2 (4/5) 2 = 0.32 Gini(Children) = 7/2 * 0.408 + 5/2 * 0.32 = 0.37 Άρα διαλέγουμε το Β {Sports, Luxury} {Sports, {Family} {Family} Luxury} C 9 C2 7 3 Gini 0.468 {Sports} {Family, Luxury} C 8 2 C2 0 Gini 0.67 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 39 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 40 Περίπτωση 2: Κατηγορικά Γνωρίσματα Family Luxury Sports Family Sports Luxury C 8 C2 3 0 7 Gini 0.63 Πολλαπλή Διάσπαση Συνεχή Γνωρίσματα Χρήση δυαδικών αποφάσεων πάνω σε μία τιμή Πολλές επιλογές για την τιμή διαχωρισμού Αριθμός πιθανών διαχωρισμών = Αριθμός διαφορετικών τιμών έστω Ν Κάθε τιμή διαχωρισμού v συσχετίζεται με έναν πίνακα μετρητών Μετρητές των κλάσεων για κάθε μια από τις δύο διασπάσεις, A < v and A v Απλή μέθοδος για την επιλογή της καλύτερης τιμής v Για κάθε v, scan τα δεδομένα κατασκεύασε τον πίνακα και υπολόγισε το Gini ευρετήριο χρόνος Ο(Ν) Ο(Ν 2 ) Υπολογιστικά μη αποδοτικό! Επανάληψη υπολογισμού. Tid Marital Single 25K 2 0K 3 Single 70K 4 20K 5 Divorced 95K 6 60K 7 Divorced 220K 8 Single 85K 9 75K Single 90K > 80K? Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 4 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 42

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 43 Για ποιο αποδοτικό υπολογισμό, για κάθε γνώρισμα Ταξινόμησε το γνώρισμα - Ο(Ν logn) Σειριακή διάσχιση των τιμών, ενημερώνοντας κάθε φορά των πίνακα με τους μετρητές και υπολογίζοντας το ευρετήριο Gini Επιλογή του διαχωρισμού με το μικρότερο ευρετήριο Gini Ταξινόμηση Τιμών Τιμές διαχωρισμού Παράδειγμα ιαχωρισμός στο γνώρισμα 60 70 75 85 90 95 0 20 25 220 55 65 72 80 87 92 97 22 72 230 <= > <= > <= > <= > <= > <= > <= > <= > <= > <= > <= > 0 3 0 3 0 3 0 3 2 2 3 0 3 0 3 0 3 0 3 0 0 7 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 7 0 Gini 0.420 0.400 0.375 0.343 0.47 0.400 0.300 0.343 0.375 0.400 0.420 Tid Marital Ταξινομημένες Τιμές Τιμές Διαχωρισμού Single 25K 2 0K 3 Single 70K 4 20K 5 Divorced 95K 6 60K 7 Divorced 220K 8 Single 85K 9 75K Single 90K Για <55, δεν υπάρχει εγγραφή οπότε 0 Για <65, κοιτάμε το μικρότερο το 60, 0->, 7->6 δεν αλλάζει Για <72, κοιτάμε το μικρότερο το 70, ΝΟ ->2 6->5, δεν αλλάζει κοκ Καλύτερα; Αγνοούμε τα σημεία στα οποία δεν υπάρχει αλλαγή κλάσης (αυτά δε μπορεί να είναι σημεία διαχωρισμού) Άρα, στο παράδειγμα, αγνοούνται τα σημεία 55, 65, 72, 87, 92, 22, 72, 230 Από πιθανά σημεία διαχωρισμού μας μένουν μόνο 2 60 70 75 85 90 95 0 20 25 220 55 65 72 80 87 92 97 22 72 230 <= > <= > <= > <= > <= > <= > <= > <= > <= > <= > <= > 0 3 0 3 0 3 0 3 2 2 3 0 3 0 3 0 3 0 3 0 0 7 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 7 0 Gini 0.420 0.400 0.375 0.343 0.47 0.400 0.300 0.343 0.375 0.400 0.420 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 44 έντρο Απόφασης: Εντροπία Εντροπία για τον κόμβο t : Μέτρα μη Καθαρότητας. Ευρετήριο Gini - Gini Index 2. Εντροπία -Entropy 3. Λάθος ταξινομήσεις - Misclassification error Entropy( t) = c j= p( j t) log p( j t) p( j t) σχετική συχνότητα της κλάσης j στον κόμβο t c αριθμός κλάσεων Μετράει την ομοιογένεια ενός κόμβου Μέγιστη τιμή log(c) όταν όλες οι εγγραφές είναι ομοιόμορφα κατανεμημένες στις κλάσεις (που σημαίνει τη λιγότερο ενδιαφέρουσα πληροφορία) Ελάχιστη τιμή (0.0) όταν όλες οι εγγραφές ανήκουν σε μία κλάση (που σημαίνει την πιο ενδιαφέρουσα πληροφορία) Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 45 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 46 C 0 C2 6 Παραδείγματα έντρο Απόφασης: Εντροπία Entropy t) p( j t)log p( j t) ( 2 = j P(C) = 0/6 = 0 P(C2) = 6/6 = Entropy = 0 log 0 log = 0 0 = 0 έντρο Απόφασης: Εντροπία Και σε αυτήν την περίπτωση, όταν ένας κόμβος p διασπάται σε k σύνολα (παιδιά), η ποιότητα του διαχωρισμού υπολογίζεται ως: GAIN split k = Entropy( p) i= όπου, n i = αριθμός εγγραφών του παιδιού i, n= αριθμός εγγραφών του κόμβου p. n i Entropy n ( i) C C2 5 C 2 C2 4 P(C) = /6 P(C2) = 5/6 Entropy = (/6) log 2 (/6) (5/6) log 2 (5/6) = 0.65 P(C) = 2/6 P(C2) = 4/6 Entropy = (2/6) log 2 (2/6) (4/6) log 2 (4/6) = 0.92 Χρησιμοποιείται στα ID3 and C4.5 Όταν χρησιμοποιούμε την εντροπία για τη μέτρηση της μη καθαρότητας τότε η διαφορά καλείται κέρδος πληροφορίας (information gain) Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 47 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 48

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 49 έντρο Απόφασης έντρο Απόφασης: Λόγος Κέρδους Μία λύση είναι να έχουμε μόνο δυαδικές διασπάσεις Δ = I( parent) k i= N( ui) N I( ui) Τείνει να ευνοεί διαχωρισμούς που καταλήγουν σε μεγάλο αριθμό από διασπάσεις που η κάθε μία είναι μικρή αλλά καθαρή Εναλλακτικά, μπορούμε να λάβουμε υπό όψιν μας τον αριθμό των κόμβων GAIN Split GainRATIO = split SplitINFO C0: 6 C: 4 Own Car? C0: 4 C: 6 C0: C: 3 Car Type? Family Sports C0: 8 C: 0 Μπορεί να καταλήξουμε σε πολύ μικρούς κόμβους (με πολύ λίγες εγγραφές) για αξιόπιστες προβλέψεις Στο παράδειγμα, το student-id είναι κλειδί, όχι χρήσιμο για προβλέψεις C0: C: 7 C0:... C0: C: 0 C: 0 Student ID? Luxury c c 20 c c C0: 0... C0: 0 C: C: Όπου: SplitINFO = k i= ni ni log n n SplitINFO: εντροπία της διάσπασης Μεγάλος αριθμός μικρών διασπάσεων (υψηλή εντροπία) τιμωρείται Χρησιμοποιείται στο C4.5 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 50 έντρο Απόφασης: Λόγος Κέρδους GainRATIO split GAIN Split = SplitINFO SplitINFO = k i= Παράδειγμα Έστω N εγγραφές αν τις χωρίσουμε Σε 3 κόμβους SplitINFO = - log(/3) = log3 Σε 2 κόμβους SplitINFO = - log(/2) = log2 = ni ni log n n Μέτρα μη Καθαρότητας. Ευρετήριο Gini - Gini Index 2. Εντροπία -Entropy 3. Λάθος ταξινομήσεις - Misclassification error Άρα οι 2 ευνοούνται Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 5 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 52 έντρο Απόφασης: Λάθος Ταξινόμησης Λάθος ταξινόμησης (classification error) για τον κόμβο t : Μετράει το λάθος ενός κόμβου Παράδειγμα C 0 C2 6 Error( t) = max P( i t) P(C) = 0/6 = 0 P(C2) = 6/6 = Error = max (0, ) = = 0 class i έντρο Απόφασης: Λάθος Ταξινόμησης Λάθος ταξινόμησης (classification error) για τον κόμβο t : Μετράει το λάθος ενός κόμβου Error( t) = max P( i t) class i C C2 5 C 2 C2 4 P(C) = /6 P(C2) = 5/6 Error = max (/6, 5/6) = 5/6 = /6 P(C) = 2/6 P(C2) = 4/6 Error = max (2/6, 4/6) = 4/6 = /3 Μέγιστη τιμή -/c όταν όλες οι εγγραφές είναι ομοιόμορφα κατανεμημένες στις κλάσεις (που σημαίνει τη λιγότερο ενδιαφέρουσα πληροφορία) Ελάχιστη τιμή (0.0) όταν όλες οι εγγραφές ανήκουν σε μία κλάση (που σημαίνει την πιο ενδιαφέρουσα πληροφορία) Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 53 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 54

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 55 έντρο Απόφασης: Σύγκριση έντρο Απόφασης: Σύγκριση Για ένα πρόβλημα δύο κλάσεων p ποσοστό εγγραφών που ανήκει σε μία από τις δύο κλάσεις (p κλάση +, -p κλάση -) Όπως είδαμε και στα παραδείγματα οι τρεις μετρήσεις είναι συνεπής μεταξύ τους, πχ Ν μικρότερη τιμή από το Ν2 και με τις τρεις μετρήσεις Όλες την μεγαλύτερη τιμή για 0.5 (ομοιόμορφη κατανομή) Όλες μικρότερη τιμή όταν όλες οι εγγραφές σε μία μόνο κλάση (0 και στο ) Ωστόσο το γνώρισμα που θα επιλεγεί για τη συνθήκη ελέγχου εξαρτάται από το ποια μέτρηση χρησιμοποιείται Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 56 έντρο Απόφασης: Κριτήρια Τερματισμού Greedy στρατηγική. ιάσπαση εγγραφών με βάση έναν έλεγχο γνωρίσματος που βελτιστοποιεί ένα συγκεκριμένο κριτήριο Θέματα Καθορισμός του τρόπου διαχωρισμού των εγγραφών Καθορισμός του ελέγχου γνωρίσματος Καθορισμός του βέλτιστου διαχωρισμού Σταματάμε την επέκταση ενός κόμβου όταν όλες οι εγγραφές του ανήκουν στην ίδια κλάση Σταματάμε την επέκταση ενός κόμβου όταν όλα τα γνωρίσματα έχουν τις ίδιες τιμές Γρήγορος τερματισμός Πότε θα σταματήσει ο διαχωρισμός (συνθήκη τερματισμού) Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 57 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 58 έντρo Απόφασης έντρo Απόφασης Πλεονεκτήματα έντρων Απόφασης Μη παραμετρική προσέγγιση: ε στηρίζεται σε υπόθεση εκ των προτέρων γνώσης σχετικά με τον τύπο της κατανομής πιθανότητας που ικανοποιεί η κλάσηήταάλλαγνωρίσματα Η κατασκευή του βέλτιστου δέντρου απόφασης είναι ένα NP-complete πρόβλημα. Ευριστικοί: Αποδοτική κατασκευή ακόμα και στην περίπτωση πολύ μεγάλου συνόλου δεδομένων Αφού το δέντρο κατασκευαστεί, η ταξινόμηση νέων εγγραφών πολύ γρήγορη O(h) όπου h το μέγιστο ύψος του δέντρου Καλή συμπεριφορά στο θόρυβο Πλεονεκτήματα Η ύπαρξη πλεοναζόντων γνωρισμάτων (γνωρίσματα των οποίων η τιμή εξαρτάται από κάποιο άλλο) δεν είναι καταστροφική για την κατασκευή. Χρησιμοποιείται ένα από τα δύο. Αν πάρα πολλά, μπορεί να οδηγήσουν σε δέντρα πιο μεγάλα από ότι χρειάζεται Εύκολα στην κατανόηση (ιδιαίτερα τα μικρά δέντρα) Η ακρίβεια τους συγκρίσιμη με άλλες τεχνικές για μικρά σύνολα δεδομένων Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 59 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 60

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 6 έντρo Απόφασης έντρo Απόφασης Στρατηγική αναζήτησης Ο αλγόριθμος που είδαμε χρησιμοποιεί μια greedy, top-down, αναδρομική διάσπαση για να φτάσει σε μια αποδεκτή λύση Άλλες στρατηγικές? Bottom-up (από τα φύλλα, αρχικά κάθε εγγραφή και φύλλο) Bi-directional Εκφραστικότητα υνατότητα αναπαράστασης για συναρτήσεις διακριτών τιμών, αλλά δε δουλεύουν σε κάποια είδη δυαδικών προβλημάτων πχ, parity 0() αν υπάρχει μονός (ζυγός) αριθμός από δυαδικά γνωρίσματα 2 d κόμβοι για d γνωρίσματα Όχι καλή συμπεριφορά για συνεχείς μεταβλητές Ιδιαίτερα όταν η συνθήκη ελέγχου αφορά ένα γνώρισμα τη φορά Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 62 Data Fragmentation ιάσπαση εδομένων έντρο Απόφασης Ο αριθμός των εγγραφών μειώνεται όσο κατεβαίνουμε στο δέντρο Ο αριθμός των εγγραφών στα φύλλα μπορεί να είναι πολύ μικρός για να πάρουμε οποιαδήποτε στατιστικά σημαντική απόφαση Μπορούμε να αποτρέψουμε την περαιτέρω διάσπαση όταν ο αριθμός των εγγραφών πέσει κάτω από ένα όριο Q P S 0 Q 0 Tree Replication (Αντίγραφα) S 0 0 R έντρο Απόφασης Το ίδιο υπο-δέντρο να εμφανίζεται πολλές φορές σε ένα δέντρο απόφασης Αυτό κάνει το δέντρο πιο περίπλοκο και πιθανών δυσκολότερο στην κατανόηση Σε περιπτώσεις διάσπασης ενός γνωρίσματος σε κάθε εσωτερικό κόμβο ο ίδιος έλεγχος σε διαφορετικά σημεία Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 63 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 64 έντρο Απόφασης έντρο Απόφασης Decision Boundary Όταν η συνθήκη ελέγχου περιλαμβάνει μόνο ένα γνώρισμα τη φορά τότε το Decision boundary είναι παράλληλη στους άξονες (τα decision boundaries είναι ορθογώνια παραλληλόγραμμα) Μέχρι στιγμής είδαμε ελέγχους που αφορούν μόνο ένα γνώρισμα τη φορά, μπορούμε να δούμε τη διαδικασία ως τη διαδικασία διαμερισμού του χώρου των γνωρισμάτων σε ξένες περιοχές μέχρι κάθε περιοχή να περιέχει εγγραφές που ναανήκουνστηνίδιακλάση 0.9 0.8 0.7 0.6 x < 0.43? Η οριακή γραμμή (Border line) μεταξύ δυο γειτονικών περιοχών που ανήκουν σε διαφορετικές κλάσεις ονομάζεται και decision boundary (όριο απόφασης) y 0.5 0.4 0.3 y < 0.47? y < 0.33? 0.2 0. : 4 : 0 : 0 : 4 : 0 : 3 : 4 : 0 0 x 0 0. 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 65 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 66

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 67 έντρο Απόφασης έντρο Απόφασης Oblique (πλάγιο) έντρο Απόφασης x + y < Constructive induction Κατασκευή σύνθετων γνωρισμάτων ως αριθμητικών ή λογικών συνδυασμών άλλων γνωρισμάτων Class = + Class = Οι συνθήκες ελέγχου μπορούν να περιλαμβάνουν περισσότερα από ένα γνωρίσματα Μεγαλύτερη εκφραστικότητα Η εύρεση βέλτιστων συνθηκών ελέγχου είναι υπολογιστικά ακριβή Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 68 έντρο Απόφασης: C4.5 Simple depth-first construction. Uses Information Gain Sorts Continuous Attributes at each node. Needs entire data to fit in memory. Unsuitable for Large Datasets. Needs out-of-core sorting. You can download the software from: http://www.cse.unsw.edu.au/~quinlan/c4.5r8.tar.gz Θέματα στην Ταξινόμηση Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 69 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 70 Θέματα Ταξινόμησης Underfitting and Εκτίμηση Λάθους Τιμές που λείπουν Λάθη Εκπαίδευσης (training, resubstitution, apparent): λάθη ταξινόμησης στα δεδομένα του συνόλου εκπαίδευσης (ποσοστό δεδομένων εκπαίδευσης που ταξινομούνται σε λάθος κλάση) Γενίκευσης (generalization): τα αναμενόμενα λάθη ταξινόμησης του μοντέλου σε δεδομένα που δεν έχει δει Μπορεί ένα μοντέλο που ταιριάζει πολύ καλά με τα δεδομένα εκπαίδευσης να έχει μεγαλύτερο λάθος γενίκευσης από ένα μοντέλο που ταιριάζει λιγότερο καλά στα δεδομένα εκπαίδευσης Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 7 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 72

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 73 Everything should be made as simple as possible, but not simpler, Einstein Δύο κλάσεις: κλάση (500 κυκλικά σημεία) και κλάση 2 (500 τριγωνικά σημεία) Γιατασημείατης κλάσης (κυκλικά σημεία): 0.5 sqrt(x 2 +x 22 ) Γιατασημείατης κλάσης 2 (τριγωνικά σημεία): sqrt(x 2 +x 22 ) > 0.5 or sqrt(x 2 +x 22 ) < Το δέντρο απόφασης για το προηγούμενα δεδομένα 30% εκπαίδευση 70% έλεγχο Gini Στη συνέχεια, pruning Underfitting: όταν το μοντέλο είναι πολύ απλό και τα λάθη εκπαίδευσης και τα λάθη ελέγχου είναι μεγάλα Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 74 Μπορούμε να διασπάμε το δέντρο μέχρι να φτάσουμε στο σημείο κάθε φύλλο να ταιριάζει απολύτως στα δεδομένα Μικρό (μηδενικό) λάθος εκπαίδευσης εξαιτίας Θορύβου Μεγάλο λάθος ελέγχου Και το ανάποδο, μπορεί επίσης να ισχύει Decision boundary is distorted by noise point Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 75 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 76 εξαιτίας μη Επαρκών ειγμάτων Κόκκινοι κύκλοι ανήκουν στην ίδια κλάση Οι γεμάτοι είναι στο σύνολο εκπαίδευσης, οι άδειοι στο σύνολο ελέγχου Η έλλειψη κόκκινων σημείων στο κάτω μισό του διαγράμματος κάνει δύσκολη την πρόβλεψη των κλάσεων σε αυτήν την περιοχή Μη επαρκής αριθμός εγγραφών εκπαίδευσης έχει ως αποτέλεσμα το δέντρο απόφασης να κάνει πρόβλεψη για τα σημεία αυτής της περιοχής χρησιμοποιώντας εγγραφές εκπαίδευσης μη σχετικές με το έργο της ταξινόμησης Πρόβλημα λόγω πολλαπλών επιλογών - Επειδή σε κάθε βήμα εξετάζουμε πάρα πολλές διαφορετικές διασπάσεις, - κάποια διάσπαση βελτιώνει το δέντρο κατά τύχη Το πρόβλημα χειροτερεύει όταν αυξάνει ο αριθμός των επιλογών και μειώνεται ο αριθμός των δειγμάτων Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 77 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 78

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 79 Πολυπλοκότητα Μοντέλου Το οverfitting έχει ως αποτέλεσμα δέντρα απόφασης που είναι πιο περίπλοκα από ό,τι χρειάζεται Τα λάθη εκπαίδευσης δεν αποτελούν πια μια καλή εκτίμηση για τη συμπεριφορά του δέντρου σε εγγραφές που δεν έχει δει ξανά Νέοι μέθοδοι για την εκτίμηση του λάθους Occam s Razor οθέντων δυο μοντέλων με παρόμοια λάθη γενίκευσης, πρέπει να προτιμάται το απλούστερο από το πιο περίπλοκο Ένα πολύπλοκο μοντέλο είναι πιο πιθανό να έχει ταιριαστεί (Fitted) τυχαία λόγω λαθών στα δεδομένα Για αυτό η πολυπλοκότητα του μοντέλου θα πρέπει να αποτελεί έναν από τους παράγοντες της αξιολόγησής του Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 80 Εκτίμηση του Λάθους Γενίκευσης Εκτίμηση του Λάθους Γενίκευσης Re-substitution errors: Λάθος στην εκπαίδευση (Σ e(t) ) Generalization errors: Λάθος στον έλεγχο (Σ e (t)) Ως λάθος μετράμε το ποσοστό των εγγραφών που ο ταξινομητής τοποθετεί σε λάθος κλάση Πλειοψηφία στην + Άρα έγγραφή λάθος Μέθοδοι εκτίμησης του λάθους γενίκευσης: Πλειοψηφία στην - Άρα 3 εγγραφές λάθος. Optimistic approach Αισιόδοξη προσέγγιση: e (t) = e(t) Με βάση το λάθος εκπαίδευσης Αριστερό 4/24 = 0.67 εξί: 6/24 = 0.25 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 8 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 82 Εκτίμηση του Λάθους Γενίκευσης Εκτίμηση του Λάθους Γενίκευσης 2. Pessimistic approach - Απαισιόδοξη προσέγγιση: k: αριθμός φύλλων, για κάθε φύλλο t i προσθέτουμε ένα κόστος V(t i ) e'( T ) k [ e( t ) + V ( t )] i i= = k i n( t ) Aν γιακάθεφύλλοt: e (t) = e(t) + 0.5 Συνολικό λάθος: e (T) = e(t) + k 0.5 (k: αριθμός φύλλων) Για ένα δέντρο με 30 φύλλα και λάθη στο σύνολο εκπαίδευσης (από σύνολο 00 εγγραφών): Training error = /00 = % Generalization error = ( + 30 0.5)/00 = 2.5% Το 0.5 σημαίνει ότι διαχωρισμός ενός κόμβου δικαιολογείται αν βελτιώνει τουλάχιστον μία εγγραφή i i Με βάση το λάθος εκπαίδευσης Αριστερό (4 + 7*0.5)/24 = 0.325 εξί: (6 + 4*0.5)/24 = 0.3333 Αν αντί για 0.5, κάτι μεγαλύτερο; Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 83 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 84

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 85 Εκτίμηση του Λάθους Γενίκευσης Αντιμετώπιση 3. Reduced error pruning (REP): χρήση ενός συνόλου επαλήθευσης για την εκτίμηση του λάθους γενίκευσης Χώρισε τα δεδομένα εκπαίδευσης: 2/3 εκπαίδευση /3 (σύνολο επαλήθευσης validation set) για υπολογισμό λάθους Χρήση για εύρεση του κατάλληλου μοντέλου Pre-Pruning (Early Stopping Rule) Σταμάτα τον αλγόριθμο πριν σχηματιστεί ένα πλήρες δέντρο Συνήθεις συνθήκες τερματισμού για έναν κόμβο: Σταμάτα όταν όλες οι εγγραφές ανήκουν στην ίδια κλάση Σταμάτα όταν όλες οι τιμές των γνωρισμάτων είναι οι ίδιες Πιο περιοριστικές συνθήκες: Σταμάτα όταν ο αριθμός των εγγραφών είναι μικρότερος από κάποιο προκαθορισμένο κατώφλι Σταμάτα όταν η επέκταση ενός κόμβου δεν βελτιώνει την καθαρότητα (π.χ., Gini ή information gain) ήτολάθοςγενίκευσης περισσότερο από κάποιο κατώφλι. (-) δύσκολος ο καθορισμός του κατωφλιού, (-) αν και το κέρδος μικρό, κατοπινοί διαχωρισμοί μπορεί να καταλήξουν σε καλύτερα δέντρα Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 86 Post-pruning Ανάπτυξε το δέντρο πλήρως Trim ψαλίδισε τους κόμβους bottom-up Αν το λάθος γενίκευσης μειώνεται με το ψαλίδισμα, αντικατέστησε το υποδέντρο με ένα φύλλο - οι ετικέτες κλάσεις του φύλλου καθορίζεται από την πλειοψηφία των κλάσεων των εγγραφών του υποδέντρου (subtree replacement) ένα από τα κλαδιά του (Branch), αυτό που χρησιμοποιείται συχνότερα (subtree raising) Παράδειγμα Post-Pruning Class = 20 Class = Error = /30 A? A A2 A3 Class = 8 Class = 4 Class = 4 Class = A4 Class = Class = Λάθος εκπαίδευσης (Πριν τη διάσπαση) = /30 Απαισιόδοξο λάθος = ( + 0.5)/30 =.5/30 Λάθος εκπαίδευσης (Μετά τη διάσπαση) = 9/30 Απαισιόδοξο λάθος (Μετά τη διάσπαση) = (9 + 4 0.5)/30 = /30 PRUNE! 5 Class = Class = 3 4 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 87 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 88 Παράδειγμα post-pruning Αισιόδοξη προσέγγιση? Όχι διάσπαση Απαισιόδοξη προσέγγιση? όχι case, ναι case 2 REP? Εξαρτάται από το σύνολο επαλήθευσης Case : Case 2: C0: C: 3 C0: 2 C: 4 Τιμές που λείπουν Οι τιμές που λείπουν επηρεάζουν την κατασκευή του δέντρου με τρεις τρόπους: Πως υπολογίζονται τα μέτρα καθαρότητας Πως κατανέμονται στα φύλλα οι εγγραφές με τιμές που λείπουν Πως ταξινομείται μια εγγραφή εκπαίδευσης στην οποία λείπει μια τιμή C0: 4 C: 3 C0: 2 C: 2 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 89 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 90

Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 9 Tid Marital Class Single 25K 2 0K 3 Single 70K 4 20K 5 Divorced 95K 6 60K 7 Divorced 220K 8 Single 85K 9 75K? Single 90K Τιμές που λείπουν Υπολογισμό μέτρων καθαρότητας Πριν τη διάσπαση: Entropy(Parent) = -0.3 log(0.3)-(0.7)log(0.7) = 0.883 Class Class = = = 0 3 = 2 4 =? 0 Διάσπαση στο : Entropy(=) = 0 Entropy(=) = -(2/6)log(2/6) (4/6)log(4/6) = 0.983 Tid Marital Class Single 25K 2 0K 3 Single 70K 4 20K 5 Divorced 95K 6 60K 7 Divorced 220K 8 Single 85K 9 75K Tid Marital Class? Single 90K Σε ποιο φύλλο; Τιμές που λείπουν Πιθανότητα = is 3/9 (3 από τις 9 εγγραφές έχουν refund=) Πιθανότητα = is 6/9 Aνάθεση εγγραφής στο αριστερό παιδί με βάρος 3/9 καιστοδεξίπαιδίμεβάρος6/9 Missing value Entropy(Children) = 0.3 (0) + 0.6 (0.983) = 0.55 Gain = 0.9 (0.883 0.55) = 0.3303 Class= 0 Class= 3 Class= 2 Class= 4 Class= 0 + 3/9 Class= 3 Class= 2 + 6/9 Class= 4 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 92 Τιμές που λείπουν Νέα εγγραφή Tid Marital Class Class= 3 Single Divorced 0 Total 4? 85K? Class= 6/9 2.67 Single, Divorced Total 3.67 2 Πιθανότητα οικογενειακή κατάσταση () = is 3.67/6.67 Πιθανότητα οικογενειακή κατάσταση () ={Single,Divorced} is 3/6.67 6.67 Εξόρυξη Δεδομένων: Ακ. Έτος 2007-2008 ΤΑΞΙΝΟΜΗΣΗ 93