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

Σχετικά έγγραφα
Δέντρα Απόφασης (Decision(

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

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

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

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim

Κβαντική Επεξεργασία Πληροφορίας

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

Βέλτιστος Έλεγχος Συστημάτων

1 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

Ενδεικτικές λύσεις ασκήσεων διαχείρισης έργου υπό συνθήκες αβεβαιότητας

Διοικητική Λογιστική

Βάσεις Περιβαλλοντικών Δεδομένων

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Εισαγωγή στους Η/Υ. Ενότητα 2β: Αντίστροφο Πρόβλημα. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 1

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 6: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ: ΠΡΟΒΛΗΜΑ ΑΝΑΖΗΤΗΣΗΣ

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

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

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

Κβαντική Επεξεργασία Πληροφορίας

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskal

Εισαγωγή στους Υπολογιστές

Αλγόριθμοι και πολυπλοκότητα Συγχωνευτική Ταξινόμηση

Ψηφιακή Επεξεργασία Εικόνων

Βέλτιστος Έλεγχος Συστημάτων

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 4: ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ - ΔΕΝΤΡΑ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 4

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

Ενότητα. Εισαγωγή στις βάσεις δεδομένων

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 8: ΧΡΗΣΗ ΔΟΜΩΝ ΔΕΝΤΡΟΥ ΚΑΙ ΣΩΡΟΥ ΓΙΑ ΕΠΙΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ ΤΑΞΙΝΟΜΗΣΗΣ ΑΛΓΟΡΙΘΜΟΣ HEAPSORT

Διοίκηση Επιχειρήσεων

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Κβαντική Επεξεργασία Πληροφορίας

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού Υπέρθερμου Ατμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 5

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 3: Εφαρμογές Δικτυωτής Ανάλυσης (2 ο Μέρος)

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Κβαντική Επεξεργασία Πληροφορίας

Εισαγωγή στους Υπολογιστές

Εισαγωγή στους Αλγορίθμους Ενότητα 11η Άσκηση - Σταθμισμένος Χρονοπρογραμματισμός Διαστημάτων

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 10: Διαχείριση Έργων (2ο Μέρος)

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 2

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Διαχείριση Έργων. Ενότητα 10: Χρονοπρογραμματισμός έργων (υπό συνθήκες αβεβαιότητας)

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους (1)

Η ΓΝΩΣΗ ΚΑΙ ΤΟ ΠΡΑΓΜΑΤΙΚΟ ΣΤΟΝ ΠΛΑΤΩΝΑ ΚΑΙ ΤΟΝ ΑΡΙΣΤΟΤΕΛΗ

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 8: Συστήματα αρίθμησης

Έλεγχος και Διασφάλιση Ποιότητας Ενότητα 4: Μελέτη ISO Κουππάρης Μιχαήλ Τμήμα Χημείας Εργαστήριο Αναλυτικής Χημείας

Αλγόριθμοι και πολυπλοκότητα Ταχυταξινόμηση (Quick-Sort)

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

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

Αερισμός. Ενότητα 1: Αερισμός και αιμάτωση. Κωνσταντίνος Σπυρόπουλος, Καθηγητής Σχολή Επιστημών Υγείας Τμήμα Ιατρικής

Βέλτιστος Έλεγχος Συστημάτων

6 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

Μυελού των Οστών Ενότητα #1: Ερωτήσεις κατανόησης και αυτόαξιολόγησης

Βέλτιστος Έλεγχος Συστημάτων

Βέλτιστος Έλεγχος Συστημάτων

Διοικητική Λογιστική

Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 2: ΣΥΓΚΕΝΤΡΩΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΜΑΡΚΕΤΙΝΓΚ Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 5: ΚΑΤΗΓΟΡΙΕΣ ΑΛΓΟΡΙΘΜΙΚΩΝ ΠΡΟΒΛΗΜΑΤΩΝ-ΑΝΑΓΩΓΗ

Ψηφιακή Επεξεργασία και Ανάλυση Εικόνας Ενότητα 10 η : Ανάλυση Εικόνας. Καθ. Κωνσταντίνος Μπερμπερίδης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής

Αριθμητική Ανάλυση. Ενότητα 1: Εισαγωγή Βασικές Έννοιες. Φραγκίσκος Κουτελιέρης Πολυτεχνική Σχολή Τμήμα Χημικών Μηχανικών

ΟΙΚΟΝΟΜΕΤΡΙΑ. Ενότητα 3: Πολλαπλή Παλινδρόμηση. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Πληροφορική ΙΙ Θεματική Ενότητα 5

Διδακτική Πληροφορικής

Βάσεις Περιβαλλοντικών Δεδομένων

Οντοκεντρικός Προγραμματισμός

Εισαγωγή στην Πληροφορική

ΑΛΓΟΡΙΘΜΟΙ. Ενότητα 12: Αντιμετώπιση Περιορισμών Αλγοριθμικής Ισχύος

ΘΕΡΜΟΔΥΝΑΜΙΚΗ Ι. Ενότητα 2: Θερμοδυναμικές συναρτήσεις. Σογομών Μπογοσιάν Πολυτεχνική Σχολή Τμήμα Χημικών Μηχανικών

Αλγόριθμοι και πολυπλοκότητα Δυναμικός Προγραμματισμός

Χρόνος καί αἰωνιότητα στόν Πλωτῖνο

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 5: Διαχείριση Έργων υπό συνθήκες αβεβαιότητας

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας

Μηχανολογικό Σχέδιο Ι

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

Φιλοσοφία της Ιστορίας και του Πολιτισμού

Διδακτική των εικαστικών τεχνών Ενότητα 3

Λογιστική Κόστους Ενότητα 10: Ασκήσεις Προτύπου Κόστους Αποκλίσεων.

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

Υπολογιστική άλγεβρα Ενότητα 10: Βάσεις Groebner ενός ιδεώδους ΙΙΙ

Δυναμική και Έλεγχος E-L Ηλεκτρομηχανικών Συστημάτων

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 8

Βέλτιστος Έλεγχος Συστημάτων

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους

Transcript:

Ευφυής Προγραμματισμός Ενότητα 11: Δημιουργία Βάσεων Κανόνων Από Δεδομένα- Εξαγωγή Κανόνων Ιωάννης Χατζηλυγερούδης Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής

Δημιουργία Βάσεων Κανόνων Από Δεδομένα- Εξαγωγή Κανόνων

Εξαγωγή Κανόνων Η εξαγωγή κανόνων ουσιαστικά αποτελεί ένα πρόβλημα εξαγωγής ενός μοντέλου κατηγοριοποίησης (classification) δεδομένων (υπό μορφή κανόνων). Η διαδικασία έχει ως εξής: Χωρισμός του συνόλου δεδομένων σε δύο σύνολα: σύνολο εκπαίδευσης (ΣΕΚ), σύνολο ελέγχου (ΣΕΛ) (συνήθης σχέση μεγέθους 2:1 ή 3:1) Εξαγωγή κανόνων με βάση το ΣΕΚ. Αξιολόγηση των κανόνων με βάση το ΣΕΛ. 3

Μέθοδοι Εξαγωγής Κανόνων Δένδρα Απόφασης (ID3, C4.5) Μέθοδοι επαγωγής κανόνων Βασισμένες σε SVMs Βασισμένες σε Νευρωνικά Δίκτυα Βασισμένες σε Γενετικούς Αλγορίθμους 4

Δένδρα Απόφασης (Decision Trees) (1) Τα δέντρα απόφασης είναι μια μέθοδος δημιουργίας προτασιακών κανόνων-με άλλες λέξεις ενός μοντέλου κατηγοριοποίησης, το οποίο έχει μορφή δέντρου, από δεδομένα. Χρήση της τεχνικής «διαίρει και βασίλευε» για διαίρεση του χώρου αναζήτησης σε υποσύνολα (ορθογώνιες περιοχές). Ένα παράδειγμα κατηγοριοποιείται με βάση την περιοχή στην οποία ανήκει. 5

Δένδρα Απόφασης (Decision Trees) (2) Δέντρο Απόφασης (ΔΑ) ή Δέντρο Κατηγοριοποίησης είναι ένα δέντρο με τις ακόλουθες ιδιότητες: Κάθε εσωτερικός κόμβος και η ρίζα ονοματίζεται με το όνομα ενός χαρακτηριστικού. Κάθε κλάδος ονοματίζεται με ένα κατηγόρημα διάσπασης του χαρακτηριστικού που αποτελεί το όνομα του κόμβου-πατέρα. Κάθε φύλλο ονοματίζεται με το όνομα μιας κλάσης 6

Βασικός Αλγόριθμος Input: D //σύνολο εκπαίδευσης Output: Τ //ζητούμενο δέντρο απόφασης Algorithm: DTBuild T = ; Determine best splitting criterion; T = Create root node and label with splitting attribute; T = Add arc to root node for each splitting predicate and label; for each arc do D = database created by applying splitting predicate to D; if stopping point reached for this path then T = create leaf mode and label with appropriate class; else T = DTBuild (D); T = Add T to arc; 7

Βασικές Έννοιες (1) Χαρακτηριστικά διάσπασης (splitting features) Τα χαρακτηριστικά των παραδειγμάτων στη βάση D που χρησιμοποιούνται σαν ονόματα κόμβων του δέντρου, δηλ. επιλέχτηκαν ως καλύτερα χαρακτηριστικά. Χαρακτηριστικό στόχου (target feature) Το χαρακτηριστικό που οι τιμές του αντιπροσωπεύουν τις κλάσεις κατηγοριοποίησης. Κατηγορήματα διάσπασης (splitting predicates) Τα κατηγορήματα που χρησιμοποιούνται σαν ονόματα των κλάδων του δέντρου. 8

Βασικές Έννοιες (2) Κριτήριο διάσπασης (splitting criterion). Το κριτήριο με βάση το οποίο επιλέγεται το καλύτερο χαρακτηριστικό διάσπασης κάθε φορά. Κριτήριο τερματισμού (stopping criterion). Το κριτήριο με βάση το οποίο τερματίζεται ο αλγόριθμος. Παραλλαγές των δύο αυτών κριτηρίων δημιουργούν μια ποικιλία αλγορίθμων. 9

Βασικά Θέματα (1) Επιλογή χαρακτηριστικών διάσπασης Διαφορετικά σύνολα χαρακτηριστικών διάσπασης έχουν σαν αποτέλεσμα διαφορετικά ΔΑ με διαφορετική απόδοση. Η επιλογή τους στηρίζεται όχι μόνο στο σύνολο εκπαίδευσης, αλλά και στη γνώμη του εμπειρογνώμονα. Διάταξη των χαρακτηριστικών διάσπασης Η σειρά επιλογής των χαρακτηριστικών διάσπασης παίζει σημαντικό ρόλο στην απόδοση ενός ΔΑ. Ο αριθμός διασπάσεων συνδέεται με τη διάταξη των χαρακτηριστικών διάσπασης. Ο αριθμός διασπάσεων μπορεί εύκολα να προσδιοριστεί όταν το πεδίο είναι μικρό (λίγα χαρακτηριστικά, λίγες και διακριτές τιμές), αλλιώς (πολλά χαρακτηριστικά ή πολλές/συνεχείς τιμές) τα πράγματα δυσκολεύουν. 10

Βασικά Θέματα (2) Δομή του δέντρου Επιθυμητό είναι να δημιουργούνται δέντρα που είναι ισορροπημένα και με τα λιγότερα επίπεδα (μικρότερο βάθος). Αυτό όμως δεν είναι πάντα εφικτό ούτε το υπολογιστικά φτηνότερο. Μερικοί αλγόριθμοι δημιουργούν μόνο δυαδικά δέντρα. Κριτήρια τερματισμού Η δημιουργία ενός δέντρου σταματά οπωσδήποτε όταν όλα τα δεδομένα του (εναπομείναντος) συνόλου εκπαίδευσης κατηγοριοποιούνται πλήρως. Μπορεί όμως να είναι απαραίτητο να σταματήσει νωρίτερα για να αποφευχθούν π.χ. μεγάλα δέντρα. Το πότε ή πού θα σταματήσει είναι θέμα συναλλαγής (trade-off) μεταξύ ακρίβειας (accuracy) και απόδοσης (performance) του αλγορίθμου. 11

Βασικά Θέματα (3) Κριτήρια τερματισμού (συν.) Επίσης, πρώιμος τερματισμός μπορεί να γίνει για αποφυγή του φαινομένου της υπερπροσαρμογής (overfitting). Τέλος, μπορεί να προχωρήσει σε μεγαλύτερα δέντρα αν είναι γνωστό ότι υπάρχουν κατηγορίες δεδομένων που δεν αντιπροσωπεύονται στο σύνολο εκπαίδευσης. Δεδομένα εκπαίδευσης Η δομή ενός ΔΑ εξαρτάται από τα δεδομένα εκπαίδευσης. Αν το σύνολο εκπαίδευσης είναι πολύ μικρό, τότε το δέντρο μπορεί να μην είναι τόσο λεπτομερές, ώστε να ταξινομεί γενικότερα δεδομένα. Αν είναι πολύ μεγάλο, το δέντρο πιθανόν να υπερπροσαρμόζεται (overfits). 12

Βασικά Θέματα (4) Κλάδεμα (Pruning) Μετά τη δημιουργία ενός ΔΑ μπορεί να χρειάζονται τροποποιήσεις για να βελτιώσουν την απόδοσή του, όπως π.χ. το κλάδεμα πλεοναζόντων συγκρίσεων ή υποδέντρων 13

Πολυπλοκότητα Η πολυπλοκότητα χρόνου και χώρου των αλγορίθμων ΔΑ εξαρτώνται από το μέγεθος του συνόλου εκπαίδευσης k, τον αριθμό των χαρακτηριστικών διάσπασης n και το σχήμα του ΔΑ. Στη χειρότερη περίπτωση το ΔΑ είναι βαθύ και μη ισορροπημένο. Η πολυπλοκότητα χρόνου για τη δημιουργία ενός ΔΑ είναι O(n*k*logk) Η πολυπλοκότητα χρόνου κατηγοριοποίησης μιας βάσης n παραδειγμάτων εξαρτάται από το ύψος του ΔΑ και είναι O(n*logk), υποθέτοντας πολυπλοκότητα για το ύψος O(logk). 14

Αλγόριθμος ID3 (1) Χρησιμοποιεί σαν κριτήριο για τον προσδιορισμό του «καλύτερου χαρακτηριστικού διάσπασης» το «κέρδος πληροφορίας» (information gain). Το «κέρδος πληροφορίας» μετριέται ποσοτικά με την εντροπία (entropy). Η εντροπία εν γένει εκφράζει το μέγεθος της ανομοιογένειας σε ένα σύνολο δεδομένων. Π.χ. αν όλα τα δεδομένα ανήκουν σε μια κλάση, τότε δεν υπάρχει ανομοιογένεια: η εντροπία είναι μηδέν. Το ζητούμενο σ ένα ΔΑ είναι ο διαχωρισμός του συνόλου εκπαίδευσης, μ ένα επαναληπτικό τρόπο, σε υποσύνολα μηδενικής εντροπίας. Αν p η πιθανότητα να συμβεί ένα γεγονός, τότε log(1/p) παριστάνει το ποσό της τυχαιότητας με βάση την πιθανότητα. Η αναμενόμενη πληροφορία με βάση την p ορίζεται: p log(1/p) Αν έχω δύο συμπληρωματικά γεγονότα e, e με p, p, τότε η αναμενόμενη πληροφορία είναι: p log(1/p) + p log(1/p ) 15

Αλγόριθμος ID3 (2) Ορισμός (εντροπία) Δεδομένων των πιθανοτήτων p 1, p 2, p k, όπου Σp i = 1, η εντροπία E ορίζεται ως εξής: E(S) = E(p 1, p 2,, p k ) = Σ(p i log(1/p i )) Ορισμός (κέρδος πληροφορίας) G(S, X) = E(S) Σ( S i / S ) E(S i ) όπου S i υποσύνολo του S, που περιέχει τα παραδείγματα του S με τιμή x i για το χαρακτηριστικό X. 16

Παράδειγμα-Αλγόριθμος ID3 (1) No Outlook Temp. Humid. Wind PlayTennis 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Sunny Sunny Overcast Rain Rain Rain Overcast Sunny Sunny Rain Sunny Overcast Overcast Rain Hot Hot Hot Mild Cool Cool Cool Mild Cool Mild Mild Mild Hot Mild High High High High Normal Normal Normal High Normal Normal Normal High Normal High Weak Strong Weak Weak Weak Strong Strong Weak Weak Weak Strong Strong Weak Strong No No Yes Yes Yes No Yes No Yes Yes Yes Yes Yes No 17

Παράδειγμα-Αλγόριθμος ID3 (2) Επιλογή ρίζας G(S, Outlook) = E(S) - ( S sunny / S ) E(S sunny )) - ( S overcast / S ) E(S overcast )) - ( S rain / S ) E(S rain )) Χαρακτηριστικό-στόχος: PlayTennis:PT (yes, no) p 1 = p(pt=yes) = 9/14, p 2 = p(pt=no) = 5/14 E(S) = p 1 log(1/p 1 ) + p 2 log(1/p 2 ) = -p 1 log(p 1 ) p 2 log(p 2 ) = -(9/14) log(9/14) (5/14) log(5/14) = 0,283 18

