Εξόρυξη Δεδομένων και Αλγόριθμοι Μάθησης Bayesian networks & NN Εξόρυξη Δεδομένων και Αλγόριθμοι Μάθησης Φροντιστήριο Αντωνέλλης Παναγιώτης adonel@ceid.upatras.gr Σκούρα Αγγελική skoura@ceid.upatras.gr
Bayesian networks Ένα Bayesian δίκτυο είναι ένα γραφικό μοντέλο που κωδικοποιεί πιθανοτικές σχέσεις ανάμεσα σε ένα σύνολο μεταβλητών. Βασίζεται στη στατιστική θεωρία κατηγοριοποίησης του Bayes. Στόχος είναι να κατηγοριοποιηθεί ένα δείγμα Χ σε μια από τις δεδομένες κατηγορίες C1,C2,..,Cn χρησιμοποιώντας ένα μοντέλο πιθανότητας που ορίζεται σύμφωνα με τη θεωρία του Bayes.
Bayesian networks Πρόκειται για κατηγοριοποιητές που κάνουν αποτίμηση πιθανοτήτων και όχι πρόβλεψη. Αυτό πολλές φορές είναι πιο χρήσιμο και αποτελεσματικό. Εδώ οι προβλέψεις έχουν έναν βαθμό και σκοπός είναι το αναμενόμενο κόστος να ελαχιστοποιείται.
Bayesian networks Κάθε κατηγορία χαρακτηρίζεται από μια εκ των προτέρων πιθανότητα. Υποθέτουμε πως το δεδομένο δείγμα Χ ανήκει σε μια κλάση Ci. Βασισμένοι στους ορισμούς και τα παραπάνω καθορίζουμε την εκ των υστέρων πιθανότητα.
Bayesian networks Ο πιο γνωστός Bayesian κατηγοριοποιητής είναι ο naive Bayesian κατηγοριοποιητής. Υποθέτει πως η επίδραση ενός γνωρίσματος σε μια δεδομένη κατηγορία είναι ανεξάρτητη από τις τιμές των άλλων γνωρισμάτων.
Bayesian networks Ένας άλλος Bayesian κατηγοριοποιητής είναι τα Bayesian Belief Networks Είναι γραφικά μοντέλα που επιτρέπουν την παρουσίαση των εξαρτήσεων μεταξύ των υποσυνόλων των γνωρισμάτων
Κανόνας Bayes Σημαντικός νόμος πιθανοτήτων, ο οποίος είναι γνωστός ως κανόνας του Bayes (1700μΧ). Με απλό τρόπο ο κανόνας του Bayes μπορεί να εκφραστεί ως εξής: Όπου Ρ(a) είναι η πιθανότητα του a και P(a|b) είναι η δεσμευμένη πιθανότητα του a δεδομένου του b.
Παράδειγμα Για παράδειγμα ας υποθέσουμε ότι η μηνιγγίτιδα μπορεί να προκαλέσει δύσκαμπτο λαιμό σε ποσοστό 50%. Επιπλέον υποθέτουμε ότι γνωρίζουμε από πληθυσμιακές μελέτες ότι ένας στους 50.000 ανθρώπους έχουν μηνιγγίτιδα και ένας στους 20 έχει δύσκαμπτο λαιμό. Θέλουμε να βρούμε την πιθανότητα ένας ασθενής που παραπονιέται για δύσκαμπτο να έχει μηνιγγίτιδα. Αναλυτικότερα πόσο πιθανή είναι η μηνιγγίτιδα δοθέντος δύσκαμπτου λαιμού.
Παράδειγμα P(μηνιγγίτιδα|δύσκαμπτος λαιμός) = P(δύσκαμπτος λαιμός| μηνιγγίτιδα) x Ρ(μηνιγγίτιδα) / Ρ(δύσκαμπτος λαιμός)= Επομένως εάν ένας ασθενής παραπονιέται ότι έχει δύσκαμπτο λαιμό τότε η πιθανότητα αυτό να οφείλεται από μηνιγγίτιδα είναι μόνο 0.0002
Πεποιθήσεις - Ενδείξεις Ο όρος πεποιθήσεις (beliefs) αναφέρεται στην πιθανότητα του να είναι μια μεταβλητή σε μία συγκεκριμένη κατάσταση. Οι εκ των προτέρων πεποιθήσεις (a-priori beliefs) αποτελούν ειδική περίπτωση πεποιθήσεων που βασίζονται αποκλειστικά σε πρότερη πληροφορία. Καθορίζονται μόνο από την πληροφορία που έχει αποθηκευτεί στον πίνακα των υπό συνθήκη πιθανοτήτων των Bayesian δικτύων. Η ένδειξη (evidence) είναι πληροφορία σχετικά με μία τρέχουσα κατάσταση.
Παραλλαγή κανόνα Bayes Με την παραπάνω σχέση μπορούμε να ανανεώσουμε την πεποίθησή μας για την υπόθεση Η δοθείσας της πρόσθετης ένδειξης Ε και της πρότερης εμπειρίας c. Ο αριστερός όρος P(H|E,c) ονομάζεται μεταγενέστερη (posterior) πιθανότητα ή αλλιώς πιθανότητα της υπόθεσης Η αφού λάβουμε υπόψη τη συνέπεια της ένδειξης Ε στην πρότερη εμπειρία c. Ο όρος P(H|c) καλείται εκ των προτέρων (a-priori) πιθανότητα της Η δοθείσας μόνο της c. Ο όρος Ρ(Ε|Η,c) καλείται πιθανοφάνεια (likelihood) και δίνει την πιθανότητα της ένδειξης αν δεχτούμε ότι η υπόθεση Η και η πρότερη πληροφορία c είναι αληθείς (true). Τέλος ο όρος Ρ(Ε|c) είναι ανεξάρτητος του H και μπορεί να θεωρηθεί ως παράγοντας κανονικοποίησης.
Απεικόνιση Bayesian Δικτύων Κάθε κόμβος διαθέτει καταστάσεις ή διαφορετικά ένα σύνολο από πιθανές τιμές που αντιστοιχούν σε κάθε μεταβλητή Οι κόμβοι συνδέονται μεταξύ τους με κατευθυνόμενα βέλη (πλευρές-edges) τα οποία φανερώνουν την αλληλεξάρτηση των μεταβλητών υποδεικνύοντας και την κατεύθυνση της επιρροής Σε κάθε κόμβο αντιστοιχεί και ένας πίνακας υπό συνθήκη πιθανοτήτων (conditional probability table)
Παράδειγμα Κόμβοι, πλευρές και καταστάσεις σε ένα Βayesian Δίκτυο
Bayesian Δίκτυα P(A| Β1, Β2,..Βν) Κάθε μεταβλητή έχει ένα πεπερασμένο σύνολο αμοιβαία αποκλειόμενων καταστάσεων Σύνολο μεταβλητών και σύνολο κατευθυνόμενων συνδέσμων Οι μεταβλητές μαζί με τους κατευθυνόμενους συνδέσμους σχηματίζουν έναν κατευθυνόμενο γράφο Για κάθε μεταβλητή Α με γονείς Β1, Β2,..Βν υπάρχει ένας πίνακας εξαρτημένων πιθανοτήτων P(A| Β1, Β2,..Βν)
Πίνακες πιθανοτήτων Η υπό συνθήκη πιθανότητα καθορίζεται μαθηματικά με τη σχέση Ρ(x|p1,p2,..pn), και εκφράζει την πιθανότητα του να βρίσκεται η μεταβλητή Χ σε μια κατάσταση x εάν ο πατέρας Ρ1 βρίσκεται στην κατάσταση p1, ο πατέρας Ρ2 στην κατάσταση p2,..., και ο πατέρας Ρn στην κατάσταση pn. Οι κόμβοι που δεν έχουν πατέρα έχουν κι αυτοί πίνακα υπό συνθήκη πιθανοτήτων για κάθε κατάσταση του κόμβου
Bayesian networks Εδώ έχουμε ένα simple Bayesian network για τα δεδομένα weather Έχει έναν κόμβο για καθέναν από τα 4 χαρακτηριστικά outlook, temperature, humidity, και windy και ένα για το class attribute play Σε κάθε πίνακα παρουσιάζεται η κατανομή πιθανότητας που χρησιμοποιείται για την πρόβλεψη των πιθανοτήτων της class για κάθε δοσμένο instance. Το άθροισμα των πιθανοτήτων σε κάθε γραμμή είναι πάντα 1
Κανόνας Bayes (Υπό συνθήκη πιθανότητα)
Απλοϊκός (naive) Bayes για ταξινόμηση
Παράδειγμα καιρού
Παράδειγμα καιρού
Νευρωνικά δίκτυα Οι μέθοδοι εδώ χρησιμοποιούν τα νευρωνικά δίκτυα για να κατασκευάζουν ένα μοντέλο κατηγοριοποίησης ή πρόβλεψης Το μοντέλο που παράγεται από το δίκτυο εφαρμόζεται για να προβλέψει τις κατηγορίες των μη κατηγοριοποιημένων δειγμάτων.
Νευρωνικά δίκτυα Βήματα: Αναγνώριση των χαρακτηριστικών εισόδου και εξόδου. Κατασκευή ενός δικτύου με την κατάλληλη αρχιτεκτονική. Επιλογή του σωστού συνόλου εκπαίδευσης. Εκπαίδευση του δικτύου με βάση ένα αντιπροσωπευτικό σύνολο δεδομένων που θα απεικονίζονται έτσι ώστε να μεγιστοποιηθεί η δυνατότητα του δικτύου να αναγνωρίζει τα πρότυπα. Έλεγχος του δικτύου με χρήση κατάλληλου συνόλου ελέγχου που θα είναι ανεξάρτητο από το σύνολο εκπαίδευσης.
Νευρωνικά δίκτυα Αποτελούνται από νευρώνες με βάση την νευρωνική δομή του εγκεφάλου Επεξεργάζονται τα στοιχεία ένα κάθε φορά και μαθαίνουν συγκρίνοντας τη κατηγοριοποίηση τους για μια εγγραφή με τη γνωστή πραγματική κατηγοριοποίηση της εγγραφής. Τα λάθη από την αρχική κατηγοριοποίηση της πρώτης εγγραφής επανατροφοδοτούνται στο δίκτυο και χρησιμοποιούνται για να τροποποιήσουν τον αλγόριθμο δικτύων τη δεύτερη φορά. Η διαδικασία αυτή γίνεται ακολουθιακά.
Νευρωνικά δίκτυα Ένα νευρώνας σε ένα τεχνητό νευρωνικό δίκτυο είναι: Ένα νευρώνας σε ένα τεχνητό νευρωνικό δίκτυο είναι: Ένα σύνολο εισερχόμενων τιμών (xi) και συσχετιζόμενων βαρών (wi) Μια συνάρτηση (g) που αθροίζει τα βάρη και αντιστοιχεί τα αποτελέσματα σε μια έξοδο (y)
Μοντελοποίηση με νευρωνικά δίκτυα Στην Τεχνητή Νοημοσύνη χρησιμοποιούμε συχνά τα πολυεπίπεδα νευρωνικά δίκτυα Eκπαιδεύονται με οπισθοδιάδοση του λάθους, για να προσεγγίζουμε σύνθετους χώρους αναπαράσταση Δυο βασικοί στόχοι την ταξινόμηση / ερμηνεία δεδομένων που ήδη έχουμε (indexing) και την πρόβλεψη / αναγνώριση νέων δεδομένων με βάση την ταξινόμηση / ερμηνεία που (θα) έχουμε ήδη κάνει
Νευρωνικά δίκτυα Το δίκτυο οργανώνεται σε επίπεδα. Υπάρχουν νευρώνες Το δίκτυο οργανώνεται σε επίπεδα. Υπάρχουν νευρώνες Εισόδου Κρυφού επιπέδου Εξόδου
Συνάρτηση Ενεργοποίησης Εάν xki είναι η i-οστή είσοδος του k νευρώνα, wki: το i-οστό συναπτικό βάρος του k νευρώνα και η συνάρτηση ενεργοποίησης του νευρωνικού δικτύου, τότε η έξοδος yk του k νευρώνα δίνεται από την εξίσωση: Συναρτήσεις ενεργοποίησης QΗ συνάρτηση ενεργοποίησης μπορεί να είναι βηματική , γραμμική, μη γραμμική, στοχαστική. Βηματική συνάρτηση ενεργοποίησης Γραμμική συνάρτηση ενεργοποίησης Η γραμμική συνάρτηση ενεργοποίησης μπορεί να είναι: ή οποιαδήποτε άλλη γραμμική συνάρτηση. Μη γραμμική συνάρτηση ενεργοποίησης Η μη γραμμική συνάρτηση ενεργοποίησης που χρησιμοποιείται συνήθως στα νευρωνικά δίκτυα καλείται σιγμοειδής συνάρτηση:
Νευρωνικά δίκτυα Known samples (historical data) are used to “train” the network. Input data (xi) are assigned weights (wi) and combined in the “hidden” layer – like a set of linear regressions. These sets are then combined in additional layers – like regressions of regressions. The sum of data and weights are transformed to the range of the training data and error is measured. A supervised training algorithm uses output error to adjust network weights to minimize errors
Νευρωνικά δίκτυα + ANN’s are a powerful technique utilized across scientific disciplines. + Theoretically well suited to non-linear processes like air quality. - Not transparent to users. Hard to integrate into forecast thinking. - Technically difficult to understand, raises risk of misuse.
Νευρωνικά δίκτυα
Νευρωνικά δίκτυα WEKA provides user control of training parameters: # of iterations or epochs (“training time”) Increment of weight adjustments in back propagation (“learning rate”) Controls on varying changes to increments (“momentum”)
Νευρωνικά δίκτυα Momentum: the learning rate Epochs: the number of passes it will take through the data The network stops when the specified number of epochs is reached With autoBuild set, hidden layers are added and connected up