Παράδειγμα-Αλγόριθμος ID3 (3) E(S sunny ) = -(2/5) log(2/5) (3/5) log(3/5) = 0,292 E(S rain ) = -(3/5) log(3/5) (2/5) log(2/5) = 0,292 E(S overcast ) = -(4/4) log(4/4) (0/4) log(0/4) = 0 S = 14, S sunny = 5, S rain = 5, S overcast = 4 G(S, Outlook) = 0,074 Ομοίως G(S, Humidity) = 0,04565, G(S, Wind) = 0,0144 και G(S, Temperature) = 0,0087 19

Παράδειγμα-Αλγόριθμος ID3 = Sunny? {d1, d2, d8, d9, d11} Outlook = Rain = Overcast {d4, d5, d6, d10, d14} yes? {d3, d7, d12, d13} E(S) = 0 20

Παράδειγμα-Αλγόριθμος ID3 Τελικό ΔΑ = Sunny Humidity Outlook = Rain = Overcast yes Wind = High = Normal = Strong = Weak no yes no yes 21

Παράδειγμα-Αλγόριθμος ID3 Εξαγόμενοι Κανόνες if outlook is sunny and and humidity is high then playtennis is no if outlook is sunny and and humidity is normal then playtennis is yes if outlook is overcast then playtennis is yes if outlook is rain and and wind is strong then playtennis is no if outlook is rain and and wind is weak then playtennis is yes 22

Ιδιότητες ID3 Προτιμά τα μικρότερα δέντρα από τα μεγαλύτερα τοποθετεί χαρακτηριστικά με υψηλό κέρδος πληροφορίας κοντύτερα στη ρίζα Είναι αλγόριθμος αναζήτησης τύπου Hill Climbing, που Προχωρά από τα απλά στα σύνθετα ξεκινώντας από το κενό δέντρο Ψάχνει στον πλήρη χώρο των υποθέσεων (όλων των πιθανών δέντρων) Διατηρεί μόνο μια υπόθεση κάθε φορά Δεν κάνει οπισθοδρόμηση (backtracking), δηλ. δεν αναθεωρεί προηγούμενη απόφαση/επιλογή (κίνδυνος τοπικού βέλτιστου) Χρησιμοποιεί όλα τα δεδομένα εκπαίδευσης (λιγότερο ευαίσθητος σε λάθη) Δεν φτάνει σε αποφάσεις αυξητικά, δηλ. βασιζόμενος σε ατομικά δεδομένα 23

Χαρακτηριστικά ID3 Τα παραδείγματα (δεδομένα) αναφέρονται σε ένα συγκεκριμένο σύνολο χαρακτηριστικών και τις τιμές τους, που είναι διακριτές και, κατά προτίμηση, λίγες. Χειρισμός μεταβλητών με πραγματικές τιμές απαιτεί επέκταση του βασικού αλγορίθμου Η μεταβλητή (ή συνάρτηση) στόχου έχει διακριτές τιμές, συνήθως δύο (π.χ. PlayTennis yes, no) (boolean classification). Η επέκταση για έξοδο με περισσότερες από δύο τιμές είναι εύκολη. Δυσκολότερη η επέκταση για χειρισμό εξόδου με συνεχείς (πραγματικές) τιμές (πράγμα όχι σύνηθες όμως) 24

Αλγόριθμος C4.5 Αποφυγή υπερπροσαρμογής (overfitting) Reduced error pruning Rule post-pruning Χειρισμός χαρακτηριστικών συνεχών τιμών Επιλογή καλύτερης μετρικής για την επιλογή των χαρακτηριστικών διάσπασης Χειρισμός συνόλου εκπαίδευσης με ελλιπείς τιμές Χειρισμός χαρακτηριστικών με διαφορετικά κόστη Βελτίωση υπολογιστικής απόδοσης 25

Υπερπροσαρμογή (Overfitting) (1) Ορισμός Δεδομένου ενός χώρου υποθέσεων H, μια υπόθεση h H λέγεται ότι υπερπροσαρμόζει τα δεδομένα εκπαίδευσης, αν υπάρχει κάποια εναλλακτική υπόθεση h H, τέτοια ώστε η h έχει μικρότερο λάθος (δηλ. καλύτερα αποτελέσματα) κατηγοριοποίησης από την h ως προς τα δεδομένα εκπαίδευσης, αλλά η h έχει μικρότερο λάθος από την h ως προς το σύνολο των δεδομένων. (Mitchell, 1997) 26

Accuracy Υπερπροσαρμογή (Overfitting) (2) 0.9 0.85 0.8 0.75 0.7 0.65 0.6 0.55 Training data Test data 0.5 0 10 20 30 40 50 60 70 80 90 100 Size of tree (No of nodes) 27

Υπερπροσαρμογή (Overfitting) (3) Πιθανοί λόγοι Τα δεδομένα εκπαίδευσης περιέχουν τυχαία λάθη ή θόρυβο Κάποια φύλλα αντιπροσωπεύουν μικρό αριθμό δεδομένων Πιθανές λύσεις Πρόωρο σταμάτημα, πριν την πλήρη κατηγοριοποίηση (reduced error pruning) (Δυσκολία στον προσδιορισμό του σημείου σταματήματος) Εκ των υστέρων κλάδεμα του δέντρου (rule post-pruning) (Πιο αποτελεσματική λύση) 28

Reduced Error Pruning (Κλάδεμα Ελαττωμένου Λάθους) Χρησιμοποιεί σύνολο εγκυροποίησης Το κλάδεμα ξεκινά αφού δημιουργηθεί το δέντρο Κάθε κόμβος θεωρείται υποψήφιος για κλάδεμα Κλάδεμα ενός κόμβου σημαίνει διαγραφή του υποδέντρου που τον έχει ως ρίζα και μετατροπή του σε φύλλο, στο οποίο προσάπτεται η πιο κοινή κλάση των παραδειγμάτων εκπαίδευσης που σχετίζονται με τον κόμβο Ένας κόμβος κλαδεύεται μόνο αν προκύπτει δέντρο που δεν είναι χειρότερο από το αρχικό (με βάση την ακρίβεια ως προς το σύνολο εγκυροποίησης) Το κλάδεμα συνεχίζεται μέχρις ότου διαπιστωθεί μείωση της ακρίβειας 29

Rule Post-Pruning (1) Μια παραλλαγή του χρησιμοποιείται στον C4.5 Διαδικασία 1. Δημιούργησε το ΔΑ από το training set αναπτύσσοντάς το μέχρις ότου ικανοποιούνται όσο το δυνατόν περισσότερα παραδείγματα, επιτρέποντας υπερπροσαρμογή 2. Μετάτρεψε το ΔΑ σ ένα ισοδύναμο σύνολο κανόνων δημιουργώντας ένα κανόνα για κάθε μονοπάτι από τη ρίζα σε φύλλο 3. Κλάδεψε/Γενίκευσε κάθε κανόνα διαγράφοντας κάθε συνθήκη που έχει σαν αποτέλεσμα τη βελτίωση της εκτιμώμενης ακρίβειας 4. Διάταξε τους κλαδεμένους κανόνες με βάση την εκτιμώμενη ακρίβεια και θεώρησέ τους μ αυτή τη σειρά όταν κατηγοριοποιείς παραδείγματα 30

Rule Post-Pruning (2) Πιο συγκεκριμένα (βήμα 3.2) Υπολογίζεται η ακρίβεια του κανόνα με βάση τα παραδείγματα εκπαίδευσης Υπολογίζεται η τυπική απόκλιση (standard deviation: std) της ακρίβειας υποθέτοντας δυωνιμική κατανομή Με δεδομένο το επίπεδο βεβαιότητας, σαν το χαμηλότερο όριο της εκτίμησης λαμβάνεται η απόδοση του κανόνα (π.χ. για βεβαιότητα 95%, η ακρίβεια του κανόνα εκτιμάται απαισιόδοξα ως η παρατηρηθείσα ακρίβεια- 1,96*std) 31

Χαρακτηριστικά Με Συνεχείς Τιμές (1) Ο ID3 περιορίζεται σε χαρακτηριστικά στόχου και διάσπασης με διακριτές τιμές. Όταν έχουμε χαρακτηριστικά με συνεχείς τιμές, τότε το πρόβλημα λύνεται σχετικά απλά για διακριτοποίηση σε δύο τιμές. Για κάθε χαρακτηριστικό Χ που παίρνει συνεχείς τιμές δημιουργούμε μια δυαδική μεταβλητή Χc που είναι αληθής για Χc < C και ψευδής αλλού. Το πρόβλημα είναι η επιλογή της τιμής C. Διατάσσουμε τα παραδείγματα με βάση τις τιμές του χαρακτηριστικού Χ και προσδιορίζουμε γειτονικά παραδείγματα, όπου έχουμε αλλαγή στην ταξινόμηση. Τότε παίρνουμε σαν C την ενδιάμεση τιμή της «καλύτερης» περίπτωσης, δηλ. της περίπτωσης με το μεγαλύτερο κέρδος πληροφορίας. 32

Χαρακτηριστικά Με Συνεχείς Τιμές Παράδειγμα (2) Έστω ότι υπάρχει ένα χαρακτηριστικό Temperature που παίρνει συνεχείς τιμές και το S σ ένα κόμβο περιέχει παραδείγματα με τιμές (διατεταγμένα) Temperature 40 48 60 72 80 90 PlayTennis no no yes yes yes no Υποψήφια κατώφλια: (48+60)/2 = 54, (80+90)/2 = 85 Υπολογίζουμε τα G(S, Temp >54 ) και G(S, Temp >85 ) Επειδή G(S, Temp >54 ) > G(S, Temp >85 ), επιλέγεται το C=54 Η προσέγγιση αυτή μπορεί να επεκταθεί και για διακριτοποίηση με περισσότερες από δύο τιμές. 33

Εναλλακτικές Μετρικές Το κέρδος πληροφορίας ευνοεί χαρακτηριστικά με πολλές τιμές σε βάρος αυτών με λίγες. Π.χ. το χαρακτηριστικό ημερομηνία λόγω των πολλών τιμών θα είχε το μεγαλύτερο κέρδος πληροφορίας δέντρο με πολλές διασπάσεις (πλατύ δέντρο), αλλά βάθος 1: τέλεια ταξινόμηση, αλλά όχι καλό δέντρο στη συνέχεια. Ένας τρόπος να το διορθώσουμε είναι να αλλάξουμε την μετρική: GainRatio(S, X) = Gain(S, X)/SplitInfo(S, X) (λόγος κέρδους) SplitInfo(S, X)= - ( Si / S )*log ( Si / S ) (πληροφορία διάσπασης) Τιμωρούνται χαρακτηριστικά με πολλές τιμές μέσω της «πληροφορίας διάσπασης» 34

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στo πλαίσιo του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Αθηνών» έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 35

Σημείωμα Ιστορικού Εκδόσεων Έργου Το παρόν έργο αποτελεί την έκδοση 1.0. 36

Σημείωμα Αναφοράς Copyright Πανεπιστήμιο Πατρών, Ιωάννης Χατζηλυγερούδης 2015. «Ευφυής Προγραμματισμός». Έκδοση: 1.0. Πάτρα 2015. Διαθέσιμο από τη δικτυακή διεύθυνση: https://eclass.upatras.gr/courses/ceid1095/ 37

Σημείωμα Αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά, Μη Εμπορική Χρήση Παρόμοια Διανομή 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] http://creativecommons.org/licenses/by-nc-sa/4.0/ Ως Μη Εμπορική ορίζεται η χρήση: που δεν περιλαμβάνει άμεσο ή έμμεσο οικονομικό όφελος από την χρήση του έργου, για το διανομέα του έργου και αδειοδόχο που δεν περιλαμβάνει οικονομική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανομέα του έργου και αδειοδόχο έμμεσο οικονομικό όφελος (π.χ. διαφημίσεις) από την προβολή του έργου σε διαδικτυακό τόπο Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί. 38

Διατήρηση Σημειωμάτων Οποιαδήποτε αναπαραγωγή ή διασκευή του υλικού θα πρέπει να συμπεριλαμβάνει: το Σημείωμα Αναφοράς το Σημείωμα Αδειοδότησης τη δήλωση Διατήρησης Σημειωμάτων το Σημείωμα Χρήσης Έργων Τρίτων (εφόσον υπάρχει) μαζί με τους συνοδευόμενους υπερσυνδέσμους. 39