Διπλωματική Εργασία της φοιτήτριας του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Διπλωματική Εργασία της φοιτήτριας του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών"

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ Τομέας Ηλεκτρονικής και Υπολογιστών Εργαστήριο Διπλωματική Εργασία της φοιτήτριας του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών Κωνσταντίνα Χριστακοπούλου Αριθμός Μητρώου: 7147 Θέμα Μηχανική Μάθηση: Bayesian Δίκτυα και Εφαρμογές Επιβλέπων Γεώργιος Μουστακίδης, Καθηγητής Αριθμός Διπλωματικής Εργασίας: Πάτρα, Ιούνιος 2013

2

3 ΠΙΣΤΟΙΗΣΗ Πιστοποιείται ότι η διπλωματική εργασία με θέμα Μηχανική Μάθηση: Bayesian Δίκτυα και Εφαρμογές Της φοιτήτριας του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Κωνσταντίνα Χριστακοπούλου Αριθμός Μητρώου: 7147 Παρουσιάστηκε δημόσια και εξετάστηκε στο Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών στις 25/6/2013 Ο Επιβλέπων Ο Διευθυντής Τομέα Γεώργιος Μουστακίδης, Καθηγητής Ευθύμιος Χούσος, Καθηγητής

4

5 Αριθμός Διπλωματικής Εργασίας: Θέμα: Μηχανική Μάθηση: Bayesian Δίκτυα και Εφαρμογές Φοιτητής: Κωνσταντίνα Χριστακοπούλου Αριθμός Μητρώου: 7147 Περίληψη Στην παρούσα διπλωματική εργασία πραγματευόμαστε το θέμα της χρήσης των Bayesian Δικτύων -και γενικότερα των Πιθανοτικών Γραφικών Μοντέλων - στη Μηχανική Μάθηση. Στα πρώτα κεφάλαια της εργασίας αυτής παρουσιάζουμε συνοπτικά τη θεωρητική θεμελίωση αυτών των δομημένων πιθανοτικών μοντέλων, η οποία απαρτίζεται από τις βασικές φάσεις της αναπαράστασης, επαγωγής συμπερασμάτων, λήψης αποφάσεων και εκμάθησης από τα διαθέσιμα δεδομένα. Στα επόμενα κεφάλαια, εξετάζουμε ένα ευρύ φάσμα εφαρμογών των πιθανοτικών γραφικών μοντέλων και παρουσιάζουμε τα αποτελέσματα των εξομοιώσεων που υλοποιήσαμε. Συγκεκριμένα, αρχικά με χρήση γράφων ορίζονται τα Bayesian δίκτυα, Markov δίκτυα και Factor Graphs. Έπειτα, παρουσιάζονται οι αλγόριθμοι επαγωγής συμπερασμάτων που επιτρέπουν τον απευθείας υπολογισμό πιθανοτικών κατανομών από τους γράφους. Διευκολύνεται η λήψη αποφάσεων υπό αβεβαιότητα με τα δέντρα αποφάσεων και τα Influence διαγράμματα. Ακολούθως, μελετάται η εκμάθηση της δομής και των παραμέτρων των πιθανοτικών γραφικών μοντέλων σε παρουσία πλήρους ή μερικού συνόλου δεδομένων. Τέλος, παρουσιάζονται εκτενώς σενάρια τα οποία καταδεικνύουν την εκφραστική δύναμη, την ευελιξία και τη χρηστικότητα των Πιθανοτικών Γραφικών Μοντέλων σε εφαρμογές του πραγματικού κόσμου. i

6 Ευχαριστίες Θα ήθελα να ευχαριστήσω όλους όσους συνέβαλαν στην ολοκλήρωση της διπλωματικής αυτής εργασίας. Καταρχάς, τον επιβλέποντα καθηγητή της εργασίας μου, τον καθηγητή Γεώργιο Μουστακίδη για την πολύτιμη βοήθεια, τις συμβουλές, και την αμέριστη συμπαράσταση που μου έχει προσφέρει καθ όλη τη διάρκεια της συνεργασίας μας. Ένα μεγάλο ευχαριστώ στη Λένα που είναι πάντα δίπλα μου, ακούραστη και ενθουσιώδης συνεργάτης και στην Ευαγγελία που διαρκώς μου δίνει έμπνευση. Τέλος, θα ήθελα να ευχαριστήσω την οικογένεια, τους φίλους και τους καθηγητές μου που πιστεύουν σε μένα και που με παρακινούν συνεχώς για κάτι καλύτερο. ii

7 iii

8 Περιεχόμενα Εισαγωγή 1 1 Πιθανοτικά Γραφικά Μοντέλα: Αναπαράσταση Bayesian δίκτυα Υπό Συνθήκη ανεξαρτησία σε Bayesian δίκτυα Markov Δίκτυα Υπό Συνθήκη ανεξαρτησία σε Markov Δίκτυα Ιδιότητες παραγοντοποίησης σε Markov δίκτυα Σχέση μεταξύ κατευθυνόμενων και μη-κατευθυνόμενων γράφων Γράφος παραγόντων Πιθανοτικά Γραφικά Μοντέλα: Επαγωγή Συμπερασμάτων Απαλοιφή μεταβλητών και Πέρασμα μηνυμάτων Εύρεση υπό συνθήκη περιθώριας κατανομής σε μια αλυσίδα Ο sum-product αλγόριθμος σε γράφους παραγόντων Μη-διακλαδούμενοι γράφοι: μηνύματα από μεταβλητή σε μεταβλητή Γενικοί μονά συνδεδεμένοι γράφοι: μηνύματα από factors σε μεταβλητές και αντίστροφα Ο sum-product αλγόριθμος Ο max-product αλγόριθμος σε γράφους παραγόντων Ομαδοποίηση μεταβλητών - Γράφοι Κλικών Απορρόφηση σε Γράφο Κλικών Junction Tree αλγόριθμος Κατασκευή Junction Tree για μονά συνδεδεμένες κατανομές Θεωρία Αποφάσεων Αναμενόμενη Χρησιμότητα Δέντρα Αποφάσεων Επεκτείνοντας τα Bayesian δίκτυα για αποφάσεις Σύνταξη των Influence Diagrams Επίλυση των Influence Diagrams Πιθανοτικά Γραφικά Μοντέλα: Μάθηση Κατηγορίες-Στόχοι Εκμάθησης Εκτίμηση Παραμέτρων Μοντέλου Εκτίμηση Παραμέτρων Μέγιστης Πιθανοφάνειας Bayesian εκτίμηση παραμέτρων iv

9 4.2.3 Εκμάθηση παραμέτρων σε Μη-Κατευθυνόμενα Μοντέλα Εκμάθηση Δομής Μοντέλου Σκορ πιθανοφάνειας Bayesian σκορ Εκμάθηση δικτύων με δομή δέντρου Εκμάθηση γενικών γράφων Εκμάθηση με μερικώς παρατηρήσιμα δεδομένα Missing at Random υπόθεση Συνάρτηση πιθανοφάνειας Εκτίμηση Παραμέτρων Εφαρμογές αναπαράστασης και inference σε γραφικά μοντέλα Αναπαράσταση Κατασκευή Bayesian Δικτύου για την πρόβλεψη αξιοπιστίας ατόμου για απόκτηση πιστωτικής κάρτας Κατασκευή Bayesian Δικτύου για Γενετική Κληρονομικότητα Κατασκευή Markov Δικτύου για οπτική αναγνώριση χαρακτήρων (OCR) Ακριβής επαγωγή συμπερασμάτων σε γενετικά δέντρα κληρονομικότητας και σε OCR Λήψη Αποφάσεων σε πρόβλημα ιατρικής περίθαλψης Εφαρμογές μηχανικής μάθησης σε πιθανοτικά γραφικά μοντέλα Εκμάθηση παραμέτρων σε δίκτυο οπτικής αναγνώρισης χαρακτήρων: Εκμάθηση δομής: Εκμάθηση δικτύων με δενδροειδή μορφή Εκμάθηση δομής και παραμέτρων με ελλιπή δεδομένα σε δεδομένα δραστηριοτήτων Kinect Συμπεράσματα Συνεισφορά αυτής της διπλωματικής Μελλοντικές κατευθύνσεις v

10 Εισαγωγή Σχήμα 1: Kατασκευή Πιθανοτικών Γραφικών Μοντέλων Στην παρούσα διπλωματική επιχειρούμε να παρουσιάσουμε δομημένα πιθανοτικά μοντέλα, τα οποία αφ ενός βασίζονται στη χρήση πιθανοτικών μοντέλων με τα οποία αναπαριστούν τη γνώση των ειδικών και αφ ετέρου με τη χρήση γράφων κωδικοποιούν τη δομή αυτών των πιθανοτικών κατανομών. Επειδή η γνώση των ειδικών κωδικοποιείται δηλωτικά στα πιθανοτικά γραφικά μοντέλα που κατασκευάζουμε, εξάγονται συμπεράσματα τα οποία είναι εγγενή της φύσης του μοντέλου, αλλά ανεξάρτητα της εξειδικευμένης υλοποίησης των αλγορίθμων. Αυτό επιτρέπει να ξεχωρίζουμε αν τα λάθη τα οποία γίνονται οφείλονται σε εσφαλμένη αναπαράσταση της γνώσης των ειδικών ή σε εσφαλμένη υλοποίηση του αλγορίθμου. Ο λόγος για τον οποίο χρησιμοποιούμε γράφους για να εκμεταλλευτούμε τη δομή των πιθανοτικών κατανομών είναι η συμπαγής και ευέλικτη αναπαράσταση της γνώσης των ειδικών που προσφέρουν. Αυτή η αναπαράσταση είναι σημαντική για την εφικτή και αποδοτική υλοποίηση 1

11 των αλγορίθμων επαγωγής συμπερασμάτων (Inference), αλλά και για την εκμάθηση αυτών των μοντέλων από τα δεδομένα (Learning). Άρα, για τη θεωρητική θεμελίωση των πιθανοτικών γραφικών μοντέλων θα χρειαστούμε στοιχεία τόσο από τη θεωρία πιθανοτήτων όσο και από τη θεωρία γράφων τα οποία θα αναφέρουμε συνοπτικά. Όπως παρατηρούμε στο Σχήμα 1, η μεθοδολογία της χρήσης των πιθανοτικών γραφικών μοντέλων σε έναν τομέα εφαρμογής απαρτίζεται από τρεις βασικές συνιστώσες: 1. αυτές της φυσικής αναπαράστασης του τομέα, όπως αυτός προκύπτει από την εκμαίευση γνώσης από τους ειδικούς, 2. της αποδοτικής επαγωγής συμπερασμάτων με χρήση αλγορίθμων και 3. της εφικτής απόκτησης του μοντέλου με τη διαδικασία εκμάθησής του από τα δεδομένα που δίνονται. Αυτό σημαίνει ότι όταν θέλουμε να εφαρμόσουμε τη θεωρία των πιθανοτικών γραφικών μοντέλων σε ένα νέο τομέα, πρώτα ορίζουμε μία κλάση μοντέλων (Κεφάλαιο 1) που ταιριάζει στην κωδικοποίηση των βασικών ιδιοτήτων του τομέα. Έπειτα χρησιμοποιούμε την εκμάθηση (Κεφάλαιο 4) από δεδομένα για τη συμπλήρωση λεπτομερειών που λείπουν στο μοντέλο. Στη συνέχεια, το εκμαθημένο μοντέλο, του οποίου έχουμε μάθει τη δομή και τις παραμέτρους, μας παρέχει σημαντικές πληροφορίες για το πεδίο εφαρμογής και αποτελεί βάση για εργασίες επαγωγής συμπερασμάτων (Κεφάλαιο 2) πρόβλεψης, διάγνωσης και λήψης αποφάσεων (Κεφάλαιο 3). Κατά τη διάρκεια αυτής της διαδικασίας, πρέπει να πάρουμε σημαντικές σχεδιαστικές αποφάσεις. Πρώτα, πρέπει να επιλέξουμε τη μορφή του γραφικού μοντέλου. Για παράδειγμα, τα κατευθυνόμενα δίκτυα (Bayesian δίκτυα) και τα μη κατευθυνόμενα δίκτυα (Markov δίκτυα) - τα οποία παρουσιάζουμε στο Κεφάλαιο 1- μπορούν να συνιστούν δομικά κομμάτια του ίδιου του μοντέλου, ανάλογα με τις ανάγκες της εφαρμογής. Άλλη απόφαση που πρέπει να πάρουμε αφορά την κωδικοποίηση της εκ των προτέρων γνώσης είτε ως αρχικοποίηση του αλγορίθμου εκμάθησης είτε ως περιορισμούς στο ήδη εκμαθημένο μοντέλο. Στη φάση της εκμάθησης, μπορεί ανάλογα με την εφαρμογή είτε να γνωρίζουμε εκ των προτέρων όλες τις μεταβλητές, είτε να πρέπει να επάγουμε το ρόλο των κρυμμένων μεταβλητών, είτε να μάθουμε την ίδια τη δομή του μοντέλου. Οπότε, σε κάθε περίπτωση πρέπει να επιλέξουμε τον κατάλληλο αλγόριθμο εκμάθησης, τους οποίους αναφέρουμε αναλυτικά στο Κεφάλαιο 4. Το πλαίσιο των πιθανοτικών γραφικών μοντέλων μπορεί να εφαρμοστεί επιτυχώς σε ένα μεγάλο εύρος εφαρμογών: από την κατασκευή μοντέλων που προβλέπουν αν ένας πελάτης τράπεζας είναι αρκετά αξιόπιστος για να του χορηγηθεί πιστωτική κάρτα ή αν ένα άτομο γεννηθεί με συγκεκριμένη κληρονομική ασθένεια λαμβάνοντας υπόψη γενετικούς παράγοντες. Μέχρι και σε πιο πολύπλοκα πεδία όπως είναι η αναγνώριση χαρακτήρων γραμμένων με το χέρι (Optical Character Recongition) ή η αναγνώριση δραστηριοτήτων από δεδομένα του Kinect. Την υλοποίηση αυτών των εφαρμογών παρουσιάζουμε εκτενώς στα Κεφάλαια 5 και 6. Διαισθητικά μπορούμε να καταλάβουμε τον τρόπο με τον οποίο η αβεβαιότητα υπεισέρχεται σε απλές περιπτώσεις. Όμως, σε πολύπλοκες περιπτώσεις- στις οποίες υπάρχουν πολλά πιθανώς σχετιζόμενα γεγονότα και πολλές πιθανές εκβάσεις- χρειαζόμαστε έναν επίσημο μαθηματικό τρόπο που να επιβεβαιώνει και να επεκτείνει τη διαίσθησή μας, προκειμένου να είμαστε σε θέση να καταλήγουμε σε λογικά συμπεράσματα. Επομένως, οι έννοιες, η μαθηματική γλώσσα και οι βασικοί κανόνες της θεωρίας πιθανοτήτων μας δίνουν το επίσημο πλαίσιο που χρειαζόμαστε. Κάνοντας χρήση της γλώσσας των πιθανοτήτων, συγκεκριμένα της υπο συνθήκη πιθανότητας και του κανόνα του Bayes, μπορούμε να δομούμε προβλήματα που εμπερικλείουν αβεβαιότητα σε μία μορφή κατάλληλη για προγραμματιστική υλοποίηση. 2

12 Συχνά έχουμε ισχυρούς λόγους να πιστεύουμε ότι ένα γεγονός επηρεάζει ένα άλλο, ή αντίθετα ότι κάποια γεγονότα είναι ανεξάρτητα μεταξύ τους. Αν ενσωματώσουμε μια τέτοιου είδους γνώση, μπορούμε να κατασκευάσουμε μοντέλα που έχουν οριστεί με μεγαλύτερη σαφήνεια και έχουν καλύτερη υπολογιστική απόδοση. Οι γράφοι περιγράφουν πώς συνδέονται μεταξύ τους αντικείμενα και παρέχουν μια ικανοποιητική εικόνα περιγραφής. Στόχος μας είναι να εισάγουμε την έννοια μιας δομής γράφου μεταξύ των μεταβλητών ενός πιθανοτικού μοντέλου, έτσι ώστε να παράγουμε ένα γραφικό μοντέλο που αναπαριστά τις σχέσεις μεταξύ αυτών των μεταβλητών καθώς επίσης και τις αβεβαιότητες που εμπεριέχονται. Στοιχεία θεωρίας πιθανοτήτων Ακολούθως παραθέτουμε βασικούς ορισμούς από τη θεωρία πιθανοτήτων πάνω στην οποία στηρίζεται μεγάλο μέρος των όσων παρουσιάζουμε: Ορισμός 1. (Κανόνες πιθανοτήτων) Οι δύο βασικοί κανόνες της θεωρίας πιθανοτήτων είναι οι ακόλουθοι: 1. κανόνας του αθροίσματος: p(x) = Y p(x, Y ) (1) 2. κανόνας του γινομένου: p(x, Y ) = p(y X)p(X) (2) όπου p(x, Y ) είναι η από κοινού πιθανότητα των X και Y. Η ποσότητα p(y X) είναι η υπό συνθήκη πιθανότητα, την οποία θα διαβάζουμε ως την πιθανότητα του Y δοθέντος X, ενώ η ποσότητα p(x) είναι η περιθώρια πιθανότητα ή απλά η πιθανότητα του X Από τους ανωτέρω κανόνες προκύπτει το θεώρημα του Bayes το οποίο κατέχει σημαντικό ρόλο στη θεωρητική θεμελίωση των Bayesian δικτύων: Θεώρημα 1. (Θεώρημα του Bayes) p(y X) = p(x Y )p(y ) p(x) Με την εφαρμογή του κανόνα του αθροίσματος, ο παρανομαστής στο θεώρημα του Bayes μπορεί να εκφραστεί με τους όρους των ποσοτήτων που εμφανίζονται στον αριθμητή: (3) p(x) = Y p(x Y )p(y ) (4) οπότε ο παρανομαστής λειτουργεί ως η σταθερά κανονικοποίησης που εξασφαλίζει ότι το άθροισμα της υπό συνθήκη πιθανότητας του αριστερού μέλους p(y X) πάνω σε όλες τις τιμές του Y ισούται με τη μονάδα. Στοιχεία θεωρίας γράφων Ακολούθως ορίζουμε βασικές έννοιες της θεωρίας των γράφων που απαιτούνται για την κατανόηση των επόμενων κεφαλαίων: 3

13 Ορισμός 2. (Γράφος) Ένας Γράφος G αποτελείται από κόμβους (που επίσης ονομάζονται κορυφές) και ακμές (που επίσης ονομάζονται σύνδεσμοι) μεταξύ των κόμβοων. Οι ακμές μπορεί να είναι κατευθυνόμενες (έχουν ένα τόξο σε μία μόνο κατεύθυνση) ή μη κατευθυνόμενες. Ένας γράφος με όλες τις ακμές του κατευθυνόμενες ονομάζεται κατευθυνόμενος γράφος, ενώ ένας με όλες τις ακμές ονομάζεται μη κατευθυνόμενος γράφος Ορισμός 3. (Κατευθυνόμενος ακυκλικός γράφος ή DAG) Ένας Κατευθυνόμενος Ακυκλικός Γράφος (Directed Acyclic Graphs, ή DAGs) είναι ένας γράφος G με κατευθυνόμενες ακμές (με τόξα σε κάθε σύνδεσμο) μεταξύ των κόμβων, ο οποίος δεν παρουσιάζει κατευθυνόμενους κύκλους, δηλαδή κλειστά μονοπάτια μέσα στο γράφο, ώστε όταν ξεκινάμε από ένα κόμβο και ακολουθώντας την κατεύθυνση των συνδέσμων, να μην καταλήγουμε στον αρχικό κόμβο. Ισοδύναμα, θα λέμε ότι στα DAGs υπάρχει μία αρίθμηση κόμβων τέτοια ώστε δεν υπάρχουν σύνδεσμοι που πηγαίνουν από οποιονδήποτε κόμβο σε οποιονδήποτε μικρότερα αριθμημένο κόμβο. Ορισμός 4. (Απόγονος κόμβος) Ένας κόμβος y θα λέμε ότι είναι απόγονος ενός κόμβου αν υπάρχει μονοπάτι από τον κόμβο στον κόμβο y ακολουθώντας τις κατευθύνσεις όλων των τόξων. Ορισμός 5. (Κλίκα) Πρόκειται για μία έννοια πάνω σε γραφικό μοντέλο, που ορίζεται ως το υποσύνολο των κόμβων του γράφου τέτοιο ώστε να υπάρχει σύνδεσμος μεταξύ όλων των ζευγαριών κόμβων που ανήκουν σε αυτό το υποσύνολο. Με άλλα λόγια, το σύνολο των κόμβων σε μία κλίκα είναι πλήρως συνδεδεμένο. Τα μέλη μιας κλίκας είναι γείτονες. Ορισμός 6. (Μέγιστη Κλίκα) Πρόκειται για μια κλίκα τέτοια ώστε δεν είναι δυνατόν να συμπεριλάβουμε άλλους κόμβους στο γράφο χωρίς να το εμποδίζουμε από το να είναι κλίκα. Με άλλα λόγια, δεν υπάρχει μεγαλύτερη κλίκα που να συμπεριλαμβάνει την κλίκα, δηλαδή δεν πρέπει να υπάρχει μεγαλύτερο πλήρως συνδεδεμένο σύνολο κόμβων. 4

14 Κεφάλαιο 1 Πιθανοτικά Γραφικά Μοντέλα: Αναπαράσταση Όπως αναφέραμε στην Εισαγωγή, τα πιθανοτικά γραφικά μοντέλα παρέχουν ένα πλαίσιο που υποστηρίζει και τις τρεις βασικές διαδικασίες που είναι απαραίτητες για την κατασκευή ενός έξυπνου συστήματος: αναπαράσταση, επαγωγή συμπερασμάτων και εκμάθηση. Θα ξεκινήσουμε, εισάγοντας το κομμάτι της αναπαράστασης, η οποία αποτελεί μια λογική κωδικοποίηση του πραγματικού κόσμου που μας ενδιαφέρει. Στόχος μας είναι να αναπαραστήσουμε μια από κοινού κατανομή P πάνω σε ένα σύνολο τυχαίων μεταβλητών X = {X 1,.., X n }, έτσι ώστε να είμαστε σε θέση να απαντούμε σε μια ευρεία γκάμα ερωτημάτων που μας ενδιαφέρουν. Σε αυτό το κεφάλαιο θα περιγράψουμε τους βασικούς τύπους των γραφικών μοντέλων που χρησιμοποιούνται για την αναπαράσταση. Η πρώτη αναπαράσταση είναι αυτή των Bayesian δικτύων, που χρησιμοποιούν κατευθυνόμενους γράφους, και ακολουθεί η αναπαράσταση των Markov δικτύων, με τη χρήση μη κατευθυνόμενων γράφων. Για κάθε μία από αυτές τις οικογένειες αναπαραστάσεων θα μελετήσουμε και τις ιδιότητες ανεξαρτησίας που προκύπτουν από τη δομή τους. Τέλος, θα εισάγουμε τη δομή των Γράφων παραγόντων (Factor Graphs) που έχουν μεγαλύτερη εκφραστική δύναμη από τα δύο προηγούμενα πιθανοτικά γραφικά μοντέλα. 1.1 Bayesian δίκτυα Με χρήση βασικών στοιχείων των πιθανοτήτων και της θεωρίας γράφων, όπως αναφέρθηκαν συνοπτικά στην Εισαγωγή, μπορούμε πλέον να κάνουμε μία πρώτη σύνδεση μεταξύ του κανόνα του Bayes και της έννοιας του ακυκλικού κατευθυνόμενου γράφου, προκειμένου να περιγράψουμε την πρώτη βασική οικογένεια πιθανοτικών γραφικών μοντέλων. Τα Bayesian δίκτυα αναπαριστούν τη δομή ενός PGM (πιθανοτικού γραφικού μοντέλου) με τη χρήση γράφων για την αποτύπωση των υποθέσεων ανεξαρτησίας μεταξύ των μεταβλητών. Τα δίκτυα αυτά είναι πολύ χρήσιμα καθώς μπορούν να διαβαστούν λεπτομέρειες του μοντέλου απευθείας από το γράφο και δίνουν το όφελος της υπολογιστικής αποδοτικότητας. Αν και τα BNs δεν μπορούν να αποτυπώσουν όλες τις δυνατές σχέσεις μεταξύ των μεταβλητών, είναι ιδανικά για την αναπαράσταση σχέσεων αιτίου-αποτελέσματος. Στην περίπτωση που οι πιθανοτικές κατανομές που θέλουμε να αναπαραστήσουμε είναι πολυδιάστατες, χρησιμοποιούμε τα Bayesian δίκτυα ώστε να εκμεταλλευτούμε τις ιδιότητες ανεξαρτησίας μεταξύ των μεταβλητών. Ακόμα και στην απλούστερη περίπτωση που οι τυχαίες μεταβλητές X = {X 1,.., X n } είναι δυαδικές, η από κοινού κατανομή P (X) θα απαιτεί τον ορισμό 2 n 1 αναθέσεων, το οποίο ειδικά για μεγάλα n είναι αριθμός που δύσκολα διαχειρίζεται και αποθηκεύεται στη μνήμη. Όπως και δύσκολα, μπορούμε να αποκτήσουμε τόσες πολλές τιμές από ειδικούς ή να εκτιμήσουμε τόσες πολλές παραμέτρους από διαδικασία εκμάθησης. 5

15 Oρίζουμε τη σχέση μεταξύ ενός δοθέντος κατευθυνόμενου γράφου K κόμβων με την αντίστοιχη κατανομή πάνω στις μεταβλητές με τη χρήση των Bayesian δικτύων: Ορισμός 7. (Bayesian Δίκτυα) Ένα Bayesian δίκτυο είναι: Ένας κατευθυνόμενος ακυκλικός γράφος (DAG) G του οποίου οι κόμβοι αναπαριστούν τις τυχαίες μεταβλητές x 1,..., x K Για κάθε κόμβο x i αντιστοιχεί μια υπό συνθήκη κατανομή πιθανότητας P (x i pa G (x i )) To Bayesian δίκτυο αναπαριστά την από κοινού κατανομή, με τη χρήση του κανόνα της αλυσίδας, ως το γινόμενο των υπό συνθήκη κατανομών των κόμβων του γράφου, με συνθήκη τους γονείς του κάθε κόμβου: K p(x) = P (x 1,..., x k ) = p(x k pa K ) (1.1) όπου pa K δηλώνει σύνολο γονιών του x και X = {x 1,.., x K }. Η εξίσωση αυτή αναπαριστά τις ιδιότητες παραγοντοποίησης μιας από κοινού κατανομής για ένα κατευθυνόμενο γραφικό μοντέλο. k Σε αυτό το σημείο, θα περιγράψουμε αναλυτικά την εφαρμογή του κανόνα της αλυσίδας σε μια τυχαία πιθανοτική κατανομή που αναπαρίσταται από ένα Bayesian δίκτυο. Έστω για παράδειγμα, μία τυχαία από κοινού κατανομή p(a, b, c) πάνω σε τρεις τυχαίες μεταβλητές a, b και c. Οι μεταβλητές αυτές μπορεί να είναι είτε συνεχείς είτε διακριτές. Με την εφαρμογή του κανόνα του γινομένου από τη θεωρία πιθανοτήτων (product rule of probability), μπορούμε να γράψουμε την από κοινού κατανομή στη μορφή: p(a, b, c) = p(c a, b)p(a, b) (1.2) Μια δεύτερη εφαρμογή του κανόνα του γινομένου, αυτή τη φορά στο δεύτερο όρο στο δεξιό μέλος της 1.2 μας δίνει: p(a, b, c) = p(c a, b)p(b a)p(a) (1.3) Μπορούμε τώρα να ορίσουμε το δεξιό μέλος της 1.3 ως ακολούθως: Πρώτα θεωρούμε ένα κόμβο για κάθε μία τυχαία μεταβλητή a, b και c και συσχετίζουμε κάθε κόμβο με την αντίστοιχη υπό συνθήκη κατανομή στο δεξί μέλος της 1.3. Ακολούθως, για κάθε μία υπό συνθήκη κατανομή προσθέτουμε στο γράφο κατευθυνόμενες ακμές (βέλη) που ξεκινούν από τους κόμβους που αντιστοιχούν στις μεταβλητές πάνω στις οποίες η κατανομή είναι υπό συνθήκη. Έτσι, για τον παράγοντα p(c a, b) θα υπάρχουν σύνδεσμοι από τους κόμβους a και b, ενώ για τον παράγοντα p(a) δεν θα υπάρχουν εισερχόμενοι σύνδεσμοι. Εάν υπάρχει σύνδεσμος από τον κόμβο a προς τον κόμβο b θα λέμε ότι ο κόμβος a είναι γονιός του κόμβου b, και ότι ο κόμβος b είναι παιδί του κόμβου a. Για να κάνουμε την αποσύνθεση στην 1.3 έχουμε διαλέξει μία ορισμένη σειρά στις μεταβλητές, συγκεκριμένα τις a, b, c. Αν είχαμε επιλέξει διαφορετική σειρά, θα προέκυπτε διαφορετική αποσύνθεση και επομένως διαφορετική γραφική αναπαράσταση. Γενικεύουμε το παραπάνω παράδειγμα ως εξής: θεωρούμε την από κοινού κατανομή πάνω σε K μεταβλητές p(x 1,..., x K ) και εφαρμόζουμε επανειλημμένα τον κανόνα γινομένου της θεωρίας πιθανοτήτων. Οπότε, η από κοινού κατανομή μπορεί να γραφεί ως γινόμενο υπό συνθήκη κατανομών, μία για κάθε μία από τις μεταβλητές p(x 1,..., x K ) = p(x K x 1,..., x K 1 )...p(x 2 x 1 )p(x 1 ). (1.4) 6

16 Σχήμα 1.1: Παράδειγμα κατευθυνόμενου ακυκλικού γράφου που περιγράφει την κατανομή πάνω στις μεταβλητές x 1,..., x K. Για μια συγκεκριμένη επιλογή του Κ, μπορούμε και πάλι να το αναπαραστήσουμε ως ένα κατευθυνόμενο γράφο που έχει Κ κόμβους, έναν για κάθε μία υπό συνθήκη κατανομή στο δεξιό μέλος της 1.4, με κάθε ένα κόμβο να έχει εισερχόμενους συνδέσμους από όλους τους χαμηλότερα αριθμημένους κόμβους. Θα λέμε ότι αυτός ο γράφος είναι πλήρως συνδεδεμένος (fully connected) αφού υπάρχει σύνδεσμος μεταξύ οποιουδήποτε ζευγαριού κόμβων. Έως τώρα ασχοληθήκαμε με τελείως γενικές από κοινού κατανομές, με αποτέλεσμα οι γραφικές αναπαραστάσεις τους να είναι πλήρως συνδεδεμένοι γράφοι. Στην επόμενη ενότητα, όμως, θα διαπιστώσουμε ότι η απουσία συνδέσμων σε ένα γράφο, η οποία υποννοεί ανεξαρτησία μεταξύ των αντίστοιχων μεταβλητών, είναι αυτή η οποία μας δίνει ενδιαφέροντα συμπεράσματα για τις ιδιότητες των κατανομών που αναπαριστούν. Για το σκοπό αυτό, θεωρούμε ως παράδειγμα ένα μερικώς συνδεδεμένο γράφο που φαίνεται στο σχήμα 1.1, στον οποίο δεν υπάρχει σύνδεσμος από το x 1 στο x 2 ή από το x 3 στο x 7. Προκειμένου να πάμε από αυτό το γράφο στην αντίστοιχη από κοινού κατανομή (η οποία γράφεται ως γινόμενο ενός συνόλου υπό συνθήκη κατανομών, μίας για κάθε κόμβο στο γράφο) λαμβάνουμε υπόψη ότι κάθε μία τέτοια υπό συνθήκη κατανομή θα τίθεται υπό συνθήκη μόνο πάνω στους γονιούς του αντίστοιχου κόμβου στο γράφο. Για παράδειγμα, η μεταβλητή x 5 θα είναι υπό συνθήκη μόνο πάνω στις μεταβλητές x 1, x 3. Οπότε η από κοινού κατανομή θα δίνεται από p(x 1 )p(x 2 )p(x 3 )p(x 4 x 1, x 2, x 3 )p(x 5 x 1, x 3 )p(x 6 x 4 )p(x 7 x 4, x 5 ) (1.5) Υπό Συνθήκη ανεξαρτησία σε Bayesian δίκτυα Ορισμός 8. (Υπό Συνθήκη Ανεξαρτησία) Έστω τρεις τυχαίες μεταβλητές a, b, c και έστω ότι η κοινού κατανομή των a, b είναι τέτοια που δεν εξαρτάται από το b, ώστε p(a b, c) = p(a c). Θα λέμε ότι τα a, b είναι υπό συνθήκη ανεξάρτητα δοθέντος του c. Εναλλακτικά, μπορούμε να το γράψουμε ως εξής: p(a, b c) = p(a b, c)p(b, c) = p(a c)p(b c). Αυτό σημαίνει ότι εάν έχουμε ως συνθήκη το c, η από κοινού κατανομή παραγοντοποιείται σε γινόμενο των περιθώριων κατανομών των a, b, όπου και αυτές είναι υπό συνθήκη του c. Άρα, δοθέντος c οι a, b είναι στατιστικά ανεξάρτητες: a b c Η υπό συνθήκη ανεξαρτησία παίζει σημαντικό ρόλο στα πιθανοτικά γραφικά μοντέλα καθώς απλοποιεί τη δομή των μοντέλων αυτών και τους υπολογισμούς που χρειάζονται για να κάνουμε επαγωγή συμπερασμάτων και μάθηση παραμέτρων ή/και δομής πάνω στο μοντέλο. Όπως θα δούμε στην ενότητα της επαγωγής συμπερασμάτων, αν μας έχει δοθεί η έκφραση της από κοινού κατανομής πάνω σε 7

17 ένα σύνολο μεταβλητών ως γινόμενο υπό συνθήκη κατανομών (δηλαδή η μαθηματική αναπαράσταση ενός κατευθυνόμενου μοντέλου), θα μπορούμε να ελέγξουμε αν οποιαδήποτε υπό συνθήκη ανεξαρτησία ισχύει εφαρμόζοντας επανειλημμένα τους κανόνες του αθροίσματος και του γινομένου της θεωρίας πιθανοτήτων. Όμως, στην πράξη, μία τέτοια προσέγγιση θα απαιτεί πολύ χρόνο. Επισήμανση 1. Ένα σημαντικό χαρακτηριστικό των γραφικών μοντέλων είναι ότι οι ιδιότητες της υπό συνθήκη ανεξαρτησίας μπορούν να διαβαστούν απευθείας από το γράφο, χωρίς να χρειάζεται να κάνουμε αναλυτικούς χειρισμούς. Το γενικό πλαίσιο μέσα στο οποίο το καταφέρνουμε να διαβάζουμε τις ιδιότητες της υπό συνθήκη ανεξαρτησίας απευθείας από το Bayesian δίκτυο ονομάζεται d-separation, όπου το d σημαίνει directed. Ακολούθως, θα εξετάσουμε την έννοια της d-separation και τις υποπεριπτώσεις που συναντάμε, με τη χρήση σχετικών παραδειγμάτων γράφων που τις καταδεικνύουν. Σχήμα 1.2: Πρώτο παράδειγμα γράφου πάνω στις a, b, c όταν δεν έχουμε και όταν έχουμε παρατηρήσει την τιμή της c Το πρώτο από τα παραδείγματα φαίνεται στο Σχήμα 1.2 και η από κοινού κατανομή πάνω στις μεταβλητές a, b, c είναι p(a, b, c) = p(a c)p(b c)p(c) (1.6) όπως προκύπτει από εφαρμογή του γενικού κανόνα 1.1. Αν καμία από τις μεταβλητές δεν παρατηρείται, μπορούμε να ελέγξουμε αν οι a, b είναι ανεξάρτητες αθροίζοντας και τα 2 μέλη της 1.6 ως προς το c. Βλέπουμε ότι δεν παραγοντοποιείται σε γινόμενο των p(a)p(b) οπότε δεν είναι ανεξάρτητες. Αν θέσουμε υπό συνθήκη το c, δηλαδή το παρατηρούμε, τότε ο γράφος αναπαρίσταται όπως δείχνει η εικόνα, με τον υπό παρατήρηση κόμβο σκιασμένο. Συνεπώς από 1.6, μπορούμε να γράψουμε: p(a, b c) = p(a, b, c) p(c) οπότε έχουμε την ιδιότητα της υπό συνθήκης ανεξαρτησίας. = p(a c)p(b c) (1.7) Αυτό το αποτέλεσμα μπορούμε να το αναπαραστήσουμε γραφικά αν θεωρήσουμε μονοπάτι από τον κόμβο a στον κόμβο b μέσω του κόμβου c. Ο κόμβος c θα λέμε ότι είναι ουρά με ουρά (tail-to-tail) όσον αφορά αυτό το μονοπάτι, διότι ο κόμβος αυτός είναι συνδεδεμένος με τις ουρές των δύο τόξων και η παρουσία ενός τέτοιου μονοπατιού κάνει τους δύο κόμβου να εξαρτώνται μεταξύ τους. Όμως, όταν παρατηρούμε τον κόμβο c, ο υπό συνθήκη κόμβος μπλοκάρει το μονοπάτι από το a στο b και κάνει τα a και b να είναι υπό συνθήκη ανεξάρτητα. 8

18 Σχήμα 1.3: Το δεύτερο παράδειγμα γράφου πάνω στις a, b, c όταν δεν έχουμε και όταν έχουμε παρατηρήσει την τιμή της c Στο δεύτερο παράδειγμα, ας θεωρήσουμε το γράφο που φαίνεται στο σχήμα 1.3. Η από κοινού κατανομή που αντιστοιχεί σε αυτό το γράφο μπορεί και πάλι να αποκτηθεί από την εφαρμογή του κανόνα 1.1 και είναι p(a, b, c) = p(a)p(c a)p(b c) (1.8) Πρώτα ας υποθέσουμε ότι καμία μεταβλητή δεν παρατηρείται, οπότε ομοίως με πριν μπορούμε να ελέγξουμε αν οι μεταβλητές a, b είναι ανεξάρτητες, αθροίζοντας και τα δύο μέλη της 1.8 ως προς την c. Βλέπουμε ότι προκύπτει ότι p(a, b) = p(a)p(b a) το οποίο γενικά δεν παραγοντοποιείται ως γινόμενο των περιθωρίων κατανομών. Αν τώρα παρατηρήσουμε τη μεταβλητή c, έχουμε p(a, b c) = p(a, b, c) p(c) = p(a)p(c a)p(b c) p(c) = p(a c)p(b c) (1.9) οπότε παρατηρούμε υπό συνθήκη ανεξαρτησία. Ερμηνεύουμε και πάλι τα αποτελέσματα γραφικά. Ο κόμβος c θα λέμε ότι είναι κεφάλι με ουρά (head-to-tail) όσον αφορά αυτό το μονοπάτι, και η παρουσία ενός τέτοιου μονοπατιού κάνει τους δύο κόμβους να εξαρτώνται μεταξύ τους. Όμως, όταν παρατηρούμε τον κόμβο c, ο υπό συνθήκη κόμβος μπλοκάρει το μονοπάτι από το a στο b και κάνει τα a και b να είναι υπό συνθήκη ανεξάρτητα. Σχήμα 1.4: Το τρίτο παράδειγμα γράφου πάνω στις a, b, c όταν δεν έχουμε και όταν έχουμε παρατηρήσει την τιμή της c Στο τρίτο και τελευταίο παράδειγμα, θεωρούμε το γράφο που φαίνεται στο σχήμα 1.4. Όπως θα δούμε αυτός ο γράφος έχει περίεργη συμπεριφορά σε σχέση με τα δύο προηγούμενα παραδείγματα. Η από κοινού κατανομή που αντιστοιχεί σε αυτό το γράφο μπορεί να αποκτηθεί ως εξής από την 1.1, p(a, b, c) = p(a)p(b)p(c a, b) (1.10) Πρώτα ας υποθέσουμε ότι καμία μεταβλητή δεν παρατηρείται. Ομοίως, ελέγχουμε αν οι μεταβλητές a, b είναι ανεξάρτητες, αθροίζοντας και τα δύο μέλη της 1.10 ως προς την c. Βλέπουμε ότι προκύπτει 9

19 ότι p(a, b) = p(a)p(b), οπότε χωρίς να έχουμε καμία μεταβλητή υπό συνθήκη έχουμε ανεξαρτησία. Αν τώρα παρατηρήσουμε τη μεταβλητή c, έχουμε p(a, b c) = p(a, b, c) p(c) = p(a)p(b)p(c a, b) p(c) (1.11) το οποίο γενικά δεν παραγοντοποιείται ως p(a c)p(b c). Άρα, το τρίτο παράδειγμα έχει αντίθετη συμπεριφορά από τα προηγούμενα δύο. Γραφικά, θα λέμε ότι ο κόμβος c είναι κεφάλι-κεφάλι (head-to-head) όσον αφορά το μονοπάτι μεταξύ των κόμβων a, b διότι συνδέει τα κεφάλια των δύο τόξων. Όταν ο κόμβος c δεν παρατηρείται, τότε μπλοκάρει το μονοπάτι και επομένως οι μεταβλητές κόμβος a και κόμβος b είναι ανεξάρτητες. Όμως, όταν παρατηρείται το c, είναι δηλαδή υπό συνθήκη, τότε ελευθερώνει το μονοπάτι και επομένως οι δύο μεταβλητές κόμβοι είναι εξαρτημένες. Επίσης, μπορεί να αποδειχθεί ότι ένα head-to-head μονοπάτι δεν θα είναι πια μπλοκαρισμένο αν είτε ο κόμβος είτε οποιοσδήποτε από τους απογόνους του, παρατηρείται. Επισήμανση 2. Συνολικά, συμπεραίνουμε ότι ένας tail-to-tail κόμβος ή ένας head-to-tail κόμβος αφήνει το μονοπάτι ελεύθερο, εκτός και αν παρατηρείται. Αντίθετα, ένας head-to-head κόμβος μπλοκάρει το μονοπάτι αν δεν παρατηρείται, αλλά όταν ο κόμβος και ή ένας ή περισσότεροι από τους απογόνους του παρατηρείται τότε το μονοπάτι γίνεται ελεύθερο. Ορισμός 9. ( D-separation) Έστω ένας κατευθυνόμενος γράφος στον οποίο A, B, C είναι τυχαία μητέμνοντα σύνολα κόμβων (που η ένωσή τους είναι μικρότερη από το σύνολο των κόμβων στο γράφο). Θέλουμε να διαπιστώσουμε αν υπάρχει μία συγκεκριμένη δήλωση υπό συνθήκη ανεξαρτησίας στο δοσμένο DAG. Για να το κάνουμε αυτό θεωρούμε όλα τα πιθανά μονοπάτια στο γράφο από οποιοδήποτε κόμβο στο A προς οποιοδήποτε κόμβο στο B. Οποιοδήποτε τέτοιο μονοπάτι λέγεται ότι είναι μπλοκαρισμένο αν συμπεριλαμβάνει έναν κόμβο τέτοιο ώστε τα βέλη στο μονοπάτι συναντιώνται είτε head-to-tail είτε tail-to-tail στον κόμβο και ο κόμβος είναι στο σύνολο του C τα βέλη συναντιώνται head-to-head στον κόμβο και ούτε ο κόμβος ούτε κάποιος από τους απογόνους του είναι στο σύνολο C Αν όλα τα μονοπάτια είναι μπλοκαρισμένα, τότε θα λέμε ότι το A είναι d-separated από το B μέσω του C και η από κοινού κατανομή πάνω σε όλες τις μεταβλητές στο γράφο θα ικανοποιεί υπό συνθήκη ανεξαρτησία Α, Β δοθέντος του C. Για παράδειγμα, στον γράφο (α) του σχήματος 1.5 το μονοπάτι από το a στο b δεν μπλοκάρεται από τον κόμβο f γιατί είναι tail-to-tail κόμβος και δεν παρατηρείται και ούτε μπλοκάρεται από τον e, διότι αν και ο τελευταίος είναι head-to-head κόμβος έχει έναν απόγονο που είναι στο σύνολο υπό συνθήκη. Ενώ, στο γράφο (β) του 1.5 το μονοπάτι από το a στο b μπλοκάρεται από τον κόμβο f, καθώς είναι tail-to-tail κόμβος που παρατηρείται και η υπό συνθήκη ανεξαρτησία μεταξύ a, b δοθέντος c θα ικανοποιείται από οποιαδήποτε κατανομή που παραγοντοποιείται και αναπαρίσταται από αυτό το γράφο. Επίσης, αυτό το μονοπάτι μπλοκάρεται και από τον κόμβο e καθώς το e είναι head-to-head κόμβος και ούτε αυτός ούτε κάποιος από τους απογόνους του βρίσκεται στο σύνολο υπό συνθήκη. 10

20 Σχήμα 1.5: Έννοια D-Separation 1.2 Markov Δίκτυα Έχουμε ήδη μελετήσει τα κατευθυνόμενα γραφικά μοντέλα, ή Bayesian δίκτυα. Αυτά τα μοντέλα είναι χρήσιμα καθώς παρέχουν μια φυσική αναπαράσταση για πολλούς τομείς του πραγματικού κόσμου. Σε αυτή την ενότητα θα μελετήσουμε τη δεύτερη μεγάλη κατηγορία γραφικών μοντέλων, αυτή που βασίζεται σε μη κατευθυνόμενα δίκτυα, τα Markov δίκτυα, και θα μελετήσουμε τόσο την παραγοντοποίηση της κατανομής που αναπαριστούν όσο και τις σχέσεις της υπό συνθήκη ανεξαρτησίας που εκφράζουν. Τα Markov δίκτυα είναι χρήσιμα για τη μοντελοποίηση φαινομένων στα οποία δεν είναι δυνατή η κατευθυντικότητα στις συνδέσεις μεταξύ των μεταβλητών. Ορισμός 10. (Markov Δίκτυο) Πρόκειται για ένα μη-κατευθυνόμενο γραφικό μοντέλο που αποτελείται από ένα σύνολο κόμβων, κάθε ένας από τους οποίους αντιστοιχεί σε μια μεταβλητή ή σε ένα σύνολο μεταβλητών, καθώς επίσης και από ένα σύνολο συνδέσμων, κάθε ένας από τους οποίους συνδέει ένα ζευγάρι κόμβων. Οι σύνδεσμοι είναι μη-κατευθυνόμενοι, δηλαδή δεν έχουν τόξα Υπό Συνθήκη ανεξαρτησία σε Markov Δίκτυα Σε αντίθεση με τα Bayesian δίκτυα, όπου η ιδιότητα της υπό συνθήκη ανεξαρτησίας ισχύει εφαρμόζοντας το test της d-separation - δηλαδή όπου έπρεπε να εξετάζουμε κατά πόσον τα μονοπάτια που συνδέουν δύο σύνολα κόμβων είναι μπλοκαρισμένα ή όχι-, στα Markov δίκτυα η υπό συνθήκη ανεξαρτησία καθορίζεται από απλό χωρισμό του γράφου. Καθώς πλέον οι ακμές δεν έχουν τόξα, δεν υπάρχει η έννοια του γονιού και του παιδιού, γεγονός που αφαιρεί τις δυσκολίες που υπεισέρχονταν στα BNs λόγω head-to-head κόμβων. Οπότε, για να ελέγξουμε την ιδιότητα της υπό συνθήκη ανεξαρτησίας σε ένα μη κατευθυνόμενο γράφο πάνω σε σύνολο κόμβων A, B, C εξετάζουμε όλα τα πιθανά μονοπάτια που συνδέουν τους κόμβους του Α με τους κόμβους στο Β. Αν όλα αυτά τα μονοπάτια περνάνε από έναν ή περισσότερους κόμβους που ανήκουν στο σύνολο C, τότε όλα είναι μπλοκαρισμένα και η ιδιότητα της υπό συνθήκη ανεξαρτησίας των A, B δεδομένου C ισχύει. Όμως, αν υπάρχει έστω και ένα μονοπάτι που δεν είναι μπλοκαρισμένο, τότε η ιδιότητα της υπό συνθήκη ανεξαρτησίας δεν ισχύει απαραίτητα, ή καλύτερα υπάρχει έστω και μία κατανομή που αντιστοιχεί σε αυτό το γράφο και που δεν πληρoί την ιδιότητα της υπο συνθήκη ανεξαρτησίας. 11

21 Πρακτικά, αυτή η μέθοδος είναι ίδια με τον έλεγχο που γίνεται με το d-separation, χωρίς την επίδραση των head-to-head κόμβων. Ένας εναλλακτικός τρόπος εφαρμογής του τεστ της υπό συνθήκη ανεξαρτησίας είναι να φανταστούμε ότι απομακρύνουμε όλους τους κόμβους στο σύνολο C καθώς επίσης και οποιουσδήποτε συνδέσμους αυτών των κόμβων. Μετά ρωτάμε αν υπάρχει μονοπάτι που συνδέει όλους τους κόμβους στο σύνολο A με όλους τους κόμβους στο σύνολο B. Αν δεν υπάρχουν τέτοια μονοπάτια, τότε η υπό συνθήκη ανεξαρτησία πρέπει να ισχύει. Ορισμός 11. (Markov Blanket) Για ένα μη κατευθυνόμενο γράφο -Markov Δίκτυο-, η Markov Blanket ενός κόμβου αποτελείται από το σύνολο των γειτονικών κόμβων. Έχει την ιδιότητα ότι η υπό συνθήκη κατανομή του κόμβου, με συνθήκη πάνω σε όλες τις εναπομείνασες μεταβλητές στο γράφο, εξαρτάται μόνο από τις μεταβλητές στην Markov Blanket. Για ένα κατευθυνόμενο γράφο - Bayesian δίκτυο - η Markov Blanket ενός κόμβου συνιστά το σύνολο των γονιών, παιδιών και συν-γονιών (μεταβλητών που αντιστοιχούν σε κόμβους-γονείς των παιδιών του πέρα από αυτόν) του κόμβου. Έχει την ιδιότητα ότι η υπό συνθήκη κατανομή του κόμβου, με συνθήκη πάνω σε όλες τις εναπομείνασες μεταβλητές στο γράφο, εξαρτάται μόνο από τις μεταβλητές στην Markov Blanket Ιδιότητες παραγοντοποίησης σε Markov δίκτυα Σε αυτήν την υποενότητα θα εισάγουμε τον κανόνα παραγοντοποίησης για τους μη-κατευθυνόμενους γράφους που αντιστοιχεί στο τεστ υπό συνθήκη ανεξαρτησίας που παρουσιάστηκε παραπάνω. Και πάλι όπως στα Bayesian δίκτυα, αυτό θα περιλαμβάνει έκφραση της από κοινού κατανομής πάνω σε σύνολα μεταβλητών που είναι τοπικά στο γράφο. Οπότε θα πρέπει να επαναπροσδιορίσουμε την έννοια της τοπικότητας στην περίπτωση των Markov δίκτυα. Αν θεωρήσουμε δύο κόμβους x i, x j που δε συνδέονται με σύνδεσμο, τότε αυτές οι μεταβλητές πρέπει να είναι υπό συνθήκη ανεξάρτητες δοθέντων όλων των άλλων κόμβων στο γράφο. Αυτό προκύπτει από το ότι δεν υπάρχει απ ευθείας μονοπάτι μεταξύ των δύο κόμβων και όλοι οι άλλοι κόμβοι παρατηρούνται, επομένως αυτά τα μονοπάτια μπλοκάρονται. Έτσι, η παραγοντοποίηση της από κοινού κατανομής πρέπει να είναι τέτοια ώστε τα x i, x j να μην εμφανίζονται στον ίδιο παράγοντα, προκειμένου η ιδιότητα της υπό συνθήκης ανεξαρτησίας να ισχύει για όλες τις πιθανές κατανομές που ανήκουν στο γράφο. Σχήμα 1.6: Παράδειγμα κλικών και μέγιστης κλίκας σε Markov δίκτυο. Οι ιδιότητες της παραγοντοποίησης πάνω σε δίκτυα Markov μπορούν να γίνουν καλύτερα κατανοητές με τη χρήση του παραδείγματος που εικονίζεται στο σχήμα 1.6. Ο γράφος αυτός έχει 5 κλίκες από 2 κόμβους που δίνονται από {x 1, x 2 }, {x 2, x 3 }, {x 3, x 4 }, {x 4, x 2 }, {x 1, x 3 } καθώς και από δύο μέγιστες 12

22 κλίκες {x 1, x 2, x 3 }και {x 2, x 3, x 4 }. Το σύνολο {x 1, x 2, x 3, x 4 } δεν είναι κλίκα εξαίτίας του συνδέσμου που λείπει μεταξύ του x 1 και x 4, δηλαδή εξαιτίας του γεγονότος ότι πλέον δεν πρόκειται για πλήρως συνδεδεμένο σύνολο κόμβων. Επομένως, μπορούμε να ορίσουμε τους παράγοντες της από κοινού κατανομής που εκφράζεται από το Markov Network ως συναρτήσεις των μεταβλητών που ανήκουν στις διάφορες κλίκες. Μάλιστα, μπορούμε να τους θεωρήσουμε ως συναρτήσεις των μέγιστων κλικών χωρίς βλάβη της γενικότητας, καθώς όλες οι υπόλοιπες κλίκες θα είναι υποσύνολα των μέγιστων. Ορισμός 12. (Εναλλακτικός ορισμός για Markov δίκτυο) Για ένα σύνολο μεταβλητών x, το Markov δίκτυο ορίζεται ως το γινόμενο των συναρτήσεων δυναμικών πάνω στις μέγιστες κλίκες του γράφου. Αν θεωρήσουμε μία κλίκα C και το σύνολο των μεταβλητών σε αυτή την κλίκα x C και συναρτήσεις δυναμικού ψ C (x C ) πάνω στις μέγιστες κλίκες του γράφου, το Markov δίκτυο αναπαριστά την κατανομή: p(x) = 1 ψ C (x C ). (1.12) Z Εδώ η ποσότητα Z είναι η συνάρτηση διαμερισμού (partition function), η οποία είναι μια σταθερά κανονικοποίησης και δίνεται από Z = x C ψ C (x C ) (1.13) C το οποίο διασφαλίζει ότι η κατανομή p(x) είναι σωστά κανονικοποιημένη - αφού είναι κατανομή πρέπει p(x) = 1-. x Θεωρώντας μόνο τις συναρτήσεις δυναμικού που ικανοποιούν ψ C (x C ) 0 διασφαλίζουμε τη δεύτερη ιδιότητα που πρέπει να έχει μία κατανομή πιθανότητας, δηλαδή να είναι p(x) 0. Η 1.13 ισχύει και για την περίπτωση των διακριτών και των συνεχών μεταβλητών, με το άθροισμα να αντικαθίσταται από ολοκλήρωση αντίστοιχα. Αξίζει να τονίσουμε ότι σε αντίθεση με τα Bayesian Δίκτυα, στα οποία οι παράγοντες της από κοινού κατανομής ήταν υπό συνθήκη κατανομές -με συνθήκη πάνω στην κατάσταση των γονιών του κάθε κόμβου για την κάθε μία από αυτές - εδώ δεν έχουμε απαραίτητα τον περιορισμό οι παράγοντες να αναπαριστούν πιθανοτικές κατανομές π.χ υπό συνθήκη ή περιθώριες, εκτός βέβαια και αν ο μη-κατευθυνόμενος γράφος κατασκευάστηκε από τον κατευθυνόμενο γράφο. Γι αυτό το λόγο άλλωστε χρειαζόμαστε την σταθερά κανονικοποίησης Z, καθώς το γινόμενο των δυναμικών δεν θα είναι λογικά συνάρτηση κατανομής. Από την άλλη, η παρουσία αυτής ακριβώς της σταθεράς είναι που δυσκολεύει διαδικασίες π.χ αυτή της επαγωγής συμπερασμάτων σε ένα Markov δίκτυο. Αν είχαμε ένα δίκτυο με Μ διακριτούς κόμβους κάθε ένας από τους οποίους έχει Κ καταστάσεις, τότε ο υπολογισμός της σταθεράς απαιτεί άθροιση πάνω στις καταστάσεις, το οποίο στη χειρότερη περίπτωση είναι εκθετικό του μεγέθους του μοντέλου. Η δε εύρεση της συνάρτησης διαμερισμού είναι απαραίτητη για την εκμάθηση παραμέτρων. Αλλά, για τον υπολογισμό τοπικών περιθωρίων κατανομών δεν απαιτείται. Οπότε μπορούμε να δουλεύουμε με μη-κανονικοποιημένη από κοινού κατανομή και μετά να κανονικοποιούμε ξεχωριστά τις περιθώριες ειδικά στο τέλος. Δεδομένου ότι οι περιθώριες θα ορίζονται πάνω σε μικρό αριθμό μεταβλητών, ο υπολογισμός της συνάρτησης διαμερισμού -ως σταθερά κανονικοποίησης της περιθώριας- θα είναι υπολογιστικά εφικτός. Τέλος, πρέπει να ορίσουμε πώς συνδέονται οι έννοιες της υπό συνθήκης ανεξαρτησίας με αυτή της παραγοντοποίησης της από κοινού κατανομής σε ένα δίκτυο Markov. Για να γίνει αυτό περιοριζόμαστε σε συναρτήσεις δυναμικού που είναι αυστηρά θετικές. 13

23 Θεώρημα 2. (Θεώρημα Hammerseley-Clifford)Έστω το σύνολο όλων των πιθανών κατανομών που ορίζονται πάνω σε ένα συγκεκριμένο σύνολο μεταβλητών που αντιστοιχούν σε κόμβους ενός συγκεκριμένου μη-κατευθυνόμενου γράφου. Μπορούμε να ορίσουμε ως UI το σύνολο όλων αυτών των κατανομών που είναι συνεπείς με το σύνολο των δηλώσεων της υπό συνθήκης ανεξαρτησίας που διαβάζονται από το γράφο χρησιμοποιώντας το τεστ της graph separation. Ομοίως, μπορούμε να ορίσουμε ως UF το σύνολο των κατανομών που μπορούν να εκφραστούν ως παραγοντοποίηση της μορφής 1.12 όσον αφορά τις μέγιστες κλίκες στο γράφο. Το θεώρημα του Hammerseley-Clifford δηλώνει ότι οι UI και UF είναι πανομοιότυπες. Με βάση αυτό το θεώρημα, και καθώς είμαστε περιορισμένοι σε αυστηρά θετικές συναρτήσεις δυναμικού, ενδείκνυται να τις εκφράσουμε με εκθετική μορφή ώστε ψ C (x C ) = exp ( E(x C )) (1.14) όπου E(x C ) ονομάζεται συνάρτηση ενέργειας και η εκθετική αναπαράσταση ονομάζεται Boltzmann κατανομή. Η από κοινού κατανομή ορίζεται ως το γινόμενο των δυναμικών και η συνολική ενέργεια δίνεται από το άθροισμα των ενεργειών πάνω στις μέγιστες κλίκες Σχέση μεταξύ κατευθυνόμενων και μη-κατευθυνόμενων γράφων Αρχικά θα προσπαθήσουμε να πάρουμε ένα μοντέλο το οποίο καθορίζεται από ένα Bayesian δίκτυο και να το μετατρέψουμε σε μοντέλο Markov. Σε κάποιες περιπτώσεις αυτό είναι εύκολο να γίνει, όπως θα δείξουμε με ένα απλό παράδειγμα. Σχήμα 1.7: Παράδειγμα μετατροπής κατευθυνόμενης αλυσίδας σε μη-κατευθυνόμενη αλυσίδα Στο σχήμα 1.7 φαίνεται ένας κατευθυνόμενος γράφος, μια αλυσίδα συγκεκριμένα, που δίνεται ως το γινόμενο των υπό συνθήκη κατανομών των κόμβων πάνω στους αντίστοιχους γονείς τους p(x) = p(x 1 )p(x 2 x 1 )p(x 3 x 2 )...p(x n x N 1 ) (1.15) Μετατρέποντάς το στον αντίστοιχο μη κατευθυνόμενο γράφο, όπως φαίνεται στην Εικόνα 1.7, παρατηρούμε ότι οι μέγιστες κλίκες είναι απλώς τα ζευγάρια γειτονικών κόμβων, οπότε θέλουμε να γράψουμε την κατανομή ως εξής: p(x) = 1 Z ψ 1,2(x 1, x 2 )ψ 2,3 (x 2, x 3 )...ψ N 1,N (x N 1, x N ) (1.16) Αυτό γίνεται εύκολα εντοπίζοντας: ψ 1,2 (x 1, x 2 ) = p(x 1 )p(x 2 x 1 ), ψ 2,3 (x 2, x 3 ) = p(x 3 x 2 ),..., ψ N 1,N (x N 1, x N ) = p(x N x N 1 ). Βλέπουμε ότι σε αυτή την περίπτωση η σταθερά κανονικοποίησης Ζ είναι ίση με τη μονάδα. Προϋπόθεση γενίκευσης της διαδικασία μετατροπής του κατευθυνόμενου δικτύου σε μη κατευθυνόμενο δίκτυο είναι τα δυναμικά των κλικών του μη-κατευθυνόμενου γράφου να δίνονται από τις υπό συνθήκη κατανομές του κατευθυνόμενου γράφου. Για να γίνει αυτό πρέπει να βεβαιωθούμε ότι το σύνολο των μεταβλητών που εμφανίζονται σε κάθε μία από τις υπό συνθήκη κατανομές του ΒΝ ανήκει σε 14

24 τουλάχιστον μία κλίκα του ΜΝ. Για τους κόμβους του ΒΝ που έχουν μόνο ένα γονιό αυτό είναι εύκολο καθώς απλά αντικαθιστούμε το βέλος με μη-κατευθυνόμενη ακμή. Ορισμός 13. (Ορισμός Moralization) Αν οι κόμβοι του κατευθυνόμενου γράφου που θέλουμε να μετατρέψουμε σε μη-κατευθυνόμενο έχουν περισσότερους από ένα γονιούς, τότε εφαρμόζουμε την τεχνική marry the parents δηλαδή προσθέτουμε εξτρά συνδέσμους μεταξύ αυτών των γονιών του κόμβου και μετατρέπουμε όλα τα τόξα σε μη-κατευθυνόμενες ακμές. Εναλλακτικά αυτό ονομάζεται moralisation. Στο τέλος της διαδικασίας της moralisation, δηλαδή αφού την έχουμε εφαρμόσει σε όλους τους κόμβους του ΒΝ, θα υπάρχει τουλάχιστον μία μέγιστη κλίκα που περιέχει όλους τους κόμβους του δικτύου. Η συνάρτηση διαμερισμού Ζ είναι σε κάθε περίπτωση ίση με τη μονάδα. Η διαδικασία της moralisation που ορίσαμε θα έχει σημαντικό ρόλο στην κατασκευή junction tree πάνω σε μέγιστες κλίκες την οποία θα αναλύσουμε στο κεφάλαιο της επαγωγής συμπερασμάτων. Επισήμανση 3. Προφανώς ένας απλός τρόπος για να μετατρέψουμε έναν οποιονδήποτε κατευθυνόμενο γράφο σε μηκατευθυνόμενο θα ήταν να προσθέσουμε μη-κατευθυνόμενες ακμές μεταξύ όλων των κόμβων και έτσι να έχουμε έναν πλήρως συνδεδεμένο γράφο. Όμως, με αυτόν τον τρόπο θα χάναμε όλες τις δηλώσεις της υπό συνθήκη ανεξαρτησίας που εκφράζονται από τον κατευθυνόμενο γράφο. Συνεπώς, η moralization με βέλτιστο τρόπο ναι μεν προσθέτει κάποιες εξαρτήσεις μεταξύ κόμβων αφού παντρεύει γονείς αλλά ο αριθμός των πρόσθετων ακμών είναι ο ελάχιστος δυνατός. Ακολούθως, ορίζουμε τις έννοιες του D-map, Ι-Map και Perfect-Map για μια κατανομή. Ορισμός 14. (Ορισμός D-Map) Ένας γράφος θα λέγεται D-Map (dependency map) μιας κατανομής αν κάθε δήλωση της υπό συνθήκη ανεξαρτησίας που ικανοποιείται από την κατανομή αντανακλάται και στο γράφο. Ορισμός 15. (Ορισμός Ι-Map) Ένας γράφος θα λέγεται Ι-Map (independency map) μιας συγκεκριμένης κατανομής αν κάθε δήλωση υπό συνθήκης ανεξαρτησίας που υποννοείται από το γράφο ικανοποιείται από αυτή τη συγκεκριμένη κατανομή. Ορισμός 16. (Ορισμός Perfect-Map) Ένας γράφος θα λέγεται Perfect-Map μιας κατανομής αν κάθε δήλωση υπό συνθήκης ανεξαρτησίας που ικανοποιείται από την κατανομή αντανακλάται και στο γράφο και αντίστροφα, δηλαδή αν αυτός ο γράφος είναι και D-Map και D-Map για την κατανομή. Πρέπει να τονίσουμε ότι από όλες τις πιθανές κατανομές P πάνω σε ένα σύνολο μεταβλητών, ένα υποσύνολο αυτών είναι perfect map χρησιμοποιώντας κατευθυνόμενο γράφο, ένα άλλο υποσύνολο αυτών είναι perfect map χρησιμοποιώντας μη-κατευθυνόμενο γράφο με τα δύο αυτά υποσύνολα να επικαλύπτονται σε κάποιο κομμάτι αυτών. Και φυσικά υπάρχει το υπόλοιπο υποσύνολο του P, που δεν έχει perfect map ούτε με κατευθυνόμενο ούτε με μη-κατευθυνόμενο γράφο. 15

25 1.3 Γράφος παραγόντων Σε αυτή την υποενότητα εισάγουμε ένα πολύ απλό και γενικό πιθαν γραφικό μοντέλο, αυτό του γράφου παραγόντων (Factor Graph). Η ιδέα στην οποία στηρίζεται είναι η ακόλουθη: τόσο οι κατευθυνόμενοι όσο και οι μη-κατευθυνόμενοι γράφοι επιτρέπουν σε μια ολική συνάρτηση διάφορων μεταβλητών να εκφραστεί ως το γινόμενο των παραγόντων πάνω σε υποσύνολα αυτών των μεταβλητών. Οι γράφοι παραγόντων κάνουν αυτή την παραγοντοποίηση ξεκάθαρη εισάγοντας επιπλέον κόμβους, τους factor κόμβους, για τους ίδιους τους παράγοντες, πέρα από τους κόμβους που αναπαριστούν τις μεταβλητές. Οι γράφοι παραγόντων μας επιτρέπουν να είμαστε πιο λεπτομερειακοί όσον αφορά την παραγοντοποίηση. Ορισμός 17. (Γράφος παραγόντων - Factor Graph-) Δοθείσης της από κοινού κατανομής πάνω σε ένα υποσύνολο μεταβλητών υπό μορφή γινομένου παραγόντων p(x) = s f s (x s ) (1.17) όπου x s ένα υποσύνολο των μεταβλητών, Ο FG έχει έναν κόμβο παράγοντα (που συμβολίζεται με τετράγωνο) για κάθε συνάρτηση f s του αντίστοιχου συνόλου μεταβλητών, και ένα κόμβο μεταβλητής (που συμβολίζεται με κύκλο) για κάθε μεταβλητή ή γκρουπ μεταβλητών x i. Οι κόμβοι παραγόντων συνδέονται με τους αντίστοιχους κόμβους μεταβλητών με ένα μη κατευθυνόμενο σύνδεσμο. Οι γράφοι παραγόντων μπορούν να εκφράσουν τόσο ένα Bayes δίκτυο (1.1) όσο και ένα Markov δίκτυο (1.12). Στην πρώτη περίπτωση οι παράγοντες είναι οι τοπικές υπό συνθήκη κατανομές, στη δεύτερη περίπτωση οι παράγοντες είναι συναρτήσεις δυναμικού πάνω στις μέγιστες κλίκες, με την σταθερά Ζ να ορίζεται ως παράγοντας πάνω σε ένα άδειο σύνολο μεταβλητών. Οι factor graphs είναι bipartite, καθώς αποτελούνται από δύο διακριτά είδη κόμβων και όλοι οι σύνδεσμοι είναι μεταξύ κόμβων αντίθετου τύπου. Σχήμα 1.8: Γράφος παραγόντων Έστω για παράδειγμα μία κατανομή που γράφεται ως p(x) = f a (x 1, x 2 )f b (x 1, x 2 )f c (x 2, x 3 )f d (x 3 ) (1.18) Υπάρχουν δύο παράγοντες f a (x 1, x 2 ) και f b (x 1, x 2 ) που ορίζονται πάνω στο ίδιο σύνολο μεταβλητών. Σε ένα ΜΝ το γινόμενο αυτών των δύο παραγόντων θα συγχωνεύονταν σε ένα μόνο δυναμικό, στο ίδιο δυναμικό κλίκας. Ομοίως και οι παράγοντες f c (x 2, x 3 ) και f d (x 3 ) θα συνδυάζονταν σε ένα μόνο δυναμικό πάνω στα x 2, x 3. Επομένως, βλέπουμε ότι καθώς ο γράφος παραγόντων κρατά αυτούς τους παράγοντες ξεχωριστά, μπορεί να δώσει πιο λεπτομερή πληροφορία για την παραγοντοποίηση. 16

26 Μετατροπή μη-κατευθυνόμενου γράφου σε Factor Graph Δοθέντος ενός μη-κατευθυνόμενου γράφου, μπορούμε εύκολα να τον μετατρέψουμε σε factor graph, με τη δημιουργία κόμβων μεταβλητών για κάθε ένα από τους κόμβους στον αρχικό γράφο, έπειτα δημιουργούμε τους εξτρά factor κόμβους που αντιστοιχούν στις μέγιστες κλίκες x s, οι παράγοντες f s (x s ) ορίζονται ίσοι με τα δυναμικά των κλικών. Ας σημειώσουμε ότι για τον ίδιο μη-κατευθυνόμενο γράφο μπορεί να υπάρχουν περισσότεροι από ένας διαφορετικοί factor γράφοι. Μετατροπή κατευθυνόμενου γράφου σε Factor Graph Ομοίως, για τη μετατροπή BN σε factor γράφο, δημιουργούμε κόμβους μεταβλητών για κάθε ένα από τους κόμβους στον αρχικό γράφο, έπειτα δημιουργούμε τους εξτρά factor κόμβους που αντιστοιχούν στις υπό συνθήκη κατανομές και τέλος προσθέτουμε τους απαραίτητους συνδέσμους. Και πάλι, μπορεί να υπάρχουν περισσότεροι του ενός διαφορετικοί factor γράφοι για τον ίδιο κατευθυνόμενο γράφο. Το γεγονός ότι μπορεί να υπάρχουν διαφορετικοί factor γράφοι για το ίδιο Bayesian Network (BN) ή Markov Network (MN) επιτρέπει στους Factor Graphs να είναι περισσότερο εκφραστικοί για τη μορφή της παραγοντοποίησης. Επισήμανση 4. Όπως, θα διαπιστώσουμε στο επόμενο κεφάλαιο, θα χρησιμοποιούμε γράφους παραγόντων ειδικά για τη διαδικασία επαγωγής συμπερασμάτων, για το βασικό λόγο ότι πέρα από τη δύναμη εκφραστικότητας που διαθέτει, καταλήγει σε γράφους υπό τη μορφή δέντρου οι οποίοι είναι επιτρέπουν εφαρμογή αποδοτικών αλγορίθμων. Δηλαδή ο γράφος παραγόντων δεν θα έχει loops - σε αντίθεση με τους μη-κατευθυνόμενους γράφους που προκύπτουν από τη διαδικασία της moralization -, οπότε δεν θα υπάρχουν περισσότεροι του ενός γονείς για έναν κόμβο και θα υπάρχει μοναδικό μονοπάτι που θα συνδέει οποιουσδήποτε δύο κόμβους. 17

27 Κεφάλαιο 2 Πιθανοτικά Γραφικά Μοντέλα: Επαγωγή Συμπερασμάτων Αφού στο προηγούμενο κεφάλαιο μελετήσαμε τον τρόπο με τον οποίο μπορούμε να δομήσουμε πιθανοτικά γραφικά μοντέλα για την αναπαράσταση πιθανοτικών κατανομών, σε αυτό το κεφάλαιο θα στραφούμε στο πρόβλημα της επακριβούς επαγωγής συμπερασμάτων πάνω στα μοντέλα που κατασκευάσαμε (Inference). Πιθανά ερωτήματα που θέλουμε να απαντούμε πάνω στο κατασκευασμένο μοντέλο είναι ο υπολογισμός των εκ των υστέρων κατανομών ενός ή περισσοτέρων υποσυνόλων κόμβων, όταν έχουμε παρατηρήσει τις τιμές κάποιων κόμβων του γραφικού μοντέλου, ή η εύρεση της πιο πιθανής κατάστασης της κατανομής. Καθώς η ερευνητική περιοχή της Μηχανικής Μάθησης πραγματεύεται πιθανοτικές κατανομές που περιέχουν εκατοντάδες μεταβλητές, στόχος μας είναι η μείωση του υπολογιστικού κόστους της Inference. Προς αυτή την κατεύθυνση, θα ξεκινήσουμε τη μελέτη των αλγορίθμων Inference από τη φτηνή περίπτωση των δέντρων, και θα προσπαθήσουμε να τη γενικεύσουμε. 2.1 Απαλοιφή μεταβλητών και Πέρασμα μηνυμάτων Μία βασική έννοια στην αποδοτική επαγωγή συμπερασμάτων είναι το πέρασμα μηνυμάτων κατά το οποίο η πληροφορία από το γράφο συνοψίζεται σε πληροφορία στις τοπικές ακμές. Αναπτύσσουμε αυτή την ιδέα με τη χρήση παραδείγματος και θεωρούμε μία αλυσίδα Markov πάνω στις μεταβλητές a, b, c, d. Η από κοινού κατανομή p(a, b, c, d) = p(a b)p(b c)p(c d)p(d) και ο στόχος μας είναι να υπολογίσουμε την περιθώρια κατανομή p(a). Για ευκολία θεωρούμε ότι οι μεταβλητές είναι διακριτές στο 0, 1. Επομένως p(a = 0) = p(a = 0, b, c, d) = p(a = 0 b)p(b c)p(c d)p(d) (2.1) Μπορούμε να συνεχίσουμε αυτόν τον υπολογισμό απλώς αθροίζοντας κάθε μία από τις πιθανότητες για τις = 8 καταστάσεις των b, c, d. Επομένως, θα χρειαζόμασταν 7 κλήσεις της πράξης της άθροισης δύο αριθμών. Ένας πιο αποδοτικός τρόπος είναι να σπρώξουμε την άθροιση ως προς το d όσο πιο δεξιά γίνεται. Ορίζοντας δυναμικό δύο καταστάσεων γ d (c) = p(c d)p(d) (2.2) έχω p(a = 0) = b,c p(a = 0 b)p(b c)γ d (c) (2.3) Το να ορίσουμε το γ d (c) απαιτεί δύο κλήσεις σε πρόσθεση 2 αριθμών, μία κλήση για κάθε κατάσταση του c. Ομοίως, μπορούμε να κατανείμουμε την άθροιση πάνω στο c όσο δεξιά γίνεται: p(a = 0) = b p(a = 0 b)γ c (b) (2.4) 18

28 όπου γ c (b) = p(b c)γ d (c) (2.5) Κατανέμοντας τις αθροίσεις έχουμε κάνει 3 2 = 6 κλήσεις σε άθροιση 2 αριθμών, εν συγκρίσει με = 7 που προκύπτει από την αφελή προσέγγιση. Επισήμανση 5. Ενώ στο συγκεκριμένο παράδειγμα δε φαίνεται πολύ αυτή η εξοικονόμηση, το σημαντικό σημείο που πρέπει να θυμόμαστε είναι ότι ο αριθμός των υπολογισμών για μία αλυσίδα μήκους T +1 θα ήταν γραμμικό 2 T, σε αντίθεση με το εκθετικό 2 T 1 που προκύπτει από την αφελή προσέγγιση. Αυτή η διαδικασία ονομάζεται απαλοιφή μεταβλητών (variable elimination) καθώς κάθε φορά κάνουμε πρόσθεση πάνω στις καταστάσεις της μεταβλητής που απαλοίφουμε από την κατανομή. Μπορούμε πάντα να εκτελούμε απαλοιφή μεταβλητών σε μία αλυσίδα αποδοτικά καθώς υπάρχει ένας φυσικός τρόπος να κατανέμουμε τις αθροίσεις, δουλεύοντας από μέσα από τις ακμές. Ας σημειώσουμε ότι στην παραπάνω περίπτωση της αλυσίδας τα δυναμικά είναι στην πραγματικότητα περιθώριες κατανομές, οπότε αυτό που κάνουμε είναι ένας αναδρομικός υπολογισμός πάνω στο δεξιό μέλος της αλυσίδας. Εναλλακτικά μπορούμε να δούμε τη διαδικασία απαλοιφής μεταβλητών ως πέρασμα ενός μηνύματος σε ένα γειτονικό κόμβο στο γράφο. Επισήμανση 6. Μπορούμε να υπολογίσουμε την περιθώρια κατανομή μιας μεταβλητής σε ένα οποιαδήποτε δέντρο ξεκινώντας από ένα φύλλο του δέντρου, απαλοίφοντας τη μεταβλητή εκεί και μετά δουλεύοντας προς τα μέσα -προς τις ακμές- να απαλοίφουμε ένα ένα φύλλο του εναπομείνοντος δέντρου. Αν κάνουμε τη διαδικασία της απαλοιφής προς τα μέσα, η δομή του εναπομείνοντος γράφου κάθε φορά θα είναι ένας υπογράφος του αρχικού γράφου με τις τιμές των πινάκων της υπό συνθήκη πιθανότητας αλλαγμένες. Αυτό εγγυάται ότι μπορούμε να υπολογίσουμε οποιαδήποτε περιθώρια κατανομή p(x i ) χρησιμοποιώντας ένα αριθμό αθροίσεων που ανεβαίνει ΓΡΑΜΜΙΚΑ με τον αριθμό των μεταβλητών στο δέντρο Εύρεση υπό συνθήκη περιθώριας κατανομής σε μια αλυσίδα Έστω ότι στο δοθέν πρόβλημα της αλυσίδας p(a, b, c, d) = p(a b)p(b c)p(c d)p(d) θέλουμε να υπολογίσουμε την υπό συνθήκη περιθώρια κατανομή p(d a). Αυτό μπορούμε να το υπολογίσουμε ως εξής. p(d a) p(a, b, c, d) = p(a b)p(b c)p(c d)p(d) = γ b (c) = γ c (d) (2.6) b,c c b c Προκειμένου να βρω τη σταθερά αναλογίας επαναλαμβάνω τον υπολογισμό για όλες τις καταστάσεις της μεταβλητής d. Καθώς γνωρίζουμε ότι p(d a) = kγ c (d) όπου γ c (d) είναι το μη κανονικοποιημένο αποτέλεσμα της άθροισης, μπορούμε να χρησιμοποιήσουμε ότι d p(d a) = 1 για να υπολογίσουμε 1 k = d γ c(d) Επισήμανση 7. Αξίζει να παρατηρήσουμε ότι τα δυναμικά γ b (c) και γ c (d) δεν είναι κατανομές. Γενικά, μπορούμε να δούμε την απαλοιφή μεταβλητών ως πέρασμα μηνυμάτων στη μορφή δυναμικών από τους κόμβους στους γειτονικούς τους κόμβους. Στα Bayesian δίκτυα η απαλοιφή μεταβλητών περνά μηνύματα τα οποία είναι πιθανοτικές κατανομές (κανονικοποιημένες) όταν ακολουθεί την κατεύθυνση των ακμών, ενώ μηκανονικοποιημένες κατανομές όταν είναι στην αντίθετη κατεύθυνση. (2.7) 19

29 2.2 Ο sum-product αλγόριθμος σε γράφους παραγόντων Όπως είδαμε στο προηγούμενο κεφάλαιο, τόσο τα Markov όσο και τα Bayesian δίκτυα μπορούν να αναπαρασταθούν με τη χρήση factor graphs. Γι αυτό το λόγο, θα προσπαθήσουμε να παράγουμε ένα αλγόριθμο επαγωγής περιθώριας κατανομής για FG αφού έτσι θα ισχύει και για τα Markov και για τα Bayesian. Αυτός ο αλγόριθμος που θα παρουσιάσουμε ονομάζεται sum-product, καθώς για να υπολογίσουμε περιθώριες χρειάζεται να αθροίσουμε πάνω σε καταστάσεις μεταβλητών πάνω στο γινόμενο παραγόντων. Εναλλακτικά, αυτός ο αλγόριθμος ονομάζεται Belief Propagation, δηλαδή διάδοση πεποιθήσεων Μη-διακλαδούμενοι γράφοι: μηνύματα από μεταβλητή σε μεταβλητή Έστω κατανομή που αναπαρίσταται με μη-διακλαδούμενο γράφο που εικονίζεται στο Σχήμα 2.1 p(a, b, c, d) = f 1 (a, b)f 2 (b, c)f 3 (c, d)f 4 (d) (2.8) Σχήμα 2.1: Μη διακλαδούμενος γράφος παραγόντων Για να υπολογίσουμε περιθώρια κατανομή p(a, b, c) έχουμε ότι: p(a, b, c, d) = d p(a, b, c, d) = d f 1 (a, b)f 2 (b, c)f 3 (c, d)f 4 (d) = f 1 (a, b)f 2 (b, c) d f 3 (c, d)f 4 (d) = f 1 (a, b)f 2 (b, c)µ d c (c) όπου ορίζουμε µ d c (c) = d f 3 (c, d)f 4 (d) (2.9) μήνυμα από τον κόμβο d στον κόμβο c µ d c, το οποίο βλέπουμε ότι είναι μια συνάρτηση της μεταβλητής c. Ομοίως, p(a, b) = c p(a, b, c) = f 1 (a, b) c f 2 (b, c)µ d c (c) = f 1 (a, b)µ c b (b) (2.10) όπου ορίζoυμε µ c b (b) = c f 2 (b, c)µ d c (c) (2.11) το οποίο κουβαλά περιθώρια πληροφορία από το γράφο πέρα από το c. Προφανώς, μπορούμε να εφαρμόζουμε αναδρομικά αυτόν τον ορισμό μηνυμάτων έτσι ώστε για ένα factor graph που είναι αλυσίδα n μεταβλητών να μπορούμε να υπολογίσουμε την περιθώρια κατανομή του πρώτου κόμβου σε χρόνο γραμμικό με το n Γενικοί μονά συνδεδεμένοι γράφοι: μηνύματα από factors σε μεταβλητές και αντίστροφα Ενώ για απλές γραμμικές δομές χωρίς διακλαδώσεις τα απλά μηνύματα από μεταβλητές σε μεταβλητές αρκούν, σε πιο γενικές δομές πρέπει να ορίσουμε και μηνύματα από κόμβους παραγόντων σε κόμβους 20

30 Σχήμα 2.2: Διακλαδούμενος μονά συνδεδεμένος γράφος παραγόντων μεταβλητών αλλά και από κόμβους μεταβλητών σε κόμβους παραγόντων. Ας θεωρήσουμε το παράδειγμα κατανομής p(a b)p(b c, d)p(c)p(d)p(e d) (2.12) που αναπαρίσταται από τον γράφο παραγόντων που εικονίζεται στο σχήμα 2.2 Η περιθώρια κατανομή p(a, b): f 1 (a, b)f 2 (b, c, d)f 3 (c)f 4 (d, e)f 5 (d) (2.13) p(a, b) = f 1 (a, b) c,d f 2 (b, c, d)f 3 (c)f 5 (d) e f 4 (d, e) = f 1 (a, b)µ f2 b(b) όπου µ f2 b(b) = c,d f 2 (b, c, d)f 3 (c)f 5 (d) e f 4 (d, e) (2.14) είναι το μήνυμα από ένα παράγοντα σε μια μεταβλητή. Αυτό το μήνυμα μπορεί να κατασκευαστεί από μηνύματα που φτάνουν από τους δύο κλάδους μέσω των κόμβων c, d και συγκεκριμένα: µ f2 b(b) = c,d f 2 (b, c, d)f 3 (c)f 5 (d) e f 4 (d, e) (2.15) όπου f 3 (c) = µ c f2 (c), f 5 (d) e f 4(d, e) = µ d f2 (d) Ομοίως μπορούμε να ερμηνεύσουμε µ d f2 (d) = f 5 (d) e f 4 (d, e) (2.16) όπουf 5 (d) = µ f5 d(d), e f 4(d, e) = µ f4 d(d). Τέλος, για να ολοκληρώσουμε την ερμηνεία των μηνυμάτων, έχουμε µ c f2 (c) = µ f3 c(c). Προφανώς σε ένα σύνδεσμο που δεν έχει διακλαδώσεις μπορούμε να υπολογίσουμε την p(a) εάν χρησιμοποιήσουμε μόνο μήνυμα μεταβλητής προς μεταβλητή p(a) b f 1 (a, b)µ f2 b(b) = µ f1 a(a) (2.17) Οπότε μπορούμε να διαπιστώσουμε ότι ένα μήνυμα από ένα παράγοντα σε ένα κόμβο μεταβλητής είναι το άθροισμα του γινομένου των εισερχόμενων μηνυμάτων από κόμβους σε παράγοντες. Ομοίως, ένα μήνυμα από ένα κόμβο σε ένα παράγοντα δίνεται από το γινόμενο των εισερχόμενων μηνυμάτων από factors σε μεταβλητές. 21

31 Ένα από τα πλεονεκτήματα αυτής της προσέγγισης είναι ότι μπορούμε να επαναχρησιμοποιήσουμε ήδη υπολογισμένα μηνύματα για τον υπολογισμό άλλων περιθώριων κατανομών. Για παράδειγμα, αν έχουμε ήδη υπολογίσει το μήνυμα από τον κόμβο d στο f 2 μπορούμε να υπολογίσουμε την περιθώρια p(c). Ορισμός 18. (Σειρά αποστολής μηνυμάτων - message schedule-) Ένα message schedule είναι μια ορισμένη ακολουθία ανανέωσης μηνυμάτων. Ένα έγκυρο message schedule υποδεικνύει ότι ένα μήνυμα μπορεί να σταλεί από οποιονδήποτε κόμβο μόνο αν ο κόμβος αυτός έχει λάβει όλα τα απαραίτητα μηνύματα από τους γείτονές του, εκτός από αυτόν στον οποίο θέλει να στείλει Ο sum-product αλγόριθμος Δοθείσης μιας κατανομής που ορίζεται ως γινόμενο πάνω σε υποσύνολα μεταβλητών p(x) = 1 ϕ f (X f ) (2.18) Z μπορούμε να εκτελέσουμε τις αθροίσεις πάνω στις μεταβλητές αποδοτικά, εφόσον ο FG είναι απλά συνδεδεμένος. f ΑΛΓΟΡΙΘΜΟΣ Sum Product 1. Αρχικοποίηση: Μηνύματα από φύλλα κόμβους παραγόντων αρχικοποιούνται στον παράγοντα. Μηνύματα από φύλλα κόμβους μεταβλητών τίθενται ίσα με μονάδα 2. Μήνυμα από μεταβλητή σε παράγοντα 3. Μήνυμα από παράγοντα σε μεταβλητή µ x f (x) = g ne(x)\f µ f x (x) = X f \x ϕ f (X f ) µ g x (x) (2.19) y {ne(f)\x} µ y f (y) (2.20) To άθροισμα αφορά την άθροιση πάνω σε όλες τις καταστάσεις στο σύνολο των μεταβλητών X f \ x Στο παραπάνω πλαίσιο του Factor Graph, με δύο τρόπους μπορούμε να εντάξουμε την κατάσταση κάποιων μεταβλητών που παρατηρούμε (observe evidence ). Είτε δημιουργούμε ένα νέο Factor Graph στον οποίο έχουμε θέσει τις τιμές που έχουμε παρατηρήσει στους αντίστοιχους κόμβους μεταβλητών και περνάμε τα μηνύματα σε αυτό το νέο Factor Graph. Ή εναλλακτικά, μπορούμε να ορίσουμε τα δυναμικά που περιέχουν τις μεταβλητές των evidence πολλαπλασιάζοντας κάθε δυναμικό με την αντίστοιχη συνάρτηση δέλτα (συνάρτηση δείκτης) που είναι 0 παντού εκτός από την κατάσταση που έχουμε παρατηρήσει. Οπότε, το άθροισμα πάνω στο τροποποιημένο δυναμικό πάνω στις καταστάσεις μεταβλητών που έχουμε παρατηρήσει θα είναι 0 εκτός από την κατάσταση που αντιστοιχεί σε αυτή την παρατήρηση. Επίσης, μπορούμε να υπολογίσουμε τη marginal likelihood αν χρησιμοποιήσουμε τον αλγόριθμο του Sum Product. Για μια κατανομή που ορίζεται ως γινόμενο πάνω σε δυναμικά, p(x) = 1 Z ϕf (X f ) (2.21) 22

32 όπου η σταθερά κανονικοποίησης δίνεται από τη Z = X ϕ f (X f ) (2.22) f Για να υπολογίσουμε αυτό το άθροισμα πάνω σε όλα τα X, παίρνουμε το γινόμενο όλων των εισερχόμενων μηνυμάτων σε ένα τυχαία επιλεγμένο κόμβο μεταβλητής x και αθροίζουμε πάνω σε όλες τις καταστάσεις αυτής της μεταβλητής. Z = ne(x)µ f x (x) (2.23) x f Για να δουλεύει η παραπάνω μέθοδος απαιτείται η απόλυτη -όχι σχετική- τιμή των μηνυμάτων, γεγονός το οποίο απαγορεύει την επανακανονικοποίηση σε κάθε στάδιο της διαδικασίας περάσματος μηνυμάτων. Όμως, χωρίς κανονικοποίηση η αριθμητική τιμή των μηνυμάτων γίνεται πολύ μικρή, με αποτέλεσμα να έχουμε πρόβλημα υποχείλισης και να υπεισέρχονται προβλήματα αριθμητικής ακρίβειας, ειδικά σε πολύ μεγάλους γράφους. Μια λύση σε αυτή την κατάσταση είναι να χρησιμοποιούμε log μηνύματα λ = log(µ) (2.24) Αυτό σημαίνει ότι στα μηνύματα από κόμβους μεταβλητών σε κόμβους παραγόντων, το γινόμενο μετατρέπεται σε άθροισμα (λόγω του ότι log(ab) = log(a)+log(b)). Οπότε, στα μεν μηνύματα από κόμβους σε παράγοντες έχουμε ότι: λ x f(x) = λ g x (x) (2.25) g ne(x) στα δε μηνύματα από παράγοντες σε κόμβους μεταβλητών δεν αρκεί να γράψουμε λ f x (x) = log( ϕ f (X f ) exp( λ y(y) )) (2.26) f\x y ne(f)\x καθώς το εκθετικό log μηνυμάτων μπορεί να προκαλούσε προβλήματα αριθμητικής ακρίβειας. Οπότε πρέπει στην εσωτερική παρένθεση να αφαιρέσουμε λ y f = max λ y(y) (2.27) y ne(f)\x 2.3 Ο max-product αλγόριθμος σε γράφους παραγόντων Ένα πολύ ενδιαφέρον ερώτημα πέρα από τον υπολογισμό της περιθώριας κατανομής είναι αυτό της εύρεσης της πιο πιθανής κατάστασης μιας κατανομής. Προκειμένου να βρούμε μια αποδοτική λύση σε αυτό το ερώτημα, πρέπει (όπως κάναμε και στον Sum Product αλγόριθμο) να εκμεταλλευτούμε τη δομή του δέντρου ώστε να απαιτούνται μόνο τοπικοί υπολογισμοί. Το πρόβλημα που καλούμαστε να λύσουμε είναι το ακόλουθο. Έστω συνάρτηση κατανομής που αναπαρίσταται από μία μη-κατευθυνόμενη αλυσίδα f(x 1, x 2, x 3, x 4 ) = ϕ(x 1, x 2 )ϕ(x 2, x 3 )ϕ(x 3, x 4 ) (2.28) και στόχος μας είναι να βρούμε την από κοινού κατάσταση x 1, x 2, x 3, x 4 που μεγιστοποιεί την f. Προφανώς δεν καλούμαστε να βρούμε τιμές που κάθε μία από μόνη της μεγιστοποιεί την f, διότι τα τοπικά μέγιστα δεν σημαίνει ότι δίνουν και το ολικό μέγιστο της κατανομής. 23

33 Οπότε, γράφουμε ότι max f(x) = max ϕ(x 1, x 2 )ϕ(x 2, x 3 )ϕ(x 3, x 4 ) (2.29) x x 1,x 2,x 3,x 4 = max x 1,x 2,x 3 ϕ(x 1, x 2 )ϕ(x 2, x 3 ) max x 4 ϕ(x 3, x 4 ) = max x 1,x 2,x 3 ϕ(x 1, x 2 )ϕ(x 2, x 3 )γ 4 (x 3 ) = max x 1,x 2 ϕ(x 1, x 2 ) max x 3 ϕ(x 2, x 3 )γ 4 (x 3 ) = max ϕ(x 1, x 2 )γ 3 (x 2 ) = max max ϕ(x 1, x 2 )γ 3 (x 2 ) = max γ 2(x 1 ) x 1,x 2 x 1 x 2 x1 Η τελευταία εξίσωση αντιστοιχεί στο να λύσω πρόβλημα βελτιστοποίησης για μια μεταβλητή και καθορίζει τόσο τη βέλτιστη τιμή της συνάρτησης f όσο και τη βέλτιστη κατάσταση: x 1 = arg max x 1 γ 2 (x 1 ). Δοθέντος του x 1 το βέλτιστο x 2 δίνεται από x 2 = arg max x 2 ϕ(x 1, x 2)γ 3 (x 2 ) Ομοίως, x 3 = arg max x 3 ϕ(x 2, x 3)γ 4 (x 3 ) και x 4 = arg max x 4 ϕ(x 3, x 4). Ορισμός 19. (Backtracking) Η ανωτέρω διαδικασία, όπως την περιγράψαμε για το παράδειγμα, ονομάζεται Backtracking καθώς πηγαίνουμε από το τελευταίο στάδιο προς το πρώτο έχοντας ως δεδομένο ότι όποιος υπολογισμός έχει γίνει από εκείνο το σημείο και μετά είναι βέλτιστος. Επισήμανση 8. Προφανώς, θα μπορούσαμε να ορίσουμε μηνύματα γ που περνάνε πληροφορία από το x i στο x i+1. Η γραμμική δομή της αλυσίδας εγγυάται ότι η μέγιστη τιμή και η από κοινού κατάσταση που τη δίνει μπορούν να υπολογιστούν σε χρόνο γραμμικό με τον αριθμό των παραγόντων στη συνάρτηση. Αν θέλουμε να υπολογίσουμε την πιο πιθανή κατάσταση για μια μεταβλητή στο κέντρο της αλυσίδας, μπορούμε να περάσουμε μηνύματα από το ένα άκρο στο άλλο και μετά να κάνουμε backtracking. Εναλλακτικά, μπορούμε να στείλουμε μηνύματα και από τις δύο άκρες της αλυσίδας και μετά να διαβάζουμε τη μέγιστη κατάσταση της μεταβλητής από την κατάσταση που μεγιστοποιεί το γινόμενο των εισερχόμενων μηνυμάτων. Η δεύτερη διαδικασία είναι παράλληλη κατά την οποία μηνύματα μπορούν να στέλλονται ταυτόχρονα και μπορεί να αναπαρασταθεί χρησιμοποιώντας ένα Factor Graph. Η εφαρμογή του Max Product αλγορίθμου σε Factor Graph έχει ως εξής: Δοθείσης μιας κατανομής που ορίζεται ως γινόμενο πάνω σε υποσύνολα μεταβλητών p(x) = 1 ϕ f (X f ) Z μπορούμε να εκτελέσουμε τα max πάνω στις μεταβλητές αποδοτικά, εφόσον ο FG είναι απλά συνδεδεμένος. f 24

34 ΑΛΓΟΡΙΘΜΟΣ Max Product 1. Αρχικοποίηση: Μηνύματα από φύλλα κόμβους παραγόντων αρχικοποιούνται στον παράγοντα. Μηνύματα από φύλλα κόμβους μεταβλητών τίθενται ίσα με μονάδα 2. Μήνυμα από μεταβλητή σε παράγοντα µ x f (x) = 3. Μήνυμα από παράγοντα σε μεταβλητή g {ne(x)\f} µ f x (x) = max X f \x ϕ f (X f ) µ g x (x) (2.30) y {ne(f)\x} µ y f (y) (2.31) 4. Μέγιστη κατάσταση x = arg max x f ne(x) µ f x (x) (2.32) 2.4 Ομαδοποίηση μεταβλητών - Γράφοι Κλικών Έστω αλυσίδα p(a, b, c, d) = p(a b)p(b c)p(c d)p(d). Από τον ορισμό της υπό συνθήκη πιθανότητας μπορούμε να το επαναεκφράσουμε ως: p(a, b, c, d) = p(a, b) p(b) p(b, c) p(c) p(c, d) p(a, b)p(b, c)p(c, d) p(d) = p(d) p(b)p(c) (2.33) Διαπιστώνουμε ότι ο αριθμητής δεν μπορεί να είναι κατανομή πάνω στα a, b, c, d καθώς μετρούμε διπλή φορά τα b, c εξαιτίας της επικάλυψης των συνόλων των μεταβλητών {a, b} και {b, c} αλλά και των {c, d}. Διαισθητικά, διορθώνουμε αυτό το γινόμενο σε κατανομή διαιρώντας με την κατανομή των τομών αυτών των επικαλυπτόμενων συνόλων του αριθμητή. Δοθείσης αυτής της νέας παραμετροποίησης, μπορούμε να διαβάσουμε απεύθείας κατανομές όπως αυτή των marginals. Αυτό ακριβώς προσπαθούμε να επιτύχουμε με τις δομές των γράφων κλικών και του Junction Δέντρου που θα παρουσιάσουμε σε αυτή και την επόμενη ενότητα. Ορισμός 20. (Γράφος κλικών) Ένας γράφος κλικών ορίζεται από ένα σύνολο δυναμικών {ϕ 1 (X 1 ),..., ϕ n (X n )} κάθε ένα από τα οποία ορίζεται ως ένα σύνολο μεταβλητών X i. Για γειτονικές κλίκες στο γράφο, που ορίζονται ως σύνολα μεταβλητών X i και X j, η τομή X s = X i X j ονομάζεται διαχωριστής και έχει το αντίστοιχο δυναμικό ϕ s (X s ). Ένας γράφος κλικών αναπαριστά τη συνάρτηση c ϕ c(x c ) c ϕ (2.34) c(x s ) 25

35 Σχήμα 2.3: Markov δίκτυο - αναπαράσταση clique graph Παρατηρούμε λοιπόν ότι οι γράφοι κλικών μετατρέπουν τα δίκτυα Markov σε δομές κατάλληλες για Inference. Αν θεωρήσουμε το Markov δίκτυο που φαίνεται στο σχήμα 2.3 ϕ(a, b, c)ϕ(b, c, d) p(a, b, c, d) = (2.35) Z Μία ισοδύναμη δομή δίνεται από τον γράφο κλικών στο σχήμα (b) 2.3 που ορίζεται ως το γινόμενο των δυναμικών των κλικών του αριθμητή διαιρεμένο από το γινόμενο των δυναμικών διαχωρισμού. Αθροίζοντας έχουμε p(a, b, c) = ϕ(a, b, c) d ϕ(b, c, d) και p(b, c, d) = ϕ(b, c, d) a ϕ(a, b, c). Πολλαπλασιάζοντας τις δύο εκφράσεις έχουμε Z 2 p(a, b, c)p(b, c, d) = (ϕ(a, b, c) d ϕ(b, c, d))(ϕ(b, c, d) a ϕ(a, b, c)) = Z 2 p(a, b, c, d) a,d p(a, b, c, d) (2.36) Με βάση τα παραπάνω προκύπτει p(a, b, c)p(b, c, d) p(a, b, c, d) = (2.37) p(c, b) Άρα το σημαντικό είναι ότι η κατανομή μπορεί να γραφεί με τους όρους των περιθώριων κατανομών πάνω στις μεταβλητές στις αρχικές κλίκες και σαν γράφος κλικών έχει την ίδια δομή με πριν. Αυτό που έχει αλλάξει είναι ότι τα δυναμικά των αρχικών κλικών αντικαταστάθηκαν από τις περιθώριες κατανομές της κατανομής και ότι το δυναμικό του διαχωριστή αντικαταστάθηκε από την περιθώρια κατανομή πάνω στις μεταβλητές διαχωρισμού. Δηλαδή πλέον το δυναμικό της ϕ(a, b, c) είναι το p(a,b,c), το δυναμικό της ϕ(b, c, d) είναι το p(b,c,d) και η σταθερά κανονικοποίησης είναι το p(b,c). Επισήμανση 9. Αξίζει να σημειωθεί ότι ο γράφος κλικών αν και μοιάζει πολύ με το Factor Graph, εντούτοις πρόκειται για διαφορετικές αναπαραστάσεις. Στο γράφο κλικών οι κόμβοι αποτελούν σύνολα μεταβλητών τα οποία μπορούν να μοιράζονται μεταβλητές με άλλους κόμβους. Ακολούθως θα παρουσιάσουμε το συστηματικό τρόπο με τον οποίο μετατρέπομε τα δυναμικά ενός γράφου κλικών ώστε στο τέλος του μετασχηματισμού τα καινούρια δυναμικά να αποτελούν τις περιθώριες κατανομές της συνάρτησης κατανομής Απορρόφηση σε Γράφο Κλικών Ας θεωρήσουμε δύο γειτονικές κλίκες V, W που μοιράζονται τις κοινές μεταβλητές S. Με βάση 2.34 έχουμε ότι ϕ(v )ϕ(w ) p(x) = (2.38) ϕ(s) 26

36 Σχήμα 2.4: Πρόγραμμα απορρόφησης σε γράφο κλικών μηνυμάτων και ο στόχος μας είναι να βρούμε μία νέα αναπαράσταση p(x) = ϕ V ϕw ϕ S (2.39) στην οποία τα δυναμικά θα δίνονται από ϕ V = p(v ), ϕ W = p(w ), ϕ S = p(s) p(w ) = V \S p(v ) = W \S p(x) = V \S p(x) = W \S ϕ(v )ϕ(w ) ϕ(s) ϕ(v )ϕ(w ) ϕ(s) = ϕ(w ) V \S = ϕ(v ) W \S ϕ(v ) ϕ(s) ϕ(w ) ϕ(s) (2.40) (2.41) Οι δύο εξισώσεις είναι συμμετρικές. Μπορούμε να περιγράψουμε τις εξισώσεις αυτές ως διαδικασία απορρόφησης. Θα λέμε ότι ϕ (S) = V \S ϕ(v ) (2.42) και ορίζουμε το W δυναμικό χρησιμοποιώντας το ϕ (W ) = ϕ(w )ϕ (S) ϕ(s) (2.43) Το πλεονέκτημα αυτής της ερμηνείας είναι ότι αυτή η νέα αναπαράσταση είναι ακόμα ένας έγκυρος γράφος κλικών της κατανομής καθώς ϕ(v )ϕ (W ) ϕ (S) = ϕ(v )ϕ(w ) ϕ (S) ϕ(s) ϕ (S) = ϕ(v )ϕ(w ) ϕ(s) = p(x) (2.44) Σε αυτό τον απλό γράφο με τις δύο κλίκες, αφού η W απορροφά πληροφορία από το V τότε ϕ (W ) = p(w ). Με αυτά τα νέα ανανεωμένα δυναμικά μπορούμε να πάμε πίσω στο γράφο, από το W στο V. Αφού το V απορροφά πληροφορία από το W το ϕ (V ) περιέχει την περιθώρια p(v). Αφού ο διαχωριστής S έχει συμμετάσχει στη διαδικασία απορρόφησης και στις δύο κατευθύνσεις, το δυναμικό του διαχωριστή θα περιέχει την p(s). Προκειμένου να το διαπιστώσουμε αυτό, θεωρούμε ότι γίνεται απορρόφηση από το W προς το V χρησιμοποιώντας τα ανανεωμένα δυναμικά ϕ (W ), ϕ (S). Έχουμε ότι 27

37 ϕ (S) = ϕ (W ) = ϕ(w )ϕ (S) ϕ(s) W \S W \S = ϕ(w )ϕ(v )ϕ(s) = p(s) (2.45) W V \S Tο ανανεωμένο δυναμικό ϕ (V ), Επομένως, με τους όρους της 2.39 η νέα αναπαράσταση είναι ϕ(v ) = ϕ (V ), ϕ(s) = ϕ (S), ϕ(w ) = ϕ (W ) και έτσι καταλήγουμε στον ορισμό της Απορρόφησης: Ορισμός 21. (Απορρόφηση) Έστω V και W οι γείτονες σε ένα γράφο κλικών, S ο διαχωριστής τους και ϕ(v ), ϕ(w ), ϕ(s) τα δυναμικά τους αντίστοιχα. Απορρόφηση από την κλίκα V στην κλίκα W μέσω του S είναι η αντικατάσταση των πινάκων των δυναμικών ϕ(s), ϕ(w ) με: ϕ (S) = V \S ϕ(v ), ϕ (W ) = ϕ(w )ϕ (S)ϕ(S) (2.46) 2.5 Junction Tree αλγόριθμος Υπάρχουν ορισμένα στάδια από τα οποία πρέπει να περάσουμε προκειμένου να μετατρέψουμε μία κατανομή σε μία κατάλληλη δομή για επαγωγή συμπερασμάτων. Εάν έχουμε ένα δίκτυο Markov το οποίο είναι απλά συνδεδεμένο, μετατρέπεται σε γράφο κλικών ως εξής: Πρώτα προσπαθούμε να επαναεκφράσουμε το δίκτυο Markov υπό τους όρους των περιθωρίων κατανομών. Οπότε πολλαπλασιάζοντας αυτές, μπορούμε να το εκφράσουμε στη μορφή 2.39 το οποίο σημαίνει ότι παράγεται έγκυρος γράφος κλικών. Εάν όμως μία μεταβλητή εμφανίζεται σε όλους τους διαχωριστές, τότε μπορούμε να την αφαιρέσουμε από ένα τυχαία επιλεγμένο διαχωριστή. Αν αυτό κάνει το διαχωριστή να είναι κενός (δηλαδή αποτελούνταν μόνο από αυτή τη μεταβλητή την οποία και αφαιρέσαμε) τότε τον διαγράφουμε. Με αυτό τον τρόπο μπορούμε να μετατρέψουμε ένα γράφο κλικών σε ένα δέντρο κλικών. (Στην περίπτωση του μονά συνδεδεμένου Markov δικτύου, αυτή είναι η διαδικασία δημιουργία δέντρου κλικών.) Έπειτα, αφού έχουμε κατασκευάσει το δέντρο κλικών (clique tree) εκτελούμε τη διαδικασία της απορρόφησης πάνω σε αυτό. Προκειμένου να ολοκληρώσουμε ένα πλήρη κύκλο περάσματος μηνυμάτων, χρειάζεται να έχουμε περάσει μηνύματα με ένα έγκυρο χρονοπρογραμματισμό και στις δύο κατευθύνσεις του κάθε διαχωριστή. Οπότε στο τέλος ενός πλήρους τέτοιου κύκλου, όλα τα νέα δυναμικά περιέχουν τις σωστές περιθώριες κατανομές. Ορισμός 22. Ορισμός: (Συνέπεια -Consistency) Η αναπαράσταση του clique tree με τα ανανεωμένα δυναμικά που προκύπτει, θα λέμε ότι είναι συνεπής αν για κάθε, όχι απαραίτητα γειτονικές, κλίκες V και W με τομή Ι και αντίστοιχα δυναμικά φ(v) και φ(w) ισχύει ότι ϕ(w ) (2.47) V \I ϕ(v ) = V \I Επισήμανση 10. Να σημειωθεί ότι η δι-κατευθυντική διαδικασία απορρόφησης που περιγράψαμε που ακολουθεί ένας έγκυρος χρονοπρογραμματισμός εγγυάται τοπική συνέπεια για γειτονικές κλίκες, εφόσον ξεκινάμε από ένα 28

38 δέντρο κλικών που είναι σωστή αναπαράσταση της κατανομής. Προκειμένου να εξασφαλίσουμε ολική συνέπεια, πρέπει αν μία μεταβλητή είναι παρούσα σε δύο κλίκες, να είναι παρούσα σε όλες τις κλίκες που βρίσκονται σε οποιοδήποτε μονοπάτι που συνδέει αυτές τις κλίκες. Ορισμός 23. (Junction Tree) Ένα Clique Tree θα λέμε ότι είναι Junction Tree αν για κάθε ζευγάρι κόμβων V και W, όλοι οι κόμβοι μεταξύ των V και W περιέχουν την τομή των V και W. Αυτό ονομάζεται και Ιδιότητα Running Intersection. Επισήμανση 11. Η ιδιότητα της Running Intersection εξασφαλίζει ότι η τοπική συνέπεια σε ένα clique tree εξελίσσεται σε ολική συνέπεια. Δηλαδή η τοπική συνέπεια διαδίδεται σε όλους τους κόμβους γείτονες και έτσι η κατανομή θα γίνει ολικά συνεπής Κατασκευή Junction Tree για μονά συνδεδεμένες κατανομές Ορισμός 24. (Εναλλακτικός Ορισμός για Junction Tree) Ένα Junction Tree αποκτάται βρίσκοντας ένα Maximal weight Spanning Tree του γράφου κλικών. Το βάρος του δέντρου ορίζεται ως το άθροισμα των βαρών όλων των διαχωριστών του δέντρου, όπου το βάρος του κάθε διαχωριστή είναι το άθροισμα των μεταβλητών στο διαχωριστή. ΑΛΓΟΡΙΘΜΟΣ Max Product 1. Αν πρόκειται για Bayesian δίκτυο, απαιτείται το αρχικό βήμα της moralisation, το οποίο είχαμε περιγράψει στο προηγούμενο κεφάλαιο μετατροπής directed σε undirected γράφο. Δηλαδή, μετατρέπουμε όλα τα κατευθυνόμενα βέλη σε μη-κατευθυνόμενες ακμές και προσθέτουμε μηκατευθυνόμενες ακμές μεταξύ των γονιών των κόμβων που έχουν περισσότερους από έναν γονείς. 2. Σχηματίζουμε το γράφο κλικών, με τον τρόπο που περιγράψαμε στην προηγούμενη ενότητα. Εν ολίγοις, εντοπίζουμε τις κλίκες στο Markov δίκτυο (που προέκυψε από το πρώτο βήμα ή που μας δόθηκε αρχικά), προσθέτουμε σύνδεσμο μεταξύ των κλικών που έχουν μία τομή που δεν είναι κενή και προσθέτουμε ένα διαχωριστή μεταξύ των κλικών που τέμνονται. 3. Δημιουργούμε το Junction Tree από το clique tree, δηλαδή με τέτοιο τρόπο ώστε να τηρείται η ιδιότητα της Running Intersection και να έχουμε ολική συνέπεια. 4. Δίνουμε δυναμικά στις κλίκες. Δοθέντος του Junction Tree και μίας συνάρτησης που ορίζεται ως το γινόμενο ενός συνόλου δυναμικών ϕ(x 1 ),..., ϕ(x n ), μία έγκυρη ανάθεση δυναμικών στις κλίκες είναι τέτοια ώστε το γινόμενο των δυναμικών κλικών διαιρεμένο με τα δυναμικά των διαχωριστών, να είναι ίσο με τη συνάρτηση αυτή. Αφού κατασκευάσουμε το Junction Tree με τη διαδικασία που μόλις περιγράψαμε, εκτελούμε απορρόφηση μέχρι οι ανανεώσεις των δυναμικών να έχουν περαστεί και στις δύο κατευθύνσεις κάθε συνδέσμου στο Junction Tree. Οι περιθώριες κατανομές των κλικών μπορούν να διαβαστούν απεύθείας από το Junction Tree. 29

39 Κεφάλαιο 3 Θεωρία Αποφάσεων Έχουμε μελετήσει μέχρι αυτό το σημείο τη διαδικασία της αναπαράστασης (modelling) και επαγωγής συμπερασμάτων (inference) των κατανομών. Όμως, σε περιπτώσεις που χρειάζεται να πάρουμε αποφάσεις κάτω από αβεβαιότητα, χρειάζεται να γνωρίζουμε πόσο χρήσιμο είναι το να παίρνουμε τη σωστή απόφαση. Σε αυτό το κεφάλαιο ενδιαφερόμαστε ειδικά για την περίπτωση που πρέπει να ληφθεί μια ακολουθία αποφάσεων. Τα αντίστοιχα προβλήματα της ακολουθιακής θεωρίας αποφάσεων μπορούν να λυθούν είτε χρησιμοποιώντας μια γενική προσέγγιση θεωρίας αποφάσεων είτε κάνοντας χρήση της δομής στο πρόβλημα επεκτείνοντας το πλαίσιο των Bayesian δικτύων και των αντίστοιχων αλγορίθμων επαγωγής συμπερασμάτων. 3.1 Αναμενόμενη Χρησιμότητα Σε αυτό το κεφάλαιο μας ενδιαφέρουν περιπτώσεις όπου οι αποφάσεις λαμβάνονται κάτω από αβεβαιότητα. Θα εισάγουμε τέτοιες περιπτώσεις θεωρώντας το ακόλουθο παράδειγμα. Καλούμαστε να πάρουμε την απόφαση αν θα βάλουμε στοίχημα ή όχι πάνω στο αποτέλεσμα της ρίψης ενός αμερόληπτου νομίσματος. Σύμφωνα με το συγκεκριμένο σενάριο, αν στοιχηματίσουμε και κερδίσουμε (ήρθε η όψη του νομίσματος πάνω στην οποία ποντάραμε) κερδίζουμε 100 ευρώ. Αν στοιχηματίσουμε και χάσουμε, χάνουμε 200 ευρώ. Αν επιλέξουμε να μη στοιχηματίσουμε ούτε χάνουμε ούτε κερδίζουμε τίποτα (κόστος μηδενικό). Μπορούμε να διατυπώσουμε αυτό το πρόβλημα ως εξής: Έστω μεταβλητή x δύο καταστάσεων, dom(x) = {win, lose} και μεταβλητή απόφασης d με dom(d) = {bet, no bet}. Με βάση την παραπάνω περιγραφή θα αποδώσουμε τις εξής χρησιμότητες (utilities) σε κάθε ένα συνδυασμό μεταβλητής αποτελέσματος και απόφασης U(win, bet) = 100, U(lose, bet) = 200, U(win, no bet) = 0, U(lose, no bet) = 0 (3.1) Καθώς δε γνωρίζουμε πριν πάρουμε την απόφαση την τιμή της μεταβλητής x, καλούμαστε να πάρουμε με αβεβαιότητα την απόφαση του αν θα στοιχηματίσουμε ή όχι. Άρα πρέπει να υπολογίσουμε την αναμενόμενη χρησιμότητα (κέρδος/ χάσιμο) που θα έχουμε κάτω από τις καταστάσεις του να βάλουμε στοίχημα και του να μη βάλουμε στοίχημα. Αν βάλουμε στοίχημα (d = bet), αναμένουμε: U(bet) = p(win)u(win, bet) + p(lose)u(lose, bet) = = 50 (3.2) Αν δε βάλουμε στοίχημα (d = no bet), το αναμενόμενο κέρδος U(no bet) είναι 0. Προφανώς θέλουμε να πάρουμε μια απόφαση η οποία να μεγιστοποιεί το αναμενόμενο κέρδος, οπότε με βάση τα ανωτέρω είναι καλύτερο να πάρουμε την απόφαση να μη βάλουμε στοίχημα. 30

40 Ορισμός 25. Αν p(x) είναι η κατανομή του αποτελέσματος x και το d αναπαριστά την απόφαση που καλούμαστε να πάρουμε, η αναμενόμενη χρησιμότητα μιας απόφασης είναι U(d) =< U(d, x) > p(x) (3.3) όπου <> συμβολίζει τη μέση τιμή ως προς την κατανομή που αναγράφεται ως δείκτης. Επισήμανση 12. Εναλλακτικά μπορούμε να διατυπώσουμε αυτό το πρόβλημα με όρους εκτίμησης υποθέσεων. Έστω H : {H 1, H 2 } ο χώρος των υποθέσεων και {D 0, D 1, D 2 } οι πιθανές αποφάσεις. Τότε, έχουμε {D 0, H 1 H 2 }, {D 1 H 1 H 2 }, {D 2 H 1 H 2 } οι πιθανοί συνδυασμοί εκ των οποίων πρέπει να βρούμε αυτόν που μας δίνει τη μεγαλύτερη χρησιμότητα. Οπότε γνωρίζοντας την πιθανότητα P (D i H j ), και χωρίζοντας το χώρο των πιθανών υποθέσεων-αποφάσεων σε τρία κομμάτια no bet, bet & tail, bet & head καταληγουμε στο ίδιο συμπέρασμα με παραπάνω. 3.2 Δέντρα Αποφάσεων Ορισμός 26. (Δέντρα αποφάσεων - Decision Trees ή DTs-) Είναι ένας τρόπος να οργανώσουμε γραφικά μία ακολουθιακή διαδικασία λήψης αποφάσεων. Ένα δέντρο αποφάσεων περιέχει κόμβους αποφάσεων, κάθε ένας από τους οποίους διακλαδώνεται για διαφορετικές αποφάσεις. Οι κόμβοι τύχης (τυχαίες μεταβλητές) επίσης εμφανίζονται στο δέντρο με τη χρησιμότητα του κάθε κλάδου να είναι υπολογισμένη στο φύλλο του δέντρου. Η αναμενόμενη χρησιμότητα κάθε απόφασης μπορεί τότε να υπολογιστεί παίρνοντας το σταθμισμένο άθροισμα όλων των κλάδων της απόφασης προς όλα τα φύλλα του κλάδου αυτού. Αξίζει να τονίσουμε ότι τα δέντρα αποφάσεων δεν είναι γραφικές αναπαραστάσεις ενός Bayesian δικτύου με επιπλέον κόμβους. Αντίθετα, είναι αναλυτική απαρίθμηση όλων των πιθανών επιλογών που μπορούν να γίνουν ξεκινώντας από τον πιο αριστερό κόμβο αποφάσεων και ακολουθώντας τις πιθανότητες που αναγράφονται στους συνδέσμους των τυχαίων μεταβλητών. Θα παρουσιάσουμε το τρόπο με τον οποίο αναπαριστούμε ένα δέντρο απόφασης και με τον οποίο το λύνουμε, ώστε να βρούμε τις βέλτιστες αποφάσεις, εισάγοντας ένα σενάριο που καλούμαστε να επιλύσουμε. Ας θεωρήσουμε το πρόβλημα απόφασης κατά το οποίο θέλουμε να αποφασίσουμε κατά πόσον θα κάνουμε ή όχι ένα πάρτυ. Αν προχωρήσουμε στο να κάνουμε το πάρτυ και στη συνέχεια βρέξει, τότε θα χάσουμε χρήματα- καθώς θα εμφανιστούν λίγοι άνθρωποι. Από την άλλη, αν αποφασίσουμε να μην κάνουμε το πάρτυ και δε βρέξει, τότε είμαστε ελεύθεροι να αποφασίσουμε κατά πόσον θα πάμε να επισκεφτούμε μια φίλη, Όμως, δεν είμαστε σίγουρη αν η φίλη θα είναι μέσα. Χρειάζεται να ποσοτικοποιήσουμε το ανώτερο σενάριο. Θεωρούμε ότι γνωρίζουμε την πιθανότητα να βρέξει p(rain= rain) - άρα και τη συμπληρωματική πιθανότητα να μη βρέξει-, και τις εξής χρησιμότητες: U party (party, rain), U party (party, no rain), U party (no party, no rain), U party (no party, no rain) Επίσης γνωρίζουμε την πιθανότητα η φίλη να είναι μέσα με βάση το αν βρέχει ή όχι p(friend= in rain), p(friend = in no rain) όπως και τις χρησιμότητες U visit (friend in, visit), U visit (friend out, visit) με τις υπόλοιπες χρησιμότητες να είναι μηδέν. Τα δύο σύνολα των χρησιμοτήτων αθροίζονται ώστε να έχουμε τη συνολική χρησιμότητα κάθε ακολουθίας αποφάσεων U party + U visit. 31

41 Σχήμα 3.1: Δέντρο αποφάσεων για το απλό παράδειγμα με την απόφαση του Party Παρατηρούμε στο σχήμα 3.1 το αντίστοιχο δέντρο αποφάσεων που περιγράφει αυτό το πρόβλημα: Για κάθε ακολουθία αποφάσεων η χρησιμότητα αυτής της ακολουθίας δίνεται στο αντίστοιχο φύλλο του δέντρου αποφάσεων. Για να λύσουμε το δέντρο αποφάσεων πρέπει να βρούμε τη μέγιστη αναμενόμενη χρησιμότητα, βελτιστοποιώντας τις μελλοντικές αποφάσεις. Μαθηματικά, μπορούμε να εκφράσουμε τη μέγιστη αναμενόμενη χρησιμότητα για αυτό το σενάριο αν αθροίσουμε πάνω στις μεταβλητές των οποίων η τιμή δεν έχει αποκαλυφθεί και αν βελτιστοποιήσουμε όλες τις μελλοντικές αποφάσεις: max Party Rain p(rain) max Visit p(friend Rain)[U party (Party, Rain) + U visit (Visit, Friend)]1[Party = no] Friend (3.4) όπου η 1[Party = no] έχει το αποτέλεσμα ότι κλαδεύουμε το δέντρο αποφάσεων αν το πάρτυ συμβεί. Προκειμένου να απαντήσουμε στην ερώτηση κατά πόσον θα πρέπει να προχωρήσουμε ή όχι στο πάρτυ, παίρνουμε την κατάσταση του Party που αντιστοιχεί στη μέγιστη αναμενόμενη χρησιμότητα. Διαβάζουμε την εξίσωση 3.4 ως εξής - ξεκινάμε από την τελευταία απόφαση που πρέπει να πάρουμε, στη δική μας περίπτωση το Visit. Όταν είμαστε στην κατάσταση του Visit θεωρούμε ότι no Party και ότι έχουμε παρατηρήσει την τυχαία μεταβλητή του αν έβρεξε η όχι. Όμως, δεν γνωρίζουμε κατά πόσον η φίλη μας θα είναι μέσα, οπότε υπολογίζουμε τη μέγιστη αναμενόμενη χρησιμότητα αθροίζοντας πάνω στο άγνωστο. Μετά παίρνουμε τη βέλτιστη απόφαση μεγιστοποιώντας πάνω στη μεταβλητή Visit. Έπειτα προχωράμε στην αμέσως προηγούμενη της τελευταίας απόφαση υποθέτοντας ότι όποια απόφαση λάβουμε στο μέλλον θα είναι βέλτιστη. Αυτή η προσέγγιση είναι κλασσικό παράδειγμα δυναμικού προγραμματισμού. Είμαστε σίγουροι ότι παίρνουμε τη συνολικά βέλτιστη ακολουθία αποφάσεων δεδομένου ότι θεωρούμε ότι όλες οι αποφάσεις που έχουμε πάρει από το στάδιο που βρισκόμαστε μέχρι το τέλος είναι βέλτιστες. Αυτήν τη θεώρηση μπορούμε να την κάνουμε μόνο όταν δεν υπάρχει κάποιο βέλος από μελλοντικές αποφάσεις-μεταβλητές σε προηγούμενες. 3.3 Επεκτείνοντας τα Bayesian δίκτυα για αποφάσεις Στην προηγούμενη ενότητα ασχοληθήκαμε με το πώς τα δέντρα αποφάσεων αναπαριστούν ένα πρόβλημα ακολουθιακών αποφάσεων και πώς μπορούμε να τα επιλύσουμε με στόχο την εύρεση των βέλτιστων αποφάσεων - υπό τους όρους της μέγιστης αναμενόμενης χρησιμότητας -. Όμως, ένα βασικό μειονέκτημα που τα συνοδεύει είναι ότι ο αριθμός των κλάδων μεγαλώνει εκθετικά με τον αριθμό των αποφάσεων, 32

42 γεγονός που τα καθιστά απαγορευτικά για προβλήματα με μεγάλη ακολουθία αποφάσεων. Οπότε, εισάγουμε την έννοια του Influence διαγράμματος. Ορισμός 27. (Influence διάγραμμα) Ένα Influence διάγραμμα είναι ένα Bayesian δίκτυο με επιπρόσθετους κόμβους αποφάσεων και κόμβους χρησιμότητας. Οι κόμβοι αποφάσεων δεν έχουν κατανομή που να τους αφορά και οι κόμβοι χρησιμότητας είναι ντετερμινιστικές συναρτήσεις των γονιών τους. Και τα δύο αυτά είδη κόμβων μπορούν να είναι είτε συνεχή είτε διακριτά, αλλά χάριν απλότητας θα θεωρήσουμε ότι οι αποφάσεις είναι διακριτές. Ένα Influence διάγραμμα δηλώνει ποια πληροφορία απαιτείται ώστε να πάρουμε κάθε απόφαση καθώς και τη σειρά με την οποία αυτές οι αποφάσεις πρέπει να ληφθούν. Οι λεπτομέρειες των πιθανοτήτων και των χρησιμοτήτων δεν καθορίζονται στο ID, γεγονός που επιτρέπει μια πιο συμπαγή περίγραφη του προβλήματος αποφάσεων Σύνταξη των Influence Diagrams Σχήμα 3.2: Σύνδεσμοι πληροφορίας Σύνδεσμοι πληροφορίας: Ένας σύνδεσμος πληροφορίας από μια τυχαία μεταβλητή σε ένα κόμβο απόφασης δείχνει ότι η κατάσταση της μεταβλητής X θα είναι γνωστή προτού χρειαστεί να λάβουμε την απόφαση D, όπως φαίνεται στο Σχήμα 3.2. Ομοίως, σύνδεσμοι πληροφορίας από άλλο κόμβο d προς το D δείχνουν ότι η απόφαση d είναι γνωστή προτού ληφθεί η απόφαση D. Οι σύνδεσμοι αυτοί αναπαρίστανται με διακεκομμένη γραμμή, δείχνοντας ότι η απόφαση D δεν είναι συνάρτηση των γονιών της. Τυχαίες μεταβλητές: Οι τυχαίες μεταβλητές μπορούν να εξαρτώνται από τις καταστάσεις των τυχαίων μεταβλητών που είναι γονείς (όπως ισχύει και στα Bayesian δίκτυα) αλλά και από τις καταστάσεις των κόμβων απόφασης. Σχήμα 3.3: Τυχαίες Μεταβλητές Καθώς λαμβάνονται αποφάσεις, παρατηρούνται οι καταστάσεις κάποιων τυχαίων μεταβλητών αυτό το συμβολίζουμε σκιάζοντας τον αντίστοιχο κόμβο μεταβλητής. Χρησιμότητες (utilities): Ένας κόμβος χρησιμότητας είναι μια ντετερμινιστική συνάρτηση των γονιών του. Οι γονείς μπορούν να είναι είτε τυχαίες μεταβλητές είτε κόμβοι απόφασης. Με βάση τα παραπάνω μπορούμε να αναπαραστήσουμε το σενάριο με το πάρτυ - φίλη με το οποίο ασχοληθήκαμε στην προηγούμενη υποενότητα. Επισήμανση 13. Πρέπει να τονίσουμε ότι το Influence δέντρο ορίζει μερική κατάταξη των κόμβων (partial ordering). Ξεκινάμε να γράφουμε αυτές τις μεταβλητές X 0 των οποίων τις καταστάσεις έχουμε παρατηρήσει πριν την 33

43 Σχήμα 3.4: Χρησιμότητες πρώτη απόφαση D 1. Έπειτα βρίσκουμε το σύνολο των μεταβλητών X 1 των οποίων οι καταστάσεις αποκαλύποτονται πριν τη 2η απόφαση D 2 και ούτω καθεξής. Ομοίως, το σύνολο των μεταβλητών X t αποκαλύπτεται πριν την απόφαση D t+1. Έτσι έχουμε τη μερική ταξινόμηση X 0 < D 1 < X 1 < D 2,..., < X n 1 < D n < X n (3.5) με X k να είναι οι μεταβλητές που αποκαλύπτονται μεταξύ D k, D k+1. Ο λόγος που λέμε ότι αυτή η ταξινόμηση είναι μερική είναι επειδή δε γνωρίζουμε τη σειρά μεταξύ των μεταβλητών μέσα στο σύνολο X n Η βέλτιστη πρώτη απόφαση D 1 καθορίζεται υπολογίζοντας για κάθε μία κατάσταση της απόφασης D 1, δοθέντος του X 0 την αντίστοιχη χρησιμότητα: U(D 1 X 0 ) = X 1 max D 2... X n 1 max D n X n i {I} p(x i pa(x i )) j {J} U j (pa(u j )) (3.6) όπου I είναι το σύνολο των δεικτών των τυχαίων μεταβλητών και J το σύνολο των δεικτών για τους κόμβους χρησιμότητας. Για κάθε μία κατάσταση των υπό συνθήκη μεταβλητών, η βέλτιστη απόφαση D 1 βρίσκεται χρησιμοποιώντας arg max U(D 1 X 0 ) (3.7) D 1 Ορισμός 28. (Αιτιατή Συνέπεια - Causal Consistency) Θα λέμε ότι ένα Influence Diagram είναι συνεπές αν μία τρέχουσα απόφαση δεν μπορεί να επηρεάσει το παρελθόν. Αυτό σημαίνει ότι κάθε απόγονος τυχαίας μεταβλητής μιας απόφασης D σε ένα ID πρέπει να εμφανίζεται αργότερα στο partial ordering. Θεωρώντας την αρχή ότι υπάρχει μνήμη (δηλαδή δεν ξεχνάμε), για κάθε έγκυρο ID πρέπει να υπάρχει ένα κατευθυνόμενο μονοπάτι που να συνδέει όλες τις αποφάσεις. Αυτός είναι ένας χρήσιμος έλεγχος για τη συνέπεια ενός ID Επίλυση των Influence Diagrams Το να επιλύσουμε ένα ID σημαίνει το να υπολογίσουμε τη βέλτιστη απόφαση ή ακολουθία αποφάσεων. Μία απλή προσέγγιση είναι αυτή της απαλοιφής μεταβλητών παίρνοντας την εξίσωση 3.6 και εφαρμόζοντας την απαραίτητη ακολουθία αθροισμάτων και μεγιστοποιήσεων. Εξαιτίας της αιτιατής συνέπειας, το μέλλον δεν μπορεί να επηρεάζει το παρελθόν. Γράφουμε τις μεταβλητές και τις αποφάσεις: p(x 1:T, d 1:T ) = T p(x t x 1:t 1, d 1:t ). (3.8) i=1 Για μία γενική utility u(x 1:T, d 1:T ) λύνουμε το ID ως εξής: max d1 x 1... max d T x T T 1 i=1 p(x t x 1:t 1, d 1:T )u(x 1:T, d 1:T ) (3.9) 34

44 Έστω ότι πρώτα απαλοίφουμε τη x T και μετά τη d T. Θέλουμε να γράψουμε ένα νέο ID πάνω στις μειωμένες μεταβλητές x 1:T 1, d 1:T 1. Εφαρμόζοντας την άθροιση ως προς το x T και το d T μόνο στον τελευταίο όρο, αφού μόνο εκεί εμφανίζεται παίρνω ένα νέο ID με ανανεωμένο δυναμικό: max d 1 x 1... max d T 1 x T 1 T 1 i=1 p(x t x t 1, d 1:T )u x 1:T 1,d 1:T 1 (3.10) με το ανανεωμένο δυναμικό να δίνεται από: u x 1:T 1,d 1:T 1 = max p(x T x 1:T 1, d 1:T )u(x 1:T, d 1:T ) (3.11) d T x T Επισήμανση 14. Όμως, το παραπάνω δεν εκμεταλλεύεται το γεγονός ότι οι χρησιμότητες συνήθως θα έχουν συγκεκριμένη, και όχι γενική, δομή. Μπορούμε αν θέλουμε να εφαρμόσουμε πιο έξυπνες μεθόδους που κάνουν χρήση της δομής της χρησιμότητας η οποία χωρίς βλάβη της γενικότητας μπορεί να γραφεί ως χρησιμότητα που είναι ανεξάρτητη του x T, d T και μιας χρησιμότητας που δεν είναι ανεξάρτητη του x T, d T. Δύο πιθανές τέτοιες μέθοδοι για την επίλυση ID είναι αυτή της διαδικασίας περάσματος μηνυμάτων ή αυτή της απορρόφησης δυναμικών κλικών σε ένα Junction Tree οι οποίες παρουσιάστηκαν στο προηγούμενο κεφάλαιο της Inference. Όμως οι λεπτομέρειες αυτές ξεφεύγουν από το σκοπό του παρόντος εδαφίου. 35

45 Κεφάλαιο 4 Πιθανοτικά Γραφικά Μοντέλα: Μάθηση Στα προηγούμενα κεφάλαια θεωρήσαμε ότι το σημείο από το οποίο ξεκινάμε είναι ένα δοθέν γραφικό μοντέλο και ότι όλες οι κατανομές είναι πλήρως καθορισμένες για τις διάφορες διαδικασίες επαγωγής συμπερασμάτων. Στην πραγματικότητα, το μοντέλο δεν είναι είσοδος αλλά πρέπει εμείς να το κατασκευάσουμε. Μία προσέγγιση απόκτησης μοντέλου είναι η κατασκευή του με το χέρι, με τη βοήθεια κάποιου ειδικού ο οποίος έχει γνώση του περιβάλλοντος στο οποίο χρειάζεται το μοντέλο. Όμως, αυτή η προσέγγιση είναι ελαττωματική καθώς η ποσότητα γνώσης που απαιτείται είναι συνήθως υπερβολικά μεγάλη, ο χρόνος των ειδικών είναι πολύτιμος και σπάνιος και η ανάγκη επανασχεδιασμού του μοντέλου για διαφορετικές εφαρμογές είναι μεγάλη. Σε πολλές περιπτώσεις, όμως, έχουμε πρόσβαση σε μεγάλες ποσότητες δεδομένων, δηλαδή σε ένα σύνολο παραδειγμάτων που δημιουργούνται από την κατανομή που θέλουμε να αναπαραστήσουμε. Αυτά τα δείγματα προφανώς μπορούν να χρησιμοποιηθούν για την κατασκευή ενός καλού μοντέλου για την υποκείμενη κατανομή, συνδυάζοντας ή όχι τη γνώση κάποιου εξειδικευμένου ανθρώπου του τομέα εφαρμογής. 4.1 Κατηγορίες-Στόχοι Εκμάθησης Έστω ότι ο τομέας για τον οποίο θέλουμε να μάθουμε το μοντέλο (model learning) υπόκειται σε μία κατανομή P, η οποία προκύπτει από κάποιο - κατευθυνόμενο ή μη κατευθυνόμενο μοντέλο. Θεωρούμε ένα σύνολο δεδομένων D = {d[1],..., d[m]} δειγμάτων από την P. Υποθέτουμε ότι τα δείγματα δειγματοληπτούνται ανεξάρτητα από την P, έτσι ώστε είναι ανεξάρτητα και με ίδια κατανομή (I.I.D). Επίσης, έστω ότι έχουμε μια οικογένεια μοντέλων και ο στόχος μας είναι να μάθουμε κάποιο μοντέλο M σε αυτή την οικογένεια που να καθορίζει μια κατανομή P M. Μπορεί να θέλουμε να μάθουμε μόνο παραμέτρους στο μοντέλο για μία σταθερή δομή, ή και να μάθουμε τη δομή του μοντέλου με βάση τα δεδομένα που μας δίνονται. (Στην περίπτωση της Bayesian εκτίμησης, αντί της εύρεσης του καλύτερου δυνατού μοντέλου ή και συνόλου παραμέτρων, μπορεί να χρειαστεί να επιστρέψουμε μια εκ των υστέρων κατανομή πάνω στις πιθανές τοπολογίες) Συγκεκριμένα, το learning μπορεί να αναφέρεται στη δομή (τοπολογία) του μοντέλου ή στις παραμέτρους ή και στα δύο. Επίσης, μία σημαντική διάκριση είναι το κατά πόσον τα δεδομένα είναι όλα γνωστά (fully observed) ή αν κάποια από αυτά λείπουν ή δεν μπορούμε να τα παρατηρήσουμε (partially observed- hidden ή missing δεδομένα). Επομένως προκύπτουν τέσσερις δυνατοί συνδυασμοί-στόχοι του learning: 1. Γνωστή δομή, πλήρη δεδομένα: θέλουμε να υπολογίσουμε τις maximum likelihood εκτιμήσεις (MLEs) των παραμέτρων της κάθε υπό συνθήκη κατανομής 2. Γνωστή δομή, κρυμμένα ή χαμένα δεδομένα 36

46 3. Άγνωστη δομή, πλήρη δεδομένα 4. Άγνωστη δομή, μη πλήρη δεδομένα 4.2 Εκτίμηση Παραμέτρων Μοντέλου Εκτίμηση Παραμέτρων Μέγιστης Πιθανοφάνειας Έστω ότι έχουμε IID δείγματα ενός συνόλου τυχαίων μεταβλητών Χ από μια άγνωστη κατανομή P (X). Ορίζουμε ένα σύνολο εκπαίδευσης από δείγματα ως D που αποτελείται από Μ δείγματα του Χ {ξ[1],.., ξ[m]}. Στόχος μας είναι η εκμάθηση της παραμέτρου θ που υπόκειται στο παραμετρικό μοντέλο P(ξ : θ) το οποίο για κάθε μία έγκυρη τιμή του θ είναι συνάρτηση κατανομής. Οπότε κάνουμε εκτίμηση μέγιστης πιθανοφάνειας, η οποία πιθανοφάνεια για μια δοθείσα επιλογή παραμέτρων θ είναι η πιθανότητα που αποδίδει το μοντέλο στα δεδομένα. L(θ : D) = m P (ξ[m] : θ) (4.1) Η δε εκτίμηση μέγιστης πιθανοφάνειας είναι ότι δοθέντος του δειγματοχώρου D, θέλουμε να επιλέξουμε παραμέτρους θ* που ικανοποιούν L(θ : D) = max L(θ : D) (4.2) θ Θ Προκύπτει ότι είναι ευκολότερο να μεγιστοποιήσουμε το λογάριθμο της συνάρτησης πιθανοφάνειας, οπότε αφού ο λογάριθμος είναι μονότονη συνάρτηση και η μεγιστοποίηση του λογαρίθμου δίνει τα ίδια αποτελέσματα με το να μεγιστοποιούσαμε την ίδια τη πιθανοφάνεια. To λογάριθμο μέγιστης πιθανοφάνειας θα τον συμβολίζουμε με l. Μέγιστη πιθανοφάνεια σε Bayesian δίκτυα Ξεκινάμε με το παράδειγμα του πιο απλού ΒΝ το οποίο αποτελείται από δύο δυαδικές μεταβλητές Χ, Υ Χ Υ. Όταν έχουμε μία παράμετρο, ο στόχος μας είναι η μεγιστοποίηση της συνάρτησης πιθανοφάνειας. Σε αυτό το παράδειγμα η παράμετρος που θέλουμε να εκτιμήσουμε είναι το σύνολο των παραμέτρων θ που είναι το σύνολο όλων των παραμέτρων για όλες τις CPDs στο δίκτυο και το κάθε δείγμα του συνόλου εκπαίδευσης είναι ένα ζευγος <x[m], y[m]>. Η συνάρτηση πιθανοφάνειας είναι L(θ : D) = M P (x[m], y[m] : θ) (4.3) m=1 Το μοντέλο του δικτύου αφού είναι ΒΝ καθορίζει ότι η P (X, Y : θ) έχει μορφή γινομένου πάνω σε υπό συνθήκη κατανομές των μεταβλητών των κόμβων. Άρα, γράφουμε την 4.3 ως εξής L(θ : D) = m P (x[m] : θ)p (y[m] x[m] : θ) (4.4) Αλλάζοντας τη σειρά των πολλαπλασιασμών λόγω προσαιτεριστικής ιδιότητας του πολλαπλασιασμού η 4.4 γίνεται L(θ : D) = ( m P (x[m] : θ))( m P (y[m] x[m] : θ)) (4.5) Άρα, η συνάρτηση πιθανοφάνειας αποσυντίθεται σε δύο ξεχωριστούς όρους, ένα για κάθε μεταβλητήκόμβο. Κάθε ένας από αυτούς τους δύο όρους είναι μια τοπική πιθανοφάνεια που μετρά πόσο καλά προβλέπεται η κάθε μεταβλητή δοθέντων των γονιών της. 37

47 Η δεύτερη τοπική πιθανοφάνεια από το δεύτερο μέλος της 4.6 μπορεί να αποσυνθεθεί περαιτέρω: P (y[m] x[m] : θ Y X ) = m P (y[m] x[m] : θ Y x 0 ) P (y[m] x[m] : θ Y x 1) (4.6) m:x[m]=x 0 m:x[m]=x 1 Όπως είδαμε στο παραπάνω παράδειγμα, η συνάρτηση πιθανοφάνειας αποσυντίθεται σε ένα γινόμενο όρων, ένα για κάθε ένα γκρουπ παραμέτρων στο θ. Αυτό αποτελεί την ιδιότητα της αποσύνθεσης της συνάρτησης πιθανοφάνειας. Γενικεύοντας το παραπάνω παράδειγμα στην περίπτωση που θέλουμε να μάθουμε τις παραμέτρους για ένα Bayesian δίκτυο με δομή G και παραμέτρους θ, έχουμε: Θεώρημα 3. Δοθέντος ενός συνόλου δεδομένων D που αποτελείται από δείγματα ξ[1],...,ξ[μ], και ενός Bayesian δικτύου G με δομή G και παραμέτρους θ γράφουμε τη συνάρτηση πιθανοφάνειας και με εφαρμογή των βημάτων που ακολουθήσαμε στο παράδειγμα καταλήγουμε: L(θ : D) = m P G (ξ[m] : θ) = m P (x i [m] pa Xi [m] : θ) = i i P (x i [m] pa Xi [m] : θ) (4.7) m Κάθε ένας από τους όρους μέσα στις αγκύλες αναφέρεται σε υπό συνθήκη πιθανοφάνεια μιας συγκεκριμένης μεταβλητής δοθέντων των γονιών της στο δίκτυο. Χρησιμοποιούμε το θ Xi pa Xi για να δηλώσουμε το υποσύνολο των παραμέτρων που καθορίζουν το P (X i P a Xi ) στο μοντέλο μας. Οπότε γράφουμε την ολική πιθανοφάνεια του Bayesian δικτύου ως L(θ : D) = i L i (θ Xi P a Xi : D) (4.8) όπου η τοπική πιθανοφάνεια για τα X i ορίζεται ως L i (θ Xi P a Xi : D) = m P (x i [m] pa Xi [m]:θx i P a Xi ) (4.9) Η μορφή των 4.7 και 4.8 είναι χρήσιμη όταν τα σετ των παραμέτρων των διαφόρων CPDs δεν επικαλύπτονται. Αυτή η ανάλυση δείχνει τη σημαντική ιδιότητα της ολικής αποσύνθεσης, ότι δηλαδή η συνάρτηση πιθανοφάνειας του δικτύου αποσυντίθενται ως γινόμενο ανεξάρτητων όρων, ένας για κάθε μία CPD στο δίκτυο. Αν υποθέσουμε ότι τα σετ των παραμέτρων για κάθε μία CPD του δικτύου ΔΕΝ επικαλύπτονται, τότε προκειμένου να πάρουμε τη MLE λύση αρκεί να μεγιστοποιήσουμε την κάθε μία τοπική συνάρτηση πιθανοφάνειας, γεγονός το οποίο μας επιτρέπει αποδοτικούς υπολογισμούς Bayesian εκτίμηση παραμέτρων Θεωρούμε ένα γενικό πρόβλημα εκμάθησης όπου παρατηρούμε ένα σύνολο εκπαίδευσης D που περιέχει M iid δείγματα ενός συνόλου τυχαίων μεταβλητών X από μία άγνωστη κατανομή P (X). Επίσης υποθέτουμε ότι έχουμε ένα παραμετρικό μοντέλο P (ξ θ) από όπου μπορούμε να επιλέξουμε παραμέτρους από ένα χώρο παραμέτρων Θ. Ενώ στη MLE προσέγγιση μας ενδιαφέρει η εύρεση θ στο Θ που είναι οι καλύτερες δοθέντων των δεδομένων, στη Bayesian προσέγγιση κωδικοποιούμε το τι πιστεύουμε (beliefs) για τις τιμές των θ και τις χρησιμοποιούμε για να βγάζουμε συμπεράσματα. Η Bayesian προσέγγιση απαιτεί να χρησιμοποιούμε παραμέτρους για να κωδικοποιούμε την αρχική αβεβαιότητα σχετικά με τις παραμέτρους θ και μετά πρέπει να εκτελούμε πιθανοτικό λογισμό για να 38

48 λαμβάνουμε υπόψιν τις παρατηρήσεις μας. Χρειάζεται να περιγράψουμε την από κοινού κατανομή P (D, θ) πάνω στα δεδομένα και τις παραμέτρους. P (D, θ) = P (D θ)p (θ) (4.10) όπου ο πρώτος όρος είναι η συνάρτηση πιθανοφάνειας με την οποία ασχοληθήκαμε στην προηγούμενη υποενότητα. Ο δεύτερος όρος είναι η εκ των προτέρων γνώση (prior) πάνω στις πιθανές τιμές του Θ. Η prior καλύπτει την αρχική μας αβεβαιότητα σε σχέση με τις παραμέτρους. Σύμφωνα με τον κανόνα του Bayes P (D θ)p (θ) P (θ D) = (4.11) P (D) όπου ο όρος P(D) είναι η περιθώρια πιθανοφάνεια των δεδομένων που ορίζεται ως η ολοκλήρωση του αριθμητή για όλες τις πιθανές αναθέσεις τιμών στο Θ. Εκ των προτέρων κατανομή Καθώς μελετήσαμε τον υπολογισμό της πιθανοφάνειας L(D:θ) ένα βασικό θέμα σε αυτή την υποενότητα είναι το πώς ορίζουμε την prior. Επειδή η εκ των υστέρων κατανομή ορίζεται ως το γινόμενο της εκ των προτέρων κατανομής και της πιθανοφάνειας, είναι λογικό να απαιτούμε η εκ των προτέρων να έχει παρόμοια μορφή με την πιθανοφάνεια. Μία τέτοια prior είναι η Dirichlet κατανομή, η οποία γενικεύει την Βήτα κατανομή. Ορισμός 29. (Dirichlet κατανομή) Αυτή η κατανομή ορίζεται ως το σύνολο των υπερπαραμέτρων α 1,.., α k έτσι ώστε θ Dirichlet(α 1,...,, α K ) (4.12) αν P (θ) k θa k 1 k όπου χρησιμοποιούμε α για να δηλώσουμε j a j. Αν χρησιμοποιήσουμε μία κατανομή Dirichlet, τότε η εκ των υστέρων είναι επίσης Dirichlet. Πρόταση 1. Αν P(θ) είναι Dirichlet(a 1,..., a K ) τότε P(θ D) είναι Dirichlet(a 1 + M[1],..., a K + M[K]) όπου Μ[Κ] είναι ο αριθμός των εμφανίσεων του x k Ορισμός 30. (Συζυγής εκ των προτέρων κατανομή -conjugate prior-) Μία οικογένεια εκ των προτέρων κατανομών P (θ : α) είναι συζυγής σε ένα συγκεκριμένο μοντέλο P (ξ θ) αν για κάθε πιθανό σετ δεδομένων D iid δειγμάτων από P (ξ θ) και κάθε πιθανή επιλογή νόμιμων υπερπαραμέτρων a για την εκ των προτέρων πάνω στο θ, υπάρχουν υπερπαράμετροι a που περιγράφουν την εκ των υστέρων. Δηλαδή P (θ a ) P (D θ)p (θ : a) (4.13) Για παράδειγμα, η Dirichlet κατανομή είναι conjugate prior για την πολυωνυμική κατανομή. Οπότε αν η πιθανοφάνεια του προβληματος ορίζεται ως L(D : θ) = k θ M[k] k (4.14) τότε η Dirichlet κατανομή είναι η prior που μπορώ να διαλέξω ώστε η εκ των υστέρων να έχει την ίδια μορφή με την πιθανοφάνεια. 39

49 Πρόταση 2. Έστω κατανομή P(θ) Dirichlet με υπερπαραμέτρους α 1,.., α k και α = j α j, τότε η μέση τιμή των θ k είναι α k α. Bayesian εκτίμηση σε Bayesian δίκτυα Ορισμός 31. (Ολική ανεξαρτησία παραμέτρων) Αν G η δομή ενός ΒΝ με παραμέτρους θ = (θ 1 P a X1,..., θ n P a Xn ). Μία κατανομή P(θ) θα ικανοποιεί ολική ανεξαρτησία παραμέτρων αν έχει τη μορφή P (θ) = P (θ Xi P a Xi ) (4.15) i Συνδυάζοντας την 4.15 με την 4.8, έχουμε ότι P (θ D) = 1 P (D) [L i (θ Xi P a Xi : D)P (θ Xi P ax i )] (4.16) Άρα η εκ των υστέρων κατανομή αναπαρίσταται ως γινόμενο των τοπικών όρων. i Πρόταση 3. Έστω D ένα πλήρες σύνολο δεδομένων Χ και G η δομή δικτύου πάνω σε αυτές τις μεταβλητές. Αν η P(θ) ικανοποιεί ολική ανεξαρτησία παραμέτρων, τότε P (θ D) = i P (θ Xi P a Xi D) (4.17) Τέλος, μπορεί να αποδειχθεί ότι και η εκ των υστέρων κατανομή αποσυντίθεται σε ένα γινόμενο και κάνοντας χρήση της ιδιότητας της d-separation μπορούμε να λύσουμε το πρόβλημα της πρόβλεψης για κάθε CPD ανεξάρτητα και μετά να συνδυάζουμε τα αποτελέσματα. P (x[m + 1], y[m + 1] D) = ( P (x[m + 1] θ X )P (θ X D)dθ X ) ( P (y[m + 1] x[m + 1], θ Y X )P (θ Y D)dθ Y ) (4.18) και κάνοντας χρήση της ιδιότητας της d-separation, καταλήγουμε στο ότι P (X 1 [M + 1],..., X n [M + 1] D) = = P (X i [M + 1] P a Xi [M+1])(P (θ xi P a Xi D))dθ Xi P a Xi (4.19) i Εκμάθηση παραμέτρων σε Μη-Κατευθυνόμενα Μοντέλα Όπως είδαμε στις προηγούμενες υποενότητες, ένα από τα πιο βασικά συστατικά στη διαδικασία της εκμάθησης είναι αυτό της συνάρτησης πιθανοφάνειας. Σε αυτή την υποενότητα θα συζητήσουμε τη μορφή της πιθανοφάνειας για δίκτυα Markov. Ίσως η πιο βασική διαφορά μεταξύ Bayesian και Markov 40

50 μοντέλων είναι η χρήση μιας γενικής σταθεράς κανονικοποίησης (συνάρτηση διαμερισμού Z) παρά μιας τοπικής κανονικοποίησης μέσα σε κάθε υπό συνθήκη κατανομή. Αυτός ο καθολικός παράγοντας αλληλοσυνδέει όλες τις παραμέτρους του δικτύου, εμποδίζοντάς μας από το να αποσυνθέτουμε το πρόβλημα και να εκτιμούμε τοπικές ομάδες παραμέτρων ξεχωριστά. Αρχικά, για να κατανοήσουμε πώς η συνάρτηση διαμερισμού περιπλέκει το πρόβλημα ας θεωρήσουμε ένα πολύ απλό δίκτυο A B C το οποίο παραμετροποιείται από δύο δυναμικά ϕ 1 (A, B) και ϕ 1 (B, C). Η συνάρτηση log πιθανοφάνειας για ένα δείγμα < a, b, c > είναι ln P (a, b, c) = ln ϕ 1 (a, b) + ln ϕ 2 (b, c) ln Z (4.20) όπου Z η συνάρτηση διαμερισμού που διασφαλίζει ότι η κατανομή αθροίζεται στο 1. Ας θεωρήσουμε τώρα τη log πιθανοφάνεια ενός συνόλου δεδομένων D που περιέχει M παραδείγματα: l(θ : D) = m = a,b (ln ϕ 1 (a[m], b[m]) + ln ϕ 2 (a[m], b[m]) ln Z) M[a, b] ln ϕ 1 (a, b) + b,c M[b, c] ln ϕ 2 (b, c) M ln Z(θ) (4.21) Άρα, έχουμε επαρκείς στατιστικές που περιγράφουν τα δεδομένα: ο από κοινού αριθμός των μεταβλητών που εμφανίζεται σε κάθε δυναμικό. Παρατηρούμε από την 4.21 ότι η πιθανοφάνεια αποτελείται από τρεις όρους, την ϕ 1 μόνη της, την ϕ 2 μόνη της και τη log-partition συνάρτηση Z(θ) = a,b,c ϕ 1 (a, b)ϕ 2 (b, c) (4.22) οπότε η ln(z(θ)) είναι συνάρτηση και του ϕ 1 και του ϕ 2. Άρα, έχει συζεύξει τα δύο δυναμικά! Οπότε, ενώ στα Bayesian δίκτυα, μπορούσαμε να εκτιμούμε κάθε μία από τις υπό συνθήκη κατανομές (CPDs) χωριστά από τις υπόλοιπες, εδώ όταν αλλάζουμε την τιμή ενός δυναμικού π.χ του ϕ 1 αυτό αλλάζει και την συνάρτηση διαμερισμού, οπότε δημιουργεί εξαρτήσεις μεταξύ των δυναμικών. Σε ορισμένες περιπτώσεις, όπως σε αυτό το παράδειγμα, μπορούμε να αποφύγουμε αυτό το πρόβλημα μετατρέποντας το A B C στο ισοδύναμο Bayesian μοντέλο. Οπότε μπορούμε να μάθουμε τις παραμέτρους αυτού του BN και μετά να ορίσουμε τα δυναμικά ως εξής: ϕ 1 (A, B) = P (A)P (B A), ϕ 2 (B, C) = P (C B) (4.23) Όμως, όπως γνωρίζουμε δεν είναι πάντα δυνατή η μετατροπή του Markov σε μία ισοδύναμη εκφραστικά δομή Bayesian. Οπότε για να λύσουμε το πρόβλημα της εκτίμησης παραμέτρων σε Markov δίκτυα, χρειαζόμαστε μια πιο γενική προσέγγιση. Προκειμένου να παρουσιάσουμε αυτή την πιο γενική προσέγγιση θα χρειαστούμε να ορίσουμε μία άλλη μορφή παραμετροποίησης του μοντέλου. Για αυτό ορίζουμε το log-linear μοντέλα. Ορισμός 32. (Log Linear Μοντέλα) Δοθέντος ενός συνόλου χαρακτηριστικών (features) F = {f i (D i )} k i=1, όπου το f i(d i ) είναι η συνάρτηση των χαρακτηριστικών που ορίζεται πάνω στις μεταβλητές στο D i, έχουμε P (X 1,.., X n : θ) = 1 k Z(θ) exp( θ i f i (D i )) (4.24) Οι παράμετροι αυτής της κατανομής αντιστοιχούν στο βάρος που βάζουμε στο κάθε feature. Όταν θ i = 0, το χαρακτηριστικό αυτό αγνοείται και δεν επηρεάζει καθόλου την κατανομή. i=1 41

51 Αυτή η αναπαράσταση των Log Linear μοντέλων είναι πολύ γενική και μπορεί να εκφράσει Markov δίκτυα και με ολική και με τοπική δομή. Μία περίπτωση ειδικού ενδιαφέροντος για εμάς είναι όταν τα f i (D i ) είναι δυαδική συνάρτηση-δείκτης που επιστρέφει τιμή 0 ή 1. Με τέτοια χαρακτηριστικά μπορούμε να κωδικοποιήσουμε Markov δίκτυα απλώς έχοντας ένα feature για κάθε μία σειρά του δυναμικού. Πρόταση 4. Έστω D ένα σύνολο δεδομένων από παραδείγματα και έστω F i = {f i : i = 1,..., K} είναι το σύνολο χαρακτηριστικών που καθορίζουν ένα μοντέλο. Τότε η συνάρτηση πιθανοφάνειας είναι l(θ : D) = i θ i ( i f i (ξ[m])) M ln Z(θ) (4.25) Οι επαρκείς στατιστικές για αυτή τη συνάρτηση πιθανοφάνειας είναι τα αθροίσματα των τιμών των χαρακτηριστικών στο D. Αν διαιρέσουμε τη log πιθανοφάνεια με τον αριθμό των δειγμάτων Μ, τότε 1 M l(θ : D) = i θ i < f i (d i ) > D ln Z(θ) (4.26) όπου < f i (d i ) > η εμπειρική αναμενόμενη τιμή του f i, δηλαδή η μέση τιμή του στο σύνολο των δοθέντων δεδομένων. Η συνάρτηση διαμερισμού Z(θ) ορίζεται ως ln Z(θ) = ln ξ exp i θ i (ξ) (4.27) Πρόταση 5. Έστω F i = {f i : i = 1,..., K} είναι το σύνολο χαρακτηριστικών που καθορίζουν ένα μοντέλο, θ τα βάρη στο κάθε χαρακτηριστικό (feature), Τότε όπου E η αναμενόμενη τιμή και Cov η συνδιασπορά. θ i ln Z(θ) = E θ [f i ] (4.28) 2 θ j θ i ln Z(θ) = Cov θ [f i ; f j ] (4.29) Maximum Likelihood εκτίμηση Το gradient της log πιθανοφάνειας πρέπει να είναι ίσο με 0 στα μέγιστα σημεία. Οπότε: θ 1 θ i M l(θ : D) = E θd[f i (X)] E θ [f i ] (4.30) οπότε η θ θα είναι παράμετρος μέγιστης πιθανοφάνειας αν και μόνο αν E D [f i (X)] E θ [f i ] = 0 για όλα τα i. Επισήμανση 15. Με άλλα λόγια θέλουμε οι αναμενόμενες επαρκείς στατιστικές να ταιριάζουν με τις εμπειρικές αναμενόμενες τιμές. 42

52 Επισήμανση 16. Πρέπει όμως να αναλογιστούμε το υπολογιστικό κόστος των αναμενόμενων μετρήσεων. Ξεκάθαρα για αυτό το βήμα χρειάζεται να τρέξουμε Inference πάνω σε όλο το δίκτυο. Σε αντίθεση με τα Bayesian δίκτυα, στα οποία όταν τρέχουμε τον EM, ένα feature είναι απαραίτητα κομμάτι ενός παράγοντα στο αρχικό δίκτυο, και άρα όλες οι μεταβλητές που εμφανίζονται σε ένα feature πρέπει υποχρεωτικά να συνυπάρχουν σε ένα cluster σε ένα clique tree ή σε ένα cluster γράφο (λόγω της ιδιότητας της διατήρησης οικογενειών -family preservation-), αυτό δε συμβαίνει στα Markov δίκτυα. Οπότε, στα μεν Bayesian δίκτυα αρκεί ένα μόνο πέρασμα inference που ανανεώνει και δίνει τα τελικά δυναμικά πάνω σε έναν ολόκληρο cluster γράφο ή δέντρο, για να υπολογίσουμε τις αναμενόμενες μετρήσεις. Στα δε Markov δίκτυα, απαιτείται ένα ολόκληρο βήμα επαγωγής συμπερασμάτων για κάθε επανάληψη του gradient ascent. Επειδή η inference κοστίζει τόσο σε χώρο όσο και σε χρόνο, το υπολογιστικό κόστος της εκτίμησης παραμέτρων στα Markov δίκτυα είναι συνήθως απαγορευτικά μεγάλο. Υπό συνθήκη εκπαιδευμένα Μοντέλα Συχνά θέλουμε να χρησιμοποιούμε τα Markov μοντέλα για να εκτελούμε μια συγκεκριμένη δουλειά inference, όπου έχουμε ένα γνωστό σύνολο μεταβλητών που έχουμε παρατηρήσει, ή χαρακτηριστικών, Χ και ένα προκαθορισμένο σύνολο μεταβλητών Υ πάνω στα οποία θέλουμε να κάνουμε επερωτήσεις. Σε αυτή την περίπτωση μπορεί να θέλουμε να εκπαιδεύσουμε το δίκτυο ως Conditional Random Field (CRF) που κωδικοποιεί την υπό συνθήκη κατανομή P(Y X). Πιο αυστηρά, έστω ότι το σύνολο εκπαίδευσής μας αποτελείται από ζευγάρια D = {(y[m], x[m])} M m=1 και η αντικειμενική συνάρτηση που χρησιμοποιούμε είναι η log-υπό συνθήκη- πιθανοφάνεια η οποία έχει τη μορφή l Y X (θ : D) = ln P (y[1,..., M] x[1,..., M], θ) = M ln P (y[m] x[m], θ) (4.31) οπότε βελτιστοποιούμε την πιθανοφάνεια κάθε παρατηρημένου y[m] δοθέντος του αντίστοιχου x[m]. Κάθε ένας από τους όρους ln P (y[1,..., M] x[1,..., M], θ) είναι η log πιθανοφάνεια ενός Markov μοντέλου με διαφορετικό σύνολο παραγόντων - το σύνολο των παραγόντων του αρχικού Markov μειωμένο κατά την παρατήρηση x[1,..., M]- και με τη δική του συνάρτηση διαμερισμού. Και πάλι, στόχος είναι η βελτιστοποίηση της αντικειμενικής συνάρτησης, που στην περίπτωση των CRFs είναι η υπό συνθήκη log πιθανοφάνεια. Άρα, πρέπει να πάρουμε το gradient. Γνωρίζουμε ότι το gradient ενός αθροίσματος είναι το άθροισμα των gradients των όρων του αθροίσματος. Κάθε όρος είναι μία log πιθανοφάνεια, η log-πιθανοφάνεια ενός μόνου y[m] στο Markov δίκτυο που προκύπτει παρατηρώντας το αρχικό μας μοντέλο στο πλαίσιο του x[m]. Ένα μειωμένο Markov δίκτυο είναι και αυτό με τη σειρά του ένα Markov δίκτυο. Οπότε έχoυμε: θ i l Y X (θ : D) = m=1 M (f i (y[m], x[m]) E θ [f i x[m]]) (4.32) m=1 Παρατηρούμε ότι αν συσσωρεύσουμε τον πρώτο όρο σε κάθε ένα από τα αθροίσματα, παίρνουμε ακριβώς τον εμπειρικό αριθμό των f i στο σύνολο δεδομένων D. Αυτές οι αναμενόμενες αριθμήσεις υπολογίζονται ως το άθροισμα των αριθμήσεων σε ένα σύνολο μοντέλων που ορίζονται από διαφορετικές μεταβλητές υπό συνθήκη. Οπότε ενώ στην χωρίς υπό συνθήκη περίπτωση κάθε βήμα του gradient χρειάζεται μία εκτέλεση inference, όταν εκπαιδεύουμε το CRF πρέπει να εκτελούμε inference για κάθε παράδειγμα δεδομένου, έχοντας υπό συνθήκη το x[m]. Από την άλλη πλευρά, η inference εκτελείται σε ένα απλούστερο μοντέλο, αφού έχουμε evidence που μειώνει το υπολογιστικό κόστος. 43

53 4.3 Εκμάθηση Δομής Μοντέλου Μέχρι ώρας έχουμε εξετάσει πώς μπορούμε να μάθουμε τις παραμέτρους των γραφικών μοντέλων. Όμως, κάναμε μία ισχυρή υπόθεση - ότι γνωρίζουμε εκ των προτέρων τη δομή του δικτύου. Σε αυτή την ενότητα θα θεωρήσουμε τη διαδικασία της εκμάθησης στην περίπτωση που δε γνωρίζουμε τη δομή του δικτύου. Και σε αυτή την ενότητα θα εξακολουθήσουμε να κάνουμε την πολύ ισχυρή υπόθεση ότι το σύνολο των δεδομένων είναι πλήρως παρατηρήσιμο - την οποία και θα καταρρίψουμε στην επόμενη ενότητα που θα εξετάσουμε την περίπτωση των μερικώς παρατηρήσιμων δεδομένων. Ας υποθέσουμε ότι τα δεδομένα D παράγονται i.i.d από μια υποκείμενη κατανομή P (X) και ότι η P αναπαρίσταται από μία δομή δικτύου G πάνω στα X. Στόχος μας είναι να ανακτήσουμε την G. Όμως, η ανάκτηση της G απαιτεί προσοχή, αφού -όπως είχαμε δει στο κεφάλαιο της αναπαράστασηςμπορεί να υπάρχουν πολύ τέλειοι χάρτες για την ίδια κατανομή P : όλα αυτά τα δίκτυα ανήκουν στην ίδια Ι-ισοδύναμη κλάση με το G. Όλες αυτές είναι εξίσου καλές δομές για τα P, οπότε δεν μπορούμε να τα ξεχωρίσουμε μεταξύ τους βασιζόμενοι στα δεδομένα D. Λέμε ότι η G δεν μπορεί να είναι αναγνωρίσιμη (identifiable) από τα δεδομένα. Άρα, θέλουμε αλγόριθμο που ασυμπτωτικά ανακτά την αντίστοιχη κλάση του G. Προβλήματα στην εκμάθηση δομής και πιθανές προσεγγίσεις Η δουλειά της εκμάθησης του G είναι δύσκολη καθώς τα δεδομένα που δειγματοληπτούνται από την P έχουν θόρυβο, δεν μπορούμε με αξιοπιστία να εντοπίσουμε ποιες ανεξαρτησίες υπάρχουν στην υποκείμενη κατανομή. Αυτό σημαίνει ότι πρέπει να αποφασίσουμε αν θα συμπεριλάβουμε και ακμές για τις οποίες είμαστε λιγότερο σίγουροι. Εάν επιλέξουμε λιγότερες ακμές, χάνουμε εξαρτήσεις, εάν δε περισσότερες (προκειμένου να μην χάσουμε εξαρτήσεις) οδηγούμαστε σε ακμές που μπορεί να μην υπάρχουν. Συνεπώς, σε κάθε περίπτωση καταλήγουμε σε μη ακριβείς δομές που δεν αποκαλύπτουν τη σωστή υποκείμενη δομή. Όταν έχουμε περιορισμένα δεδομένα, είναι καλύτερα να προτιμούμε μία πιο αραιά δομή, διότι έτσι αποφεύγουμε το overfitting στα δεδομένα και πετυχαίνουμε μία πιο γενική δομή με λιγότερες ακμές, ακόμα και αν αυτή η δομή δεν αναπαριστά την πραγματική υποκείμενη κατανομή. Μία προσέγγιση εκμάθησης μίας προκαθορισμένης δομής είναι αυτή του να εκτελούμε τεστ ανεξαρτησίας και εξάρτησης στα δεδομένα που μας δίνονται, με στόχο να βρούμε ένα I-map της κατανομής. Όμως, αυτή η μέθοδος είναι ευαίσθητη, καθώς αν ένα από τα τεστ δώσει λάθος απάντηση μπορεί να παραπλανήσει τη διαδικασία κατασκευής δικτύου. Οπότε, η προσέγγιση την οποία θα εξετάσουμε ονομάζεται score-based structure learning, και η οποία αντιμετωπίζει το πρόβλημα της εκμάθησης ως πρόβλημα επιλογής στατιστικού μοντέλου. Ορίζουμε ένα χώρο υποθέσεων για τα πιθανά μοντέλα και μια συνάρτηση score που μετρά πόσο καλά ταιριάζει το μοντέλο στις παρατηρήσεις. Στόχος μας είναι η εύρεση της πιο υψηλά βαθμολογημένης δομής. Όμως, ο χώρος των πιθανών δομών είναι εκθετικός, γεγονός που κάνει το πρόβλημα της επιλογής δομής NP-hard. Άρα, στη γενική περίπτωση θα πρέπει να καταφεύγουμε σε ευρετικές τεχνικές. Η προσέγγιση αυτή θεωρεί ολόκληρη τη δομή ως σύνολο, οπότε δεν είναι ευαίσθητη σε ατομικές αποτυχίες και είναι καλύτερη στο να κάνουμε συμβιβασμούς για το ποιες ακμές εξαρτώνται μεταξύ τους και το κόστος προσθήκης ακμής. Το μειονέκτημά της είναι ότι το πρόβλημα της αναζήτησης δεν έχει πάντα κομψή λύση. Τέλος, υπάρχει η προσέγγιση του Bayesian model averaging το οποίο δεν προσπαθεί να μάθει μια δομή αλλά ένα σύνολο πιθανών δομών Σκορ πιθανοφάνειας Δεδομένου ότι η συνάρτηση πιθανοφάνειας μετρά την πιθανότητα των δεδομένων δοθέντος του μοντέλου, θα θέλουμε να επιλέξουμε το μοντέλο που θα κάνει τα δεδομένα όσο πιο πιθανά γίνεται. Άρα, είναι φυσικό επακόλουθο να χρησιμοποιήσουμε ως συνάρτηση σκορ τη συνάρτηση πιθανοφάνειας. Έστω ότι θέλουμε να μεγιστοποιήσουμε την πιθανοφάνεια του μοντέλου. Σε αυτή την περίπτωση το μοντέλο είναι το ζευγάρι < G, θ G >. Στόχος μας είναι τόσο η εύρεση και του γράφου < G > όσο 44

54 και των παραμέτρων < θ G > που μεγιστοποιούν την πιθανοφάνεια. Οπότε έχουμε: max L(< G, θ G >: D) = max [max L(< G, θ G >: D)] G,θ G G θ G = max[l(< G, θ G >: D)] (4.33) Με άλλα λόγια, για να βρούμε τo ζευγάρι μέγιστης πιθανοφάνειας < G, θ G >, πρέπει να βρούμε τη δομή G που πετυχαίνει μέγιστη πιθανοφάνεια όταν χρησιμοποιούμε τις MLE παραμέτρους του G. Ορίζουμε score L (G : D) = l(θ G : D) (4.34) όπου l(θg : D) είναι ο λογάριθμος της συνάρτησης πιθανοφάνειας και θ G είναι οι παράμετροι μέγιστης πιθανοφάνειας για το G. Ερμηνεία με ματιά θεωρίας πληροφορίας Θεωρούμε το μοντέλο G 0, όπου τα X και Y είναι ανεξάρτητα και έχουμε score L (G 0 : D) = m log θ x[m] + log θ y[m] (4.35) Αν θεωρήσουμε το μοντέλο G 1, όπου X Y, έχουμε score L (G 1 : D) = m log θ x[m] + log θ y[m] x[m] (4.36) όπου η θx είναι η MLE για την P(x) και θy x είναι η MLE για την P(y x). Βλέπουμε ότι και η 4.36 και η 4.37 μοιράζονται τον ίδιο όρο για το log θx Οπότε η διαφορά των δύο score είναι score L (G 1 : D) score L (G 0 : D) = m log θ y[m] x[m] log θ y[m] (4.37) Μετρώντας πόσες φορές κάθε παράμετρος υπό συνθήκη κατανομής εμφανίζεται σε αυτό τον όρο, γράφουμε από την 4.37 το άθροισμα ως score L (G 1 : D) score L (G 0 : D) = x,y M[x, y] log θ y x y M[y] log θ y (4.38) Πρόταση 6. Αν P είναι η εμπειρική κατανομή που παρατηρείται από τα δεδομένα, δηλαδή P (x, y) είναι απλά η εμπειρική συχνότητα των x, y στα δεδομένα, τότε μπορούμε να γράψουμε ότι M[x, y] = M P (x, y) και ότι M[y] = M P (y). Επίσης, θ y x = P (y x) και θ y = P (y). Οπότε η 4.38 γίνεται: score L (G 1 : D) score L (G 0 : D) = M x,y P [x, y] log P (y x) P (y) = MI P (X; Y ) όπου I P (X; Y ) είναι η αμοιβαία πληροφορία μεταξύ των Χ και Υ στην κατανομή P Βλέπουμε ότι το σκορ της πιθανοφάνειας του μοντέλου G 1 εξαρτάται από την αμοιβαία πληροφορία μεταξύ του Χ και του Υ. Υψηλότερη αμοιβαία πληροφορία σημαίνει μεγαλύτερη εξάρτηση. Επομένως, μεγαλύτερη εξάρτηση υποδηλώνει ισχυρή προτίμηση για μοντέλα όπου τα Χ και Υ εξαρτώνται το ένα από το άλλο. 45

55 Ορισμός 33. (Αποσύνθεση Σκορ Μέγιστης Πιθανοφάνειας σε BN) Για τη γενική περίπτωση ενός Bayesian δικτύου G, το σκορ πιθανοφάνειας αποσυντίθεται σε score L (G : D) = M n I P [X i ; P a G X i ] M i=1 n i=1 H P (Xi ) (4.39) Ο δεύτερος όρος στην εξίσωση 4.39 δεν εξαρτάται από τη δομή του δικτύου και επομένως μπορούμε να τον αγνοούμε όταν συγκρίνουμε δύο δομές πάνω στο ίδιο σύνολο δεδομένων. Επισήμανση 17. Άρα το σκορ πιθανοφάνειας μετρά τη δύναμη των εξαρτήσεων μεταξύ των μεταβλητών και των γονιών του. Με άλλα λόγια, προτιμούμε δίκτυα στα οποία οι γονείς μιας μεταβλητής δίνουν πληροφορίες για αυτήν. Από τα παραπάνω βλέπουμε ότι το σκορ μέγιστης πιθανοφάνειας είναι ένα καλό μέτρο του πώς ταιριάζει το εκτιμώμενο Bayesian δίκτυο στα δεδομένα εκπαίδευσης. Μειονεκτήματα Σκορ Μέγιστης Πιθανοφάνειας Όμως, γνωρίζουμε ότι σε διαδικασίες εκμάθησης μας ενδιαφέρει η απόδοση του δικτύου σε νέα παραδείγματα, δηλαδή σε ένα σύνολο ελέγχου. Σε αυτό όμως, το σκορ πιθανοφάνειας υστερεί. Συγκεκριμένα, ας υποθέσουμε G 0 όπου τα Χ και Υ είναι ανεξάρτητα, και G X Y.Έχουμε δει ότι score L (G 1 : D) score L (G 0 : D) = MI P (X;Y ). Δεδομένου ότι η αμοιβαία πληροφορία μεταξύ δύο μεταβλητών είναι μη-αρνητική. Οπότε score L (G 1 : D) score L (G 0 : D) για κάθε σύνολο δεδομένων D. Αυτό υποννοεί ότι το σκορ μέγιστης πιθανοφάνειας ποτέ δεν προτιμά το απλούστερο δίκτυο σε σχέση με το πιο πολύπλοκο. Και τα δύο δίκτυα θα έχουν την ίδια κατανομή μόνο στην περίπτωση που τα Χ και Υ είναι πραγματικά ανεξάρτητα στα δεδομένα, γεγονός που είναι σπάνιο. Γενικά, ισχύει ότι το να προσθέσουμε ακμές σε ένα δίκτυο δεν μπορεί ποτέ να μειώσει το σκορ πιθανοφάνειας, γεγονός το οποίο δεν μας επιτρέπει να διαλέξουμε τις πιο απλές γραφικές δομές που μπορεί να προτιμάμε για γενίκευση. Το δίκτυο μέγιστης πιθανοφάνειας θα εμφανίζεται να έχει υπό συνθήκη ανεξαρτησία μόνο όταν η η εμπειρική κατανομή έχει ανεξαρτησία. Και λόγω θορύβου η ακριβής ανεξαρτησία συνήθως δεν θα υπάρχει στα δεδομένα, με αποτέλεσμα το σύνηθες δίκτυο που δίνεται από τη μέγιστη πιθανοφάνεια να είναι το πλήρως συνδεδεμένο. Επισήμανση 18. Άρα, το βασικό μειονέκτημα του σκορ μέγιστης πιθανοφάνειας είναι ότι κάνει overfitting στα δεδομένα, μαθαίνοντας ένα μοντέλο που ταιριάζει ακριβώς με την εμπειρική κατανομή στο σύνολο εκπαίδευσης και δεν γενικεύει καλά σε νέα δεδομένα που προέρχονται από άλλη κατανομή Bayesian σκορ Η βασική αρχή της Bayesian προσέγγισης είναι ότι για οτιδήποτε έχουμε αβεβαιότητα, τοποθετούμε μία κατανομή πάνω του. Σε αυτή την περίπτωση έχουμε αβεβαιότητα πάνω στη δομή και στις παραμέτρους. Ορισμός 34. Έστω μία εκ των προτέρων κατανομή πάνω στις διάφορες πιθανές δομές P (G) και μία εκ των προτέρων κατανομή πάνω στις παραμέτρους δοθέντος του γράφου P (θ G G). Από τον κανόνα του Bayes έχουμε ότι P (D G)P (G) P (G D) = (4.40) P (D) 46

56 Οπότε ορίζουμε το Bayesian σκορ ως το λογάριθμο του αριθμητή της 4.40: score B (G : D) = log P (D G) + log P (G) (4.41) καθώς ο παρανομαστής της 4.40 είναι ένας παράγοντας κανονικοποίησης που δε μας βοηθά να διακρίνουμε μεταξύ των διαφορετικών δομών. Η ικανότητα να βάζουμε μία εκ των προτέρων κατανομή πάνω στις δομές μας επιτρέπει να προτιμούμε κάποιες έναντι κάποιων άλλων, για παράδειγμα μπορεί να δίνουμε μεγαλύτερο σκορ στις αραιές παρά στις πυκνές. Ο όρος της prior για τη δομή είναι τελείως διαφορετικός από τον όρο της P(D G) που είναι η marginal likelihood και ορίζεται ως εξής: Ορισμός 35. (Περιθώρια πιθανοφάνεια ή Marginal Likelihood) P (D G) = P (D θ G, G)P (θ G G)dθ G (4.42) Θ G όπου P (D θ G, G) : η πιθανοφάνεια πάνω στα δεδομένα δοθέντος δικτύου < G, θ G > και P (θ G G) >: η εκ των προτέρων κατανομή πάνω στις διάφορες τιμές παραμέτρων για το δίκτυο G. Πρόκειται δηλαδή για τη marginal likelihood των δεδομένων δοθείσης της δομής, καθώς αθροίζουμε πάνω (marginalize out) στις άγνωστες παραμέτρους. Σε αντίθεση με το ML σκορ το οποίο δίνει το μέγιστο της πιθανοφάνειας των δεδομένων, δεδομένου της G, η marginal likelihood δίνει την αναμενόμενη τιμή της συνάρτησης πιθανοφάνειας για διάφορες επιλογές του θ G ως προς κατανομή P (θ G G), με αποτέλεσμα να μας δίνει πιο ρεαλιστική εικόνα των δεδομένων, σε αντίθεση με την ML που υπολογίζει τη likelihood θεωρώντας ότι χρησιμοποιούμε τις καλύτερες τιμές των παραμέτρων. Bayesian σκορ για Bayesian δίκτυα Έστω δύο πιθανά δίκτυα πάνω στις δυαδικές μεταβλητές Χ και Υ, ο G 0 γράφος χωρίς ακμές και ο G 1 : X Y. Για τον G 0 έχουμε ότι: P (D G 0 ) = P (θ X, θ Y G 0 )P (D θ X, θ Y, G 0 )d[θ X, θ Y ] (4.43) Θ X,Θ Y Γνωρίζουμε ότι ο όρος P (D θ X, θ Y G 0 ) γράφεται ως γινόμενο όρων, που ο ένας περιλαμβάνει τα θ και τις παρατηρήσεις του X πάνω στα δεδομένα και ο άλλος τα θ Y και τις παρατηρήσεις του Υ πάνω στα δεδομένα. Επιπλέον, αν υποθέσουμε ανεξαρτησία παραμέτρων, έχουμε P (θ X, θ Y G 0 ) = P (θ G 0 )P (θ G 0 ). Από τα παραπάνω η 4.43 γίνεται P (D G 0 ) = = ( P (θ X G 0 ) Θ X m P (x[m] θ X, G 0 )d[θ X ])( P (θ Y G 0 ) Θ Y m P (y[m] θ Y, G 0 )d[θ Y ]) (4.44) όπου κάθε ένα από τα ολοκληρώματα είναι η marginal likelihood μιας μόνο μεταβλητής και που αν κάθε ένα έχει Dirichlet prior, και οι Χ και Υ είναι πολυωνυμικές κατανομές, μπορεί να γραφεί σε κλειστή μορφή όπως αυτή δίνεται από την ακόλουθη πρόταση. 47

57 Πρόταση 7. Για μία διωνυμική κατανομή χρησιμοποιώντας Βήτα εκ των προτέρων, έχουμε P (X[1],..., X[M]) = Γ(α) Γ(α+M) k i=1 Γ(α i + M[x i ]) Γ(α i ) (4.45) Θεωρώντας τώρα το δίκτυο G 1, αν και πάλι κάνουμε τις ίδιες υποθέσεις ανεξαρτησίες παραμέτρων, σπάει το ολοκλήρωμα σε γινόμενο τριών ολοκληρωμάτων κάθε ένα από τα οποία ορίζεται πάνω σε μία οικογένεια μιας παραμέτρου. P (D G X Y ) = = ( P (θ X G X Y ) P (x[m] θ X, G X Y )d[θ X ]) Θ X m ( P (θ Y x 0 G X Y ) P (y[m] θ Y x0, G X Y )d[θ Y x0 ]) Θ Y x0 m:x[m]=x 0 ( P (θ Y x1 G X Y ) P (y[m] θ Y x1, G X Y )d[θ Y x 1 ]) (4.46) Θ Y x1 m:x[m]=x 1 κάθε ένα από τα οποία έχει και πάλι κλειστή μορφή. Συγκρίνοντας τις δύο παραπάνω εξισώσεις, παρατηρούμε ότι ο πρώτος όρος της marginal πιθανοφάνειας είναι παρόμοιος και μάλιστα πανομοιότυπος αν υποθέσουμε ίδια κατανομή P (Θ X G). Άρα δεδομένης της υπόθεσης για την εκ των προτέρων κατανομή, η διαφορά μεταξύ των marginal likelihoods στα δύο δίκτυα οφείλεται στη διαφορά μεταξύ της marginal likelihood όλων των παρατηρήσεων του Υ και των marginal likelihoods των παρατηρήσεων του Y όταν χωρίζουμε τα δεδομένα μας με βάση την παρατηρούμενη τιμή του X. Ερμηνεία του Bayesian σκορ Το Bayesian σκορ αρχικά φαίνεται να έχει μια τάση (bias) προς απλούστερες δομές, αλλά καθώς παίρνουμε περισσότερα δεδομένα, είναι πρόθυμο να αναγνωρίσει αν μια πιο πολύπλοκη δομή είναι απαραίτητη. Δηλαδή κάνει ένα trade off μεταξύ του ταιριάσματος στα δεδομένα με την πολυπλοκότητα του μοντέλου, και μειώνει το βαθμό του overfitting. Θεώρημα 4. Αν χρησιμοποιούμε Dirichlet εκ των προτέρων κατανομή για όλες τις παραμέτρους στο δίκτυο, τότε επειδή M έχουμε ότι logp (D G) = l(θ G : D) log M Dim[G] + O(1) (4.47) 2 Ορισμός 36. (BIC σκορ) Το Bayesian σκορ τείνει να κάνει ένα trade off μεταξύ της πιθανοφάνειας - πόσο ταιριάζει στα δεδομένα - και μιας έννοιας πολυπλοκότητας του μοντέλου. Αυτή η προσέγγιση ονομάζεται BIC σκορ (Bayesian Information Criterion). score BIC (G : D) = l(θ G : D) log M 2 Dim[G] (4.48) 48

58 Ορισμός 37. (Συνεπές σκορ) Έστω δεδομένα τα οποία παράγονται από μια κατανομή P για τα οποία το δίκτυο G είναι ο Perfect-map. Θα λέμε ότι μια συνάρτηση σκορ είναι συνεπής αν καθώς η ποσότητα των δεδομένωνm, με πιθανότητα που προσεγγίζει το 1 ισχύουν οι ακόλουθες ιδιότητες: Η δομή G θα μεγιστοποιεί το σκορ Όλες οι δομές που δεν είναι Ι-ισοδύναμες με το G θα έχουν αυστηρά χαμηλότερο σκορ. Αποδεικνύεται ότι καθώς το BIC score πληροί της ανωτέρω ιδιότητες, είναι συνεπές. Επίσης, τόσο το σκορ μέγιστης πιθανοφάνειας όσο και το Bayesian σκορ είναι συνεπή. Εκ των προτέρων κατανομή πάνω στη δομή Η εκ των προτέρων κατανομή πάνω στις δομές των δικτύων P (G) παίζει ένα σχετικά μικρό ρόλο, καθώς όπως βλέπουμε από το παραπάνω θεώρημα ο λογάριθμος της περιθώριας πιθανοφάνειας (marginal likelihood) αυξάνεται γραμμικά με τον αριθμό των παραδειγμάτων, ενώ η εκ των προτέρων γνώση πάνω στις δομές παραμένει σταθερή. Επομένως, η πρότερη γνώση της δομής δικτύου δεν παίζει σημαντικό ρόλο στην ασυμπτωτική ανάλυση, εφόσον φυσικά δεν αναθέτει πιθανότητα 0 σε κάποια δομή. Γι αυτό το λόγο, συχνά χρησιμοποιούμε ομοιόμορφη εκ των προτέρων κατανομή πάνω στις δομές. Μία περίπτωση στην οποία έχει σημασία η εκ των προτέρων κατανομή είναι όταν θεωρούμε δείγματα μικρού μεγέθους. Οπότε, μπορεί να θέλουμε να τιμωρούμε ακμές στο γράφο και να χρησιμοποιήσουμε μία prior P (G) c G, όπου G, ο αριθμός των ακμών στο γράφο. Εκ των προτέρων κατανομή πάνω στις παραμέτρους Προκειμένου να χρησιμοποιήσουμε το Bayesian score, εκτός από την prior πάνω στη δομή, είναι απαραίτητο να ορίσουμε και priors πάνω στις παραμέτρους για την παραμετροποίηση που αντιστοιχεί σε κάθε πιθανή δομή. Η prior των παραμέτρων παίζει σημαντικό ρόλο στην ιδιότητα της αποσύνθεσης. Όπως είδαμε, το Bayesian σκορ μιας δομής G αποσυντίθενται σε ένα γινόμενο όρων, ένα για κάθε οικογένεια. Αυτό είναι συνέπεια της υπόθεσης της ολικής ανεξαρτησίας παραμέτρων. Στην περίπτωση της εκμάθησης παραμέτρων (προηγούμενη ενότητα) αυτή η υπόθεση έπαιξε κεντρικό ρόλο στην αποσύνθεση του προβλήματος εκμάθησης σε επιμέρους προβλήματα. Τώρα, στην περίπτωση της εκμάθησης δομής (structure learning), αν συγκρίνουμε τα σκορ δύο δικτύων G 0, G X Y, αν επιλέξουμε τις priors P (Θ x G 0 ) και P (Θ x G X Y ) να είναι πανομοιότυπες, τότε το σκορ που συνδέεται με το Χ είναι ίδιο και στους δύο γράφους. Θεωρώντας πιο γενικές δομές, αν P a G X i = P a G X i (4.49) θα φαινόταν φυσικό ότι ο όρος που μετρά το σκορ του X i δοθέντων των γονιών στο G θα ήταν πανομοιότυπο με αυτό στο G. Αυτό φαίνεται λογικό δεδομένου ότι το σκορ που συνδέεται με το X i μετρά πόσο καλά μπορεί να προβλεφθεί δοθέντων των γονιών του. Άρα, αν το X i έχει το ίδιο σύνολο γονιών και στις δύο δομές, αυτός ο όρος θα έχει την ίδια τιμή. Ορισμός 38. Μία συνάρτηση σκορ σε δομές είναι δυνατή να αποσυντεθεί (decomposable) αν το σκορ μιας δομής G μπορεί να γραφεί ως score(g : D) = i FamScore(X i P a G i : D), (4.50) 49

59 όπου το family σκορ FamScore(X U : D) είναι ένα σκορ που μετρά πόσο καλά ένα σύνολο μεταβλητών U λειτουργεί ως γονείς του Χ στο σύνολο δεδομένων D. Επισήμανση 19. Αξίζει να σημειωθεί ότι το likelihood σκορ είναι decomposable, όπως και το Bayesian σκορ. Ο λόγος που θέλουμε να χρησιμοποιούμε σκορ που αποσυντίθεται είναι ότι όταν αναζητούμε δομές, μια τοπική αλλαγή στη δομή, όπως η πρόσθεση μιας ακμής, δεν επηρεάζει το σκορ σε άλλα μέρη της δομής. Αναπαράσταση των priors των παραμέτρων Τέλος, όσον αφορά την αναπαράσταση των priors των παραμέτρων, το γεγονός ότι ο αριθμός των πιθανών δομών είναι υπερεκθετικός κάνει δύσκολο το να βγάλουμε διαφορετικές παραμέτρους για κάθε μία. Προκειμένου να έχουμε τη δυνατότητα να αναπαραστήσουμε τις parameter priors, χρειαζόμαστε μία εκ των προτέρων κατανομή για κάθε επιλογή γονιών για κάθε μεταβλητή. Όμως, αυτός ο αριθμός είναι και πάλι εκθετικός. Οπότε η πιο απλή μέθοδος είναι αυτή του να πάρουμε μία φιξαρισμένη Dirichlet κατανομή π.χ (α,..., α) για κάθε παράμετρο, όπου α μία προκαθορισμένη σταθερά. Μία τυπική επιλογή είναι α = 1. Όταν δε δεν έχουμε καθόλου εκ των προτέρων γνώση, η πιο απλός ορισμός της υποκείμενης κατανομής που αναπαριστά το δίκτυο είναι η ομοιόμορφη κατανομή, δηλαδή ένα άδειο Bayesian δίκτυο με μία ομοιόμορφη περιθώρια κατανομή για κάθε μεταβλητή Εκμάθηση δικτύων με δομή δέντρου Ορισμός 39. (Δίκτυο με δομή Δέντρου) Μία δομή δικτύου G θα λέγεται ότι είναι δέντρο, αν κάθε μεταβλητή κόμβος Χ έχει το πολύ ένα κόμβο γονιό στο G, δηλαδή P a G X 1. Ο λόγος για τον οποίο ενδιαφερόμαστε για αυτό το είδος δομής δικτύου είναι διότι σε αυτά μπορεί να γίνει learning αποδοτικά, σε πολυωνυμικό χρόνο. Είναι αραιά και επομένως αποφεύγουν το πρόβλημα του overfitting που συνδέεται με πιο πολύπλοκες δομές. Και μπορούν να αποτυπώσουν τις σημαντικές εξαρτήσεις στην κατανομή. Επομένως αποτελούν σημείο εκκίνησης για να μάθουμε μια πιο πολύπλοκη δομή. Οι βασικές ιδιότητες που θα χρησιμοποιήσουμε για learning στα δέντρα είναι η δυνατότητα αποσύνθεσης στο σκορ και ο αριθμός των γονιών. Για τη μεγιστοποίηση του σκορ σε μία δομή δικτύου G, θα προσπαθούμε να μεγιστοποιήσουμε τις διαφορές μεταξύ του σκορ του και του σκορ της άδειας δομής G 0. Ορίζουμε (G) = score(g : D) score(g 0 : D) (4.51) Γνωρίζουμε ότι ο δεύτερος όρος score(g 0 : D) είναι απλά το άθροισμα των όρων FamScore(X i : D) για κάθε X i, το οποίο είναι το σκορ του X i αν δεν έχει καθόλου γονείς. Ο πρώτος όρος score(g : D) αποτελείται από τους όρους FamScore(X i P a G i : D). Αν Pa G i =, τότε ο όρος για το X i και στα δύο σκορ ακυρώνεται. Αν Pa G i = X j, τότε απομένει η διαφορά μεταξύ των δύο όρων. Άρα, καταλήγουμε ότι (G) = (FamScore(X i P a G i : D) FamScore(X i : D). (4.52) i,p a G i 0 50

60 Αν ορίσουμε το βάρος w j i = FamScore(X i X j : D) FamScore(X i : D). (4.53) Οπότε, βλέπουμε ότι Δ(G) είναι το άθροισμα των βαρών στα ζευγάρια X i, X j, έτσι ώστε X j X i στο G (G) = w j i (4.54) X j X i G Επισήμανση 20. Επομένως, έχουμε μετατρέψει το πρόβλημά μας σε αυτό του να βρούμε το Maximum Weight Spanning Forest σε ένα κατευθυνόμενο γράφο με βάρη. Η διαδικασία έχει ως εξής: Ορίζουμε ένα πλήρως συνδεδεμένο κατευθυνόμενο γράφο, όπου κάθε κορυφή ονομάζεται από μία τυχαία μεταβλητή στο X και το βάρος της ακμής από την κορυφή X j στην X i είναι το w j και μετά αναζητούμε ένα spanning forest μέγιστου βάρους. Προφανώς, το άθροισμα των βαρών των ακμών σε ένα δάσος είναι ακριβώς (G) της δομής G με το αντίστοιχο σύνολο των ακμών. Η δομή γράφου που αντιστοιχεί στο maximum weight forest μεγιστοποιεί την (G). Ο αλγόριθμος εύρεσης maximum weight spanning tree είναι πολυωνυμικού χρόνου αλγόριθμος - είναι αποδοτικός αλλά όχι απλός. Γίνεται απλούστερος αν το σκορ ικανοποιεί την ιδιότητα της ισοδυναμίας δομών, το οποίο σε αυτή την περίπτωση συνεπάγεται w i j = w j i. Οπότε, το πρόβλημα μετατρέπεται σε αυτό της λύσης ενός μη-κατευθυνόμενου spanning δέντρου (δάσους), όπου επιλέγουμε ποιες ακμές θα λαμβάνουν μέρος στο δάσος και μόνο μετά καθορίζουμε την κατεύθυνσή τους. Αυτό είναι εύκολο πρόβλημα και η αποδοτική υλοποίησή του έχει πολυπλοκότητα O(n 2 log n), όπου n είναι ο αριθμός των κορυφών στο γράφο. Με βάση τα παραπάνω, καταλήγουμε σε ένα αλγόριθμο με πολυπλοκότητα O(n 2 + n 2 log n), όπου n o αριθμός των μεταβλητών στο X και Μ ο αριθμός των δειγμάτων. Αυτή η πολυπλοκότητα είναι αποτέλεσμα δύο σταδίων 1. Στο πρώτο στάδιο, κάνουμε ένα πέρασμα πάνω σε όλα τα δεδομένα και μαζεύουμε τις απαραίτητες στατιστικές για κάθε μία από τις O(n 2 ) ακμές - Αυτό το βήμα απαιτεί O(n 2 M) χρόνο. 2. H κατασκευή του spanning tree χρειάζεται O(n 2 logn). Το άθροισμα των δύο O(n 2 + n 2 logn) = O(n 2 ) καθώς το πρώτο βήμα κυριαρχεί στην πολυπλοκότητα του αλγορίθμου Εκμάθηση γενικών γράφων Το γενικό πρόβλημα της εύρεσης δικτύου με μέγιστο σκορ είναι πολύπλοκο. Έστω d ένας ακέραιος, ορίζουμε G d = G : i, P a G X i d. Για κάθε d 2, δοθέντος ενός συνόλου δεδομένων D και μιας συνάρτησης σκορ με decomposable score, το πρόβλημα της εύρεσης G = arg max G:Gd score(g : D) είναι NP- Hard. Αυτό σημαίνει ότι είναι απίθανο να υπάρχει αποδοτικός αλγόριθμος ο οποίος να κατασκευάζει την υψηλότερη βαθμολογημένη δομή δικτύου για όλα τα σύνολα δεδομένων εισόδου. Επομένως, αντί να ψάχνουμε για αλγόριθμο που πάντα βρίσκει τον υψηλότερο βαθμολογημένο γράφο, χρησιμοποιούμε ευρετικές τεχνικές που προσπαθούν να βρουν το καλύτερο δίκτυο αλλά δεν εγγυώνται να το πετυχαίνουν. Το πρόβλημα πλέον διατυπώνεται ως αναζήτηση στο χώρο των γράφων (η κάθε κατάσταση έχει ως γείτονες ελαφρά διαφοροποιημένες καταστάσεις) και επιστροφή ενός γράφου που παίρνει υψηλό σκορ. Για την προσέγγιση τοπικής αναζήτησης, ορίζουμε τρία συστατικά, ένα χώρο αναζήτησης, που ορίζει το σύνολο των υποψήφιων δικτύων, μία συνάρτηση βαθμολόγησης (scoring function) που στοχεύουμε να μεγιστοποιήσουμε και μια διαδικασία αναζήτησης(συνήθως άπληστο hill climbing) που εξερευνά το χώρο αναζήτησης χωρίς απαραίτητα να το βλέπει όλο. Προβλήματα που προκύπτουν και απαιτούν περαιτέρω ανάλυση είναι το υπολογιστικό κόστος και η παγίδευση του αλγορίθμου σε τοπικά μέγιστα. 51

61 4.4 Εκμάθηση με μερικώς παρατηρήσιμα δεδομένα Μέχρι τώρα θεωρήσαμε ότι τα δεδομένα εκπαίδευσης είναι πλήρως παρατηρήσιμα. Όμως, αυτή η υπόθεση δεν είναι ρεαλιστική σε διάφορες περιπτώσεις. Σε πολλές περιπτώσεις, κάποιες σειρές δεδομένων λείπουν κατά τύχη (missing data), για παράδειγμα κάποια πεδία στα δεδομένα παραλείφθηκαν να συμπληρωθούν κατά τη διαδικασία συλλογής δεδομένων. Σε κάποιες άλλες περιπτώσεις, κάποιες μεταβλητές δεν παρατηρούνται ποτέ απευθείας (hidden variables) αλλά για παράδειγμα παρατηρούνται μόνο από συμπτώματα. Η παρουσία, όμως, των μη-παρατηρήσιμων δεδομένων - hidden variables, missing data - περιπλέκει τη διαδικασία του learning, όπως θα φανεί από το ακόλουθο σενάριο. Ας υποθέσουμε ότι μας δίνεται ένα Bayesian δίκτυο a : asbestos, s : smoking, c : cancer. Θεωρώντας x = (a, s, c), και εφόσον ο ασθενής έχει ολοκληρωμένο record (πλήρως παρατηρήσιμο) p(x n θ) = p(a n, s n, c n θ) = p(c n a n, s n, θ c )p(a n θ α )p(s n θ s ) (4.55) Από την εξίσωση 4.55 παρατηρούμε ότι είναι παραγοντοποιημένη σε όρους τοπικής πληροφορίας και παραμέτρων της κάθε CPD. Όμως, αν είναι διαθέσιμη μερική πληροφορία, τότε θα ήταν λογικό να αξιολογήσω την πληροφορία χρησιμοποιώντας μόνο marginal likelihood. p(x n θ) = a p(a, s n, c n θ) = a p(c n a, s n, θ c )p(a θ α )p(s n θ s ) f s (θ s )f a (θ a )f c (θ c ) (4.56) Επομένως, αφού παρατηρούμε ότι οι παράμετροι είναι συζευγμένοι είναι δύσκολη η μεγιστοποίηση της likelihood των διαφόρων CPDs. Επισήμανση 21. Το συμπέρασμα από το παραπάνω παράδειγμα είναι ότι η παρουσία της κρυμμένης μεταβλητής εισάγει εξαρτήσεις στην εκ των υστέρων κατανομή των παραμέτρων περιπλέκοντάς την Missing at Random υπόθεση Σε αυτό το σημείο καλούμαστε να δώσουμε απάντηση στο ερώτημα κάτω από ποιες προϋποθέσεις είναι έγκυρο να χρησιμοποιούμε τη marginal πιθανοφάνεια για να αξιολογούμε τις παραμέτρους. Κατα ρχάς χωρίζουμε τα x σε x visible και x invisible, ώστε x = [x vis, x inv ]. Επιπλέον, πρέπει να μοντελοποιήσουμε τον τρόπο με τον οποίο πληροφορούμαστε πότε τα δεδομένα θα λείπουν. Θα χρησιμοποιούμε την ένδειξη m inv = 1 ότι η κατάσταση της missing entry θα λείπει p(m inv x vis, x inv, θ) Ορισμός 40. (Ορισμός Missing at Random υπόθεσης) Ο μηχανισμός που παράγει τα missing data δεν εξαρτάται από την παράμετρο του μοντέλου θ ή από την τιμή που παίρνουν τα missing data: p(m inv x vis, x inv, θ) = p(m inv x vis ) Ακόμα πιο ισχυρή υπόθεση είναι αυτή της εντελώς MAR, όπου ο μηχανισμός είναι εντελώς ανεξάρτητος από το μοντέλο: p(m inv = 1) (4.58) Αυτό ισχύει στην περίπτωση που έχουμε να κάνουμε με Latent Variable μοντέλα, στην οποία η κατάσταση της κρυφής μεταβλητής λείπει πάντα. Από εδώ και πέρα θα θεωρούμε ότι έχουμε MAR και θα έχουμε ότι η P (u θ) = h p(u, h θ) (4.59) 52

62 δηλαδή θα χωρίζουμε τις μεταβλητές σε visible και hidden και για να μαθαίνουμε τις παραμέτρους του μοντέλου θα βελτιστοποιούμε πάνω μόνο στις παρατηρίσιμες μεταβλητές Συνάρτηση πιθανοφάνειας Έστω ότι έχουμε ένα γράφο G πάνω σε ένα σύνολο μεταβλητών X. Στη γενική περίπτωση κάθε στιγμιότυπο έχει διαφορετικό σύνολο παρατηρημένων μεταβλητών. Θα συμβολίζουμε O[m] και o[m] τις παρατηρήσιμες μεταβλητές και τις τιμές τους αντίστοιχα, και με H[m] τις missing (ή hidden) μεταβλητές στο m-οστό στιγμιότυπο. Θα χρησιμοποιούμε D για να δηλώνουμε τις τιμές των δεδομένων που όντως παρατηρήθηκαν, H = m h[m] μία δυνατή ανάθεση τιμών σε όλες τις μεταβλητές σε όλα τα δείγματα. Θα χρησιμοποιούμε L(θ : D) για να δηλώνουμε την πιθανοφάνεια των παρατηρούμενων μεταβλητών στα δεδομένα, αθροίζοντας πάνω στις κρυφές μεταβλητές και με l(θ:d) θα συμβολίζουμε το λογάριθμο αυτής της συνάρτησης. L(θ : D) = P (D θ) = H P (D, H θ) (4.60) Δυστυχώς, ο αριθμός των πιθανών αναθέσεων σε αυτό το άθροισμα είναι εκθετικό στον αριθμό των missing τιμών στο σύνολο δεδομένων. Θεωρώντας IID δεδομένα, μπορούμε να γράψουμε τη συνάρτηση πιθανοφάνειας ως εξής. L(θ : D) = P (o[m] θ) = P (o[m], h[m] θ) (4.61) m m Παρατηρούμε ότι για κάθε δείγμα, απαιτείται inference για τον υπολογισμό της πιθανότητας των παρατηρήσεων, γεγονός το οποίο έχει υπολογιστικό κόστος. Αυτό μπορεί να κάνει το πρόβλημα εκμάθησης πολύπλοκο, ανάλογα με τη δομή του δικτύου και του μηχανισμού με τον οποίο λείπουν οι τιμές. Επισήμανση 22. Συμπερασματικά, στην παρουσία μερικώς παρατηρήσιμων δεδομένων, έχουμε χάσει τις σημαντικές ιδιότητες της συνάρτησης πιθανοφάνειας, το ότι έχει ένα μόνο μέγιστο, την αναπαράσταση κλειστής μορφής και την αποσύνθεσή της σε γινόμενο πιθανοφανειών για διαφορετικές παραμέτρους. h[m] Ένα άλλο θέμα που προκύπτει στο πλαίσιο των δεδομένων που λείπουν είναι η ικανότητά μας να αναγνωρίζουμε μοναδικά ένα μοντέλο από τα δεδομένα (identifiability), την οποία ορίζουμε ακολούθως: Ορισμός 41. ( Identifiability) Έστω ότι έχουμε ένα παραμετρικό μοντέλο με παραμέτρους θ : Θ που ορίζει μια κατανομή P (X θ) πάνω σε ένα σύνολο Χ μετρήσιμων μεταβλητών. Μία επιλογή παραμέτρων θ είναι αναγνωρίσιμη (identifiable) αν δεν υπάρχει άλλο θ θ τέτοιο ώστε P (X θ) = P (X θ ). Ένα μοντέλο είναι identifiable αν όλες οι επιλογές παραμέτρων θ : Θ είναι identifiable, δηλαδή αν κάθε επιλογή παραμέτρων υποννοεί διαφορετική κατανομή πάνω στις παρατηρημένες μεταβλητές Εκτίμηση Παραμέτρων Gradient Ascent Για να υπολογίσουμε το gradient για την CPD P (X U), θα χρειαστεί να υπολογίσουμε την από κοινού κατανομή του x και του u σε σχέση με την τρέχουσα παράμετρο θ και με κάθε παρατηρούμενο δείγμα x[m]. Δηλαδή, θέλουμε να υπολογίσουμε την P (X[m], U[m] o[m], θ), m. Για να το κάνουμε αυτό, 53

63 πρέπει να τρέξουμε αλγόριθμο inference για κάθε δείγμα. Αυτό μπορεί να γίνει χρησιμοποιώντας μία clique tree calibration, καθώς η ιδιότητα της διατήρησης οικογένειας εγγυάται ότι το Χ και οι γονείς του U θα βρίσκονται μαζί στο clique tree. Expectation Maximization: Γενικός ΕΜ αλγόριθμος log P (D θ) = 1 P (x i, u i d[m], θ) (4.62) θ Xi u i θ i u i m ΑΛΓΟΡΙΘΜΟΣ ΕΜ Δοθείσης μιας από κοινού κατανομής p(x, Z θ) πάνω στις παρατηρημένες μεταβλητές Χ και κρυφές μεταβλητές Ζ, που κυριαρχούνται από παραμέτρους θ, ο στόχος μας είναι η μεγιστοποίηση της συνάρτησης πιθανοφάνειας p(x θ) όσον αφορά το θ. 1. Επέλεξε μία αρχικοποίηση για τις παραμέτρους θold 2. Βήμα E: Υπολόγισε το p(z X, θ old ) 3. Βήμα Μ: Υπολόγισε το θ new το οποίο δίνεται από θ new = arg max Q(θ, θ old ) (4.63) θ όπου Q(θ, θ old ) = Z p(z X, θ old ) ln p(x, Z θ) (4.64) 4. Έλεγξε για σύγκλιση είτε της log πιθανοφάνειας είτε τιμών παραμέτρων. Αν το κριτήριο σύγκλισης δεν ικανοποιείται, τότε θ old θ new (4.65) και μπορείς να επανέλθεις στο βήμα 2. Επίσης, ο ΕΜ αλγόριθμος μπορεί να χρησιμοποιηθεί για να βρει τις MAP (μέγιστης εκ των υστέρων πιθανοφάνειας) λύσεις για μοντέλα στα οποία μία εκ των προτέρων κατανομή p(θ) ορίζεται πάνω στις παραμέτρους. Σε αυτή την περίπτωση το Ε βήμα παραμένει το ίδιο όπως στην περίπτωση της μέγιστης πιθανοφάνειας, ενώ στο Μ βήμα μεγιστοποιείται η ποσότητα που δίνεται από Q(θ, θ old ) + ln p(θ) Διαισθητικά, ξεκινάμε από ένα τυχαίο σημείο εκκίνησης, είτε από μία επιλογή παραμέτρων είτε από κάποια αρχική ανάθεση στις κρυμμένες μεταβλητές. Αν υποθέσουμε ότι ξεκινάμε με το πρώτο, με ανάθεση παραμέτρων, τότε χρησιμοποιούμε τις τρέχουσες παραμέτρους για να ολοκληρώσουμε τα δεδομένα, χρησιμοποιώντας πιθανοτική inference. Μετά, αντιμετωπίζουμε τα ολοκληρωμένα δεδομένα σαν να τα είχαμε παρατηρήσει και μαθαίνουμε ένα νέο σύνολο παραμέτρων. Η ακολουθία των βημάτων E και Μ δίνει σε κάθε επανάληψη νέες παραμέτρους που έχουν απαραίτητα καλύτερη πιθανοφάνεια από αυτές της προηγούμενης επανάληψης. Θεωρητική Θεμελίωση του ΕΜ αλγορίθμου Ο στόχος του EM αλγορίθμου είναι η εύρεση λύσης μέγιστης πιθανοφάνειας για μοντέλα τα οποία έχουν κρυφές μεταβλητές. Έστω το σύνολο των παρατηρούμενων δεδομένων που δηλώνεται με X, στο οποίο η n-οστή σειρά συμβολίζεται με x T n, και το σύνολο όλων των κρυφών μεταβλητών Z, το οποίο έχει μια 54

64 αντίστοιχη σειρά zn T. Το σύνολο των παραμέτρων του μοντέλου δηλώνεται με θ, και επομένως η log πιθανοφάνεια δίνεται από ln p(x θ) = ln p(x, Z θ) (4.66) Z Αν οι κρυφές μεταβλητές είναι συνεχείς, ο ανωτέρω τύπος αλλάζει αντικαθιστώντας το άθροισμα πάνω στο Ζ με ένα ολοκλήρωμα. Επισήμανση 23. Μία βασική παρατήρηση που πρέπει να κάνουμε είναι ότι το άθροισμα πάνω στις κρυφές μεταβλητές εμφανίζεται μέσα στον λογάριθμο. Ακόμα και αν η από κοινού κατανομή p(x, Z θ) ανήκει σε εκθετική οικογένεια, η περιθώρια κατανομή p(x θ) συνήθως δεν ανήκει σε εκθετική οικογένεια, καθώς είναι αποτέλεσμα άθροισης. Η παρουσία αυτού του αθροίσματος εμποδίζει τον λογάριθμο από το να δρα άμεσα στην κοινή κατανομή, καταλήγοντας ως αποτέλεσμα σε περίπλοκες εκφράσεις για τη λύση μέγιστης πιθανοφάνειας. Ας υποθέσουμε τώρα ότι για κάθε παρατήρηση στο Χ δίνεται η αντίστοιχη τιμή της κρυφής μεταβλητής Ζ. Θα ονομάζουμε το {X, Z} πλήρες σύνολο δεδομένων και θα αναφερθούμε στα πραγματικά δεδομένα που παρατηρήσαμε Χ ως μη-πλήρες σύνολο δεδομένων. Η συνάρτηση πιθανοφάνειας για το πλήρες σύνολο δεδομένων παίρνει τη μορφή ln p(x, Z θ) και θα υποθέσουμε ότι η μεγιστοποίηση αυτής της log συνάρτησης πιθανοφάνειας στα πλήρη δεδομένα ότι είναι εύκολη. Όμως, στην πραγματικότητα, δεν είναι γνωστό το πλήρες σύνολο δεδομένων {X, Z} αλλά μόνο τα μη πλήρη δεδομένα Χ. Η κατάσταση γνώσης μας για τις τιμές των κρυφών μεταβλητών στο Ζ δίνεται μόνο από την εκ των υστέρων κατανομή p(z X, θ). Επειδή δεν μπορούμε να χρησιμοποιήσουμε την log likelihood του πλήρους συνόλου δεδομένων, θεωρούμε αντί αυτού την αναμενόμενη τιμή της κάτω από την εκ των υστέρων κατανομή της κρυφής μεταβλητής, η οποία και θα αποτελέσει - όπως θα δούμε - το E step του EM αλγορίθμου. Στο επακόλουθο Μ βήμα, εμείς μεγιστοποιούμε αυτή την αναμενόμενη τιμή. Αν η τρέχουσα εκτίμηση για τις παραμέτρους δηλώνεται ως θ old τότε ένα σύνολο διαδοχικών E και Μ βημάτων δίνουν θέση σε μία ανανεωμένη εκτίμηση του θ, θ new. Αυτός ο αλγόριθμος αρχικοποιείται διαλέγοντας κάποια τιμή εκκίνησης για τις παραμέτρους θ 0. Στο Ε βήμα χρησιμοποιούμε τις τρέχουσες τιμές θ old για να βρούμε την εκ των υστέρων κατανομή των κρυφών μεταβλητών που δίνεται από p(z X, θ old ). Οπότε χρησιμοποιούμε αυτήν την εκ των υστέρων κατανομή για να βρούμε την αναμενόμενη τιμή της log πιθανοφάνειας του πλήρους συνόλου δεδομένων που υπολογίζεται για μια τιμή παραμέτρου θ, η οποία συμβολίζεται από p(z X, θ old ) ln p(x, Z θ) Z Στο M βήμα, εμείς καθορίζουμε αυτήν την ανανεωμένη εκτίμηση της παραμέτρου θ new μεγιστοποιώντας τη συνάρτηση θ new = arg max Q(θ, θ old ). (4.67) θ Ο αλγόριθμος αυτός έχει την ιδιότητα σε κάθε κύκλο επανάληψης να αυξάνει την log πιθανοφάνεια των μη-πλήρων δεδεομένων (εκτός και αν βρίσκεται ήδη σε τοπικό μέγιστο). Ο ΕΜ αλγόριθμος για Bayesian δίκτυα ΑΛΓΟΡΙΘΜΟΣ ΕΜ για τα Bayesian Δίκτυα Ας υποθέσουμε ότι ο αλγόριθμος ξεκινά με μια αρχική ανάθεση παραμέτρων θ 0, η οποία μπορεί να επιλεγεί είτε τυχαία, είτε χρησιμοποιώντας κάποια άλλη προσέγγιση. Μετά, για t=0, 1,... ο αλγόριθμος επαναλαμβανόμενα εκτελεί τα παρακάτω βήματα: 55

65 1. Expectation βήμα (Ε βήμα) Ο αλγόριθμος χρησιμοποιεί την τρέχουσα παράμετρο θ t για να υπολογίσει τις αναμενόμενες επαρκείς στατιστικές Για κάθε παρατηρούμενο δεδομένο o[m] και κάθε οικογένεια X, U που αντιστοιχούν σε κόμβους του BN και σε γονείς τους αντίστοιχα, υπολόγισε την από κοινού κατανομή P (X, U o[m], θ t ) (4.68) Υπολόγισε τις αναμενόμενες επαρκείς στατιστικές για κάθε x, u ως: M θ t[x, u] = m P (x, u o[m], θ t ) (4.69) Αυτή η φάση ονομάζεται expectation step διότι οι αριθμοί που χρησιμοποιούνται στον τύπο είναι οι αναμενόμενες επαρκείς στατιστικές, όπου η αναμενόμενη τιμή ορίζεται ως προς το τρέχον σύνολο των παραμέτρων. 2. Maximization βήμα (M βήμα) Σε αυτό το βήμα θεώρησε τις αναμενόμενες επαρκείς στατιστικές ότι έχουν όντως παρατηρηθεί και εκτέλεσε εκτίμηση μέγιστης πιθανοφάνειας όσον αφορά αυτές, προκειμένου να οριστεί ένα νέο σύνολο παραμέτρων: θ t+1 x u = M θ t [x, u] M θ t[u] (4.70) Αυτή η φάση ονομάζεται βήμα μεγιστοποίσης καθώς μεγιστοποιούμε την πιθανοφάνεια όσον αφορά τις αναμενόμενες επαρκείς στατιστικές. Αξίζει να σημειωθεί ότι το βήμα της μεγιστοποίησης είναι εύκολο, ενώ το δύσκολο βήμα είναι αυτό της expectation, διότι για τον υπολογισμό των αναμενόμενων επαρκών στατιστικών, πρέπει να τρέξουμε inference για Bayesian Network πάνω στο δίκτυο < G, θ t > τρέχοντας ένα γύρο ανανέωσης δυναμικών (calibration) πάνω στο clique tree - καθώς η ιδιότητα της family preservation εγγυάται ότι τα X και οι γονείς του U θα βρίσκονται μαζί σε κάποιο cluster στο δέντρο ή στο γράφο. Τέλος, πρέπει να τονίσουμε ότι ο ΕΜ συγκλίνει σε ένα Expectation βήμα (Ε βήμα) στατικό (stationary) σημείο της συνάρτησης πιθανοφάνειας. Καθώς η σύγκλιση στο ολικό μέγιστο μπορεί να επιτευχθεί μόνο όταν ξεκινάμε από συγκεκριμένα σημεία εκκίνησης, και είναι συνήθως ασταθή, εξαιτίας μικρού θορύβου στις παραμέτρους που είναι πιθανός να μετακινήσει τον αλγόριθμο μακριά από αυτό το σημείο. Οπότε, ο ΕΜ πρακτικά συγκλίνει σε τοπικό μέγιστο αυτής της συνάρτησης πιθανοφάνειας. Bayesian ομαδοποίηση (clustering) χρησιμοποιώντας τον ΕΜ Μια βασική εφαρμογή της μάθησης με ατελή δεδομένα, και συγκεκριμένα του ΕΜ, είναι αυτή του Bayesian clustering. Στο πρόβλημα αυτό υποθέτουμε ότι έχουμε ένα σύνολο δεδομένων το οποίο είναι πλήρως παρατηρήσιμο. Θέλουμε να κατηγοροποιήσουμε αυτά τα δεδομένα σε συναφείς κατηγορίες σημείων που μοιράζονται κάποιες στατιστικές ιδιότητες. Το Bayesian Clustering παράδειγμα θεωρεί αυτό το task σαν ένα πρόβλημα εκμάθησης με μία μόνο κρυφή μεταβλητή C η οποία δηλώνει την κατηγορία ή την κλάση από την προέρχεται ένα δείγμα. Θα θεωρούμε ότι τα στιγμιότυπα σε κάθε κλάση C προέρχονται από απλές κατανομές. Οπότε, η υπό συνθήκη κατανομή για τις διάφορες κλάσεις P (x c) παίρνει συγκεκριμένες μορφές, π.χ για την περίπτωση των δεδομένων με πραγματικές τιμές είναι μια Gaussian κατανομή πολλών μεταβλητών ή σε διακριτές τιμές υποθέτουμε ότι είναι μία δομή Naive Bayes, όπου κάθε δείγμα είναι ανεξάρτητο από τα άλλα δοθείσης της μεταβλητής κλάσης. Γενικά, αυτή η προσέγγιση βλέπει τα δεδομένα σαν να έρχονται από μείξη κατανομών και προσπαθεί να χρησιμοποιήσει την κρυφή μεταβλητή για να χωρίσει τη μείξη στα επιμέρους συστατικά της. 56

66 Για την περίπτωση του Naive Bayes μοντέλου, όπου η κρυμμένη μεταβλητή κλάσης είναι ο μόνος γονιός όλων των παρατηρούμενων δειγμάτων, το Ε βήμα περιλαμβάνει τον υπολογισμό της πιθανότητας των διαφόρων τιμών των μεταβλητών κλάσεων για κάθε δείγμα. Επομένως, μπορούμε να θεωρήσουμε την εκτέλεση του ΕΜ ως απαλή κατηγοριοποίηση των δειγμάτων, δηλαδή το κάθε δείγμα ανήκει σε κάποιο βαθμό σε πολλαπλές κλάσεις. Στο Μ βήμα υπολογίζουμε τις παραμέτρους για τις CPDs στη μορφή P (X C) και την εκ των προτέρων κατανομή P (C) πάνω στις διάφορες κλάσεις. Αυτές οι εκτιμήσεις εξαρτώνται από τις αναμενόμενες επαρκείς στατιστικές. 57

67 Κεφάλαιο 5 Εφαρμογές αναπαράστασης και inference σε γραφικά μοντέλα 5.1 Αναπαράσταση Κατασκευή Bayesian Δικτύου για την πρόβλεψη αξιοπιστίας ατόμου για απόκτηση πιστωτικής κάρτας Σενάριο: Ας θεωρήσουμε το σενάριο κατά το οποίο θέλουμε να σχεδιάσουμε ένα προβλεπτικό σύστημα το οποίο θα χρησιμοποιεί μια τράπεζα για να κρίνει κατά πόσον θα χορηγήσει μια πιστωτική κάρτα σε έναν πελάτη. Και ας υποθέσουμε ότι οι παράγοντες που παρατηρεί η τράπεζα στο άτομο που συμπληρώνει αίτηση για πιστωτική κάρτα, ώστε να προβλέψει κατά πόσον θα είναι συνεπής ως προς την εξόφληση των οφειλών του, είναι οι εξής: εισόδημα, αριθμός περουσιακών στοιχείων, λόγος χρεών προς εισόδημα, ιστορικό πληρωμών, και ηλικία ανθρώπου. Επίσης, σύμφωνα με τη γνώση των ειδικών, θεωρείται ότι η αξιοπιστία για πιστωτική κάρτα εξαρτάται άμεσα από το πόσο αξιόπιστο είναι το άτομο, το μελλοντικό εισόδημα του ατόμου και το λόγο χρεών προς το εισόδημα του ατόμου. 1 Στόχος: Θέλουμε να κατασκευάσουμε ένα μοντέλο που να προβλέπει την αξιοπιστία του δυνητικού πελάτη της τράπεζας συμπεριλαμβανομένης της γνώσης των ειδικών και των γνώσεων από τη θεωρία των Bayesian δικτύων που παρουσιάσαμε στην ενότητα της θεωρίας. Λεπτομέρειες Δημιουργούμε το σκελετό του Bayesian δικτύου με τις οκτώ μεταβλητές (σχήμα 5.1) θεωρώντας ότι μας δόθηκαν από τους ειδικούς οι ακόλουθες υποθέσεις. 1) όσο καλύτερο το ιστορικό των πληρωμών του ατόμου, τόσο πιο πιθανό το άτομο να είναι αξιόπιστο 2) όσο μεγαλύτερο είναι το άτομο, τόσο πιο πιθανό το άτομο να είναι αξιόπιστο 3) μεγαλύτεροι άνθρωποι έχουν την τάση να έχουν τέλειο ιστορικό πληρωμών 4) Άνθρωποι με μεγαλύτερο λόγο χρεών προς εισόδημα είναι λιγότερο πιθανό να έχουν καλό ιστορικό πληρωμών 5) Όσο υψηλότερο το εισόδημα, τόσο πιο πιθανό το άτομο να έχει περισσότερα περουσιακά στοιχεία 6) Όσο περισσότερα περουσιακά στοιχεία και υψηλότερο εισόδημα, τόσο πιο πιθανό να έχει υποσχόμενο μελλοντικό εισόδημα 7) Αν όλα τα άλλα είναι ίσα, οι αξιόπιστοι άνθρωποι έχουν πιο πολύ την τάση να είναι κατάλληλοι για πιστωτική κάρτα απότι οι αναξιόπιστοι άνθρωποι. Ομοίως, άνθρωποι με υποσχόμενα μελλοντικά εισοδήματα είναι πιο πιθανό να είναι κατάλληλοι για πιστωτική κάρτα σε σχέση με ανθρώπους που δεν έχουν. 1 Τα σενάρια που παρουσιάζονται ως εφαρμογές στο παρόν και επόμενο κεφάλαιο έχουν βασιστεί στα assignments του online Coursera μαθήματος Probabilistic Graphical Models, της Daphne Koller. Ο αναγνώστης μπορεί να ανατρέξει εκεί για την εύρεση των datasets που χρησιμοποιήθηκαν στις εξομοιώσεις. 58

68 Σχήμα 5.1: Bayesian δίκτυο για αξιοπιστία απόκτησης πιστωτικής κάρτας Υλοποίηση Πρώτο βασικό κομμάτι της υλοποίησης αποτελεί η κατασκευή του Bayesian δικτύου. Προκειμένου η πιθανοτική συμπεριφορά αυτού του μικρού Bayesian δικτύου να έχει αυτή την πιθανοτική συμπεριφορά, κωδικοποιούμε τις τιμές των υπό συνθήκη κατανομών των κόμβων των μεταβλητών με τέτοιο τρόπο, ώστε οι περιθώριες κατανομές που προκύπτουν πάνω σε υποσύνολα των μεταβλητών-κόμβων του δικτύου να είναι συνεπείς με την επιθυμητή συμπεριφορά που περιγράψαμε παραπάνω. Αξίζει να τονίσουμε ότι στο συγκεκριμένο σενάριο έχουμε ελευθερία για την αριθμητική τιμή της εγγραφής της υπό συνθήκη κατανομής του κάθε κόμβου του δικτύου, εφόσον η πιθανοτική συμπεριφορά είναι η επιθυμητή. Το Bayesian δίκτυο θα αποτελείται από 8 μεταβλητές: Age ={Between16and21, Between22and64, Over65} Income ={High, Medium, Low} Ratio of Debts to income ={Low, High} Assets = {High, Medium, Low} Future Income = {Promising, Not promising} Payment History = {Excellent, Acceptable, Unacceptable} Reliability = {Reliable, Unreliable} Credit Worthiness = {Positive, Negative} Για συντομογραφία, συμβολίζουμε τις μεταβλητές κόμβους με τα αρχικά τους R (Reliable), H (Payment history), A (Age), D: ratio of debts to income, Ι: Income, F: Future Income, C: credit worthy. Και 59

69 συμπληρώνουμε τις υπό συνθήκη κατανομές των κόμβων του ΒΝ με τέτοιο τρόπο ώστε να ισχύουν για παράδειγμα οι σχέσεις: P(R = Reliable H= excellent) >P(R = Reliable H=acceptable) >P(R=Reliable H=Unacceptable) P(H= acceptable D = High) < P(H = acceptable D= Low) P(C = Positive R = Reliable) > P(C = Positive R = Unreliable) Οπότε, με τη χρήση του εργαλείου SAMIAM 2, κατασκευάζουμε το Bayesian Network για την πρόβλεψη αξιοπιστίας ατόμου για απόκτηση πιστωτικής κάρτας. Υπολογισμός πιθανοτικών επερωτημάτων πάνω στο Bayesian δίκτυο με χρήση πράξεων παραγόντων Γνωρίζουμε ότι ο κάθε κόμβος-τυχαία μεταβλητή του Bayesian δικτύου αποτελεί έναν παράγοντα, ο οποίος βρίσκεται σε μορφή υπό συνθήκης κατανομής CPD. Οπότε, προκειμένου να είμαστε σε θέση να κάνουμε προβλέψεις και γενικά να επάγουμε συμπεράσματα πάνω στο δίκτυό μας, πρέπει να γνωρίζουμε να κάνουμε πράξεις μεταξύ παραγόντων. 1. Γινόμενο μεταξύ δύο παραγόντων Παράγοντας(Α,Β) Α Β Τιμή a1 b1 0.5 a1 b2 0.8 a2 b1 0.1 a2 b2 0.0 a3 b1 0.3 a3 b2 0.9 Παράγοντας(B,C) B C Τιμή b1 c1 0.5 b1 c2 0.7 b2 c1 0.1 b2 c2 0.2 Γινόμενο παραγόντων A B C Τιμή a1 b1 c a1 b1 c a1 b2 c a1 b2 c a2 b1 c a2 b1 c a2 b2 c a2 b2 c a3 b1 c a3 b1 c a3 b2 c a3 b2 c Περιθώρια κατανομή παράγοντα Επιστρέφει τον παράγοντα που απομένει όταν αθροίζω πάνω σε μία μεταβλητή. Ακολούθως φαίνεται η περιθώρια κατανομή του παράγοντα ABC όταν αθροίζουμε πάνω στην B: Περιθώρια κατανομή Α C Τιμή a1 c a1 c a2 c a2 c a3 c a3 c Το SAMIAM ( είναι ένα ολοκληρωμένο εργαλείο για τη μοντελοποίηση και την επαγωγή συμπερασμάτων σε Bayesian δίκτυα. Έχει αναπτυχθεί σε Java από την Automatic Reasoning ομάδα του καθηγητή Adnan Darwiche στο UCLA. Περιλαμβάνει δύο κύριες συνιστώσες: μια γραφική διεπαφή χρήστη και μια μηχανή συλλογισμού, οι οποίες επιτρέπουν εργασίες όπως κατασκευή Bayesian μοντέλων δικτύου, εφαρμογή ΕΜ αλγορίθμου, εκτίμηση παραμέτρων. 60

70 3. Observe evidence Παρατηρούμε τις τιμές μεταβλητής, και μειώνουμε τον παράγοντα, ώστε δοθέντων των παρατηρούμενων τιμών κάποιων μεταβλητών, αφήνουμε τις entries που είναι συνεπείς με αυτό. Το αποτέλεσμα αυτής της πράξης δεν είναι κανονικοποιημένο. Ακολούθως, εικονίζεται ο παράγοντας που προκύπτει όταν έχουμε ως evidence την τιμή c1 στον παράγοντα (Α, Β, C) Μειωμένος παράγοντας A B C Τιμή a1 b1 c a1 b2 c a2 b1 c a2 b2 c a3 b1 c a3 b2 c Οπότε αφού έχουμε ορίσει αυτές τις βασικές πράξεις μεταξύ των παραγόντων, μπορούμε να υπολογίσουμε την από κοινού κατανομή των κόμβων του δικτύου και να πάρουμε την περιθώρια κατανομή πάνω σε έναν κόμβο του δικτύου, αφού πρώτα παρατηρήσω τις τιμές κάποιων κόμβων του δικτύου. Υπολογισμός από κοινού κατανομής Δοθέντος μιας λίστας παραγόντων που αναπαριστούν το Bayesian δίκτυο και κάνοντας χρήση της πράξης γινομένου μεταξύ παραγόντων και του κανόνα της αλυσίδας που ισχύει στα Bayesian δίκτυα, από την 1.1, υπολογίζουμε την από κοινού κατανομή ως εξής: P (X 1,..., X n ) = i P (X i Parents G (X i )) (5.1) Υπολογισμός περιθώριας κατανομής όταν έχουμε παρατηρήσει τιμές μεταβλητών Πρώτα μειώνουμε τους παράγοντες του δικτύου με βάση τις τιμές μεταβλητών τις οποίες έχουμε παρατηρήσει. Έπειτα, κανονικοποιούμε τον παράγοντα που προκύπτει και πάνω στον κανονικοποιημένο αυτό παράγοντα υπολογίζουμε την περιθώρια κατανομή. Αφού έχουμε υλοποιήσει τις συναρτήσεις του γινομένου μεταξύ παραγόντων, περιθώριας κατανομής, observe evidence, περιθώρια πάνω σε observed και υπολογισμός από κοινού κατανομής πάνω σε δίκτυο, μπορούμε να απαντούμε σε πιθανοτικά επερωτήματα, χρησιμοποιώντας πράξεις μεταξύ παραγόντων. (Στην υλοποίηση των πράξεων αυτών θεωρούμε ότι οι παράγοντες είναι στην πραγματικότητα στη μορφή έγκυρων CPDs, ώστε να μπορούν να χρησιμοποιηθούν για την αναπαράσταση Bayesian δικτύου). Επομένως, μπορούμε τώρα να ελέγξουμε την υλοποίηση αυτών των πράξεων παραγόντων πάνω στο δίκτυο για την αξιοπιστία ατόμου προς απόκτηση πιστωτικής κάρτας, που σχεδιάσαμε στο SAMIAM. Συγκεκριμένα, με τη συνάρτηση ConvertNetwork.m μπορούμε να μετατρέπουμε το.net αρχείο που προέκυψε από το SAMIAM σε ένα πίνακα παραγόντων που αποτελούν τους παράγοντες που απαρτίζουν το Bayesian δίκτυο. Κάθε παράγοντας αναπαρίσταται ως μια δομή, με πεδία.var (μεταβλητές),.card (cardinality, πλήθος πιθανών τιμών μεταβλητής),.val (τιμές στα διάφορα assignment των μεταβλητών του factor). Έχουμε τη δυνατότητα να αναθέτουμε και να ανακτούμε τις τιμές assignments των συνδυασμών του πεδίου του κάθε παράγοντα, κάνοντας χρήση των συναρτήσεων Index to assignment, assignment to index, SetValueOfAssignment, GetValueOfAssignment και λαμβάνοντας υπόψη την cardinality των μεταβλητών που τα απαρτίζουν. Η υλοποίηση των βασικών πράξεων των παραγόντων βρίσκονται στις συναρτήσεις FactorProduct.m, FactorMarginalization.m, ObserveEvidence.m, ComputeJointDistribution.m, ComputeMarginal.m Οπότε, επειδή έχουμε την ακόλουθη αρίθμηση για τις μεταβλητές, names = [1,1] = Age [2,1] = Reliability [3,1] = Assets [4,1] = PaymentHistory [5,1] = FutureIncome [6,1] = CreditWorthiness [7,1] = DebtIncomeRatio [8,1] = Income και επειδή έχουμε παρατηρήσει ότι η ηλικία του ατόμου που θέλει 61

71 Σχήμα 5.2: Επαγωγή συμπεράσματος πάνω στο Bayesian δίκτυο για αξιοπιστία απόκτησης πιστωτικής κάρτας να αποκτήσει πιστωτική κάρτα είναι μεταξύ 22 και 64, το εισόδημα είναι υψηλό, ο λόγος των χρεών προς το εισόδημα είναι υψηλός και ο αριθμός των περουσιακών στοιχείων είναι μεσαίος, μπορούμε να υπολογίσουμε την περιθώρια κατανομή του κόμβου Credit worthiness (ο οποίος και μας ενδιαφέρει) -αφού πρώτα έχουμε παρατηρήσει τις ανωτέρω σχετικές τιμές στους σχετικούς κόμβους-. M = ComputeMarginal([6],F,[1, 2;3, 2;7, 2;8, 1]) το οποίο μας δίνει ως έξοδο: M = scalar structure containing the fields: var = 6 card = 2 val = Επομένως, βγάζουμε το συμπέρασμα ότι κατά 21,648 % είναι πιθανό να είναι credit worthy (και κατά το % να μην είναι αξιόπιστος για πιστωτική κάρτα). Αυτές οι πιθανότητες που υπολογίσαμε εφαρμόζοντας τις πράξεις πάνω στους παράγοντες των CPDs του δικτύου είναι ίδιες με αυτές που προέκυψαν από το εργαλείο SAMIAM. Επομένως κατασκευάσαμε ένα έγκυρο προβλεπτικό σύστημα προς χρήση από τράπεζα, ο οποίος συνιστά ότι - αν η τράπεζα θέλει ο υποψήφιος πελάτης να είναι credit worthy π.χ πάνω από 50%-, ότι είναι φρόνιμο να μη χορηγηθεί πιστωτική κάρτα σε έναν πελάτη με αυτά τα χαρακτηριστικά Κατασκευή Bayesian Δικτύου για Γενετική Κληρονομικότητα Σενάριο: Ας θεωρήσουμε τώρα το σενάριο κατά το οποίο θέλουμε να σχεδιάσουμε έναν μοντέλο το οποίο θα προβλέπει την πιθανότητα με την οποία ένα άτομο θα έχει μια ασθένεια (ή ένα φυσικό χαρακτηριστικό). Στόχος: Συγκεκριμένα, το μοντέλο αυτό θα χρησιμοποιηθεί από σύμβουλους γενετικής ιατρικής που έχουν ως ρόλο να συμβουλεύουν ζευγάρια με ιστορικό γενετικής ασθένειας, ανάλογα με την πιθανότη- 62

72 Σχήμα 5.3: Σκελετός Bayesian δικτύου για γενετική κληρονομικότητα από οικογενειακό δέντρο. τα που υπάρχει να γεννηθεί παιδί με τη συγκεκριμένη ασθένεια, αν θα πρέπει να αποκτήσουν δικό τους παιδί (γεννήσουν) ή να υιοθετήσουν. Γνώση ειδικών: Για να προβλέψουμε την πιθανότητα ένα άτομο να έχει ένα συγκεκριμένο χαρακτηριστικό, χρησιμοποιούμε γενετική πληροφορία. Πολλά γενετικά χαρακτηριστικά κωδικοποιούνται από γονίδια, τα οποία είναι ακολουθίες DNA που βρίσκονται στο κάθε κύτταρο και περνάνε από γενιά σε γενιά. Κάθε γονίδιο μπορεί να έχει πολλαπλά αλληλόμορφα γονίδια (alleles) τα οποία είναι διαφορετικές εκδοχές του ίδου γονιδίου. Για παράδειγμα, ένα γονίδιο που συμμετέχει στο χρώμα μαλλιών μπορεί να να έχει ένα allele που κάνει το χρώμα μαλλιών του ατόμου καστανό και άλλο allele που το κάνει κόκκινο. Καθώς τα σχέδια της γενετικής κληρονομικότητας είναι γενικά συνεπή από γενιά σε γενιά, συνήθως ένας φυσικός τρόπος να τα μοντελοποιούμε είναι να χρησιμοποιούμε μοντέλα στα οποία τμήματα επαναλαμβάνονται αυτούσια σε διάφορες μορφές του δικτύου (template models). Υλοποίηση - λεπτομέρειες κατασκευής μοντέλου: Ας θεωρήσουμε ότι οι σύμβουλοι γενετικής θα μας δίνουν οικογενειακά δέντρα, συχνότητες alleles για διαφορετικά alleles, και κάποια πληροφορία στα αποτελέσματα του να έχει ένα άτομο συγκεκριμένα alleles. Με βάση αυτό το οικογενειακό δέντρο εμείς θέλουμε να κατασκευάσουμε Bayesian δίκτυο το οποίο να χρησιμοποιούμε για να καθορίσουμε την πιθανότητα να έχει το άτομα συγκεκριμένα γενετικά χαρακτηριστικά. Οπότε, σε αντίθεση με το προηγούμενο σενάριο που δεν μας ενδιέφερε τόσο η αριθμητική τιμή των εγγραφών των CPDs στο γράφο, σε αυτό το σενάριο θα προσπαθήσουμε να κατασκευάσουμε εξ ολοκλήρου τους παράγοντες που απαρτίζουν το μοντέλο μας. Ας θεωρήσουμε πρώτα ως παράδειγμα το δίκτυο για αυτό το οικογενειακό δέντρο των 3 ατόμων, το οποίο έχει 6 κόμβους: 2 κόμβοι για κάθε άτομο, ένας για το γενότυπο και ένας για το φαινότυπο. Θα θεωρούμε την απλουστευμένη περίπτωση όπου ο φαινότυπος του κάθε ατόμου επηρεάζεται μόνο από το γενότυπό του. Έτσι, για κάθε άτομο θα υπάρχει ένας παράγοντας P (φαινότυπος του ατόμου γενότυπος του ατόμου). Ο γενότυπος του κάθε ατόμου καθορίζεται από τους γενότυπους των γονιών του, έτσι για κάθε άτομο υπάρχει παράγοντας τύπου P(γενότυπος ατόμου γενότυπος του 1ου γονιού του ατόμου, γενότυπος του 2ου γονιού του ατόμου). Για ένα άτομο του οποίου οι γονείς δεν είναι καθορισμένοι, ο παράγοντας γενότυπου θα είναι η εκ των προτέρων κατανομή P(γενότυπος του ατόμου) και οι τιμές του θα βασίζονται στις συχνότητες των alleles στον πληθυσμό. Για λόγους συμβολισμού, αριθμούμε κάθε μεταβλητή ώστε να την αναγνωρίζουμε. Οπότε, για παράδειγμα P(φαινότυπος του James γενότυπος του James) είναι ισοδύναμο με P(Variable 5 Variable 2). Παράγοντας φαινοτύπου ατόμου δοθέντος του γενοτύπου του Για αυτό τον παράγοντα υπάρχουν δύο λογικές, η Mendelian λογική και η non-mendelian λογική. Σύμφωνα με την Mendelian λογική 63

73 (phenotypegivengenotypemendelianfactor.m), κάθε συνδυασμός αλληλόμορφων γονιδίων προκαλεί ένα συγκεκριμένο φαινότυπο με πιθανότητα 1. Θεωρούμε ότι υπάρχουν 2 αλληλόμορφα γονίδια, ένα για τo επικρατούν αλληλόμορφο Τ και ένα για το υπολειπόμενο αλληλόμορφο t. Από πλευράς αναπαράστασης στους γενότυπους, θεωρούμε ότι η τιμή 1 αντιστοιχεί στο ΑΑ (ομοζυγωτικά επικρατούντα), η τιμή 2 στο Αa (ετεροζυγωτικά), και η τιμή 3 στο aa (ομοζυγωτικά υπολειπόμενα). Για την αναπαράσταση των φαινότυπων, θεωρούμε ότι η τιμή 1 υποδεικνύει ότι το άτομο έχει το φυσικό χαρακτηριστικό και η 2 ότι δεν το έχει. Σύμφωνα με την non Mendelian λογική (phenotypegivengenotypefactor.m), υπάρχουν γενότυποι οι οποίοι αντί να προκαλούν ή να αποτρέπουν κάποιον από το να έχει ένα φυσικό χαρακτηριστικό, απλώς τον κάνουν περισσότερο ή λιγότερο πιθανό από το να το έχει. Γενικά, κάθε γενότυπος i οδηγεί σε μία πιθανότητα a i του να έχει το άτομο αυτό το φυσικό χαρακτηριστικό. Θεωρώντας την περίπτωση της ασθένειας cystic fibrosis, ας πάρουμε το παράδειγμα που οι άνθρωποι με FF (γενότυπος 1) έχουν 0.8 πιθανότητα να έχουν την ασθένεια, οι άνθρωποι που είναι Ff (γενότυπος 2) έχουν 0.6 πιθανότητα να την έχουν και οι άνθρωποι με γενότυπο ff (γενότυπος 3) έχουν 0.1 πιθανότητα να έχουν την ασθένεια. Άρα, θα συμβολίσουμε a 1 = 0.8, a 2 = 0.6, a 3 = 0.1 Παράγοντας γενοτύπου για πρόγονους κόμβους Καθώς κατασκευάσαμε τους παράγοντες για τις πιθανότητες του φαινοτύπου δεδομένου γενοτύπου, τώρα θα κατασκευάσουμε τους παράγοντες των γενοτύπων. Θα ξεκινήσουμε από τους γενότυπους των κόμβων στους οποίους οι γονείς δεν είναι καθορισμένοι. Οι τιμές αυτών των παραγόντων βασίζονται στις συχνότητες των αλληλόμορφων γονιδίων στον πληθυσμό. Θα κάνουμε την απλουστευμένη υπόθεση ότι οι συχνότητες των διαφορετικών αλληλόμορφων γονιδίων είναι ανεξάρτητες και ότι κάθε άτομο έχει την ίδια πιθανότητα να έχει κάθε αλλημόρφο γονίδιο για κάθε αντιγραφή ενός γονιδίου. Αυτό σημαίνει ότι η πιθανότητα του να έχει το άτομο ένα συγκεκριμένο γενότυπο είναι το γινόμενο των συχνοτήτων των αλληλόμορφων γονιδίων που το αποτελούν στον πληθυσμό (αν ομοζυγωτικά), ή το διπλάσιο αυτού του γινομένου (αν ετεροζυγωτικά). (genotypegivenallelefreqsfactor.m) Σχήμα 5.4: Bayesian δίκτυο για γενετική πρόβλεψη cystic fibrosis Παράγοντας γενοτύπου για κόμβους με γονείς Θέλουμε να κατασκευάσουμε ένα παράγοντα στον οποίο οι τιμές είναι η πιθανότητα του κάθε πιθανού γενοτύπου για ένα παιδί δοθέντος κάθε ενός πιθανού 64

74 συνδυασμού για τους γενοτύπους των γονιών του. (genotypegivenparentsgenotypesfactor.m) Υλοποίηση κατασκευής Bayesian δικτύου για γενετική κληρονομικότητα Πλέον, έχουμε κατασκευάσει όλους τους απαραίτητους τύπους παραγόντων, οπότε είμαστε σε θέση να κατασκευάσουμε το Bayesian δίκτυο για την κληρονόμηση ενός χαρακτηριστικού, προκειμένου να μελετήσουμε το παράδειγμα της κληρονομικότητας της γενετικής ασθένειας cystic fibrosis. Ως είσοδο θα έχουμε το οικογενειακό δέντρο που δίνουν οι γενετικοί σύμβουλοι, ένα διάνυσμα συχνοτήτων των αλληλόμορφων γονιδίων και ως έξοδο θα δώσουμε τη λίστα των παραγόντων που αποτελούν το δίκτυο. Η δομή του οικογενειακού δέντρου θα αποτελείται από ένα πίνακα names διάστασης n x 1 με τα ονόματα των n ατόμων στην οικογένεια και από τον πίνακα parents διάστασης n x 2. Κάθε μία σειρά i έχει 2 γονείς για το άτομο i, όπου άτομο i είναι αυτό με το όνομα στην αντίστοιχη θέση i του πίνακα namesi. Οι εγγραφές είναι αριθμοί που αντιστοιχούν στις αντίστοιχες θέσεις του πίνακα names για τα ονόματα των γονιών του κάθε ατόμου. Αν το άτομο είναι πρόγονος και δεν είναι καθορισμένοι οι γονείς του και οι δύο εγγραφές των γονιών είναι μηδενικές. Για παράδειγμα, για names = Ira, James, Robin, αν parents(2,1) = 1 και parents(2, 2) = 3, τότε η Ira και ο Robin είναι οι γονείς του James. Ομοίως θα ίσχυε αν parents(2,1) = 3 και parents(2,2) = 1. Επιπλέον, σε αυτό το σενάριο θα θεωρούμε ότι έχουμε μόνο 2 φαινότυπους, δηλαδή είτε 1 αν εμφανιστεί η ασθένεια είτε 2 αν δεν εμφανιστεί. Για συμβατότητα αρίθμησης, θα θεωρούμε ότι οι πρώτες n μεταβλητές είναι μεταβλητές γενοτύπου και πρέπει να αριθμούνται με τέτοιο τρόπο ώστε το pedigree.namesi έχει μεταβλητή γενοτύπου i. Οι επόμενες n μεταβλητές πρέπει να είναι οι μεταβλητές φαινοτύπου και πρέπει να αριθμούνται ώστε ο i-οστός άνθρωπος στο pedigree.namesi να έχει μεταβλητή φαινοτύπου n+i. Ο αριθμός των παραγόντων που θα αποτελούν το Bayesian δίκτυο θα είναι διπλάσιος από τον αριθμό των ανθρώπων, δεδομένου ότι για κάθε άνθρωπο θα έχουμε ένα παράγοντα για το γενότυπο του ανθρώπου και ένα ξεχωριστό παράγοντα για το φαινότυπό του. Οπότε, προκειμένου να κατασκευάσουμε το Bayesian δίκτυο, ακολουθούμε τον εξής αλγόριθμο For each person, (1- numpeople) %construct genotypes If parents are [0, 0], %(ancestor node) then genotypegivenallelefreqsfactor Else, genotypegivenparentsgenotypesfactor %with parents: pedigree.parents(i,1), pedigree.parents(i,2) end end For numpeople+1 :2*numPeople %construct phenotypes phenotypegivengenotypefactor end Για παράδειγμα, ας θεωρήσουμε ότι οι γενετικοί σύμβουλοι μας έδωσαν το ακόλουθο οικογενειακό δέντρο για να κατασκευάσουμε το μοντέλο πρόβλεψης. pedigree = struct('parents', [0,0;1,3;0,0;1,3;2,6;0,0;2,6]); pedigree.names = {'Ira','James','Robin','Eva','Jason','Rene','Benjamin'}; allelefreqs = [0.1; 0.9]; allelelist = {'F', 'f'}; alphalist = [0.8; 0.6; 0.1]; phenotypelist = {'CysticFibrosis', 'NoCysticFibrosis'}; factorlist = constructgeneticnetwork(pedigree, allelefreqs, alphalist); Οπότε κατασκευάζουμε το Bayesian δίκτυο της γενετικής πρόβλεψης της cystic fibrosis που εικονίζεται στο 5.4, το οποίο έπειτα εισάγουμε στο SAMIAM. Και πάλι πάνω σε αυτό μπορούμε να τρέξουμε επερωτήματα, κάνοντας χρήση των βασικών πράξεων μεταξύ παραγόντων ώστε να προβλέπουμε περι- 65

75 Σχήμα 5.5: Πιθανό Markov δίκτυο για OCR λέξης μήκους 5 χαρακτήρων θώριες κατανομές πάνω σε κόμβους, παρατηρώντας τιμές σε άλλους κόμβους του δικτύου Κατασκευή Markov Δικτύου για οπτική αναγνώριση χαρακτήρων (OCR) Σενάριο: Ας θεωρήσουμε το σενάριο κατά το οποίο θέλουμε να σχεδιάσουμε ένα μοντέλο το οποίο να εκτελεί οπτική αναγνώριση χαρακτήρων. Ο στόχος είναι να δέχεται το μοντέλο ως είσοδο μια εικόνα κειμένου και να δίνει ως έξοδο το περιεχόμενο του κειμένου. Αυτό το σενάριο μπορούμε να το τοποθετήσουμε στο πλαίσιο χιλιάδων εφαρμογών πραγματικού κόσμου. Για παράδειγμα το Google Books project έχει σκανάρει εκατομμύρια βιβλία από βιβλιοθήκες του κόσμου και χρησιμοποιώντας OCR μετατρέπει αυτά τα σκαναρισμένα έγγραφα (εικόνα) σε αρχεία κειμένου, διαθέσιμα για αναζήτηση στο διαδίκτυο. Στα πλαίσια του σεναρίου που θα αντιμετωπίσουμε θα θεωρήσουμε ότι μας δίνεται ένα σύνολο εικόνων, κάθε μία από τις οποίες αντιστοιχεί σε χαρακτήρες γραμμένους με το χέρι σε μια λέξη. Το σενάριο αυτό θα το αναλύσουμε εκ νέου σε επόμενη ενότητα από την πλευρά της inference και του learning, ενώ σε αυτό το σημείο θα επικεντρωθούμε στο κομμάτι της αναπαράστασης χρησιμοποιώντας Markov δίκτυο και συγκεκριμένα Conditional Random Field (CRF). Οπότε για τους στόχους αυτού του σεναρίου θα χρησιμοποιήσουμε έτοιμη μηχανή επαγωγής συμπερασμάτων ώστε να βρούμε την καλύτερη ανάθεση χαρακτήρα σε εικόνα. Στόχος: Θέλουμε να κατασκευάσουμε ένα μοντέλο που να προβλέπει την καλύτερη δυνατή αντιστοίχιση μεταξύ δοθείσης εικόνας που περιέχει γράμμα γραμμένο με το χέρι και του χαρακτήρα που αναπαρίσταται. Κωδικοποίηση προβλήματος - Markov δίκτυα για OCR Έστω ότι μας δίνονται n συνολικά εικόνες χαρακτήρων (που αντιστοιχούν σε μία μόνο λέξη μήκους n). Υπάρχουν δύο σύνολα μεταβλητών στο μοντέλο που θα κατασκευάσουμε: I i και C i για i = 1,..., n, όπου I i είναι μια διανυσματική μεταβλητή με πεδίο τιμών τις πραγματικές τιμές pixel της i εικόνας, και C i είναι η ανάθεση χαρακτήρα στην i-οστή αυτή εικόνα. Αν θεωρήσουμε το πεδίο τιμών των χαρακτήρων να είναι τα μικρά γράμματα της αγγλικής αλφαβήτου (K = 26), το παράδειγμα C 3 = 5 θα σημαίνει ότι η 3η εικόνα χαρακτήρα περιέχει το γράμμα e. Το βασικό σημείο που πρέπει να σημειώσουμε είναι ότι οι I i μεταβλητές είναι πάντα παρατηρήσιμες, ενώ οι C i μεταβλητές ποτέ δεν παρατηρούνται. Επιπλέον, θέλουμε να βρούμε την ανάθεση στις C i μεταβλητές που πιο σωστά περιγράφει τις εικόνες στις I i μεταβλητές. Θα χρησιμοποιήσουμε Markov δίκτυο για να μοντελοποιήσουμε την κατανομή πάνω στις C μεταβλητές δοθέντων των εικόνων I. Στην εικόνα 5.5 βλέπουμε ένα πιθανό Markov δίκτυο πάνω σε μια λέξη που παρατηρούμε μήκους 5. Καθώς τα I είναι πάντα παρατηρημένα, αυτό το Markov δίκτυο μπορεί να θεωρηθεί ότι αναπαριστά την υπό συνθήκη κατανομή P (C I) αντί για την από κοινού κατανομή P (C, I). Οπότε τέτοια δίκτυα είναι γνωστά και ως Conditional Random Fields (CRFs) τα οποία μελετήσαμε στη θεωρία. Προκειμένου να κατανοήσουμε το δίκτυο που αναπαρίσταται είναι χρήσιμο να κατανοήσουμε τους 66

76 παράγοντες που το απαρτίζουν. Συγκεκριμένα, έχουμε τους: παράγοντες ϕ C i (C i, I i ) που αναπαριστούν πόσο πιθανή είναι μια δεδομένη εικόνα να είναι ένα συγκεκριμένος χαρακτήρας παράγοντες ϕ P i (C i, C i+1 ) που αναπαριστούν τις αλληλεπιδράσεις μεταξύ γειτονικών ζευγαριών χαρακτήρων. Δοθέντων των εικόνων I, μπορούμε να υπολογίσουμε μια πρόβλεψη C = arg max C P (C, I) = arg max C P (C I) (5.2) Οπότε στο συγκεκριμένο παράδειγμα που εικονίζεται θα ελπίζαμε το μοντέλο μας να είναι σε θέση να προβλέψει με μεγάλη ακρίβεια τη λέξη queue, ως αποτέλεσμα της MAP ανάθεσης C. Επισήμανση 24. Παρατηρούμε ότι σε αντίθεση με τα προηγούμενα σενάρια, της αξιοπιστίας προς απόκτηση πιστωτικής κάρτας και της γενετικής κληρονομικότητας, στα οποία υπήρχε πολύ αυστηρή δομή - συνήθως σπάνια σε εφαρμογές πραγματικού κόσμου-, το Markov δίκτυο, ακόμα και μόνο με αυτά τα δύο είδη παραγόντων, είναι σε θέση να αποτυπώσει μεγάλη ποικιλία διασυνδέσεων. Έτσι, μπορούμε να κατασκευάσουμε πολύ ισχυρά μοντέλα τα οποία όχι μόνο λαμβάνουν υπόψη το με ποιο χαρακτήρα μοιάζει η κάθε εικόνα αλλά αιχμαλωτίζει και πιο υψηλής τάξης εξαρτήσεις μεταξύ χαρακτήρων, π.χ το γράμμα q είναι πιο πιθανό να ακολουθείται από το γράμμα u. Παρακάτω, θα αναφερθούμε πιο αναλυτικά σε αυτούς και άλλους τύπους παραγόντων καθώς και σε παραλλαγές των Markov δικτύων. Υλοποίηση - Δεδομένα Εισόδου: Ως είσοδοι στο σενάριο αυτό μας δίνεται ένας πίνακας που περιέχει την κάθε λέξη του συνόλου δεδομένων, ο allwords. Συγκεκριμένα, ο allwords{i} είναι ένας πίνακας δομής που περιέχει τα δεδομένα για την i - οστή λέξη στο σύνολο δεδομένων. Αυτός ο πίνακας δομών για κάθε μία λέξη του dataset, θα έχει αριθμό εγγραφών όσο το μήκος της λέξης i, και η κάθε μία δομή θα αποτελείται από τα πεδία groundtruth που παίρνει τιμή από 1 έως 26 και παρέχει την πραγματική τιμή για αυτόν τον χαρακτήρα (Επιβλεπόμενη μάθηση) και από το πεδίο img που είναι οι τιμές των pixels για αυτό τον χαρακτήρα (16 x 8 πίνακας, όπου η κάθε σειρά είναι ένα pixel, 1 αν μαύρο, 0 αν άσπρο). Οπότε allwordsi(j).img είναι ο 16 x 8 πίνακας των τιμών pixels για τον jοστό χαρακτήρα της iοστής λέξης. Σχήμα 5.6: Οπτικοποίηση των πρώτων 6 εικόνων - λέξεων του συνόλου δεδομένων Υλοποίηση: Απλουστευμένο μοντέλο - Singleton OCR features: Ξεκινάμε την κατασκευή των παραγόντων του CRF από το πιο απλό μοντέλο και στην πορεία θα συγκρίνουμε τις βελτιώσεις που 67

77 Σχήμα 5.7: Μονοί παράγοντες του δικτύου OCR πετυχαίνουμε στην εκφραστικότητα και την ακρίβεια του μοντέλου μας, με τις σταδιακές προσθήκες παραγόντων. Οπότε ξεκινάμε από ένα μοντέλο το οποίο περιέχει μόνο μοναδικά OCR χαρακτηριστικά, ϕ C. Υπάρχουν n τέτοιοι παράγοντες, ένας για κάθε εικόνα χαρακτήρα. Ο παράγοντας για την i - οστή εικόνα ϕ C i είναι {C i, I i }. Ο λόγος που τους ονομάζουμε μοναδικούς παράγοντες (singletons) είναι διότι καθώς τα I i είναι πάντα παρατηρημένα, αυτοί οι παράγοντες στην πραγματικότητα ορίζονται πάνω σε μονούς χαρακτήρες. Σε όλες τις περιπτώσεις παραγόντων, θα θεωρήσουμε ότι μας δίνεται προεκπαιδευμένο μοντέλο, ώστε να κάνουμε χρήση έτοιμης συνάρτησης που βαθμολογεί το ταίριασμα μεταξύ κάθε ενός ζευγαριού εικόνας/χαρακτήρα (ComputeImageFactor(image, imagemodel)) που επιστρέφει ένα διάνυσμα Κ (Κ = 26) τιμών. Η i-οστή εγγραφή σε αυτό το διάνυσμα είναι η βαθμολόγηση για τον χαρακτήρα i στην παρεχόμενη εικόνα. Στην ComputeSingletonFactors.m αναπαριστούμε μια εικόνα χαρακτήρων της λέξης εισόδου από το σύνολο δεδομένων, το οποίο είναι μια λίστα εικόνων λέξεων, με ένα πίνακα δομών ο οποίος στο img πεδίο περιέχει τον πίνακα pixel για κάθε χαρακτήρα στη λέξη. Ως έξοδο παράγουμε έναν παράγοντα ο οποίος περιέχει για κάθε δοθείσα εικόνα (που αντιστοιχεί σε κάθε χαρακτήρα της λέξης εισόδου) τη μεταβλητή χαρακτήρα C i. Η τιμή αυτή της C i δίνεται από τη συνάρτηση βαθμολόγησης μεταξύ εικόνας και χαρακτήρα. n = length(images); % The number of characters in the word factors = repmat(struct('var', [], 'card', [], 'val', []), n, 1); for i=1:n,% for every possible image - character factors(i).var = [i]; factors(i).card = [imagemodel.k]; factors(i).val = ComputeImageFactor(images(i).img, imagemodel); end; Υλοποίηση: Επαγωγή συμπερασμάτων (Inference) και μετρικές απόδοσης Καταρχήν, προκειμένου να είμαστε σε θέση να υπολογίσουμε τιμές για τα C 1, C 2,..., C n πρέπει πρώτα να τρέξουμε επαγωγή πάνω στο δίκτυο. Συγκεκριμένα, πρέπει να υπολογίσουμε τιμές για τα C 1, C 2,..., C n που μεγιστοποιούν την από κοινού πιθανότητα του δικτύου. Επισήμανση 25. Αφού μέχρι ώρας, έχουμε μόνο μοναδικούς παράγοντες, δηλαδή οι γειτονικοί χαρακτήρες δεν έχουν επίδραση ο ένας στον άλλο, αρκεί να βρούμε τη MAP ανάθεση σε κάθε ένα από τους C 1, C 2,..., C n χωριστά! 68

78 10 πρώτες προβλεπόμενες λέξεις rorruring (2 λανθασμένοι χαρακτήρες) terses (1 λανθασμένος χαρακτήρας) gesesvsev (6 λανθασμένοι χαρακτήρες) qeace (1 λανθασμένος χαρακτήρες) orrer (2 λανθασμένοι χαρακτήρες) glogged (1 λανθασμένος χαρακτήρας) luckless (0 λανθασμένος χαρακτήρας) eoeked (2 λανθασμένοι χαρακτήρες) cell (0 λανθασμένοι χαρακτήρες) chill (0 λανθασμένοι χαρακτήρες) Πίνακας 5.1: Οι πρώτες 10 λέξεις όπως προβλέπονται από το OCR δίκτυο των μονών παραγόντων Επίσης, θα θεωρήσουμε ότι μας δίνονται συναρτήσεις με τις οποίες μπορούμε να μετράμε την απόδοση του μοντέλου πρόβλεψης. Με την ComputeWordPredictions.m επιστρέφεται ένας πίνακας όπου wordpredictionsi είναι ένας πίνακας των προβλεπόμενων MAP αναθέσεων στους χαρακτήρες της i- οστής λέξης, π.χ wordpredictions1 = [3 1 20] αν προβλέπω ότι η 1η λέξη είναι η λέξη cat. Ορισμός 42. (Ακρίβεια σε επίπεδο χαρακτήρα) Ορίζουμε ακρίβεια σε επίπεδο χαρακτήρα ως το λόγο των σωστά αναγνωρισμένων χαρακτήρων προς το συνολικό αριθμό χαρακτήρων. Ορισμός 43. (Ακρίβεια σε επίπεδο λέξης) Ορίζουμε ακρίβεια σε επίπεδο λέξης ως το λόγο του αριθμού των λέξεων στις οποίες κάθε χαρακτήρας αναγνωρίζεται σωστά διαιρεμένος προς το συνολικό αριθμό λέξεων. Οπότε, δοθέντων των προβλέψεων από την προηγούμενη συνάρτηση, η ScorePredictions.m επιστρέφει τις ακρίβειες σε επίπεδο χαρακτήρα και επιπέδου. Η δε συνάρτηση ScoreModel.m είναι απλώς αυτή που περικλείει τις δύο ανωτέρω συναρτήσεις. Οπότε υπολογίζουμε τις ακρίβειες σε επίπεδο χαρακτήρα και λέξης στο μοντέλο με τους μονούς παράγοντες, πάνω στο σύνολο δειγμάτων (100 δείγματα - λέξεις) [characc, wordacc] = ScoreModel(allWords, imagemodel, [], []) και παίρνουμε τις τιμές characc = 76.7 % και 22 % αντίστοιχα. Οπότε παρατηρούμε ότι τα αποτελέσματα αυτά, και ιδίως η ακρίβεια σε επίπεδο λέξεων έχει μεγάλα περιθώρια βελτίωσης. Γι αυτό το λόγο και επεκτείνουμε το δίκτυο, καθώς άλλωστε ένα βασικό μειονέκτημα του προηγούμενου δικτύου είναι αυτό της μη-θεώρησης των αλληλεπιδράσεων μεταξύ πολλαπλών αναθέσεων σε χαρακτήρες. Ακολούθως, θα θεωρήσουμε μοντέλα στα οποία υπάρχουν αλληλεπιδράσεις μεταξύ ζευγών χαρακτήρων και τριπλέτων χαρακτήρων. Υλοποίηση: Παράγοντες σε ζεύγη χαρακτήρων Ενώ η ιδιαίτερη γραφή του κάθε ανθρώπου διαφέρει, κάνοντας πιο δύσκολη την εργασία της αναγνώρισης μεμονωμένων χαρακτήρων, μπορούμε να εκμεταλλευτούμε τη συχνότητα εμφάνισης ακολουθίας χαρακτήρων σε λέξεις. Οπότε, το γεγονός ότι για παράδειγμα ο παράγοντας του OCR δικτύου για την προηγούμενη λέξη αναθέτει μεγάλο σκορ στο γράμμα 69

79 Σχήμα 5.8: Ζευγωτοί παράγοντες του Δικτύου OCR π.χ q σημαίνει ότι είναι πολύ πιο πιθανό να ακολουθήσει u απότι a καθώς η πιθανότητα εμφάνισης του qu είναι πολύ μεγαλύτερη από την αντίστοιχη του qa στο Αγγλικό εκίμενο. Αυτό σημαίνει ότι ακόμα και αν ο παράγοντας OCR αναθέτει στο τρέχοντα χαρακτήρα ίση πιθανότητα να είναι u και a, θα μπορέσουμε να τα ξεχωρίσουμε χρησιμοποιώντας τους ζευγωτούς παράγοντες. Γενικά, για μια λέξη με n χαρακτήρες C 1,..., C n, εισάγουμε n 1 παράγοντες ϕ P i (C i, C ( i + 1)) για i = 1,..., n 1 οπότε προκύπτει το μοντέλο της εικόνας 5.8. Για την κατασκευή αυτού του μοντέλου, συν τοις άλλοις, έχουμε ως είσοδο έναν πίνακα pairwise μοντέλου, όπου pairwisemodel(i, j) είναι ανάλογο της πιθανότητας το jοστό γράμμα να εμφανίζεται μετά το i-οστό γράμμα (όπως αυτή προέκυψε από ένα σώμα αγγλικού κειμένου). Η συνάρτηση ComputePairwiseFactors.m δέχεται πίνακα εικόνων σε μια λέξη (την εικόνα των pixels για κάθε χαρακτήρα της λέξης) και την τιμή Κ - το μέγεθος της αλφαβήτου, και υπολογίζει τους n-1 παράγοντες όπως περιγράφησαν. Για κάθε μία πιθανή τιμή παράγοντα, θα έχουμε ένα σκορ pairwisemodel(i,j), ώστε να αναθέτουμε υψηλότερες πιθανότητες σε συνηθισμένα ζεύγη μεταβλητών και χαμηλότερες πιθανότητες σε σπάνια. n = length(images); factors = repmat(struct('var', [], 'card', [], 'val', []), n - 1, 1); for i=1:n-1, factors(i).var = [i i+1]; factors(i).card = [K K]; assignments = IndexToAssignment(1:prod(factors(i).card), factors(i).card); for ind=1:size(assignments,1), A = IndexToAssignment(ind,factors(i).card); deiktis = AssignmentToIndex(A,factors(i).card); factors(i).val(deiktis) = pairwisemodel(a(1),a(2)); end; end; Με αυτό το ανανεωμένο μοντέλο, πετυχαίνουμε % ακρίβεια ως προς χαρακτήρες, και 26 % ακρίβεια ως προς τις λέξεις. Υλοποίηση: Παράγοντες σε τριπλέτες χαρακτήρων Οι παράγοντες σε τριπλέτες χαρακτήρων έχουν παρόμοιο σκοπό με αυτό των ζευγωτών: να ενθαρρύνουν τις συνηθισμένες τριπλέτες π.χ ing και να αποθαρρύνουν τις μη-συνηθισμένες. Γενικά, θα εισάγουμε ένα επιπλέον σύνολο n-2 παραγόντων όπου ο i-οστός παράγοντας είναι ϕ T i (C i, C i+1, C i+2 ). Η σκοπιά του κάθε ενός τέτοιου παράγοντα πρέπει να είναι κλίκα πάνω στο Markov δίκτυο, έτσι βάζουμε και εξτρά ακμές που συνδέουν τα C i, C i+2 στο δίκτυο. Για το ανανεωμένο αυτό μοντέλο, και πάλι έχουμε ως είσοδο τις κανονικοποιημένες συχνότητες του να δούμε π.χ το γράμμα c αφού δούμε διαδοχικά τα γράμματα a και b. Ενώ κανονικά, υπάρχουν 26 3 = καταστάσεις ενός 70

80 10 πρώτες προβλεπόμενες λέξεις με OCR δίκτυο μονών και ζευγωτών παραγόντων rorruring (2 λανθασμένοι χαρακτήρες) terses (1 λανθασμένος χαρακτήρας) gesesusty (5 λανθασμένοι χαρακτήρες) peace (0 λανθασμένοι χαρακτήρες) orrer (2 λανθασμένοι χαρακτήρες) ologged (1 λανθασμένος χαρακτήρας) luckless (0 λανθασμένοι χαρακτήρες) cocked (0 λανθασμένοι χαρακτήρες) cell (0 λανθασμένοι χαρακτήρες) chill (0 λανθασμένοι χαρακτήρες) Πίνακας 5.2: Οι πρώτες 10 λέξεις όπως προβλέπονται από το OCR δίκτυο των μονών και ζευγωτών παραγόντων Σχήμα 5.9: Παράγοντες τριπλετών του δικτύου OCR 10 πρώτες προβλεπόμενες λέξεις σε OCR δίκτυο που έχει και τριπλέτες παραγόντων rorturing (1 λανθασμένος χαρακτήρας) terses (1 λανθασμένος χαρακτήρας) gestsesty (4 λανθασμένοι χαρακτήρες) peace (0 λανθασμένοι χαρακτήρες) offer (0 λανθασμένοι χαρακτήρες) plogged (1 λανθασμένος χαρακτήρας) luckless (0 λανθασμένος χαρακτήρας) cocked (0 λανθασμένοι χαρακτήρες) cell (0 λανθασμένοι χαρακτήρες) chill (0 λανθασμένοι χαρακτήρες) Πίνακας 5.3: Οι πρώτες 10 λέξεις όπως προβλέπονται από το OCR δίκτυο των απλών, διπλών παραγόντων και τριπλετών παράγοντα πάνω σε τριπλέτες, γεγονός που κάνει αυτόν τον παράγοντα αλόγιστα μεγάλο, αντί να αποδώσουμε τιμές σε κάθε μία από όλες αυτές τις καταστάσεις, αρχικοποιούμε όλες τις τιμές στη μονάδα 71

81 και αλλάζουμε μόνο τις τιμές των 2000 πρώτων τριπλετών και κανονικοποιούμε τον παράγοντα ώστε η 2000-ή πιο συνήθης τριπλέτα έχει τιμή 1. Υλοποιούμε την ComputeTripletFactors.m με παρόμοιο τρόπο με πριν, με τη διαφορά ότι χρησιμοποιούμε και το tripletlist. Μέρος του κώδικα παρατίθεται: n = length(images); factors = repmat(struct('var', [], 'card', [], 'val', []), n - 2, 1); for k=1:n-2, factors(k).var = [k k+1 k+2]; factors(k).card = [K K K]; factors(k).val = ones(1,k^3); for i=1:size(tripletlist,1), A = tripletlist(i).chars; deiktis = AssignmentToIndex(A,factors(k).card); factors(k).val(deiktis) = tripletlist(i).factorval; end; end; Υπολογίζουμε και πάλι τις ακρίβειες ως προς χαρακτήρα και λέξη και παίρνουμε τιμές 80.03% και 34% αντίστοιχα. Σύγκριση μοντέλων Οπότε, παρατηρούμε ότι προσθέτοντας τους παράγοντες των ζευγών και των τριπλετών, πετυχαίνουμε μεγαλύτερη ακρίβεια. Αλλά πληρώνουμε το κόστος ως προς το χρόνο υπολογισμού των παραγόντων και της εκτέλεσης επαγωγής συμπερασμάτων. Περίπτωση Μοντέλου Ακρίβεια χαρακτήρων Ακρίβεια λέξεων Μονοί παράγοντες 76.7% 22% Ζευγωτοί παράγοντες % 26% Τριπλέτες παραγόντων % 34% Πίνακας 5.4: Σύγκριση ακρίβειας OCR δικτύων με μονούς, ζευγωτούς και τριπλούς παράγοντες Άρα, μελετήσαμε πώς μπορούν τα πιθανοτικά γραφικά δεδομένα να αποτυπώνουν πολύπλοκες διασυνδέσεις με ένα φυσικό τρόπο. Και εξερευνήσαμε τις επιλογές που μπορούμε να κάνουμε σε μία trade off ανάλυση μεταξύ της ακρίβειας, της περιπλοκότητας του μοντέλου και της υπολογιστικής αποδοτικότητας. 5.2 Ακριβής επαγωγή συμπερασμάτων σε γενετικά δέντρα κληρονομικότητας και σε OCR Σενάριο: Ας θεωρήσουμε ότι δουλεύουμε με ένα δίκτυο γενετικής κληρονομικότητας 9 ατόμων, με τρόπο όπως παρουσιάσαμε στο Σενάριο 2. Αν προσπαθήσουμε να τρέξουμε την υποτυπώδη μηχανή επαγωγής συμπερασμάτων (με τον υπολογισμό περιθώριων κατανομών σε κόμβους του δικτύου), θα διαπιστώσουμε ότι απαιτείται χρόνος εκτέλεσης ανάλογος με τον αριθμό των εγγραφών σε αυτήν την από κοινού κατανομή πάνω σε ολόκληρο το δίκτυο, το οποίο είναι της τάξης του Οπότε σε δίκτυα μεγαλύτερα από μικροσκοπικά δίκτυα στα οποία αποτυγχάνει η brute force προσέγγιση, χρειάζεται ένας πιο αποδοτικός τρόπος επακριβούς inference, και αυτός είναι το πέρασμα μηνυμάτων σε clique tree, το οποίο παρουσιάσαμε στη θεωρία. 72

82 Σχήμα 5.10: Bayesian δίκτυο από οικογενειακό δέντρο 6 ατόμων Στόχος: Δημιουργία επακριβούς μηχανής επαγωγής συμπερασμάτων αρκετά ισχυρής για να απαντά πιθανοτικά επερωτήματα σε μεγάλα δίκτυα και εύρεση MAP αναθέσεων πάνω σε δίκτυα γενετικής κληρονομικότητας, όπως αυτά του Σεναρίου 2. Προς το σκοπό αυτό, θα υλοποιήσουμε τον αλγόριθμο ανανέωσης πεποιθήσεων, τον οποίο εξετάσαμε στο Κεφάλαιο της Επαγωγής Συμπερασμάτων: Αλγόριθμος ανανέωσης πεποιθήσεων 1. Δημιούργησε clique tree από ένα δοθέν σύνολο παραγόντων Φ (CreateCliqueTree.m ) 2. Ανάθεσε κάθε παράγοντα ϕ k Φ σε μια κλίκα C ώστε Scope[ϕ k ] να επιστρέφει τον αριθμό της κλίκας στην οποία ανατέθηκε ο ϕ k 3. Υπολόγισε αρχικά δυναμικά ψ i (C i ) = k:a(k)=i ϕ k ( ComputeInitialPotentials.m ) 4. Όρισε μια τυχαία κλίκα ως τη ρίζα και πέρασε μηνύματα προς τα πάνω από τα φύλλα προς τη ρίζα 5. Πέρασε μηνύματα από τη ρίζα προς τα φύλλα. 6. Υπολόγισε τις beliefs για την κάθε κλίκα β i (C i ) = ψ i k N i δ k i Συγκεκριμένα, ας θεωρήσουμε ότι το πλήρες Bayesian δίκτυο που κατασκευάσαμε από το οικογενειακό δέντρο 6 ατόμων είναι αυτό που εικονίζεται. Προκειμένου να είμαστε σε θέση να κάνουμε inference πάνω σε αυτό, από τη λίστα των παραγόντων που αντιστοιχεί στο δίκτυο εμείς δημιουργούμε ένα δέντρο κλικών. Έπειτα, αρχικοποιούμε τα δυναμικά των κλικών σε αυτό το δέντρο αναθέτοντας κάθε ένα από τους αρχικούς παράγοντες του δικτύου σε μία κλίκα. Τυχαία επιλέγουμε π.χ τη κλίκα με μεταβλητές 1, 2, 3 να είναι η ρίζα, και μετά ξεκινάμε να περνάμε μηνύματα από τα φύλλα στη ρίζα και μετά προς τα κάτω από τη ρίζα στα φύλλα. Σε αυτό το clique tree, που εικονίζεται, υπάρχουν 9 κλίκες, οπότε 2 x (9-1) = 16 μηνύματα αρκούν για να υπολογίσουμε σωστά όλες τις beliefs. Ύστερα από πλήρη κύκλο περάσματος μηνυμάτων (από φύλλα σε ρίζα και από 73

83 Σχήμα 5.11: Πιθανό clique tree για το Bayesian δίκτυο. ρίζα σε φύλλα), μπορούμε να χρησιμοποιούμε τις ισορροπημένες beliefs των κλικών για να απαντούμε πιθανοτικά επερωτήματα στο δίκτυο. Όπως είχαμε περιγράψει στο αντίστοιχο κεφάλαιο της θεωρίας Inference, αυτός ο αλγόριθμος έχει δύο παραλλαγές, αυτή του sum-product message passing και αυτή του max-sum message passing. Για λόγους αναπαράστασης, θα αναπαριστούμε το δέντρο κλικών ως δομή με τα ακόλουθα δύο πεδία: cliquelist που είναι ένας πίνακας δομών των κλικών -για την αναπαράσταση της κάθε κλίκας i το πεδίο.val πρέπει να αρχικοποιηθεί στο αρχικό της δυναμικό ψ i - και edges, που είναι πίνακας γειτονίας n x n για n αριθμό ακμών (τόσο το.edges[i, j] όσο και το.edges[j,i] είναι ίσα με τη μονάδα αν οι κλίκες i και j μοιράζονται κάποια ακμή, αλλιώς 0). Παράγοντας 1 Six Person Pedigree Μεταβλητή 1 Ανάθεση Τιμής Παράγοντας 12 Six Person Pedigree Μεταβλητή 12 Μεταβλητή 6 Ανάθεση Τιμής Κατασκευή Clique Tree: Παίρνουμε το σύνολο των παραγόντων του δικτύου, ίσως αφού έχουμε παρατηρήσει τις τιμές κάποιων κόμβων και τους έχουμε μειώσει, και ένα σκελετό clique tree που αντιστοιχεί σε αυτούς τους παράγοντες, και αρχικοποιεί το.var πεδίο του cliquetree. Συγκεκριμένα, πρέπει να αποδίδει κάθε παράγοντα σε μία κλίκα ώστε Scope[ϕ k ] C a(k) a(k) ώστε για κάθε κλίκα το αρχικό δυναμικό είναι το γινόμενο των παραγόντων που ανατέθηκαν στην κάθε μία. Να σημειωθεί ότι με τη χρήση του CreateCliqueTree.m τηρούνται οι ιδιότητες familiy preservation και running intersection. Σειρά περάσματος μηνυμάτων στο δέντρο κλικών: Μία κλίκα C i είναι έτοιμη να μεταδώσει στο γείτονά της C j όταν η C i έχει λάβει μηνύματα από όλους τους γείτονές της εκτός από τη C j. Κατά το πέρασμα μηνυμάτων κάθε μήνυμα περνά ακριβώς μια φορά. Το GetNextCliques.m μας δίνει μια έγκυρη σειρά περάσματος μηνυμάτων, με τον ακόλουθο τρόπο. Κοιτά όλα τα μηνύματα που έχουν περαστεί έως τώρα και επιστρέφει δείκτες i, j όταν η C i είναι έτοιμη να στείλει μήνυμα στη C ij Πέρασμα μηνυμάτων στο δέντρο κλικών με Sum-Product: Επειτα, ξεκινούμε να ισορροπούμε το δέντρο κλικών, δηλαδή φροντίζουμε ώστε όλες οι γειτονικές κλίκες να είναι ισορροπημένες (CliqueTreeCalibrate.m). Δύο γειτονικές κλίκες C i και C j είναι ισορροπημένες όταν έχουν τις ίδιες περιθώριες κατανομές πάνω στις κοινές μεταβλητές τους που μοιράζονται. C i S i,j β i (C i ) = C j S i,j β j (C j ) = µ i,j (S i,j ) S i,j. Για να αποφύγουμε αριθμητική υποχείλιση, κανονικοποιούμε κάθε 74

84 μήνυμα αφού περάσει. Κλίκα 1 Μετ. 1 Μετ. 7 Τιμή Calibrated Κλίκα 1 Μετ. 1 Μετ. 7 Τιμή Κλίκα 2 Μετ. 2 Μετ. 8 Τιμή Calibrated Κλίκα 2 Μετ. 2 Μετ. 8 Τιμή Υπολογισμός επακριβών περιθωρίων κατανομών από την Belief Propagation Παίρνουμε το δίκτυο, ένα σύνολο αρχικών παραγόντων, ένα διάνυσμα evidence και υπολογίζουμε την περιθώρια κατανομή για κάθε μία μεταβλητή του δικτύου. Αυτές τις κατανομές προφανώς τις κανονικοποιούμε στο τέλος, ώστε να είναι έγκυρες κατανομές πιθανότητας. ComputeMarginal (1, SixPersonPedigree, []) Και παρατηρούμε ότι η brute force inference βγάζει τα ίδια αποτελέσματα με τον αλγόριθμο διάδοσης πεποιθήσεων. M = ComputeExactMarginalsBP (SixPersonPedigree, [1], 0) Marginal 1 Μετ. 1 Τιμή Marginal 5 Μετ. 5 Τιμή Marginal 9 Μετ. 9 Τιμή Marginal 2 Μετ. 2 Τιμή Marginal 6 Μετ. 6 Τιμή Marginal 10 Μετ. 10 Τιμή Marginal 3 Μετ. 3 Τιμή Marginal 7 Μετ. 7 Τιμή Marginal 11 Μετ. 11 Τιμή Marginal 4 Μετ. 4 Τιμή Marginal 8 Μετ. 8 Τιμή Marginal 12 Μετ. 12 Τιμή Max-Sum πέρασμα μηνυμάτων Προκειμένου να απαντήσουμε σε άλλο είδος επερωτημάτων, σε σενάρια όπως αυτό του OCR, δεν μας ενδιαφέρει να υπολογίσουμε τις περιθώριες κατανομές πάνω σε μεμονωμένους χαρακτήρες, αλλά να βρούμε το πιο πιθανό κείμενο το οποίο αντιστοιχεί σε ένα σύνολο 75

85 εικόνων. Στόχος μας να βρούμε την πιο πιθανή ανάθεση τιμών στις μεταβλητές του δικτύου αντί να λύνουμε τις περιθώριες για κάθε μία από αυτές. Επειδή η πιθανότητα της κάθε μία ανάθεσης, ακόμα και της MAP ανάθεσης, είναι πολύ μικρή, προκειμένου να αποφύγουμε αριθμητική υποχείλιση δουλεύουμε στο λογαριθμικό χώρο. Η διαδικασία είναι κατά τ άλλα πανομοιότυπη με το sum-product με τη διαφορά ότι τα αθροίσματα αντικαθίστανται από max και τα γινόμενα από αθροίσματα. Καταρχήν χρειαζόμαστε μια συνάρτηση FactorMaxMarginalization.m η οποία παίρνει έναν παράγοντα και ένα σύνολο μεταβλητών τις οποίες πρέπει να marginalize. Για κάθε πιθανή ανάθεση πάνω στις μεταβλητές που απομένουν, βρίσκει τη μεγαλύτερη τιμή. Έπειτα, στο CliqueTreeCalibrate.m παίρνουμε το uncalibrated Clique Tree, μετατρέπουμε στο λογαριθμικό χώρο τις μεταβλητές στις τιμές των παραγόντων-κλικών, και θέτουμε τις τελικές τιμές των beliefs β i (C i ) τις οποίες επιστρέφουμε στο λογαριθμικό χώρο. Υπολογίζουμε τις επακριβείς περιθώριες κατανομές στο log χώρο χωρίς να τις κανονικοποιούμε και να τις υψώνουμε σε εκθέτη (ComputeExactMarginalsBP.m). Τέλος, στην MaxDecoding.m παίρνουμε τη λίστα των max περιθώριων που επέστρεψε η προηγούμενη συνάρτηση και επιστρέφουμε ένα διάνυσμα A, όπου A(i) η τιμή της i- οστής μεταβλητής στη MAP ανάθεση. maxmarginals = ComputeExactMarginalsBP (OCRNetworkToRun, [], 1); MAPAssignment = MaxDecoding(maxMarginals); DecodedMarginalsToChars(MAPAssignment) MAP Ανάθεση Τιμών Μετ. 1 Μετ. 2 Μετ. 3 Μετ. 4 Μετ. 5 Μετ. 6 Μετ. 7 Μετ m o r n i n g s Οπότε, για το συγκεκριμένο δίκτυο οπτικής αναγνώρισης χαρακτήρων παίρνουμε τη λέξη mornings! 5.3 Λήψη Αποφάσεων σε πρόβλημα ιατρικής περίθαλψης Σενάριο: Σε πολλά σενάρια πραγματικού κόσμου, από το να επιλέγουμε ποια διαγνωστικά τεστ να παραγγείλουμε για τους ασθενείς, μέχρι το να αποφασίζουμε πού να δείχνει την επόμενη χρονική στιγμή η κάμερα ενός ρομπότ, καλούμαστε να υλοποιήσουμε μεθόδους για να απαντάμε σε ερωτήσεις, όπως το τι θα πρέπει να κάνουμε σε ένα αβέβαιο κόσμο. Οπότε, θα εξερευνήσουμε το πώς μπορούμε να υλοποιούμε την αναπαράσταση της λήψης αποφάσεων στο πλαίσιο των γραφικών μοντέλων. Συγκεκριμένα, θα μάθουμε πώς να αναπαριστούμε διαγράμματα επιρροής σαν ένα είδος Bayes δικτύου και πώς να εκτελούμε επαγωγή συμπερασμάτων (inference) πάνω σε αυτή την αναπαράσταση. Θα εφαρμόσουμε αυτές τις τεχνικές για να λύσουμε ένα πρόβλημα πραγματικού κόσμου στην ιατρική φροντίδα και περίθαλψη. Γνώσεις Ειδικών: Η αρρυθμιογόνος δυσπλασία δεξιάς κοιλίας (ARVD) είναι μια ασθένεια καρδιάς που έχει μεγάλο κληρονομικό παράγοντα -περισσότερες από τις μισές περιπτώσεις συνδέονται με την οικογενειακή ιστορία της ασθένειας. Πρόκειται για μια προοδευτική ασθένεια, οπότε οι άνθρωποι με ARVD μπορεί να παραμένουν χωρίς συμπτώματα για μεγάλο χρονικό διάστημα χωρίς να υποψιάζονται ότι έχουν αυτή την ασθένεια. Πλέον, στους περισσότερους ασθενείς με ARVD έχει εμφυτευτεί ένας καρδιακός απινιδωτής (ICD). Αυτές οι συσκευές είναι πολύ αποτελεσματικές στη μείωση των αρρυθμιών (που είναι από τις βασικές, εν δυνάμει πολύ επικίνδυνες παρενέργειες της ασθένειας). Όμως, η ARVD μπορεί πολύ δύσκολα να διαγνωστεί με βεβαιότητα. Το να γνωρίζουμε ότι υπάρχουν γενετικοί παράγοντες ρίσκου μας δημιουργούν υποψίες στην ανάπτυξη ARVD, αλλά είμαστε πολύ μακριά από το σίγουρο για αυτήν. Επιπλέον, τα διαγνωστικά τεστ που απευθείας μετρούν κάποιο χαρακτηριστικό της λειτουργίας της καρδιάς δεν είναι τέλεια, με κάποια ψευδή θετικά (FP) και ψευδή αρνητικά (FN) να συμβαίνουν. Διαφορετικά διαγνωστικά τεστ έχουν διαφορετικά ρίσκα - το να βάζουμε κάποια 76

86 ηλεκτρόδια στο στήθος κατά τη διάρκεια ενός τεστ άγχους έχει διαφορετικά ρίσκα από την επέμβαση. Όλα αυτά τα είδη προβλημάτων καλούμαστε να λύσουμε σε αυτό το σενάριο φέρνοντας μαζί το πλαίσιο των γραφικών μοντέλων και της θεωρίας αποφάσεων, την οποία μελετήσαμε στο σχετικό Κεφάλαιο 3. Σχήμα 5.12: Αναπαράσταση διαγράμματος επιρροής (Influence Diagram) Αναπαράσταση διαγραμμάτων επιρροής: Το διάγραμμα επιρροής που φαίνεται στο σχήμα αποτελείται από: ένα κόμβο τυχαίας μεταβλητής X, μία απόφαση που πρέπει να πάρουμε D και την χρησιμότητα U. Στόχος μας είναι να πάρουμε την απόφαση D η οποία θα μεγιστοποιήσει την αναμενόμενη χρησιμότητα. Στο ιατρικό σενάριο, θα έχουμε μια τυχαία μεταβλητή που αναπαριστά την απουσία ή όχι ενός συγκεκριμένου παράγοντα ρίσκου, και αυτή η τυχαία μεταβλητή θα μπορούσε να εξαρτάται από την παρουσία ή απουσία του παράγοντα ρίσκου στους γονείς του ασθενή. Κάθε X X αναπαρίσταται από ένα παράγοντα με υπό συνθήκη κατανομή P (X P a X ) Κάθε κόμβος D D αναπαριστά μια απόφαση και έχει ένα παράγοντα που συνδέεται με αυτόν, που είναι μια ντετερμινιστική CPD. Στο παράδειγμα του ARVD η απόφαση είναι κατά πόσον θα εμφυτεύσουμε ή όχι ένα ICD. Ένας κανόνας απόφασης για το D αναπαρίσταται από μια CPD η οποία αναθέτει πιθανότητα 1 σε μια μοναδική δράση για κάθε από κοινού ανάθεση στους γονείς του D, με μηδενικά σε όλες τις άλλες δράσεις. Οπότε, αφού μοντελοποιούμε τον κόμβο απόφασης ως μια ντετερμινιστική CPD, μπορούμε να θεωρούμε το I να είναι Bayes δίκτυο όσον αφορά τις τυχαίες μεταβλητές και τους κόμβους απόφασης. Σε αυτό το σενάριο θα περιοριστούμε σε προβλημα απόφασης με έναν ακριβώς κόμβο απόφασης. Ένας βέλτιστος κανόνας απόφασης για τον κόμβο απόφασης D είναι αυτός ο οποίος καταλήγει στη μέγιστη αναμενόμενη χρησιμότητα. Διαφορετικοί κανόνες απόφασης μπορεί να οδηγούν στην ίδια αναμενόμενη χρησιμότητα, και έτσι ένας βέλτιστος κανόνας απόφασης δεν είναι απαραίτητα μοναδικός. Στο ARVD σενάριο, έχουμε κόμβο χρησιμότητας ο οποίος θα μπορούσε να αντιστοιχεί στην παρουσία ή απουσία κακών αποτελεσμάτων εξαιτίας ARVD σε μια αριθμητική τιμή χρησιμότητας. Οι κόμβοι U U συνδέονται με παράγοντες οι οποίοι αντιστοιχούν κάθε πιθανή από κοινού ανάθεση τιμής των γονιών P a U σε μία τιμή χρησιμότητας (η οποία μπορεί να είναι είτε αρνητική είτε θετική.) Υπολογισμός αναμενόμενης χρησιμότητας Ας θεωρήσουμε το παραπάνω μοντέλο για την διαδικασία αποφάσεων. Ο κόμβος X αναπαριστά ARVD και έχει τιμές x 1 ή x 2 (παρουσία ή απουσία ARVD). Ο κόμβος D αναπαριστά το αν ή όχι να εμφυτεύσουμε ICD: παίρνει τιμές d 1 ή d 2 για το να γίνει ή όχι επέμβαση. Παίρνουμε την απόφαση βασιζόμενοι στο αποτέλεσμα μιας παρατήρησης T ενός test για ARVD, επομένως το T είναι ο μόνος γονιός του D. Επειδή δεν υποφέρει ο κάθε άνθρωπος με ARVD από την ασθένειά του, εισάγουμε μια άλλη τυχαία μεταβλητή O για το αποτέλεσμα που δείχνει το τεστ, και αναπαριστά αν ένα ανεπιθύμητο αποτέλεσμα συνέβη. Το O έχει γονείς X και D διότι η πιθανότητα ενός κακού αποτελέσματος είναι συνάρτηση 77

87 Σχήμα 5.13: Αναμενόμενη χρησιμότητα δοθέντος κανόνα απόφασης ύπαρξης ARVD και τροποποιείται αν ένα ICD έχει εμφυτευτεί. Η χρησιμότητα U εξαρτάται από την απόφαση που παίρνουμε όσον αφορά τη θεραπεία και την ύπαρξη του ICD: Θα υπάρχει μικρή ή αρνητική χρησιμότητα αν δεν υπάρχει ARVD και έχει γίνει εμφύτευση ICD. Αλλά, αν όντως υπάρχει ARVD τότε το να γίνει εμφύτευση μπορεί να σώσει ζωή, το οποίο φυσικά έχει μεγάλη χρησιμότητα. Οπότε, αν πούμε ότι ο κανόνας απόφασης είναι να γίνει επέμβαση αν T = t 2 και να μη γίνει αν T = t 1. Στην αναπαράσταση των κανόνων απόφασης ως ντετερμινιστικές CPDs αυτό δηλώνεται με τον εξής τρόπο: d 1 t 1 1 d 2 t 1 0 d 1 t 2 0 d 2 t 2 1 Αν διαγράψουμε τον κόμβο χρησιμότητας, έχουμε ένα κανονικό Bayes δίκτυο - Οπότε, μπορούμε να τρέξουμε ένα αλγόριθμο επαγωγής συμπερασμάτων όπως απαλοιφή μεταβλητών ώστε να πάρουμε την περιθώρια κατανομή πάνω στους γονείς του U, P (O, D) Αναπαριστούμε αυτή την κατανομή ως παράγοντα που αντιστοιχεί από κοινές αναθέσεις των O, D στις αντίστοιχες πιθανότητες. Όταν πολλαπλασιάζουμε τους παράγοντες του U και του P a U, πολλαπλασιάζουμε τη χρησιμότητα για κάθε από κοινού ανάθεση στον P a U με την πιθανότητά του. Αθροίζοντας πάνω στις από κοινού αναθέσεις, παίρνουμε την αναμενόμενη χρησιμότητα. Υπολογίζουμε με τη συνάρτηση SimpleCalcExpectedUtility.m που υλοποιεί τα παραπάνω, την αναμενόμενη χρησιμότητα στο διάγραμμα επιρροής FullI: Έπειτα, ενημερωνόμαστε ότι η μεταβλητή 3 στο μοντέλο έχει παρατηρηθεί με τιμή 2, δηλαδή υπάρχουν γενετικοί παράγοντες ρίσκου. Οπότε, αφού παρατηρήσουμε την evidence υπολογίζουμε και πάλι την αναμενόμενη χρησιμότητα: EU[I[δ D ]] = X D X X P (X P a X )δ D U (5.3) Περίπτωση ID Αναμενόμενη χρησιμότητα Χωρίς evidence στο FullI Με evidence στο FullI Πίνακας 5.5: Υπολογισμός αναμενόμενης χρησιμότητας σε Influence diagram με ένα κόμβο απόφασης, με παρουσία και απουσία evidence. Διαπιστώνουμε ότι με παρατήρηση evidence η αναμενόμενη χρησιμότητα μειώνεται. 78

88 Μέγιστη αναμενόμενη χρησιμότητα (CalculateExpectedUtilityFactor.m) Αν έχουμε πολλές περισσότερες εισόδους στην απόφασή μας, όπως για παράδειγμα αποτελέσματα τεστ, πρέπει να βρούμε τον καλύτερο δυνατό κανόνα απόφασης. Μία αφελής προσέγγιση για να βρούμε τον καλύτερο δυνατό κανόνα απόφασης είναι να απαριθμούμε όλους τους πιθανούς κανόνες απόφασης δηλώνοντας τα ακόλουθα: EU[I[δ D ]] = P (X P a X )δ D U X D X X = P (X P a X )U δ D D,P a D X P a D X X = D,P a D δ D µ D (D, P a D ) (5.4) όπου µ D (D, P a D ) ονομάζεται Παράγοντας Αναμενόμενης Χρησιμότητας. Παράγοντας μέγιστης αναμενόμενης χρησιμότητας χωρίς evidence στο FullI Μετ. 9 Μετ. 11 Τιμή Παράγοντας μέγιστης αναμενόμενης χρησιμότητας με evidence στο FullI Μετ. 9 Μετ. 11 Τιμή Αυτός ο παράγοντας δεν εξαρτάται από την επιλογή μας του κανόνα απόφασης. Επιπλέον, ας σημειώσουμε ότι το δ D είναι ντετερμινιστικό και απλά επιλέγει συγκεκριμένες εγγραφές από το µ D (D, P a D ). Οπότε, δοθέντος µ D (D, P a D ) μπορούμε να πάρουμε το βέλτιστο κανόνα απόφασης δ C : δ D(pa D ) = arg max d D µ D(D, P a D ) (5.5) όπου το pa D δηλώνει μια από κοινού ανάθεση στους γονείς του D. Για παράδειγμα, αν D : { d 0, d 1}, X : { x 0, x 1}, και έχουμε υπολογίσει τον παράγοντα αναμενόμενης χρησιμότητας: x 0 d 0 10 x 0 d 1 1 x 1 d 0 2 x 1 d 1 5 διαβάζουμε τον βέλτιστο κανόνα απόφασης σημειώνοντας ότι αν X = x 0, η αναμενόμενη χρησιμότητα για το d 0 είναι 10, ενώ για το d 1 είναι 1. Επομένως, η βέλτιστη απόφαση θα πρέπει να επιλέξει d 0 όταν X = x 0. Ομοίως, όταν X = x 1 το καλύτερο που μπορούμε να κάνουμε είναι d 1. (OptimizeMEU.m) Περίπτωση ID Max. Exp. Utility Χωρίς evidence στο FullI Με evidence στο FullI Βέλτιστος κανόνας απόφασης Μετ. 9 Μετ. 11 Τιμή

89 Πολλαπλοί παράγοντες χρησιμότητας Σχήμα 5.14: Πολλαπλοί Παράγοντες Χρησιμότητας Μπορούμε αν θέλουμε να μοντελοποιήσουμε τους κινδύνους της επέμβασης ως μια άλλη τυχαία μεταβλητή αποτελέσματος O 2 που είναι παιδί του κόμβου απόφασης D. To O 1 συμβολίζει το αρχικό μας αποτέλεσμα, ενώ το O 2 αναπαριστά ένα απίθανο αλλά πολύ κακό αποτέλεσμα επέμβασης. Οπότε, για το O 2 είναι φυσικό να μοντελοποιήσουμε τη χρησιμότητά του ως μια ξεχωριστή χρησιμότητα U 2, η οποία αναθέτει μια μεγάλη αρνητική τιμή στην παρουσία συμβάντος καταστροφικού ατυχήματος και μια μικρή θετική τιμή χρησιμότητας στην απουσία του. Επίσης, μπορούμε να αναθέτουμε τιμές χρησιμότητας σε αποτελέσματα όπως στο ότι ο ασθενής να πρέπει να σταματήσει την έντονη γυμναστική. Είναι πολύ σημαντικό να μπορούμε να αντιστοιχούμε αυτά τα ανόμοια γεγονότα στην ίδια κλίμακα χρησιμότητας, καθώς μας επιτρέπει να παίρνουμε αποφάσεις σε ένα μόνο συναφές πλαίσιο. Υπάρχουν δύο τρόποι να αντιμετωπίσουμε τους πολλαπλούς κόμβους χρησιμότητας: ή συνδυάζουμε παράγοντες για να φτιάχνουμε ένα μόνο κοινό παράγοντα ή εκμεταλλευόμαστε τη γραμμικότητα των αναμενόμενων τιμών. Σχήμα 5.15: Από κοινού παράγοντες χρησιμότητας Στην OptimizeWithJointUtility.m συνδυάζουμε τις χρησιμότητες για τους διαφορετικούς κόμβους σε ένα μόνο από κοινού παράγοντα χρησιμότητας. Για παράδειγμα, o 1 1 d0 1 o U 1 = 1 [ ] 1 d0 2 o 0 o 0 1 d1 3, U = o o 1 1 d1 4 80

90 o 0 1 d0 o o 1 1 d0 o o 0 1 d1 o o 1 1 U 1 + U 2 = d1 o o 0 1 d0 o o 1 1 d0 o o 0 1 d1 o o 1 1 d1 o Ο εναλλακτικός τρόπος είναι ότι εκμεταλλευόμαστε τη γραμμικότητα των αναμενόμενων τιμών: EU[I[δ D ]] = P (X P a X )δ D U i X D X X U i U = δ D [ ( P (X P a X )U i )] D,P a D U i U X P a D X X = δ D [ µ D (D, P a D )] (5.6) D,P a D U i U Οπότε, υπολογίζουμε τον παράγοντα αναμενόμενης χρησιμότητας όσον αφορά το D και τον κάθε κόμβο χρησιμότητας χωριστά και τους συνδυάζουμε μετά. (OptimizeLinearExpectations.m) Για παράδειγμα, σε ένα Influence diagram το οποίο εκτός από τους κόμβους τυχαίων μεταβλητών αποτελείται από δύο κόμβους χρησιμότητας και ένα κόμβο απόφασης (MultipleUtilityI), βρίσκουμε ότι η μέγιστη αναμενόμενη χρησιμότητα είναι Προφανώς, θα είναι ίδια είτε την υπολογίσουμε με το OptimizeWithJointUtility είτε με το OptimizeLinearExpectations. Η τιμή της τέλειας πληροφορίας Αν θέλουμε να επιλέξουμε μεταξύ διαφορετικών επιλογών για διαγνωστικά τεστ, π.χ δύο τεστ που το ένα είναι αρκετά φτηνό αλλά έχει μικρή ευαισθησία και το άλλο έχει εξαιρετική ευαισθησία αλλά είναι αρκετά ακριβό, θέλουμε να ξέρουμε ποιο πρέπει να προτιμήσουμε. Οπότε, χρησιμοποιούμε την έννοια της τιμής της τέλειας πληροφορίας: Τροποποιώντας το διάγραμμα επιρροής προσθέτοντας μια ακμή μεταξύ T, D καταλήγουμε σε ένα τροποποιημένο διάγραμμα επιρροής I T D το οποίο μπορούμε να βελτιστοποιήσουμε για να βρούμε το MEU. Άρα, η τιμή της τέλειας πληροφορίας δίνεται από: V P I = MEU[I T D ] MEU[I] (5.7) Συμπεράσματα από τις έως τώρα εφαρμογές Μέχρι αυτό το σημείο μπορέσαμε να διαπιστώσουμε πώς το πλαίσιο των πιθανοτικών γραφικών μοντέλων μπορεί να χρησιμοποιηθεί επιτυχώς για την απάντηση ερωτήσεων του τι πρέπει να πράξουμε σε έναν αβέβαιο κόσμο. Οι τεχνικές που υλοποιήσαμε χρησιμοποιούνται συχνά σε σενάρια πραγματικού κόσμου, από ιατρικές μέχρι και ρομποτικές δραστηριότητες. Αποφύγαμε όμως να μελετήσουμε πώς μπορούν στην πραγματικότητα να κατασκευαστούν αυτά τα μοντέλα, με χρήση μηχανικής μάθησης (σε συνδυασμό με τις γνώσεις των ειδικών). Αυτό θα είναι το αντικείμενο εφαρμογών που θα παρουσιαστούν αναλυτικά στο επόμενο κεφάλαιο. 81

91 Κεφάλαιο 6 Εφαρμογές μηχανικής μάθησης σε πιθανοτικά γραφικά μοντέλα 6.1 Εκμάθηση παραμέτρων σε δίκτυο οπτικής αναγνώρισης χαρακτήρων: Σενάριο: Εκμάθηση CRF για OCR δίκτυο Στο σενάριο κατά το οποίο ασχοληθήκαμε με την οπτική αναγνώριση χαρακτήρων, θεωρήσαμε ότι μας παρέχονται οι τιμές σε κάθε παράγοντα. Όμως, όπως αναφέραμε στη θεωρία, συνήθως δεν είναι γνωστοί οι παράμετροι του δικτύου αλλά πρέπει να εκμαθηθούν αυτόματα από τα δεδομένα. Στόχος: Θα εφαρμόσουμε στο πρόβλημα της αναγνώρισης οπτικών χαρακτήρων τεχνικές μηχανικής μάθησης όπως στοχαστικό gradient descent για εκμάθηση παραμέτρων, σύνολα εκπαίδευσης και ελέγχου, και κανονικοποίηση για αποφυγή υπερβολικού ταιριάσματος στα δεδομένα, προκειμένου να μάθουμε τις παραμέτρους του δικτύου OCR. Εφαρμογή τεχνικών μηχανικής μάθησης: Αρχικά, θα θεωρήσουμε κάποιες έννοεις της ερευνητικής περιοχής του machine learning, προκειμένου να τις εφαρμόσουμε στο πρόβλημά μας. Για το σκοπό αυτό θα θεωρήσουμε την ακόλουθη εργασία. Δοθέντος ενός συνόλου δεδομένων εικόνων που περιέχουν είτε το γράμμα p είτε το γράμμα q και τις αντίστοιχες labels για τις εικόνες, θέλουμε να κατασκευάσουμε ένα ταξινομητή που να μας επιτρέπει να προβλέπουμε τις labels των νέων εικόνων με όσο το δυνατόν μεγαλύτερη ακρίβεια. Συγκεκριμένα, έχουμε ένα σύνολο δεδομένων στο οποίο κάθε δείγμα αποτελείται από 129 χαρακτηριστικά (16 x 8 pixels + 1 όρος bias), X = {X 1,.., X 129 } που βγαίνουν από τις εικόνες, και έχουμε τις αντίστοιχες labels Υ για την εικόνα (0 αν η εικόνα είναι του χαρακτήρα p, 1 αν είναι του χαρακτήρα q). Οπότε, μας δίνεται ένα σύνολο 200 δεδομένων εκπαίδευσης, κάθε ένα από τα οποία είναι μια εικόνα μεγέθους 16 x 8 και στην οποία θέλουμε να αντιστοιχίσουμε τη σωστή label. Θα μάθουμε ένα μοντέλο υπό συνθήκη πιθανότητας P (Y X) με τη χρήση εκτίμησης μέγιστης πιθανοφάνειας έχοντας ως υπό συνθήκη πιθανότητα τη συνάρτηση: P (Y X) = exp( θ T X) (6.1) Δοθέντος ενός συνόλου Μ (για το σύνολο εκπαίδευσης Train1X M = 20 ) παραδειγμάτων εκπαίδευσης, D = {x[m], y[m]} M m=1, θέλουμε να βρούμε το θ που μεγιστοποιεί την πιθανοφάνεια των παρατηρούμενων δεδομένων. θ = arg max θ L(θ : D) = arg max θ M P (y[m] x[m]; θ) (6.2) m=1 82

92 Σχήμα 6.1: Πραγματικές ετικέτες και προβλεπόμενες ετικέτες των δεδομένων εκπαίδευσης. Σχήμα 6.2: Οπτικοποίηση δεδομένων εκπαίδευσης για το δίκτυο OCR που ξεχωρίζει χαρακτήρες p, q. Ισοδύναμα, μπορούμε να ελαχιστοποιήσουμε την αρνητική log likelihood. M θ = arg min l(θ : D) = arg min log P (y[m] x[m]; θ) (6.3) θ θ 83 m=1

93 Προκειμένου να βρούμε τις τιμές των παραμέτρων θ θα χρησιμοποιήσουμε στοχαστικό gradient descent. Ξεκινώντας από το απλό gradient descent, σύμφωνα με ό,τι περιγράψαμε με συντομία στη θεωρία εκτίμησης παραμέτρων για το gradient ascent, η βασική ιδέα είναι: Ο αλγόριθμος κάνει βήματα στην κατεύθυνση του αρνητικού grad της l(θ, D), που είναι η κατεύθυνση της πιο απότομης καθόδου, και τελικά συγκλίνει σε ένα ελαχιστοποιητή της l(θ, D). θ := θ α θ [ l(θ : D)] (6.4) όπου α η παράμετρος εκμάθησης που καθορίζει το μέγεθος των βημάτων. Όμως, παρατηρούμε ότι ο αλγόριθμος απαιτεί να αθροίζουμε τα gradients πάνω σε κάθε ένα παράδειγμα εκπαίδευσης. Δηλαδή πριν κάνει μία update της παραμέτρου θ, απαιτεί τον υπολογισμό των gradients πάνω σε όλα τα παραδείγματα εκπαίδευσης, πράγμα χρονοβόρο. Αντί αυτού, μια πολύ πιο αποδοτική τεχνική είναι αυτή του στοχαστικού gradient descent που προσεγγίζει το gradient πάνω σε ένα ολόκληρο σύνολο εκπαίδευσης χρησιμοποιώντας το gradient σε ένα μόνο (ή μερικά) παράδειγμα εκπαίδευσης. Το μειονέκτημα αυτής της προσέγγισης είναι ότι το διάνυσμα των παραμέτρων μπορεί να ταλαντώνεται γύρω από το πραγματικό ελάχιστο. Για να το αντιμετωπίσουμε, μειώνουμε σιγά σιγά τη σταθερά εκμάθσης προς το 0 καθώς προοδεύει ο αλγόριθμος. Η συνάρτηση του stochastic gradient descent παίρνει ως είσοδο τη συνάρτηση που υπολογίζει το κόστος και το grad, την αρχική τιμή της παραμέτρου και τον αριθμό των επαναλήψεων, και επιστρέφει τη βέλτιστη τιμή της παραμέτρου: Αλγόριθμος στοχαστικού gradient descent for k = 1 to max iterations: Pick arbitrary training example (x[m], y[m]), then update θ := θ α k θ [ log P (y[m] x[m]; θ)] where α k = k Τρέχοντας τον stochastic gradient descent πάνω στα δεδομένα Train1X.mat και TrainY.mat που περιέχουν τα χαρακτηριστικά των δεδομένων και τις πραγματικές labels, τρέχουμε την LRTrainSGD.m στα δεδομένα εκπαίδευσης με λ = 0 για να πάρουμε εκτιμήσεις παραμέτρων μέγιστης πιθανοφάνειας. Έπειτα, υπολογίζουμε τις προβλέψεις για τα δεδομένα εκπαίδευσης με το LRPredict.m και την ακρίβεια ταξινόμησης. Οπότε πετυχαίνουμε ακρίβεια 96 % πάνω στα δεδομένα εκπαίδευσης. Όταν όμως θέλουμε να αξιολογήσουμε την απόδοση του μοντέλου πάνω στα δεδομένα του συνόλου ελέγχου ( Test1X.mat, Test1Y.mat), παρατηρούμε ότι η ακρίβεια είναι κάπως μικρότερη από αυτή των δεδομένων εκπαίδευσης. Οπότε έχει ταιριάξει το μοντέλο υπερβολικά στα δεδομένα εκπαίδευσης (overfitting). Μοντέλο ελέγχου Ακρίβεια Train1X 96% Test1X % Πίνακας 6.1: Σύγκριση ακρίβειας μοντέλου στο Train set και Test set Επισήμανση 26. Προκειμένου να αποφύγουμε το υπερβολικό ταίριασμα στα δεδομένα εκπαίδευσης, προσθέτουμε τον όρο κανονικοποίησης: λ 2 n i=1 θ2 i 84

94 Σχήμα 6.3: Κανονικοποίηση: Τιμές ακρίβειας για διάφορες τιμές κανονικοποίησης λ Οπότε έχουμε: θ = arg min θ l(θ; D) + λ 2 n θi 2 (6.5) Πώς όμως γνωρίζουμε την τιμή της λ? Ο καλύτερος τρόπος είναι να χρησιμοποιήσουμε ένα σύνολο validation. Εκπαιδεύουμε το σύνολο εκπαίδευσης με τη χρήση διαφόρων τιμών του λ και μετά αξιολογούμε τις ακρίβειες των μοντέλων στο σύνολο validation. Οπότε, επιλέγουμε το λ εκείνο που δίνει την μεγαλύτερη ακρίβεια στο σύνολο validation. Lamda Ακρίβεια % % % % % 1 91 % 2 88 % % 8 74 % % % Πίνακας 6.2: Επιλογή καλύτερου λ κανονικοποίησης για βέλτιστη ακρίβεια μοντέλου στο Test set με χρήση Validation Set i=1 Επισήμανση 27. Παρατηρούμε ότι καθώς αλλάζει το λ, αλλάζουν και οι προβλέψεις, άρα και η ακρίβεια του μοντέλου. Με ένα μικρό λ, βρίσκουμε ότι ο ταξινομητής έχει αρκετά μεγάλη ακρίβεια, αλλά δημιουργεί τον κίνδυνο του υπερβολικού ταιριάσματος στα δεδομένα. Με ένα λίγο μεγαλύτερο λ, πετυχαίνουμε καλύτερη ακρίβεια και αποφεύγουμε το υπερταίριασμα στα δεδομένα εκπαίδευσης. Όμως, αν θέσουμε πολύ μεγάλη τιμή στο λ, δεν παίρνουμε καλή ακρίβεια και οι προβλέψεις δεν ακολουθούν τα δεδομένα τόσο καλά, επομένως έχουμε 85

95 υπο-ταίριασμα στα δεδομένα. Επομένως, ελέγχοντας τα αποτελέσματα στον Πίνακα 6.2, παρατηρούμε ότι μια μικρή κανονικοποίηση βοηθά την απόδοση στα δεδομένα ελέγχου! Σχήμα 6.4: Οπτικοποίηση προβλεπόμενων εικόνων χαρακτήρων από: (a) Σύνολο ελέγχου (Ακρίβεια:91.25%) (b) Σύνολο Validation με χρήση βέλτιστου λ = 0.1 (Ακρίβεια:93%) Όπως έχουμε περιγράψει στη θεωρία Εκμάθησης παραμέτρων, στα CRF μοντέλα υπάρχουν δύο είδη μεταβλητών, οι κρυφές μεταβλητές που θέλουμε να μοντελοποιήσουμε και αυτές που παρατηρούνται πάντα. Στην περίπτωση του δικτύου OCR θέλουμε να μοντελοποιήσουμε τις αναθέσεις στους χαρακτήρες, όπως a και c (που παίζουν το ρόλο της μεταβλητής Υ) και παρατηρούμε πάντα τις εικόνες χαρακτήρων που είναι πίνακες τιμών pixels (Μεταβλητή Χ). Τυπικά, οι μη παρατηρούμενες μεταβλητές θα συμβολίζονται Υ και οι παρατηρούμενες μεταβλητές με Χ. Το CRF προσπαθεί να μοντελοποιήσει την κατανομή P(Y X), δηλαδή την υπό συνθήκη κατανομή πάνω σε όλες τις αναθέσεις σε χαρακτήρες δεδομένων των παρατηρούμενων εικόνων. Θα χρησιμοποιήσουμε το μοντέλο του Σεναρίου 3, το οποίο περιέχει μόνο μονούς και ζευγωτούς παράγοντες. Θεωρία - Εκμάθηση CRF παραμέτρων για το OCR Ένα feature είναι μια συνάρτηση f i (D i ) : V al(d i ) R) (6.6) όπου D i είναι το σύνολο των μεταβλητών στην σκοπιά του i - οστού feature. Ας θεωρήσουμε ότι όλα τα features είναι δυαδικοί δείκτες, είτε παίρνουν τιμή 0 ή τιμή 1. Κάθε feature έχει συνδεδεμένο με αυτό ένα βάρος θ i. Δοθέντων των features {f i } k i=1 και τα βάρη {θ i} k i=1, η κατανομή ορίζεται ως Ο ακόλουθος όρος δίνει τη συνάρτηση διαμερισμού P (Y x : θ) = 1 k Z x (θ) exp( θ i f i (D i )) (6.7) i=1 Z x (θ) = Y k exp( θ i f i (D i )) (6.8) i=1 86

96 Το γεγονός ότι η συνάρτηση διαμερισμού απαιτεί τον υπολογισμό αθροίσματος πάνω σε έναν εκθετικό αριθμό αναθέσεων στις μεταβλητές, αποτρέπει τον υπολογισμό της P (Y x : θ) με την brute force προσέγγιση. Στο CRF μας έχουμε τρία είδη features, 1. f i,c (Y i ) που λειτουργούν πάνω σε μοναδικούς χαρακτήρες (κρυμμένες καταστάσεις) - πρόκειται για συναρτήσεις δείκτη για Y i = c 2. f i,j,c,d (Y i, x ij ) που δρα σε ένα μόνο χαρακτήρα και σε ένα μόνο pixel εικόνας που συνδέεται με αυτή την κατάσταση - συνάρτηση δείκτης ότι Y i = c, x ij = d. (Χρησιμοποιούνται συλλογικά για να εκφράσουν την ατομική πιθανότητα ότι Y i = c δεδομένου του x i ) 3. f i,c,d (Y i, Y i+1 ) που δρα πάνω σε ένα ζεύγος γειτονικών χαρακτήρων - μια συνάρτηση δείκτης για Y i = c, Y i+1 = d Ας θυμηθούμε ότι ο στόχος μας είναι να μεγιστοποιήσουμε την αρνητική log likelihood των παραμέτρων δεδομένου του συνόλου δεδομένων. Για να το κάνουμε αυτό θα χρησιμοποιήσουμε στοχαστικό gradient descent, οπότε χρειάζομαι μια συνάρτηση που παίρνει ένα παράδειγμα του συνόλου δεδομένου και υπολογίζει το κόστος αυτού του παραδείγματος και το grad των παραμέτρων όσον αφορά το κόστος. Άρα, πρέπει να ελαχιστοποιήσουμε το κόστος της αρνητικής πιθανοφάνειας και να βάλουμε μέσα και μια σταθερά κανονικοποίησης για να αποφύγουμε το overfitting. nll(x, Y, θ) = log(z x (θ)) k θ i f i (Y, x) + λ 2 i=1 k θi 2 (6.9) i=1 θ i nll(x, Y, θ) = E θ [f i ] E D [f i ] + λθ i (6.10) Η αναμενόμενη τιμή των τιμών των features όσον αφορά τις παραμέτρους του μοντέλου: E θ [f i ] = Y P (Y x)f i (Y, x) (6.11) και η αναμενόμενη τιμή των τιμών του feature όσον αφορά το δοθέν παράδειγμα δεδομένου E D [f i ] = f i (Y, x) (6.12) Όταν οι παράμετροι μοιράζονται σε πολλαπλά features, μπορούμε να μειώσουμε το συνολικό αριθμό των παραμέτρων που χρειάζεται να μάθουμε. Αν { f (i)} το σύνολο των features που μοιράζονται την παράμετρο θ i, μπορούμε να επεκτείνουμε τις πάνω εξισώσεις ως nll(x, Y, θ) = log Z x (θ) k θ i i=1 f j {f (i) } f j (Y, x) + λ 2 k (θ i ) 2 (6.13) i=1 θ i nll(x, Y, θ) = f j {f (i) } E θ [f j ] f j {f (i) } E D [f j ] + λθ i (6.14) Οπότε τα θ i πλέον συνδέεται με το σύνολο των χαρακτηριστικών { f (i)}. Οι παράμετροι που θα θέλουμε να μάθουμε είναι οι ακόλουθες, όπως αυτές αντιστοιχούν στα ανωτέρω χαρακτηριστικά { } 1. θc C μοιράζονται από fi,c C (Y i) 2. θ I c,d μοιράζονται από { f I i,j,c,d (Y i, x ij ) i,j } i i,j 87

97 } 3. θc,d {f P μοιράζονται από i,c,d P (Y i, Y i+1 ) i Υλοποίηση - Εκμάθηση CRF παραμέτρων για το OCR: Ο βασικός μας στόχος είναι να υλοποιήσουμε τη συνάρτηση InstanceNegLogLikelihood.m. Στο featureset έχουμε όλα τα απαιτούμενα features. Σχήμα 6.5: Οπτικοποίηση παραδείγματος δεδομένων εκπαίδευσης για το δίκτυο OCR Ένα παράδειγμα δεδομένων συμπεριλαμβάνει το X και το y τα οποία μαζί σχηματίζουν ένα μοναδικό παράδειγμα (X, y). Αυτό το παράδειγμα αντιστοιχεί σε μια ακολουθία χαρακτήρων, και συγεκριμένα σε υποακολουθίες λέξεων, ώστε το μοντέλο να είναι αρκετά γρήγορο εκπαιδευόμενο. Η μεταβλητή y είναι διάνυσμα τιμών χαρακτήρων - για παράδειγμα y = (3, 1, 20) αναπαρίσταται από τη λέξη cat. Η μεταβλητή X είναι πίνακας όπου η i-οστή σειρά περιέχει τιμές pixels για τον i-οστό χαρακτήρα στο παράδειγμα. Κάθε σειρά έχει 32 τιμές, επειδή οι εικόνες είναι 8 x 4 pixels. Και πάλι το γεγονός ότι χρησιμοποιούμε μικρού μεγέθους εικόνες έχει να κάνει με το ότι θέλουμε να κρατήσουμε το μοντέλο μας μικρό και γρήγορο. Οπτικοποιώντας κάθε μία από αυτές τις ακολουθίες χαρακτήρων, με την VisualizeCharacters(X) όπου ο X είναι πίνακας μεγέθους (αριθμός χαρακτήρων) 32. Ο λόγος που υπεισέρχεται το μοίρασμα των χαρακτηριστικών είναι διότι τα παραδείγματα δεδομένων δεν είναι μεμονωμένες εικόνες αλλά ακολουθίες εικόνων που θέλουυμε να θεωρήσουμε μαζί. Πλέον κάθε παράδειγμα δεδομένου δεν είναι μεμονωμένος χαρακτήρας, αλλά είναι μια ακολουθία χαρακτήρων, υποακολουθία λέξης. Προκειμένου να υπολογίσουμε την αρνητική log πιθανοφάνεια και το gradient όσον αφορά ένα από αυτά τα παραδείγματα, που είναι μεμονωμένη λέξη, κάνουμε τα εξής: featureset = GenerateAllFeatures(X, modelparams); factorset = FeaturesToFactors(featureSet,5,theta); CliqueTree = CreateCliqueTree(factorSet); [P, logz] = CliqueTreeCalibrate(CliqueTree, 0); featurecounts = FeatureCounts(theta,featureSet,y); weightedfeaturecounts = theta.* featurecounts; l = modelparams.lambda; regcost = 0.5*l*sum(theta.^2); reggrad = l*theta; ModelFeatureCounts = ModelFeatureCounts(theta, featureset, P); nll = logz - sum(weightedfeaturecounts) + regcost; grad = ModelFeatureCounts - featurecounts + reggrad; return [nll, grad]; Ο βασικός λόγος για τον οποίο υλοποιούμε την InstanceNegLogLikelihood.m είναι για να το χρησιμοποιήσουμε με το στοχαστικό gradient descent, προκειμένου να εκπαιδεύσουμε ένα μεγάλο σύνολο δεδομένων με ένα σύνολο παραμέτρων, ώστε να κάνουμε καλές προβλέψεις πάνω στα δεδομένα. Όμως, πρέπει να λάβουμε υπόψη το υπολογιστικό κόστος: Θεωρώντας ότι η κλήση της συνάρτησης πιάνει 2 δευτερόλεπτα, καθώς για κάθε παράδειγμα πρέπει να καλούμε αυτή τη συνάρτηση, και αφού έχουμε

98 παραδείγματα, θα χρειάζονται περίπου 3 λεπτά για κάθε ανανέωση παραμέτρου. Οπότε σε σύγκριση με το gradient descent που θέλει εκατοντάδες ανανεώσεις παραμέτρου για να συγκλίνει σίγουρα η χρήση το stochastic gradient descent είναι μια καλή επιλογή αφού για να πάρουμε λογικά αποτελέσματα αρκούν μερικά περάσματα από τα δεδομένα. Αλλά και πάλι, η διαδικασία της εκπαίδευσης για αυτή την περίπτωση είναι χρονοβόρα, της τάξης των 10 με 20 λεπτών. Για αυτό τον λόγο δεν θα προχωρήσουμε στη διαδικασία μέτρησης ακρίβειας του εκπαιδευμένου μοντέλου στο σύνολο ελέγχου. 6.2 Εκμάθηση δομής: Εκμάθηση δικτύων με δενδροειδή μορφή Σενάριο: Μας δίνεται ένα συνθετικό σύνολο δεδομένων, το οποίο περιέχει δεδομένα πόζας σώματος για ανθρώπους και εξωγήινους. Θέλουμε να κάνουμε εκμάθηση δομής σε ένα κατευθυνόμενο μοντέλο που αναπαριστά την πόζα σώματος. Οπότε, θα ασχοληθούμε με το πώς μπορούμε να μάθουμε υπό συνθήκη κατανομές (CPDs) για συνεχείς μεταβλητές και πώς μπορούμε να μάθουμε δομή τύπου δέντρου μεταξύ των μερών του σώματος. Αφού κατασκευάσαμε το μοντέλο, του οποίου μάθαμε τη δομή και τις παραμέτρους, μπορούμε να ταξινομήσουμε καινούρια δεδομένα πόζας είτε ως ανθρώπους είτε ως εξωγήινους! Κωδικοποίηση προβλήματος: Μοντελοποιούμε τα μέρη του σώματος να έχουν 10 μέρη, όπως φαίνεται στην εικόνα. Κάθε μέλος του σώματος παραμετροποιείται με 3 πραγματικούς αριθμούς (y, x, a) όπου (y, x) η θέση και α ο προσανατολισμός. Η τιμή του y αυξάνεται από πάνω προς τα κάτω; η τιμή του x αυξάνεται από αριστερά προς δεξιά; η τιμή του α αυξάνεται σύμφωνα με τη φορά κίνησης του ρολογιού. Σχήμα 6.6: σώματος Αναπαράσταση της πόζας Οπότε, αναπαριστούμε μία πόζα ολόκληρου του σώματος ως 10 x 3 πίνακα, όπου οι σειρές αντιστοιχούν στα 10 διαφορετικά μέλη σώματος, και οι στήλες αναφέρονται στα y, x, α αντίστοιχα. Θα μας δίνεται ένα μεγάλο σύνολο παραδειγμάτων ποζών, από το οποίο θα εκτελούμε την εργασία της εκμάθησης. Υπάρχουν δύο κλάσεις στο σύνολο δεδομένων, άνθρωποι και εξωγήινοι. Θεωρούμε ότι οι άνθρωποι και οι εξωγήινοι έχουν διαφορετικές δομές σώματος, οπότε θα επιδεικνύουν διαφορετικές παραλλαγές ποζών. Στόχος μας το να μάθουμε μοντέλα που αποτυπώνουν αυτές τις παραλλαγές ποζών σε κάθε μία από τις 2 κλάσεις. Στο σενάριο μας, θα θεωρήσουμε ότι μας δίνονται οι labels για το αν κάθε παράδειγμα ανήκει στην κλάση του ανθρώπου ή του εξωγήινου, οπότε πρόκειται για επιβλεπόμενη μάθηση. Ας θεωρήσουμε ένα Bayesian δίκτυο στο οποίο ο κάθε κόμβος αναπαριστά ένα κομμάτι σώματος. Δηλώνουμε τη μεταβλητή του μέρους σώματος ως { 10 O i i=1}, κάθε μία από τις οποίες παίρνει συνεχείς τιμές στο R 3 : O i = (y i, x i, α i ). Για λόγους απλούστευσης αυτού του σεναρίου θα θεωρούμε ότι τα y i, x i, α i είναι ανεξάρτητα, με αποτέλεσμα η πιθανότητα του να παρατηρούμε το O i είναι απλά το γινόμενο των πιθανοτήτων του να παρατηρούμε y i, x i, α i χωριστά. Επίσης, θα συμβολίσουμε τη μεταβλητή κλάσης ως C, που θα παίρνει διακριτές τιμές {1, 2} για τις δύο κλάσεις των ανθρώπων και εξωγήινων 89

99 Σχήμα 6.7: Οπτικοποίηση μέρους του συνόλου εκπαίδευσης (traindata) που απαρτίζεται από ανθρώπινες και εξωγήινες πόζες. Στην εικόνα φαίνονται δείγματα ανθρώπινων ποζών. αντίστοιχα. Περίπτωση Naive Bayes Μοντέλου: Μία πρώτη επιχείρηση επίλυσης του προβλήματος όπως το κωδικοποιήσαμε είναι να υιοθετήσουμε την υπόθεση Naive Bayes, ότι όλες οι μεταβλητές {O i } 1 i=1 0 είναι ανεξάρτητες δεδομένου της μεταβλητής κλάσης C. Στο Naive Bayes μοντέλο, κάθε μέλος σώματος έχει μόνο την κλάση label σαν γονιό του. Οι μεταβλητές μπορούν τότε να παραμετροποιηθούν ως ακολούθως: P (C = k) = c k (6.15) y i C = k N(µ y ik, σy ik2 ) (6.16) x i C = k N(µ x ik, σx ik 2 ) (6.17) α i C = k N(µ α ik, σα ik 2 ) (6.18) όπου i = 1, 2,..., 10 είναι δείκτης για τα μέλη σώματος, και k = 1, 2 δείκτης για τις δύο κλάσεις. Ο συμβολισμός Y X = x N(µ, σ 2 ) σημαίνει η υπό συνθήκη κατανομή της Y δοθέντος X είναι μια Gaussian κατανομή με μέση τιμή µ, και διασπορά σ 2. Δοθείσης της label κλάσης, κάθε συνεχής μεταβλητή μοντελοποιείται από μία Gaussian κατανομή. Οπότε, κάθε μεταβλητή σώματος θα έχει δύο σύνολα Gaussian παραμέτρων, που αντιστοιχούν στις δύο κλάσεις. Στόχος μας είναι να μάθουμε τις 90

100 παραμέτρους από τα δεδομένα εκπαίδευσης. Επειδή η μεταβλητή κλάσης C παρατηρείται πάντα στα δεδομένα εκπαίδευσης (επιβλεπόμενη μάθηση), μπορούμε να συλλέξουμε τις απαραίτητες στατιστικές για κάθε μία κλάση από τα δεδομένα εκπαίδευσης. Σχήμα 6.8: (a) Το Naive Bayes μοντέλο (b) Εισάγοντας ακμές μεταξύ μελών σώματος- CLG μοντέλο Καθώς έχουμε κάνει την Naive Bayes υπόθεση ότι τα δεδομένα είναι i.i.d (ανεξάρτητα με πανομοιότυπη κατανομή), μπορούμε να βρούμε τις απαραίτητες στατιστικές από την εμπειρική κατανομή που καθορίζεται από τις στατιστικές. Οπότε υλοποιούμε τη συνάρτηση FitGaussianParameters.m στην οποία ταιριάζουμε τις παραμέτρους ML (μέγιστης πιθανοφάνειας) µ = E P [X] και σ = V ar P [X] της Gaussian κατανομής δοθέντων των δειγμάτων. E P είναι η αναμενόμενη τιμή ως προς την εμπειρική κατανομή P που καθορίζεται από το σύνολο δεδομένων D. Η διασπορά σ 2 μπορεί να υπολογισθεί ως V ar P [X] = E P [X 2 ] E P [X 2 ] E P [X 2 ] E P [X] 2. Σχήμα 6.9: Ταίριασμα Gaussian παραμέτρων στην εμπειρική κατανομή P που καθορίζεται από το σύνολο δεδομένων D (εμπειρική μέση τιμή = 0.22, εμπειρική διασπορά = 24.65) Περίπτωση υπό συνθήκη Gaussian Γραμμικού μοντέλου (CLG): Ενώ η Naive Bayes υπόθεση οδηγεί σε ένα μοντέλο που είναι εύκολο να το μάθουμε, κάνει μη ρεαλιστικές υποθέσεις. Υποθέτει ότι τα μέλη σώματος είναι ανεξάρτητα δοθείσης της κλάσης label. Όμως, γνωρίζουμε ότι αυτό δεν ισχύει καθώς τα μέλη σώματος ενώνονται με συνδέσμους, με αποτέλεσμα να εξαρτάται το ένα από το άλλο. Η δεύτερη προσπάθειά μας να επιλύσουμε το πρόβλημα θα κάνει χρήση 91

101 της κινηματικής δομής του ανθρώπινου σώματος προσθέτοντας ακμές μεταξύ των μεταβλητών μελών σώματος. Ας θεωρήσουμε αρχικά ότι τόσο οι εξωγήινοι όσο και οι άνθρωποι έχουν μια γνωστή ίδια σκελετική δομή. Παίρνουμε το torso ως ρίζα μεταβλητή και τα head, left-arm, right-arm, left-thigh, right-thigh ως παιδιά του. Μετά προσθέτουμε τους left-forearm σαν παιδί του left arm, και left-leg σαν παιδί του left-thigh. Ομοίως, προσθέτουμε right-forearm σαν παιδί του right-arm και το right-leg σαν παιδί του right-thigh. Χωρίς τη μεταβλητή κλάσης C, τα μέλη σώματος σχηματίζουν ένα μοντέλο με δομή δέντρου, δηλαδή ένα Bayesian δίκτυο όπου κάθε μεταβλητή έχει το πολύ ένα γονιό. Βλέπουμε το δίκτυο με την κλάση C ως γονιό σε όλες τις μεταβλητές μελών σώματος στο Σχήμα 6.8 b. Όσον αφορά την παραμετροποίηση των τοπικών υπό συνθήκη κατανομών, μόνο για την μεταβλητή ρίζα - που έχει μόνο τη μεταβλητή κλάσης ως γονιό - η παραμετροποίηση παραμένει ίδια με αυτή της περίπτωσης του Naive Bayes. Για όλες τις υπόλοιπες μεταβλητές μελών σώματος, υπάρχουν δύο γονείς, η μεταβλητή κλάσης και το μέλος σώματος του γονιού. Οπότε θα χρειαστούμε άλλη μορφή παραμετροποίησης: Το υπό συνθήκη γραμμικό Gaussian μοντέλο (CLG) μπορεί να παραμετροποιεί μεταβλητές με τόσο διακριτές όσο και συνεχείς μεταβλητές ως γονείς. Για κάθε ανάθεση τιμής στο διακριτό γονιό, προκύπτει διαφορετικό γραμμικό Gaussian μοντέλο. Στα πλαίσια του προβλήματός μας, θα μάθουμε ένα γραμμικό Gaussian μοντέλο για τους ανθρώπους και ένα διαφορετικό για τους εξωγήινους. Επίσημα, η υλοποίηση κάθε κόμβου παιδιού - μέλους σώματος O i = (y i, x i, α i ) μοντελοποιείται ως γραμμικό Gaussian μοντέλο στις υλοποιήσεις του γονιού μέλους σώματος έχοντας υπό συνθήκη κάθε πιθανή ανάθεση στην κλάση label. y i O p(i), C = k N(θ (1) ik x i O p(i), C = k N(θ (5) ik α i O p(i), C = k N(θ (9) ik + θ(2) ik y p(i) + θ (3) ik x p(i) + θ (4) ik α p(i), σ y 2 ik ), (6.19) + θ(6) ik y p(i) + θ (7) ik x p(i) + θ (8) ik α p(i), σ x ik 2 ), (6.20) + θ(10) ik y p(i) + θ (11) ik x p(i) + θ (12) ik α p(i), σ α ik 2 ), (6.21) όπου i = 2,..., 10 είναι δείκτης για τα μέλη σώματος και k = 1, 2 δείκτης για τις δύο κλάσεις. Ο συμβολισμός p(i) δηλώνει το γονιό μέλος σώματος του i-οστού μέλους σώματος. Σε αυτό το σημείο υλοποιούμε την εκμάθηση των παραμέτρων του CLG μοντέλου με την FitLinearGaussianParameters.m. Στη γενική μορφή θέλουμε να ταιριάξουμε τις παραμέτρους του γραμμικού Gaussian ώστε X U N(β 1 U 1 + β 2 U β n U n + β n+1, σ 2 ) (6.22) Από την παραγώγιση της συνάρτησης log πιθανοφάνειας, βλέπουμε ότι οι παράμετροι (β 1,..., β n+1 ) ικανοποιούν το ακόλουθο σύστημα γραμμικών εξισώσεων. E P [X] = β 1 E P [U 1 ] + β 2 E P [U 2 ] β n E P [U n ] + β n+1 (6.23) E P [XU i ] = β 1 E P [U 1 U i ] + β 2 E P [U 2 U i ]] β n E P [U n U i ]] + β n+1 E P [U i ] (6.24) όπου i = 1,..., n. Λύνοντας το σύστημα, βρίσκουμε τις (β 1,..., β n+1 ), μπορούμε να υπολογίσουμε n n σ = Cov P [X; X] Cov P [U i ; U j ] (6.25) i=1 j=1 όπου η συνδιασπορά μπορεί να υπολογιστεί ως Cov P [X; Y ] = E P [XY ] E P [X]E P [Y ] Εκμάθηση Μοντέλου: Όπως εξετάσαμε στη θεωρία, για να αξιολογήσουμε πόσο καλά τα μοντέλα 92

102 Σύνολο δεδομένων Αριθμός δειγμάτων traindata testdata Πίνακας 6.3: Αριθμός δειγμάτων για τα σύνολα δεδομένων με τα οποία θα εκπαιδεύσουμε και ελέγξουμε τη λειτουργία των μοντέλων μας αντίστοιχα. αιχμαλωτίζουν αυτές τις παραλλαγές ποζών στα παρεχόμενα δεδομένα, χρησιμοποιούμε τη συνάρτηση log πιθανοφάνειας. Δοθέντος ενός μοντέλου P, με μία δομή γράφου G και του συνόλου δεδομένων, η log πιθανοφάνεια του μοντέλου πάνω στο σύνολο δεδομένων είναι : N log P (O 1 = o i 1,..., O10) i (6.26) i=1 όπου N είναι ο αριθμός των παραδειγμάτων στο σύνολο δεδομένων. Για να υπολογίσουμε την πιθανοφάνεια της κάθε ξεχωριστής υλοποίησης πόζας {O i } 10 i=1 που παρατηρούμε μπορεί να υπολογιστεί ως ακολούθως P (O 1,..., O 10 ) = 2 P (C = k, O 1,..., O 10 ) = k=1 2 P (C = k) k=1 10 i=1 P (O i C = k, O p(i) ) (6.27) όπου αθροίζουμε πάνω σε όλες τις από κοινού πιθανότητες για κάθε πιθανή ετικέτα κλάσης. Ο συμβολισμός O p(i) δηλώνει τον γονιό του O i. Για την υλοποίηση της συνάρτησης log πιθανοφάνειας, θα υπολογίζουμε τα πάντα στο λογαριθμικό χώρο, προκειμένου να αποφύγουμε θέματα υποχείλισης. Οπότε αντί να πολλαπλασιάζουμε πιθανότητες, παίρνουμε τους λογαρίθμους των πιθανοτήτων και αθροίζουμε τις log πιθανότητες. Με την υλοποίηση της συνάρτησης ComputeLogLikelihood.m έχουμε ένα μέτρο μέτρησης του ταιριάσματος του μοντέλου με τα παρατηρούμενα δεδομένα. Αυτό το μέτρο μας επιτρέπει να συγκρίνουμε διαφορετικές επιλογές μοντέλων ποσοτικά. Εκμάθηση με γνωστές δομές γράφων Αν υποθέσουμε ότι είναι γνωστά το σύνολο δεδομένων και μια δομή γράφου G, θέλουμε να μάθουμε τις παραμέτρους - δηλαδή να μάθουμε ποια παραμετροποίηση χρησιμοποιείται για κάθε ένα από τα μέλη σώματος (συνάρτηση LearnCPDsGivenGraph.m). Για το μοντέλο του οποίου τις παραμέτρους μάθαμε, εκτελούμε την εργασία της ταξινόμησης, ώστε να μπορούμε να μετρήσουμε την ακρίβεια του εκμαθημένου μοντέλου (πόσα από τα παραδείγματα ταξινομήθηκαν σωστά.) Με αυτό τον τρόπο, αν μάθουμε δύο μοντέλα για δύο διαφορετικές γραφικές δομές, μπορούμε να υπολογίσουμε τα σκορ λογαριθμικής πιθανοφάνειας και να συγκρίνουμε αυτά όπως και τις ακρίβειες. [P1 likelihood1] = LearnCPDsGivenGraph(trainData.data, G1, traindata.labels); accuracy1 = ClassifyDataset(testData.data, testdata.labels, P1, G1); VisualizeModels(P1, G1); Για το μοντέλο του Naive Bayes, αν οπτικοποιήσουμε το μοντέλο με τις παραμέτρους που έχουμε μάθει, παρατηρούμε ότι τα μέλη σώματος είναι αποσυνδεδεμένα. Αν εκτελέσουμε το CLG μοντέλο, παρατηρούμε ότι το μοντέλο που μαθαίνουμε βελτιώνεται. [P2 likelihood2] = LearnCPDsGivenGraph(trainData.data, G2, traindata.labels); Επαναλαμβάνοντας την εργασία ταξινόμησης για το νέο μοντέλο (P2, G2) παρατηρούμε ότι πετυχαίνουμε υψηλότερο σκορ πιθανοφάνειας και καλύτερη ακρίβεια για το νέο μοντέλο. Ενώ για το Naive 93

103 Σχήμα 6.10: Σύγκριση αρνητικής λογαριθμικής πιθανοφάνειας των 2 μοντέλων (1: Naive Bayes, 2: CLG) και ακρίβειας. Παρατηρούμε ότι το μοντέλο CLG ταιριάζει περισσότερο στα δεδομένα και γι αυτό παρουσιάζει μεγαλύτερη ακρίβεια ταξινόμησης. Bayes μοντέλο παίρνουμε ακρίβεια 79%, για το CLG μοντέλο πετυχαίνουμε 84%. Όταν οπτικοποιήσουμε το μοντέλο, βλέπουμε από πού προέρχεται η βελτίωση: η δομή για τους ανθρώπους είναι πλέον εύκολα ορατή. Μοντέλο Αρνητική Log πιθανοφάνεια Ακρίβεια Naive Bayes e % CLG e % Πίνακας 6.4: Σύγκριση Naive Bayes και CLG μοντέλου. Και τα 2 μοντέλα εκπαιδέυτηκαν με χρήση των traindata και ελέγχονται ως προς την ακρίβεια και την αρνητική log πιθανοφάνεια πάνω στα testdata. Επισήμανση 28. Όμως, παρατηρούμε ότι ενώ το CLG μοντέλο αιχμαλωτίζει πολύ καλά τη δομή των ανθρώπων, αποτυγχάνει στους εξωγήινους. Ο λόγος που συμβαίνει αυτό είναι επειδή προσπαθούμε να μάθουμε τις παραμέτρους του μοντέλου τόσο για τους ανθρώπους όσο και για τους εξωγήινους χρησιμοποιώντας την ίδια σκελετική δομή το οποίο από ότι βλέπουμε δεν ισχύει! Στην οπτικοποίηση παρατηρούμε ότι κάποια μέλη σώματος είναι αποκομμένα από το υπόλοιπο μέρος του σώματος και η σωματική δομή δεν είναι ξεκάθαρη. Εκμάθηση γραφικών δομών Με βάση τα παραπάνω, αντί να προσπαθούμε να ταιριάζουμε το σύνολο δεδομένων σε μια δεδομένη δομή, θα προσπαθήσουμε να μάθουμε τις δομές από τα δεδομένα. Θέλουμε να μάθουμε ένα μοντέλο δενδροειδούς δομής για κάθε μία κλάση. Δοθείσης μιας συνάρτησης βαθμόλογησης που ικανοποιεί τις ιδιότητες της αποσύνθεσης και της ισοδυναμίας σκορ, υπολογίζουμε το σκορ ή βάρος μεταξύ όλων των ζευγών μεταβλητών και βρίσκουμε το maximum spanning δέντρο (MST). Αν χρησιμοποιήσουμε ως σκορ το σκορ πιθανοφάνειας, θέτουμε τα βάρη των ακμών να είναι: w i j = Score L (O i O j : D) Score L (O i : D) = MI P (O i, O j ) (6.28) 94

104 Σχήμα 6.11: Οπτικοποίηση σειράς δειγμάτων του συνόλου ελέγχου (testdata) όπως τα αποτυπώνει το εκμαθημένο μοντέλο του Naive Bayes. Μπορούμε να δούμε ότι σε κάποιες πόζες μέλη σώματος είναι αποκομμένα, οπότε η σωματική δομή δεν απεικονίζεται καλά. ( Ακρίβεια = 79 %) όπου M είναι ο αριθμός των παραδειγμάτων και I P είναι η αμοιβαία πληροφορία όσον αφορά την κατανομή P. Στην περίπτωση που θέλουμε να υπολογίσουμε την αμοιβαία πληροφορία μεταξύ συνεχών μεταβλητών, που έχουν κλειστή μορφή και συγκεκριμένα ακολουθούν Gaussian κατανομή, έχουμε: I(X, Y ) = 1 2 log( Σ XX Σ Y Y ) (6.29) Σ 95

105 Σχήμα 6.12: Οπτικοποίηση σειράς δειγμάτων του συνόλου ελέγχου (testdata) όπως τα αποτυπώνει το εκμαθημένο μοντέλο του CLG. Το μοντέλο αιχμαλωτίζει πολύ καλά τη δομή των ανθρώπων, αλλά αποτυγχάνει στους εξωγήινους, αφού μέλη σώματος είναι και πάλι αποκομμένα. ( Ακρίβεια = 84 %) και ( ΣXX Σ XY ) Σ Y X Σ Y Y 96

106 Μοντέλο Αρνητική log πιθανοφάνεια Ακρίβεια Μοντέλο με άγνωστη δομή που μαθαίνουμε για κάθε μία κλάση % Πίνακας 6.5: Το μοντέλο στο οποίο δεν προσπαθούμε να ταιριάξουμε προκαθορισμένη δομή στα δεδομένα, π.χ Naive Bayes ή CLG, αλλά στο οποίο προσπαθούμε να μάθουμε τη δομή από τα δεδομένα, έχει πολύ μεγάλη ακρίβεια! όπου. δηλώνει την ορίζουσα του πίνακα, και Σ δηλώνει τον πίνακα συνδιασποράς. Οπότε, χρησιμοποιώντας τις συναρήσεις GaussianMutualInformation.m και MaxSpanningTree.m μπορούμε να υλοποιήσουμε την εργασία της εκμάθησης δενδροειδούς γραφικής δομής από τα δεδομένα LearnGraphStructure.m. Για την υλοποίηση αυτή, χρειάζεται να υπολογίσουμε τα βάρη μεταξύ κάθε ζεύγους κόμβων μελών σώματος από τα οποία υπολογίζεται το maximum spanning tree. Γράφος κλάσης ανθρώπων Γράφος κλάσης εξωγήινων Πίνακας 6.6: Εκμαθημένος γράφος για κάθε μία από τις 2 κλάσεις. Παρατηρούμε ότι καθώς ο γράφος για την κλάση των εξωγήινων είναι πολύ διαφορετικός από το γράφο των ανθρώπων, θα ήταν λάθος να αποτυπώσουμε και τις 2 κλάσεις με έναν μόνο από τους δύο γράφους. Σχήμα 6.13: Γραφική δομή που έγινε γνωστή από διαδικασία εκμάθησης (α) για την κλάση των ανθρώπων (β) για την κλάση των εξωγήινων. Αφού πλέον έχουμε εκτιμήσει τη γραφική δομή για κάθε μία από τις κλάσεις, μπορούμε να λύσουμε 97

107 το πρόβλημα εκτίμησης των παραμέτρων του μοντέλου, χρησιμοποιώντας τη δομή που εκτιμήσαμε από τα δεδομένα αντί για μια προκαθορισμένη γραφική δομή. Για να το πετύχουμε αυτό, μετατρέπουμε το maximum spanning tree στην επιθυμητή γραφική δομή G. [P G likelihood3] = LearnGraphAndCPDs(trainData.data, traindata.labels); ClassifyDataset(testData.data, testdata.labels, P, G) Σχήμα 6.14: Οπτικοποίηση σειράς δειγμάτων του συνόλου ελέγχου (testdata) όπως τα αποτυπώνει το μοντέλο του οποίου μάθαμε τόσο τη δομή όσο και τις παραμέτρους. Μαθεύτηκε από τα δεδομένα διαφορετική γραφική δομή για τους εξωγήινους και διαφορετική για τους ανθρώπους. Οπότε, το μοντέλο αποτυπώνει πολύ καλά τόσο τη δομή των ανθρώπων όσο και των εξωγήινων. ( Ακρίβεια = 93 %) Με αυτή την υλοποίηση πετυχαίνουμε 93 % ακρίβεια. Αν οπτικοποιήσουμε την εκμαθημένη γραφική 98

108 δομή για τους εξωγήινους, θα μπορέσουμε να δούμε από τα δείγματα του μοντέλου το πώς είναι η σκελετική δομή των μελών σώματος των εξωγήινων. Συμπεράσματα Οπότε, στα πλαίσια αυτού του σεναρίου, καταφέραμε να χρησιμοποιήσουμε τα γραφικά μοντέλα για να μάθουμε ταξινομητές οι οποίοι μπορούν να ξεχωρίζουν δύο πόζες που προέρχονται από διαφορετικές κατανομές και γραφικές δομές. Για τις ανάγκες αυτού του σεναρίου, χρησιμοποιήσαμε συνθετικό σύνολο δεδομένων. Ακόμα όμως και με αυτό το συνθετικό σύνολο δεδομένων δείξαμε πώς μπορούμε να βελτιώσουμε τα μοντέλα όταν ενσωματώνουμε γνώση από το σύνολο δεδομένων. 6.3 Εκμάθηση δομής και παραμέτρων με ελλιπή δεδομένα σε δεδομένα δραστηριοτήτων Kinect Σενάριο: Στα πλαίσια του προηγούμενου σεναρίου, κληθήκαμε να εκτελέσουμε τη διεργασία της εκμάθησης Bayesian δικτύων δομής δέντρου προκειμένου να αναπαραστήσουμε πόζες σώματος. Σε αυτό το σενάριο, προσπαθούμε να επεκτείνουμε το δίκτυο που μάθαμε για τις ανθρώπινες πόζες για να εκτελέσουμε αναγνώριση δραστηριότητας (action recognition) από δεδομένα πραγματικού κόσμου που προέρχονται από το Kinect. Τα δεδομένα του Kinect που θα χρησιμοποιήσουμε ως σύνολο δεδομένων είναι δεδομένα που έχουν συλλεγεί από την εκτέλεση δραστηριοτήτων και την εξαγωγή των δεδομένων ανθρώπινης πόζας που συνδέονται με την κάθε δραστηριότητα. Στα πλαίσια αυτού του σεναρίου, τα δεδομένα αντιστοιχούν σε μία από τις τρεις δραστηριότητες: χειροκρότημα, ψηλή κλωτσιά, χαμηλή κλωτσιά. Στόχος: Στόχος μας σε αυτό το πρόβλημα είναι να κατασκευάσουμε ένα μοντέλο το οποίο να μπορεί να αναγνωρίζει την δραστηριότητα που γίνεται. Θα θεωρούμε ότι η κάθε δραστηριότητα είναι μια ακολουθία από πόζες. Όμως, σε αντίθεση με το προηγούμενο σενάριο, όπου μας δίνονταν οι κλάσεις στις οποίες ανήκαν οι πόζες, αυτό το πρόβλημα είναι μη επιβλεπόμενης μάθησης: δεν έχουμε τις ετικέτες κλάσης για τις πόζες. Στα δεδομένα του Kinect που μας δίνονται, δεν γνωρίζουμε εκ των προτέρων ποιες πόζες αποτελούν μια δραστηριότητα δεν γνωρίζουμε ακόμα και ποιες είναι οι πιθανές πόζες που συνθέτουν τις διάφορες δραστηριότητες. Αυτό σημαίνει ότι θα πρέπει να κατασκευάσουμε και να μάθουμε μοντέλα τα οποία ενσωματώνουν μία κρυφή μεταβλητή για τις κλάσεις της πόζας. Για το σκοπό αυτό, θα κάνουμε εκτεταμένη χρήση του αλγορίθμου Expectation Maximization (EM) για να μάθουμε αυτά τα μοντέλα με κρυφές μεταβλητές. Κωδικοποίηση προβλήματος: Θα επεξεργαστούμε τα δεδομένα δραστηριοτήτων ως ακολουθίες των συνιστωσών ποζών. Κάθε δραστηριότητα έχει ένα διαφορετικό αριθμό ποζών στην ακολουθία που εξαρτάται από το μήκος της δραστηριότητας. Κάθε πόζα έχει 10 μέλη σώματος κάθε ένα από τα οποία έχουν τρία συστατικά (y, x, α) που αναπαριστούν την πόζα. Έστω ότι μας δίνεται ένα σύνολο n δραστηριοτήτων α 1,..., α n. Κάθε μία δραστηριότητα α i είναι μια ακολουθία από πόζες p i 1,..., pi m όπου m είναι το μήκος της δραστηριότητας. Μία πόζα p i j μπορεί να περιγραφεί από τα μέλη σώματος {O k } 10 k=1, με O k = (y k, x k, α k ). Οπότε, όπως και στο προηγούμενο σενάριο θα θεωρήσουμε ότι μια πόζα είναι αποθηκευμένη σε έναν 10 3 πίνακα. Bayesian ομαδοποίηση (clustering) των ποζών: Αρχικά, θα πειραματιστούμε με ένα μοντέλο Bayesian ομαδοποίησης, το οποίο θα χρησιμοποιούμε για να ομαδοποιούμε τις πόζες από διαφορετικές δραστηριότητες: θα συνδυάζουμε τις συνιστώσες πόζες από όλα τα δεδομένα δραστηριοτήτων και θα τα ομαδοποιούμε σε γκρουπ παρόμοιων ποζών. Ιδανικά, αυτό που θα θέλαμε είναι να ανακαλύψουμε ομάδες ποζών που να βγάζουν νόημα, όπου η πλειοψηφία των ποζών σε κάθε ομάδα είναι μέρος μιας μοναδικής δραστηριότητας. Η δομή του μοντέλου αυτού δίνεται στο Σχήμα 6.17, το οποίο φαίνεται ίδιο με αυτό 99

109 Σχήμα 6.15: Οπτικοποίηση ποζών δεδομένων Σχήμα 6.16: Οπτικοποίηση των δεδομένων εκπαίδευσης (posedata). Περιλαμβάνει πόζες που αντιστοιχούν και στις τρεις κλάσεις δραστηριοτήτων {clap, high kick, low kick} Σχήμα 6.17: Το γραφικό μοντέλο για την Bayesian ομαδοποίηση ποζών του προηγούμενου σεναρίου με τη διαφορά ότι οι μεταβλητές κλάσης C είναι τώρα κρυφές μεταβλητές (ενώ στο προηγούμενο σενάριο πάντα δίνονταν οι ετικέτες κλάσης ως κομμάτι του συνόλου δεδομένων). Αυτό έχει ως αποτέλεσμα, πλέον να μην έχουμε ένα πλήρες σύνολο δεδομένων από το οποίο να μπορεί να μάθει το μοντέλο (μη επιβλεπόμενη μάθηση) και να πρέπει χρησιμοποιήσουμε τον ΕΜ αλγόριθμο να μάθουμε το μοντέλο από το μερικό σύνολο δεδομένων που μας δίνεται. Στο μοντέλο ομαδοποίησης, κάθε cluster, (ή αλλιώς κλάση), συνδέεται με το δικό του σύνολο υπό 100

110 Σχήμα 6.18: Εξέλιξη της λογαριθμικής πιθανοφάνειας με τον αριθμό των επαναλήψεων (αρ. επαναλήψεων = 20). H απειροελάχιση μείωση σε κάποια σημεία της log πιθανοφάνειας οφείλεται στην παρουσίαση της log likelihood των δεδομένων - η γραφική παράσταση της likelihood των δεδομένων μαζί με την εκ των προτέρων κατανομή πάντα θα αυξανόταν -. Καθώς η σύγκλιση επέρχεται μετά από τη 13η επανάληψη, μπορούμε να τρέξουμε τον EM και για αριθμό επαναλήψεων <20. συνθήκη γραμμικών Gaussian παραμέτρων (CLG). Αν έχουμε K κλάσεις, θα έχουμε K σύνολα CLG παραμέτρων. Ο στόχος μας στη διαδικασία EM είναι να μάθουμε τις CLG παραμέτρους για κάθε κλάση χωρίς να γνωρίζουμε την πραγματική ετικέτα κλάσης για κάθε πόζα. Ο ΕΜ αλγόριθμος για Bayesian ομαδοποίηση Όπως μελετήσαμε στο Κεφάλαιο 4, η γενική ιδέα του ΕΜ είναι να δημιουργήσει ένα σύνολο απαλών αναθέσεων στις κρυφές μεταβλητές (βήμα Ε) και να χρησιμοποιήσει αυτές τις αναθέσεις για να ανανεώσει τις εκτιμήσεις του για τις παραμέτρους του μοντέλου (βήμα Μ). Κάθε ένα από αυτά τα βήματα γίνεται για να μεγιστοποιήσει την πιθανοφάνεια του μοντέλου παίρνοντας είτε τις παραμέτρους είτε τα άγνωστα δεδομένα ως γνωστό, και επαναλαμβάνεται μπρος πίσω μεταξύ των βημάτων αυτών μέχρι να έχει πετύχει ένα τοπικό μέγιστο και να μην μπορεί περαιτέρω να βελτιώσει την πιθανοφάνεια. Λεπτομερώς, ο αλγόριθμος έχει ως εξής: 101

111 Σχήμα 6.19: Η εκ των προτέρων κατανομή πιθανότητας για κάθε μία από τις 3 κλάσεις(clusters), όπως την μάθαμε από τον EM Cluster, για αριθμό clusters = 3 E-βήμα: Στο Ε βήμα στόχος μας είναι να κάνουμε απαλή ανάθεση των ποζών στις κλάσεις. Επομένως, για κάθε πόζα επάγουμε (inference) τις υπό συνθήκη πιθανότητες για κάθε μία από τις Κ κλάσεις χρησιμοποιώντας τις τρέχουσες παραμέτρους του μοντέλου. Αυτό μπορεί να γίνει αφού υπολογίσουμε πρώτα την από κοινού κατανομή ανάθεσης κλάσεων και ποζών, που αποσυντίθεται ως εξής: 10 P (C = k, O 1,..., O 10 ) = P (C = k) P (O i C = k, O pa(i) ) (6.31) Για κάθε μία πόζα του συνόλου δεδομένων πρέπει να υπολογίσουμε την υπό συνθήκη κατανομή κλάσης για αυτήν. P (C = k O 1,..., O 10 ) (6.32) Αυτό αποτελεί την αναμενόμενη επαρκή στατιστική μας, την οποία θα προσπαθήσουμε στο Μ βήμα να μεγιστοποιήσουμε. M-βήμα: Στο Μ βήμα ζητάμε να βρούμε τις CLG παραμέτρους μέγιστης πιθανοφάνειας δοθέντων των απαλών αναθέσεων των ποζών σε κλάσεις (υπό συνθήκη πιθανότητες κλάσεων) από το Ε βήμα. Επομένως, στο Μ βήμα κάνουμε ταίριασμα παραμέτρων όπως κάναμε στο προηγούμενο σενάριο, με την διαφορά ότι κάθε πόζα κάνει μια σταθμισμένη συνεισφορά στην εκτίμηση των CLG παραμέτρων για όλες τις κλάσεις (αντί για τη συνεισφορά στη δοθείσα μόνο κλάση που γινόταν στο προηγούμενο σενάριο). Αξιολόγηση των clusters Δοθέντος ενός μοντέλου ποζών που έχει εξαχθεί από πριν, μιας δομής γράφου και ενός συνόλου αρχικών πιθανοτήτων (θεωρώντας π.χ ότι έχουμε 3 clusters.) i=1 [P loglikelihood ClassProb] = EM_cluster(poseData1, G, InitialClassProb1, max_iter) Με τις εκ των υστέρων πιθανότητες κλάσεων ClassProb, μπορούμε να πάρουμε το cluster εκείνο με το οποίο η κάθε πόζα συνδέεται περισσότερο, και οπτικοποιούμε μέρος των ποζών που έχουν ανατεθεί σε κάθε ένα από τα clusters. 102

112 Σχήμα 6.20: Ανάθεση των δεδομένων ποζών στα 3 clusters που δημιουργούνται με τον αλγόριθμο EM Cluster. Παρουσιάζεται και η κλάση δραστηριότητας (1: clap, 2: high kick, 3: low kick) στην οποία ανήκει το κάθε παράδειγμα δεδομένων. [maxprob, assignments] = max(classprob, [], 2) VisualizeDataset (posedata1 (assignments == i, :, :)) labels1(assignments == i)' Επισήμανση 29. Παρατηρούμε ότι το κάθε ένα cluster δεν είναι ομοιογενές - δηλαδή δεν αποτελείται από δεδομένα μιας μόνο δραστηριότητας. Οπότε δεν μπορούμε με βάση το cluster στο οποίο ανήκει μια πόζα να πούμε με βεβαιότητα σε ποια δραστηριότητα ανήκει. Αυτό συμφωνεί με τη διαίσθησή μας, καθώς αναμέναμε οι πόζες των τριών διαφορετικών δραστηριοτήτων να μοιάζουν πολύ μεταξύ τους -αφού πολλές δραστηριότητες μοιράζονται παρόμοιες πόζες. Για παράδειγμα, στις δραστηριότητες χαμηλή κλωτσιά, ψηλή κλωτσιά, είναι πιθανό να υπάρχουν πόζες που και οι δύο να έχουν το πόδι υψωμένο μέχρι τη μέση. 103

113 Σχήμα 6.21: Οπτικοποίηση μέρους των 3 clusters που προκύπτουν με εφαρμογή του EM για την ομαδοποίηση ποζών. Bayesian clustering με 6 clusters Επιπλέον, μπορούμε να πειραματιστούμε με τον αριθμό των clusters. Αν για παράδειγμα, μας δίνεται ως είσοδος ένα σύνολο αρχικών πιθανοτήτων με σκοπό να ομαδοποιήσουμε τα δεδομένα σε 6 clusters, καλούμε την ακόλουθη συνάρτηση: [P loglikelihood ClassProb] = EM_cluster(poseData1, G, InitialClassProb2, max_iter) Επισήμανση 30. Στα σχήματα 6.22, 6.25 παρατηρούμε ότι το γεγονός ότι διπλασιάσαμε τον αριθμό των clusters δεν δημιουργεί ομοιογενή clusters - δηλαδή δεν υπάρχουν clusters που να αποτελούνται από πόζες μίας μόνο δραστηριότητας. Οπότε, όπως θα διαπιστώσουμε ακολούθως, το Bayesian clustering των ποζών δεν ενδείκνυται για τη δημιουργία συστήματος αναγνώρισης δραστηριοτήτων Ένας Bayesian ταξινομητής για αναγνώριση δραστηριοτήτων Στο πρόβλημα της αναγνώρισης δραστηριοτήτων, μας δίνεται ένα σύνολο Ν παραδειγμάτων εκπαίδευσης D = {(α i, c i )} N i=1 που αποτελείται από δραστηριότητες α i και οι συνδεδεμένες κλάσεις c i ; υπάρχουν 3 διαφορετικές δραστηριότητες στο σύνολο εκπαίδευσης, οπότε c i {1, 2, 3} όπου 1 είναι το χειροκρότημα, 2 είναι υψηλή κλωτσιά, 3 είναι χαμηλή κλωτσιά. Επιθυμούμε να κατασκευάσουμε ένα μοντέλο για να ταξινομήσουμε άγνωστες δραστηριότητες. Για να το κάνουμε αυτό, θα χρησιμοποιήσουμε το γενικό πλαίσιο του Bayesian ταξινομητή: μοντελοποιούμε την από κοινού κατανομή πάνω σε 104

114 Σχήμα 6.22: Οπτικοποίηση μέρους των 6 clusters που προκύπτουν με εφαρμογή του EM για την ομαδοποίηση ποζών. μια δραστηριότητα A και τη κλάση του C P (A, C) = P (A C)P (C) (6.33) 105

115 Σχήμα 6.23: Εξέλιξη της λογαριθμικής πιθανοφάνειας κατά την εφαρμογή του ΕΜ αλγορίθμου για 6 clusters σε συνάρτηση με τον αριθμό των επαναλήψεων. Ισχύουν οι ίδιες παρατηρήσεις με αυτές του 6.18 Μπορούμε να ταξινομήσουμε μια δραστηριότητα α επιλέγοντας την ανάθεση κλάσης c με την υψηλότερη εκ των υστέρων πιθανότητα P (c a) δοθείσης της δραστηριότητας: c P (a c)p (c) = arg max P (c a) = arg max c c P (a) = arg max P (a c) (6.34) c Η τελευταία ισότητα προκύπτει από το ότι έχουμε μία ομοιόμορφη κατανομή κλάσης στο σύνολο εκπαίδευσης, και επομένως ο παρανομαστής είναι ίδιος για όλες τις κλάσεις. Άρα, δοθείσης μιας άγνωστης δραστηριότητας (που δεν είναι παρατηρούμενη), μπορούμε να την ταξινομήσουμε απλώς υπολογίζοντας P(a c) πάνω σε κάθε κλάση, και το να επιλέγουμε την κλάση της οποίας το μοντέλο περιμένει τη μέγιστη πιθανοφάνεια. Ενα βασικό κομμάτι του ταξινομητή που πρέπει να καθορίσουμε είναι το εξής: το υπό συνθήκη κλάσης μοντέλο δραστηριότητας P (A C). Μία πιθανή λύση θα ήταν να ταιριάζαμε ένα Bayesian clustering μοντέλο (ένα μοντέλο- μίγμα ποζών) για κάθε δραστηριότητα ώστε να μοντελοποιήσουμε τους τύπους των ποζών που εμφανίζονται σε κάθε κλάση δραστηριότητας. Όμως, επειδή είδαμε ότι πολλές από τις δραστηριότητες μοιράζονται πόζες που μοιάζουν παρόμοιες, αυτή η λύση δεν θα δουλέωει καλά γιατί 106

116 Σχήμα 6.24: Η εκ των προτέρων κατανομή πιθανότητες για κάθε μία από τις 6 κλάσεις(clusters), όπως την μάθαμε από τον EM Cluster, για αριθμό clusters = 6 θα προκύψουν υπό συνθήκη κλάσης μοντέλα δραστηριότητας τα οποία είναι παρόμοια, πάνω στα οποία ο ταξινομητής δεν θα δουλεύει καλά. Επισήμανση 31. Μία σημαντική παρατήρηση πάνω στις δραστηριότητες που μας επιτρέπει να κατασκευάζουμε ένα καλύτερο μοντέλο δραστηριότητας είναι ότι αν και οι πόζες που αποτελούν μια δραστηριότητα μπορούν να είναι παρόμοιες, ή ακόμα και οι ίδιες, η ακολουθία στην οποία αυτές οι πόζες συμβαίνουν καθορίζει την δραστηριότητα. Για παράδειγμα, στην δράση χαμηλή κλωτσιά, θα περιμέναμε μια ακολουθία ποζών στην οποία το πόδι σηκώνεται, κλωτσάει σε μια κατεύθυνση, και μετά επιστρέφει στην αρχική του θέση. Επομένως, πρέπει να προσπαθούμε να εκμεταλλευτούμε την χρονική (προσωρινή) φύση των ποζών δραστηριότητας στο μοντέλο μας. Επειδή το Bayesian clustering μοντέλο δεν μπορεί να εκφράσει αυτή την χρονική φύση των δεδομένων, θα στραφούμε σε ένα διαφορετικό μοντέλο που μας επιτρέπει να κάνουμε χρήση αυτής της πληροφορίας. Hidden Markov Models (HMMs) μοντέλα δραστηριότητας Το να χρησιμοποιήσουμε ένα HMM για το μοντέλο δραστηριότητας μας επιτρέπει να αποτυπώνουμε την ακολουθιακή φύση των δεδομένων. Δοθείσης μιας δραστηριότητας α i που αποτελείται από μια ακολουθία m ποζών p i 1,..., pi m κατασκευάζουμε ένα HMM μήκους m με κρυφές μεταβλητές κατάστασης {S 1,.., S m } για κάθε πόζα, που αντιστοιχούν στις άγνωστες κλάσεις ποζών. Το ΗΜΜ μοντέλο δραστηριοτήτων καθορίζει μια από κοινού κατανομή πάνω στις μεταβλητής κρυφής κατάστασης και στις πόζες που αποτελούν μία δράση μήκους m: m P (S 1,..., S m, P 1,..., P m ) = P (S 1 )P (P 1 S 1 ) P (S i S i 1 )P (P i S i ) (6.35) Το ΗΜΜ παραμετροποείται από τρεις υπό συνθήκη κατανομέ: την εκ των προτέρων κατανομή πάνω στις αρχικές καταστάσεις P (S 1 ), i=2 107

117 Σχήμα 6.25: Ανάθεση των δεδομένων ποζών στα 6 clusters που δημιουργούνται με τον αλγόριθμο EM Cluster. Παρουσιάζεται και η κλάση δραστηριότητας (1: clap, 2: high kick, 3: low kick) στην οποία ανήκει το κάθε παράδειγμα δεδομένων. Σχήμα 6.26: Το γραφικό μοντέλο για το ΗΜΜ. 108

118 το μοντέλο μετάβασης P (S S) και το μοντέλο εκπομπής P (P S). Το μοντέλο εκπομπής για πόζα P j με μέλη σώματος {O k } 10 k=1 είναι: 10 P (P j S) = P (O i S, O pa(i) ) (6.36) i=1 Εκμάθηση ΗΜΜ μοντέλου δραστηριοτήτων χρησιμοποιώντας ΕΜ Καθώς οι μεταβλητές κατάστασης είναι κρυμμένες, θα χρησιμοποιήσουμε τον ΕΜ αλγόριθμο για να μάθουμε τις παραμέτρους του ΗΜΜ. Το γενικό ΕΜ πλαίσιο (επανάληψη μεταξύ εκτίμησης αναθέσεων και παραμέτρων) δεν αλλάζει, αλλά αλλάζουν κάποιες λεπτομέρειες των βημάτων Ε και Μ. Σχήμα 6.27: ΗΜΜ ΕΜ για δεδομένα 302 ποζών που αντιστοιχούν σε μία μόνο κλάση δραστηριότητας: flick left (17 action data), με γράφο ανθρώπινης δομής Naive Bayes, αρ. επαναλήψεων = 10. (α) Οπτικοποίηση (β) Εξέλιξη log likelihood με αριθμό επαναλήψεων (γ) Εκμαθημένη εκ των προτέρων κατανομή της αρχικής κατάστασης. Ε βήμα: Θέλουμε να υπολογίσουμε τις αναμενόμενες επαρκείς στατιστικές που χρειάζονται για να εκτιμήσουμε τις παραμέτρους μας. Χρειάζονται δύο σύνολα επαρκών στατιστικών, οι περιθώριες κατανομές πάνω σε μία μεταβλητή κατάστασης S j καθώς και οι ζευγωτές περιθώριες πάνω σε συνεχόμενες μεταβλητές S i, S i 1. Ο υπολογισμός αυτών των περιθώριων κατανομών μπορεί να υλοποιηθεί χρησιμοποιώντας επαγωγή συμπερασμάτων σε δέντρο κλικών. Όπως είπαμε, το ΗΜΜ αποτελείται από 3 είδη παραγόντων (CPDs) τα οποία θέλουμε να συμπεριλάβουμε στο δέντρο κλικών για να κάνουμε επαγωγή συμπερασμάτων για το Ε βήμα. Για μια δραστηριότητα α i με ακολουθία m παρατηρούμενων ποζών p i 1,..., pi m, μπορούμε να μειώσουμε τους παράγοντες Φ(P j, S j ) = P (P j S j ) από τοις παρατηρούμενες πόζες p i j για να πάρουμε μόνους (singleton) παράγοντες πάνω στο S j, ϕ (S j ) = ϕ(p i j, S j) α i. Με αυτούς τους παράγοντες, μπορούμε να τρέξουμε επαγωγή συμπερασμάτων για τη δραστηριότητά μας α i. Αφού τρέξουμε επαγωγή συμπερασμάτων, μπορούμε να εξάγουμε τις αναμενόμενες απαραίτητες στατιστικές M j [s j ] = P (S j = s j α i ) και M[s, s] = m j=2 P (S j = s, S j 1 = s α i ) από το εξισορροπημένο (calibrated) δέντρο κλικών για να εκτιμήσουμε την εκ των προτέρων κατανομή της αρχικής κατάστασης και την υπό συνθήκη κατανομή της εκπομπής. Αυτές οι στατιστικές περιγράφονται για μια μόνο δραστηριότητα - οπότε θα πρέπει να μαζέψουμε αυτές τις στατιστικές κατά μήκος ενός ολόκληρου συνόλου δεδομένων δραστηριοτήτων. Επίσης, θα πρέπει να μαζέψουμε τις υπό συνθήκη πιθανότητες κλάσης P (S j = s j a i ) για κάθε κατάσταση για να εκτιμήσουμε την CPD εκπομπής. Τέλος, μπορούμε να υπολογίσουμε την πιθανοφάνεια μιας δραστηριότητας παίρνοντας την περιθώρια κατανομή από τις πιθανότητες από όλες τις κλίκες. Μ βήμα: Χρησιμοποιώντας τις μαζεμένες επαρκείς στατιστικές, μπορούμε να επαναεκτιμήσουμε τις παραμέτρους στο μοντέλο. 109

119 1. Εκ των προτέρων κατανομή αρχικής κατάστασης: Η εκ των προτέρων κατανομή P (S 1 ) μπορεί να επαναεκτιμηθεί ως: P (S 1 = s 1 ) = M 1[s 1 ] K k=1 M (6.37) 1[k] 2. Υπό συνθήκη κατανομή μετάβασης: Τις επαναεκτιμούμε χρησιμοποιώντας τις αναμενόμενες επαρκείς στατιστικές ως: P (S = s M[s, s] S = s) = K k=1 M[k, s] (6.38) 3. Υπό συνθήκη κατανομή εκπομπής: Κάνουμε ομαδοποίηση ποζών πάνω σε όλες τις πόζες σε όλες τις δραστηριότητες. Οι παράμετροι για τις πιθανότητες εκπομπής είναι οι CLG παράμετροι που χρησιμοποιούνται στην ομαδοποίηση ποζών, των οποίων το ταίριασμα γίνεται όπως έχουμε πει, όπου θεωρούμε ότι η κάθε πόζα έχει ένα βάρος ίσο με την υπό συνθήκη πιθανότητα κλάσης. Σχήμα 6.28: (α), (β) Οπτικοποίηση datasettrain1 και datasettest1 αντίστοιχα. Και τα δύο αποτελούνται από δεδομένα που αντιστοιχούν στις 3 διαφορετικές κλάσεις δραστηριοτήτων {clap, high kick, low kick}. (γ), (δ), (ε) Εξέλιξη log likelihood με αριθμό επαναλήψεων για κάθε ένα από τα τρία HMM που μαθαίνουμε για κάθε μία κλάση δραστηριοτήτων {clap, high kick, low kick}. Σύνολο δεδομένων Actions Pose data DatasetTrain1 clap, high kick, low kick 528 clap, 522 high kick, 459 low kick DatasetTest1 clap, high kick, low kick 1520 Pose data Πίνακας 6.7: Δραστηριότητες και Αριθμός δειγμάτων για τα σύνολα δεδομένων με τα οποία θα εκπαιδεύσουμε και ελέγξουμε τη λειτουργία των μοντέλων μας αντίστοιχα. 110

Αιτιολόγηση με αβεβαιότητα

Αιτιολόγηση με αβεβαιότητα Αιτιολόγηση με αβεβαιότητα Στα προβλήματα του πραγματικού κόσμου οι αποφάσεις συνήθως λαμβάνονται υπό αβεβαιότητα (uncertainty), δηλαδή έλλειψη επαρκούς πληροφορίας. Οι κυριότερες πηγές αβεβαιότητας είναι:

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

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

HMY 795: Αναγνώριση Προτύπων HMY 795: Αναγνώριση Προτύπων Διάλεξη 3 Επιλογή μοντέλου Επιλογή μοντέλου Θεωρία αποφάσεων Επιλογή μοντέλου δεδομένα επικύρωσης Η επιλογή του είδους του μοντέλου που θα χρησιμοποιηθεί σε ένα πρόβλημα (π.χ.

Διαβάστε περισσότερα

ΕΝΟΤΗΤΑ 1: ΟΡΙΣΜΟΣ ΠΕΔΙΟ ΟΡΙΣΜΟΥ ΠΡΑΞΕΙΣ ΣΥΝΑΡΤΗΣΕΩΝ ΓΡΑΦΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ ΒΑΣΙΚΩΝ ΣΥΝΑΡΤΗΣΕΩΝ ΛΥΜΕΝΑ ΘΕΜΑΤΑ ΘΕΜΑ Α

ΕΝΟΤΗΤΑ 1: ΟΡΙΣΜΟΣ ΠΕΔΙΟ ΟΡΙΣΜΟΥ ΠΡΑΞΕΙΣ ΣΥΝΑΡΤΗΣΕΩΝ ΓΡΑΦΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ ΒΑΣΙΚΩΝ ΣΥΝΑΡΤΗΣΕΩΝ ΛΥΜΕΝΑ ΘΕΜΑΤΑ ΘΕΜΑ Α ΚΕΦΑΛΑΙΟ 1 ο : ΔΙΑΦΟΡΙΚΟΣ ΛΟΓΙΣΜΟΣ ΕΝΟΤΗΤΑ 1: ΟΡΙΣΜΟΣ ΠΕΔΙΟ ΟΡΙΣΜΟΥ ΠΡΑΞΕΙΣ ΣΥΝΑΡΤΗΣΕΩΝ ΓΡΑΦΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ ΒΑΣΙΚΩΝ ΣΥΝΑΡΤΗΣΕΩΝ ΛΥΜΕΝΑ ΘΕΜΑΤΑ Ερώτηση θεωρίας 1 ΘΕΜΑ Α Τι ονομάζουμε πραγματική συνάρτηση

Διαβάστε περισσότερα

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER 4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER Σκοπός του κεφαλαίου είναι να παρουσιάσει μερικές εφαρμογές του Μετασχηματισμού Fourier (ΜF). Ειδικότερα στο κεφάλαιο αυτό θα περιγραφούν έμμεσοι τρόποι

Διαβάστε περισσότερα

Κεφάλαιο 10 Εισαγωγή στην Εκτίμηση

Κεφάλαιο 10 Εισαγωγή στην Εκτίμηση Κεφάλαιο 10 Εισαγωγή στην Εκτίμηση Εκεί που είμαστε Κεφάλαια 7 και 8: Οι διωνυμικές,κανονικές, εκθετικές κατανομές και κατανομές Poisson μας επιτρέπουν να κάνουμε διατυπώσεις πιθανοτήτων γύρω από το Χ

Διαβάστε περισσότερα

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο Πρόβλημα ο Ασκήσεις Φροντιστηρίου 5 o Φροντιστήριο Δίνεται το παρακάτω σύνολο εκπαίδευσης: # Είσοδος Κατηγορία 0 0 0 Α 2 0 0 Α 0 Β 4 0 0 Α 5 0 Β 6 0 0 Α 7 0 Β 8 Β α) Στον παρακάτω κύβο τοποθετείστε τα

Διαβάστε περισσότερα

OΡΙΟ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ

OΡΙΟ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ Ο ΚΕΦΑΛΑΙΟ : ΟΡΙΟ ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ OΡΙΟ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ ΠΡΑΓΜΑΤΙΚΟΙ ΑΡΙΘΜΟΙ ΣΥΝΑΡΤΗΣΕΙΣ Έστω Α ένα υποσύνολο του Τι ονομάζουμε πραγματική συνάρτηση με πεδίο ορισμού το Α ; Απάντηση : ΕΣΠ Β Έστω

Διαβάστε περισσότερα

Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ

Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ 1 Συναρτήσεις Όταν αναφερόμαστε σε μια συνάρτηση, ουσιαστικά αναφερόμαστε σε μια σχέση ή εξάρτηση. Στα μαθηματικά που θα μας απασχολήσουν, με απλά λόγια, η σχέση

Διαβάστε περισσότερα

ΔΕΙΓΜΑ ΠΡΙΝ ΤΙΣ ΔΙΟΡΘΩΣΕΙΣ - ΕΚΔΟΣΕΙΣ ΚΡΙΤΙΚΗ

ΔΕΙΓΜΑ ΠΡΙΝ ΤΙΣ ΔΙΟΡΘΩΣΕΙΣ - ΕΚΔΟΣΕΙΣ ΚΡΙΤΙΚΗ Συναρτήσεις Προεπισκόπηση Κεφαλαίου Τα μαθηματικά είναι μια γλώσσα με ένα συγκεκριμένο λεξιλόγιο και πολλούς κανόνες. Πριν ξεκινήσετε το ταξίδι σας στον Απειροστικό Λογισμό, θα πρέπει να έχετε εξοικειωθεί

Διαβάστε περισσότερα

Η δυαδική σχέση M ( «παράγει σε ένα βήμα» ) ορίζεται ως εξής: (q, w) M (q, w ), αν και μόνο αν w = σw, για κάποιο σ Σ

Η δυαδική σχέση M ( «παράγει σε ένα βήμα» ) ορίζεται ως εξής: (q, w) M (q, w ), αν και μόνο αν w = σw, για κάποιο σ Σ Πεπερασμένα Αυτόματα (ΠΑ) Τα πεπερασμένα αυτόματα είναι οι απλούστερες «υπολογιστικές μηχανές». Δεν έχουν μνήμη, μόνο μία εσωτερική μονάδα με πεπερασμένο αριθμό καταστάσεων. Διαβάζουν τη συμβολοσειρά εισόδου

Διαβάστε περισσότερα

Μαθηματικά. Ενότητα 2: Διαφορικός Λογισμός. Σαριαννίδης Νικόλαος Τμήμα Διοίκησης Επιχειρήσεων (Κοζάνη)

Μαθηματικά. Ενότητα 2: Διαφορικός Λογισμός. Σαριαννίδης Νικόλαος Τμήμα Διοίκησης Επιχειρήσεων (Κοζάνη) Μαθηματικά Ενότητα 2: Διαφορικός Λογισμός Σαριαννίδης Νικόλαος Τμήμα Διοίκησης Επιχειρήσεων (Κοζάνη) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

ΕΚΠ 413 / ΕΚΠ 606 Αυτόνοµοι (Ροµ οτικοί) Πράκτορες

ΕΚΠ 413 / ΕΚΠ 606 Αυτόνοµοι (Ροµ οτικοί) Πράκτορες ΕΚΠ 413 / ΕΚΠ 606 Αυτόνοµοι (Ροµ οτικοί) Πράκτορες Πιθανοτική Συλλογιστική Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υ ολογιστών Πολυτεχνείο Κρήτης Ε ανάληψη Αβεβαιότητα πεποιθήσεων πράκτορας θεωρίας

Διαβάστε περισσότερα

Από το Γυμνάσιο στο Λύκειο... 7. 3. Δειγματικός χώρος Ενδεχόμενα... 42 Εύρεση δειγματικού χώρου... 46

Από το Γυμνάσιο στο Λύκειο... 7. 3. Δειγματικός χώρος Ενδεχόμενα... 42 Εύρεση δειγματικού χώρου... 46 ΠEΡΙΕΧΟΜΕΝΑ Από το Γυμνάσιο στο Λύκειο................................................ 7 1. Το Λεξιλόγιο της Λογικής.............................................. 11. Σύνολα..............................................................

Διαβάστε περισσότερα

Μ Α Θ Η Μ Α Τ Α Γ Λ Υ Κ Ε Ι Ο Υ

Μ Α Θ Η Μ Α Τ Α Γ Λ Υ Κ Ε Ι Ο Υ Μ Α Θ Η Μ Α Τ Α Γ Λ Υ Κ Ε Ι Ο Υ ΜΑΘΗΜΑΤΙΚΑ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ ΘΕΤΙΚΩΝ ΣΠΟΥΔΩΝ ΚΑΙ ΣΠΟΥΔΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ (Α ΜΕΡΟΣ: ΣΥΝΑΡΤΗΣΕΙΣ) Επιμέλεια: Καραγιάννης Ιωάννης, Σχολικός Σύμβουλος Μαθηματικών

Διαβάστε περισσότερα

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

Τεχνητή Νοημοσύνη. 16η διάλεξη ( ) Ίων Ανδρουτσόπουλος. Τεχνητή Νοημοσύνη 16η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται σε ύλη του βιβλίου Artificial Intelligence A Modern Approach των

Διαβάστε περισσότερα

Υπολογιστικό Πρόβληµα

Υπολογιστικό Πρόβληµα Υπολογιστικό Πρόβληµα Μετασχηµατισµός δεδοµένων εισόδου σε δεδοµένα εξόδου. Δοµή δεδοµένων εισόδου (έγκυρο στιγµιότυπο). Δοµή και ιδιότητες δεδοµένων εξόδου (απάντηση ή λύση). Τυπικά: διµελής σχέση στις

Διαβάστε περισσότερα

Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής

Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Γιάννης Γαροφαλάκης Αν. Καθηγητής ιατύπωση του προβλήματος (1) Τα συστήματα αναμονής (queueing systems), βρίσκονται

Διαβάστε περισσότερα

Μαθηματικά Γ Γυμνασίου

Μαθηματικά Γ Γυμνασίου Α λ γ ε β ρ ι κ έ ς π α ρ α σ τ ά σ ε ι ς 1.1 Πράξεις με πραγματικούς αριθμούς (επαναλήψεις συμπληρώσεις) A. Οι πραγματικοί αριθμοί και οι πράξεις τους Διδακτικοί στόχοι Θυμάμαι ποιοι αριθμοί λέγονται

Διαβάστε περισσότερα

3. Προσομοίωση ενός Συστήματος Αναμονής.

3. Προσομοίωση ενός Συστήματος Αναμονής. 3. Προσομοίωση ενός Συστήματος Αναμονής. 3.1. Διατύπωση του Προβλήματος. Τα συστήματα αναμονής (queueing systems), βρίσκονται πίσω από τα περισσότερα μοντέλα μελέτης της απόδοσης υπολογιστικών συστημάτων,

Διαβάστε περισσότερα

Μέθοδος μέγιστης πιθανοφάνειας

Μέθοδος μέγιστης πιθανοφάνειας Μέθοδος μέγιστης πιθανοφάνειας Αν x =,,, παρατηρήσεις των Χ =,,,, τότε έχουμε διαθέσιμο ένα δείγμα Χ={Χ, =,,,} της κατανομής F μεγέθους με από κοινού σ.κ. της Χ f x f x Ορισμός : Θεωρούμε ένα τυχαίο δείγμα

Διαβάστε περισσότερα

Όριο συνάρτησης στο x. 2 με εξαίρεση το σημείο A(2,4) Από τον παρακάτω πίνακα τιμών και τη γραφική παράσταση του παραπάνω σχήματος παρατηρούμε ότι:

Όριο συνάρτησης στο x. 2 με εξαίρεση το σημείο A(2,4) Από τον παρακάτω πίνακα τιμών και τη γραφική παράσταση του παραπάνω σχήματος παρατηρούμε ότι: Όριο συνάρτησης στο Στα παρακάτω θα προσεγγίσουμε την διαισθητικά με τη βοήθεια γραφικών παραστάσεων και πινάκων τιμών. 4 4 Έστω η συνάρτηση f με τύπο f ) = και πεδίο ορισμού το σύνολο ) ) η οποία μπορεί

Διαβάστε περισσότερα

Δρ. Βασίλειος Γ. Καμπουρλάζος Δρ. Ανέστης Γ. Χατζημιχαηλίδης

Δρ. Βασίλειος Γ. Καμπουρλάζος Δρ. Ανέστης Γ. Χατζημιχαηλίδης Μάθημα 6 ο Δρ. Ανέστης Γ. Χατζημιχαηλίδης Τμήμα Μηχανικών Πληροφορικής Τ.Ε. ΤΕΙ Ανατολικής Μακεδονίας και Θράκης 2017-2018 Διευρυμένη Υπολογιστική Νοημοσύνη (ΥΝ) Επεκτάσεις της Κλασικής ΥΝ. Μεθοδολογίες

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Μηχανική ΙI. Μετασχηματισμοί Legendre. διπλανό σχήμα ότι η αντίστροφη συνάρτηση dg. λέγεται μετασχηματισμός Legendre της f (x)

Μηχανική ΙI. Μετασχηματισμοί Legendre. διπλανό σχήμα ότι η αντίστροφη συνάρτηση dg. λέγεται μετασχηματισμός Legendre της f (x) Τμήμα Π Ιωάννου & Θ Αποστολάτου 7/5/000 Μηχανική ΙI Μετασχηματισμοί Legendre Έστω μια πραγματική συνάρτηση f (x) Ορίζουμε την παράγωγο συνάρτηση df (x) της f (x) : ( x) (η γραφική της παράσταση δίνεται

Διαβάστε περισσότερα

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr I ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ i e ΜΕΡΟΣ Ι ΟΡΙΣΜΟΣ - ΒΑΣΙΚΕΣ ΠΡΑΞΕΙΣ Α Ορισμός Ο ορισμός του συνόλου των Μιγαδικών αριθμών (C) βασίζεται στις εξής παραδοχές: Υπάρχει ένας αριθμός i για τον οποίο ισχύει i Το σύνολο

Διαβάστε περισσότερα

Τι είναι βαθμωτό μέγεθος? Ένα μέγεθος που περιγράφεται μόνο με έναν αριθμό (π.χ. πίεση)

Τι είναι βαθμωτό μέγεθος? Ένα μέγεθος που περιγράφεται μόνο με έναν αριθμό (π.χ. πίεση) TETY Εφαρμοσμένα Μαθηματικά Ενότητα ΙΙ: Γραμμική Άλγεβρα Ύλη: Διανυσματικοί χώροι και διανύσματα, μετασχηματισμοί διανυσμάτων, τελεστές και πίνακες, ιδιοδιανύσματα και ιδιοτιμές πινάκων, επίλυση γραμμικών

Διαβάστε περισσότερα

HEAD INPUT. q0 q1 CONTROL UNIT

HEAD INPUT. q0 q1 CONTROL UNIT Πεπερασμένα Αυτόματα (ΠΑ) Τα πεπερασμένα αυτόματα είναι οι απλούστερες «υπολογιστικές μηχανές». Δεν έχουν μνήμη, μόνο μία εσωτερική μονάδα με πεπερασμένο αριθμό καταστάσεων. Διαβάζουν τη συμβολοσειρά εισόδου

Διαβάστε περισσότερα

u v 4 w G 2 G 1 u v w x y z 4

u v 4 w G 2 G 1 u v w x y z 4 Διάλεξη :.0.06 Θεωρία Γραφημάτων Γραφέας: Σ. Κ. Διδάσκων: Σταύρος Κολλιόπουλος. Εισαγωγικοί ορισμοί Ορισμός. Γράφημα G καλείται ένα ζεύγος G = (V, E) όπου V είναι το σύνολο των κορυφών (ή κόμβων) και E

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός Κατευθυνόμενα γραφήματα Μαθηματικά Πληροφορικής 6ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Κατευθυνόμενο γράφημα G είναι ένα ζεύγος (V, E ) όπου V πεπερασμένο σύνολο του οποίου

Διαβάστε περισσότερα

y 1 (x) f(x) W (y 1, y 2 )(x) dx,

y 1 (x) f(x) W (y 1, y 2 )(x) dx, Συνήθεις Διαφορικές Εξισώσεις Ι Ασκήσεις - 07/1/017 Μέρος 1ο: Μη Ομογενείς Γραμμικές Διαφορικές Εξισώσεις Δεύτερης Τάξης Θεωρούμε τη γραμμική μή-ομογενή διαφορική εξίσωση y + p(x) y + q(x) y = f(x), x

Διαβάστε περισσότερα

Εισαγωγικά Παραδείγματα: Παρατηρήσεις:

Εισαγωγικά Παραδείγματα: Παρατηρήσεις: 1 Εισαγωγικά Η έννοια του συνόλου είναι πρωταρχική στα Μαθηματικά, δεν μπορεί δηλ. να οριστεί από άλλες έννοιες. Γενικά, μπορούμε να πούμε ότι σύνολο είναι μια συλλογή αντικειμένων. υτά λέμε ότι περιέχονται

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 5: Αναδρομικές σχέσεις - Υπολογισμός Αθροισμάτων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

Διαβάστε περισσότερα

Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών

Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών Συμβολισμοί Σε αναλογία με τους ορισμούς συμβολίζουμε μια ακολουθία: 1 είτε μέσω του διανυσματικού ορισμού, παραθέτοντας αναγκαστικά

Διαβάστε περισσότερα

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i.

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i. Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Από το Γυμνάσιο στο Λύκειο Δειγματικός χώρος Ενδεχόμενα Εύρεση δειγματικού χώρου... 46

Από το Γυμνάσιο στο Λύκειο Δειγματικός χώρος Ενδεχόμενα Εύρεση δειγματικού χώρου... 46 ΠEΡΙΕΧΟΜΕΝΑ Από το Γυμνάσιο στο Λύκειο................................................ 7 1. Το Λεξιλόγιο της Λογικής.............................................. 11 2. Σύνολα..............................................................

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΤΑΤΙΣΤΙΚΗ Ακαδ. Έτος 07-08 Διδάσκων: Βασίλης ΚΟΥΤΡΑΣ Επικ. Καθηγητής v.koutras@fme.aegea.gr Τηλ: 7035468 Θα μελετήσουμε

Διαβάστε περισσότερα

AYTONOMOI ΠΡΑΚΤΟΡΕΣ

AYTONOMOI ΠΡΑΚΤΟΡΕΣ AYTONOMOI ΠΡΑΚΤΟΡΕΣ 2012-2013 ΠΑΠΑΚΩΣΤΑΣ ΜΙΧΑΛΗΣ ΑΜ: 2007030001 ΑΚΡΙΒΗΣ ΣΥΜΠΕΡΑΣΜΟΣ ΔΙΚΤΥΟΥ BAYES ΣΕ ΑΡΘΑ ΕΦΗΜΕΡΙΔΑΣ ΠΕΡΙΛΗΨΗ Στη συγκεκριμένη εργασία προσπαθήσαμε να στήσουμε ένα δίκτυο Bayes διακριτών

Διαβάστε περισσότερα

Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή

Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΜΜΥ 795: ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ Ακαδηµαϊκό έτος 2010-11 Χειµερινό Εξάµηνο Τελική εξέταση Τρίτη, 21 εκεµβρίου 2010,

Διαβάστε περισσότερα

Μέθοδος μέγιστης πιθανοφάνειας

Μέθοδος μέγιστης πιθανοφάνειας Αν x =,,, παρατηρήσεις των Χ =,,,, τότε έχουμε διαθέσιμο ένα δείγμα Χ={Χ, =,,,} της κατανομής F μεγέθους με από κοινού σκ της Χ f x f x Ορισμός : Θεωρούμε ένα τυχαίο δείγμα Χ=(Χ, Χ,, Χ ) από πληθυσμό το

Διαβάστε περισσότερα

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός Κατευθυνόμενα γραφήματα Μαθηματικά Πληροφορικής 6ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Κατευθυνόμενο γράφημα G είναι ένα ζεύγος (V, E ) όπου V πεπερασμένο σύνολο του οποίου

Διαβάστε περισσότερα

Θεωρία Τηλεπικοινωνιακής Κίνησης Ενότητα 8: Αναδρομικός τύπος Kaufman Roberts

Θεωρία Τηλεπικοινωνιακής Κίνησης Ενότητα 8: Αναδρομικός τύπος Kaufman Roberts Θεωρία Τηλεπικοινωνιακής Κίνησης Ενότητα 8: Αναδρομικός τύπος aufma Roberts Μιχαήλ Λογοθέτης Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Συνιστώμενο Βιβλίο: Εκδόσεις : Παπασωτηρίου

Διαβάστε περισσότερα

Χρήστος Ι. Σχοινάς Αν. Καθηγητής ΔΠΘ. Συμπληρωματικές σημειώσεις για το μάθημα: «Επιχειρησιακή Έρευνα ΙΙ»

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

Διαβάστε περισσότερα

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόγχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόγχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός Κατευθυνόμενα γραφήματα Μαθηματικά Πληροφορικής 6ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Κατευθυνόμενο γράφημα G είναι ένα ζεύγος (V, E ) όπου V πεπερασμένο σύνολο του οποίου

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 13: Αλγόριθμοι-Μεγάλων ακεραίων- Εκθετοποίηση- Πολλαπλασιασμός πινάκων -Strassen Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τ Μ Η Μ Α Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τ Μ Η Μ Α Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ ΕΠΛ 035 - ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ ΓΙΑ ΗΛΕΚΤΡΟΛΟΓΟΥΣ ΜΗΧΑΝΙΚΟΥΣ ΚΑΙ ΜΗΧΑΝΙΚΟΥΣ ΥΠΟΛΟΓΙΣΤΩΝ Ακαδηµαϊκό έτος 2017-2018 Υπεύθυνος εργαστηρίου: Γεώργιος

Διαβάστε περισσότερα

Συνήθεις Διαφορικές Εξισώσεις Ι Ασκήσεις - 19/10/2017. Ακριβείς Διαφορικές Εξισώσεις-Ολοκληρωτικοί Παράγοντες. Η πρώτης τάξης διαφορική εξίσωση

Συνήθεις Διαφορικές Εξισώσεις Ι Ασκήσεις - 19/10/2017. Ακριβείς Διαφορικές Εξισώσεις-Ολοκληρωτικοί Παράγοντες. Η πρώτης τάξης διαφορική εξίσωση Συνήθεις Διαφορικές Εξισώσεις Ι Ασκήσεις - 19/10/2017 Ακριβείς Διαφορικές Εξισώσεις-Ολοκληρωτικοί Παράγοντες Η πρώτης τάξης διαφορική εξίσωση M(x, y) + (x, y)y = 0 ή ισοδύναμα, γραμμένη στην μορφή M(x,

Διαβάστε περισσότερα

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

Μάθηση και Γενίκευση. Τεχνητά Νευρωνικά Δίκτυα (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων Μάθηση και Γενίκευση Το Πολυεπίπεδο Perceptron (MultiLayer Perceptron (MLP)) Έστω σύνολο εκπαίδευσης D={(x n,t n )}, n=1,,n. x n =(x n1,, x nd ) T, t n =(t n1,, t np ) T Θα πρέπει το MLP να έχει d νευρώνες

Διαβάστε περισσότερα

Η ΙΣΧΥΣ ΕΝΟΣ ΕΛΕΓΧΟΥ. (Power of a Test) ΚΕΦΑΛΑΙΟ 21

Η ΙΣΧΥΣ ΕΝΟΣ ΕΛΕΓΧΟΥ. (Power of a Test) ΚΕΦΑΛΑΙΟ 21 ΚΕΦΑΛΑΙΟ 21 Η ΙΣΧΥΣ ΕΝΟΣ ΕΛΕΓΧΟΥ (Power of a Test) Όπως είδαμε προηγουμένως, στον Στατιστικό Έλεγχο Υποθέσεων, ορίζουμε δύο είδη πιθανών λαθών (κινδύνων) που μπορεί να συμβούν όταν παίρνουμε αποφάσεις

Διαβάστε περισσότερα

Κεφάλαιο 4ο: Δικτυωτή Ανάλυση

Κεφάλαιο 4ο: Δικτυωτή Ανάλυση Κεφάλαιο ο: Δικτυωτή Ανάλυση. Εισαγωγή Η δικτυωτή ανάλυση έχει παίξει σημαντικό ρόλο στην Ηλεκτρολογία. Όμως, ορισμένες έννοιες και τεχνικές της δικτυωτής ανάλυσης είναι πολύ χρήσιμες και σε άλλες επιστήμες.

Διαβάστε περισσότερα

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

Η ΣΗΜΑΣΙΑ ΤΩΝ ΟΠΤΙΚΩΝ ΑΝΑΠΑΡΑΣΤΑΣΕΩΝ ΣΤΗ ΔΙΔΑΣΚΑΛΙΑ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ Η ΣΗΜΑΣΙΑ ΤΩΝ ΟΠΤΙΚΩΝ ΑΝΑΠΑΡΑΣΤΑΣΕΩΝ ΣΤΗ ΔΙΔΑΣΚΑΛΙΑ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ Οι μαθηματικές έννοιες και γενικότερα οι μαθηματικές διαδικασίες είναι αφηρημένες και, αρκετές φορές, ιδιαίτερα πολύπλοκες. Η κατανόηση

Διαβάστε περισσότερα

Μ Α Θ Η Μ Α Τ Α Γ Λ Υ Κ Ε Ι Ο Υ

Μ Α Θ Η Μ Α Τ Α Γ Λ Υ Κ Ε Ι Ο Υ Μ Α Θ Η Μ Α Τ Α Γ Λ Υ Κ Ε Ι Ο Υ ΜΑΘΗΜΑΤΙΚΑ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ ΘΕΤΙΚΩΝ ΣΠΟΥΔΩΝ ΚΑΙ ΣΠΟΥΔΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ (Α ΜΕΡΟΣ: ΣΥΝΑΡΤΗΣΕΙΣ) Μαθηματικά Προσανατολισμού Γ Λυκείου- Μαθηματικός Περιηγητής ΕΝΟΤΗΤΑ

Διαβάστε περισσότερα

Αριθμητική Ανάλυση & Εφαρμογές

Αριθμητική Ανάλυση & Εφαρμογές Αριθμητική Ανάλυση & Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 2017-2018 Υπολογισμοί και Σφάλματα Παράσταση Πραγματικών Αριθμών Συστήματα Αριθμών Παράσταση Ακέραιου

Διαβάστε περισσότερα

Σημειωματάριο Δευτέρας 4 Δεκ. 2017

Σημειωματάριο Δευτέρας 4 Δεκ. 2017 Σημειωματάριο Δευτέρας 4 Δεκ. 2017 Ο αλγόριθμος Floyd-Warshall για την έυρεση όλων των αποστάσεων σε ένα γράφημα με βάρη στις ακμές Συνεχίσαμε σήμερα το θέμα της προηγούμενης Τετάρτης. Έχουμε ένα γράφημα

Διαβάστε περισσότερα

f(y) dy = b a dy = b a x f(x) dx = b a dx = x 2 = b2 a 2 2(b a) b a dx = = (a2 + ab + b 2 )(b a) 3(b a)

f(y) dy = b a dy = b a x f(x) dx = b a dx = x 2 = b2 a 2 2(b a) b a dx = = (a2 + ab + b 2 )(b a) 3(b a) Κεφάλαιο 11 Συνεχείς κατανομές και ο Ν.Μ.Α. Στο προηγούμενο κεφάλαιο ορίσαμε την έννοια της συνεχούς τυχαίας μεταβλητής, και είδαμε τις βασικές της ιδιότητες. Εδώ θα περιγράψουμε κάποιους ιδιαίτερους τύπους

Διαβάστε περισσότερα

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

ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ ΜΕΡΟΣ ΙΙ ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ 36 ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ Πολλές από τις αποφάσεις

Διαβάστε περισσότερα

P (A B) = P (AB) P (B) P (A B) = P (A) P (A B) = P (A) P (B)

P (A B) = P (AB) P (B) P (A B) = P (A) P (A B) = P (A) P (B) Πιθανότητες και Αρχές Στατιστικής (4η Διάλεξη) Σωτήρης Νικολετσέας, καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής, Πανεπιστήμιο Πατρών Ακαδημαϊκό Ετος 2017-2018 Σωτήρης Νικολετσέας, καθηγητής 1 / 39 Περιεχόμενα

Διαβάστε περισσότερα

Pr(10 X 15) = Pr(15 X 20) = 1/2, (10.2)

Pr(10 X 15) = Pr(15 X 20) = 1/2, (10.2) Κεφάλαιο 10 Συνεχείς τυχαίες μεταβλητές Σε αυτό το κεφάλαιο θα εξετάσουμε τις ιδιότητες που έχουν οι συνεχείς τυχαίες μεταβλητές. Εκείνες οι Τ.Μ. X, δηλαδή, των οποίων το σύνολο τιμών δεν είναι διακριτό,

Διαβάστε περισσότερα

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ: Γ2-Γ3

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ: Γ2-Γ3 ΑΡΧΗ 1ης ΣΕΛΙ ΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ: Γ2-Γ3 ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΦΕΒΡΟΥΑΡΙΟΥ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ

Διαβάστε περισσότερα

Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής

Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής Αλγόριθμος (algorithm) λέγεται μία πεπερασμένη διαδικασία καλά ορισμένων βημάτων που ακολουθείται για τη λύση ενός προβλήματος. Το διάγραμμα ροής

Διαβάστε περισσότερα

12. ΑΝΙΣΩΣΕΙΣ Α ΒΑΘΜΟΥ. είναι δύο παραστάσεις μιας μεταβλητής x πού παίρνει τιμές στο

12. ΑΝΙΣΩΣΕΙΣ Α ΒΑΘΜΟΥ. είναι δύο παραστάσεις μιας μεταβλητής x πού παίρνει τιμές στο ΓΕΝΙΚΑ ΠΕΡΙ ΑΝΙΣΩΣΕΩΝ Έστω f σύνολο Α, g Α ΒΑΘΜΟΥ είναι δύο παραστάσεις μιας μεταβλητής πού παίρνει τιμές στο Ανίσωση με έναν άγνωστο λέγεται κάθε σχέση της μορφής f f g g ή, η οποία αληθεύει για ορισμένες

Διαβάστε περισσότερα

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1 Οικονομικό Πανεπιστήμιο Αθηνών, Τμήμα Πληροφορικής Μάθημα: Τεχνητή Νοημοσύνη, 2016 17 Διδάσκων: Ι. Ανδρουτσόπουλος Ασκήσεις μελέτης της 4 ης διάλεξης 4.1. (α) Αποδείξτε ότι αν η h είναι συνεπής, τότε h(n

Διαβάστε περισσότερα

11. Ποιες είναι οι άμεσες συνέπειες της διαίρεσης;

11. Ποιες είναι οι άμεσες συνέπειες της διαίρεσης; 10. Τι ονομάζουμε Ευκλείδεια διαίρεση και τέλεια διαίρεση; Όταν δοθούν δύο φυσικοί αριθμοί Δ και δ, τότε υπάρχουν δύο άλλοι φυσικοί αριθμοί π και υ, έτσι ώστε να ισχύει: Δ = δ π + υ. Ο αριθμός Δ λέγεται

Διαβάστε περισσότερα

ΕΚΠ 413 / ΕΚΠ 606 Αυτόνοµοι (Ροµ οτικοί) Πράκτορες

ΕΚΠ 413 / ΕΚΠ 606 Αυτόνοµοι (Ροµ οτικοί) Πράκτορες ΕΚΠ 413 / ΕΚΠ 606 Αυτόνοµοι Ροµ οτικοί Πράκτορες Αβεβαιότητα Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υ ολογιστών Πολυτεχνείο Κρήτης Ε ανάληψη Πράκτορες χαρακτηριστικά στοιχεία είδη πρακτόρων αυτόνοµοι

Διαβάστε περισσότερα

ΣΗΜΕΙΩΣΕΙΣ. x A αντιστοιχίζεται (συσχετίζεται) με ένα μόνο. = ονομάζεται εξίσωση της

ΣΗΜΕΙΩΣΕΙΣ. x A αντιστοιχίζεται (συσχετίζεται) με ένα μόνο. = ονομάζεται εξίσωση της ΚΕΦΑΛΑΙΟ 2ο: ΣΥΝΑΡΤΗΣΕΙΣ - ΟΡΙΟ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ ΕΝΟΤΗΤΑ 1: ΕΝΝΟΙΑ ΠΡΑΓΜΑΤΙΚΗΣ ΣΥΝΑΡΤΗΣΗΣ - ΓΡΑΦΙΚΗ ΠΑΡΑΣΤΑΣΗ ΣΥΝΑΡΤΗΣΗΣ. IΣΟΤΗΤΑ ΣΥΝΑΡΤΗΣΕΩΝ - ΠΡΑΞΕΙΣ ΜΕ ΣΥΝΑΡΤΗΣΕΙΣ - ΣΥΝΘΕΣΗ ΣΥΝΑΡΤΗΣΕΩΝ [Ενότητα

Διαβάστε περισσότερα

ΟΚΙΜΑΣΙΕΣ χ 2 (CHI-SQUARE)

ΟΚΙΜΑΣΙΕΣ χ 2 (CHI-SQUARE) ΔΟΚΙΜΑΣΙΕΣ χ (CI-SQUARE) ΟΚΙΜΑΣΙΕΣ χ (CI-SQUARE). Εισαγωγή Οι στατιστικές δοκιμασίες που μελετήσαμε μέχρι τώρα ονομάζονται παραμετρικές (paramtrc) διότι χαρακτηρίζονται από υποθέσεις σχετικές είτε για

Διαβάστε περισσότερα

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

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ροή Δικτύου Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Μοντελοποίηση Δικτύων Μεταφοράς Τα γραφήματα χρησιμοποιούνται συχνά για την μοντελοποίηση

Διαβάστε περισσότερα

Κεφάλαιο 5ο: Ακέραιος προγραμματισμός

Κεφάλαιο 5ο: Ακέραιος προγραμματισμός Κεφάλαιο 5ο: Ακέραιος προγραμματισμός 5.1 Εισαγωγή Ο ακέραιος προγραμματισμός ασχολείται με προβλήματα γραμμικού προγραμματισμού στα οποία μερικές ή όλες οι μεταβλητές είναι ακέραιες. Ένα γενικό πρόβλημα

Διαβάστε περισσότερα

Πανεπιστήμιο Αθηνών Τμήμα Φυσικής Κβαντομηχανική ΙΙ

Πανεπιστήμιο Αθηνών Τμήμα Φυσικής Κβαντομηχανική ΙΙ Πανεπιστήμιο Αθηνών Τμήμα Φυσικής Κβαντομηχανική ΙΙ Χρονικά Ανεξάρτητη Θεωρία Διαταραχών. Τα περισσότερα φυσικά συστήματα που έχομε προσεγγίσει μέχρι τώρα περιγράφονται από μία κύρια Χαμιλτονιανή η οποία

Διαβάστε περισσότερα

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ 8Α ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ A ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ Πότε μια συνάρτηση λέγεται συνεχής σε ένα σημείο του πεδίου ορισμού o της ; Απάντηση : ( ΟΜΟΓ, 6 ΟΜΟΓ, 9 Β, ΟΜΟΓ, 5 Έστω μια συνάρτηση και ένα σημείο του πεδίου

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1ο: ΔΙΑΦΟΡΙΚΟΣ ΛΟΓΙΣΜΟΣ ΕΝΟΤΗΤΑ 3: ΟΡΙΑ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ

ΚΕΦΑΛΑΙΟ 1ο: ΔΙΑΦΟΡΙΚΟΣ ΛΟΓΙΣΜΟΣ ΕΝΟΤΗΤΑ 3: ΟΡΙΑ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ ΚΕΦΑΛΑΙΟ ο: ΔΙΑΦΟΡΙΚΟΣ ΛΟΓΙΣΜΟΣ ΕΝΟΤΗΤΑ : ΟΡΙΑ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ Η έννοια του ορίου στο x ο Υπάρχουν συναρτήσεις οι τιμές των οποίων πλησιάζουν ένα πραγματικό αριθμό L, όταν η ανεξάρτητη μεταβλητή

Διαβάστε περισσότερα

Λήψη αποφάσεων κατά Bayes

Λήψη αποφάσεων κατά Bayes Λήψη αποφάσεων κατά Bayes Σημειώσεις μαθήματος Thomas Bayes (1701 1761) Στυλιανός Χατζηδάκης ECE 662 Άνοιξη 2014 1. Εισαγωγή Οι σημειώσεις αυτές βασίζονται στο μάθημα ECE662 του Πανεπιστημίου Purdue και

Διαβάστε περισσότερα

II. Συναρτήσεις. math-gr

II. Συναρτήσεις. math-gr II Συναρτήσεις Παντελής Μπουμπούλης, MSc, PhD σελ blogspotcom, bouboulismyschgr ΜΕΡΟΣ 1 ΣΥΝΑΡΤΗΣΕΙΣ Α Βασικές Έννοιες Ορισμός: Έστω Α ένα υποσύνολο του συνόλου των πραγματικών αριθμών R Ονομάζουμε πραγματική

Διαβάστε περισσότερα

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams Αλέκα Σεληνιωτάκη Ηράκλειο, 26/06/12 aseliniotaki@csd.uoc.gr ΑΜ: 703 1. Περίληψη Συνεισφοράς

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 3 ΤΟ ΔΙΩΝΥΜΙΚΟ ΘΕΩΡΗΜΑ

ΚΕΦΑΛΑΙΟ 3 ΤΟ ΔΙΩΝΥΜΙΚΟ ΘΕΩΡΗΜΑ ΚΕΦΑΛΑΙΟ 3 ΤΟ ΔΙΩΝΥΜΙΚΟ ΘΕΩΡΗΜΑ Εισαγωγή Οι αριθμοί που εκφράζουν το πλήθος των στοιχείων ανά αποτελούν ίσως τους πιο σημαντικούς αριθμούς της Συνδυαστικής και καλούνται διωνυμικοί συντελεστές διότι εμφανίζονται

Διαβάστε περισσότερα

ΟΙ πιο πάνω έννοιες εκφράζουν όπως λέμε τη μονοτονία της συνάρτησης.

ΟΙ πιο πάνω έννοιες εκφράζουν όπως λέμε τη μονοτονία της συνάρτησης. 3 Μονοτονία συναρτήσεων 3 Μονοτονία συναρτήσεων 3Α Μονοτονία συνάρτησης Έστω f μία συνάρτηση με πεδίο ορισμού Γνησίως αύξουσα συνάρτηση Η συνάρτηση f λέγεται γνησίως αύξουσα στο Δ αν για κάθε, Δ, με

Διαβάστε περισσότερα

Λυμένες ασκήσεις στροφορμής

Λυμένες ασκήσεις στροφορμής Λυμένες ασκήσεις στροφορμής Θα υπολογίσουμε τη δράση των τελεστών κλίμακας J ± σε μια τυχαία ιδιοκατάσταση j, m των τελεστών J και Jˆ. Λύση Δείξαμε ότι η κατάσταση Jˆ± j, m είναι επίσης ιδιοκατάσταση των

Διαβάστε περισσότερα

Εισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο

Εισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο Εισαγωγικές Έννοιες ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Θεωρία Λήψης Αποφάσεων

Θεωρία Λήψης Αποφάσεων Θεωρία Λήψης Αποφάσεων Ενότητα 2: Θεωρία Απόφασης του Bayes Μπεληγιάννης Γρηγόριος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων Αγροτικών Προϊόντων & Τροφίμων (Δ.Ε.Α.Π.Τ.) Θεωρία

Διαβάστε περισσότερα

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ 8Α ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ A ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ Πότε μια συνάρτηση λέγεται συνεχής σε ένα σημείο του πεδίου ορισμού o της ; Απάντηση : ( ΟΜΟΓ, 6 ΟΜΟΓ, 9 Β, ΟΜΟΓ, 5 Έστω μια συνάρτηση και ένα σημείο του πεδίου

Διαβάστε περισσότερα

0x2 = 2. = = δηλαδή η f δεν. = 2. Άρα η συνάρτηση f δεν είναι συνεχής στο [0,3]. Συνεπώς δεν. x 2. lim f (x) = lim (2x 1) = 3 και x 2 x 2

0x2 = 2. = = δηλαδή η f δεν. = 2. Άρα η συνάρτηση f δεν είναι συνεχής στο [0,3]. Συνεπώς δεν. x 2. lim f (x) = lim (2x 1) = 3 και x 2 x 2 ΚΕΦΑΛΑΙΟ ο: ΣΥΝΑΡΤΗΣΕΙΣ - ΟΡΙΟ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ ΕΝΟΤΗΤΑ 8: ΘΕΩΡΗΜΑ BOLZANO - ΠΡΟΣΗΜΟ ΣΥΝΑΡΤΗΣΗΣ - ΘΕΩΡΗΜΑ ΕΝΔΙΑΜΕΣΩΝ ΤΙΜΩΝ - ΘΕΩΡΗΜΑ ΜΕΓΙΣΤΗΣ ΚΑΙ ΕΛΑΧΙΣΤΗΣ ΤΙΜΗΣ - ΣΥΝΟΛΟ ΤΙΜΩΝ ΣΥΝΕΧΟΥΣ ΣΥΝΑΡΤΗΣΗΣ

Διαβάστε περισσότερα

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα Ενότητα: Διανυσματικοί Χώροι και Υπόχωροι: Βάσεις και Διάσταση Ανδριανός Ε Τσεκρέκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Διαβάστε περισσότερα

5. (Λειτουργικά) Δομικά Διαγράμματα

5. (Λειτουργικά) Δομικά Διαγράμματα 5. (Λειτουργικά) Δομικά Διαγράμματα Γενικά, ένα λειτουργικό δομικό διάγραμμα έχει συγκεκριμένη δομή που περιλαμβάνει: Τις δομικές μονάδες (λειτουργικά τμήματα ή βαθμίδες) που συμβολίζουν συγκεκριμένες

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΚΕΦΑΛΑΙΟ 10 Όπως είδαμε και σε προηγούμενο κεφάλαιο μια από τις βασικότερες τεχνικές στον Δομημένο Προγραμματισμό είναι ο Τμηματικός Προγραμματισμός. Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης

Διαβάστε περισσότερα

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΕΙΔΙΚΑ ΘΕΜΑΤΑ. Κεφάλαιο 10. Εισαγωγή στην εκτιμητική

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΕΙΔΙΚΑ ΘΕΜΑΤΑ. Κεφάλαιο 10. Εισαγωγή στην εκτιμητική ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΑΤΡΑΣ Εργαστήριο Λήψης Αποφάσεων & Επιχειρησιακού Προγραμματισμού Καθηγητής Ι. Μητρόπουλος ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΕΙΔΙΚΑ ΘΕΜΑΤΑ

Διαβάστε περισσότερα

Σήματα και Συστήματα. Διάλεξη 1: Σήματα Συνεχούς Χρόνου. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

Σήματα και Συστήματα. Διάλεξη 1: Σήματα Συνεχούς Χρόνου. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής Σήματα και Συστήματα Διάλεξη 1: Σήματα Συνεχούς Χρόνου Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Εισαγωγή στα Σήματα 1. Σκοποί της Θεωρίας Σημάτων 2. Κατηγορίες Σημάτων 3. Χαρακτηριστικές Παράμετροι

Διαβάστε περισσότερα

* * * ( ) mod p = (a p 1. 2 ) mod p.

* * * ( ) mod p = (a p 1. 2 ) mod p. Θεωρια Αριθμων Εαρινο Εξαμηνο 2016 17 Μέρος Α: Πρώτοι Αριθμοί Διάλεξη 1 Ενότητα 1. Διαιρετότητα: Διαιρετότητα, διαιρέτες, πολλαπλάσια, στοιχειώδεις ιδιότητες. Γραμμικοί Συνδυασμοί (ΓΣ). Ενότητα 2. Πρώτοι

Διαβάστε περισσότερα

Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής

Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής Θεωρία Παιγνίων και Αποφάσεων Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Παίγνια μηδενικού αθροίσματος PessimisIc play Αμιγείς max-min και

Διαβάστε περισσότερα

Θεωρία Παιγνίων Δρ. Τασσόπουλος Ιωάννης

Θεωρία Παιγνίων Δρ. Τασσόπουλος Ιωάννης Θεωρία Παιγνίων Δρ. Τασσόπουλος Ιωάννης 2 η Διάλεξη Παίγνια ελλιπούς πληροφόρησης Πληροφοριακά σύνολα Κανονική μορφή παιγνίου Ισοδύναμες στρατηγικές Παίγνια συνεργασίας και μη συνεργασίας Πεπερασμένα και

Διαβάστε περισσότερα

Θεωρία Τηλεπικοινωνιακής Κίνησης

Θεωρία Τηλεπικοινωνιακής Κίνησης Θεωρία Τηλεπικοινωνιακής Κίνησης Ενότητα: Ασκήσεις για τις ενότητες 7 8 (Πολυδιάστατη Κίνηση Αναδρομικός τύπος Kaufman- Roberts) Ιωάννης Μοσχολιός Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών

Διαβάστε περισσότερα

Ε Π Ι Χ Ε Ι Ρ Η Σ Ι Α Κ Η Ε Ρ Ε Υ Ν Α

Ε Π Ι Χ Ε Ι Ρ Η Σ Ι Α Κ Η Ε Ρ Ε Υ Ν Α ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΣΕΠΤΕΜΒΡΙΟΣ 2011 ΤΟΜΕΑΣ ΣΤΑΤΙΣΤΙΚΗΣ, ΠΙΘΑΝΟΤΗΤΩΝ & ΕΠΙΧΕΙΡΗΣΙΑΚΗΣ ΕΡΕΥΝΑΣ Ε Π Ι Χ Ε Ι Ρ Η Σ Ι Α Κ Η Ε Ρ Ε Υ Ν Α ΘΕΜΑ 1 ο Σε ένα διαγωνισμό για την κατασκευή μίας καινούργιας γραμμής του

Διαβάστε περισσότερα

ΑΞΙΟΠΙΣΤΙΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ

ΑΞΙΟΠΙΣΤΙΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ ΑΞΙΟΠΙΣΤΙΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ Εισαγωγή Ηεµφάνιση ηλεκτρονικών υπολογιστών και λογισµικού σε εφαρµογές µε υψηλές απαιτήσεις αξιοπιστίας, όπως είναι διαστηµικά προγράµµατα, στρατιωτικές τηλεπικοινωνίες,

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Λογική Δημήτρης Πλεξουσάκης 2ο μέρος σημειώσεων: Συστήματα Αποδείξεων για τον ΠΛ, Μορφολογική Παραγωγή, Κατασκευή Μοντέλων Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης

Διαβάστε περισσότερα

Άσκηση 3 (ανακοινώθηκε στις 14 Μαΐου 2018, προθεσμία παράδοσης: 8 Ιουνίου 2018, 12 τα μεσάνυχτα).

Άσκηση 3 (ανακοινώθηκε στις 14 Μαΐου 2018, προθεσμία παράδοσης: 8 Ιουνίου 2018, 12 τα μεσάνυχτα). Κ08 Δομές Δεδομένων και Τεχνικές Προγραμματισμού Διδάσκων: Μανόλης Κουμπαράκης Εαρινό Εξάμηνο 2017-2018. Άσκηση 3 (ανακοινώθηκε στις 14 Μαΐου 2018, προθεσμία παράδοσης: 8 Ιουνίου 2018, 12 τα μεσάνυχτα).

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 2. Σταύρος Παπαϊωάννου

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 2. Σταύρος Παπαϊωάννου ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ Μαθηματικά Σταύρος Παπαϊωάννου Ιούνιος 015 Τίτλος Μαθήματος Περιεχόμενα Χρηματοδότηση... Error! Bookmark not deined. Σκοποί Μαθήματος (Επικεφαλίδα

Διαβάστε περισσότερα

Γενικά Μαθηματικά. , :: x, :: x. , :: x, :: x. , :: x, :: x

Γενικά Μαθηματικά. , :: x, :: x. , :: x, :: x. , :: x, :: x Γενικά Μαθηματικά Κεφάλαιο Εισαγωγή Αριθμοί Φυσικοί 0,,,3, Ακέραιοι 0,,, 3, Ρητοί,, 0 Πραγματικοί Αν, με, :: x, :: x, :: x, :: x, :: x, :: x, :: x, :: x Συνάρτηση Κάθε διαδικασία αντιστοίχησης η οποία

Διαβάστε περισσότερα

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

Μηχανική Μάθηση: γιατί; Μηχανική Μάθηση Μηχανική Μάθηση: γιατί; Απαραίτητη για να μπορεί ο πράκτορας να ανταπεξέρχεται σε άγνωστα περιβάλλοντα Δεν είναι δυνατόν ο σχεδιαστής να προβλέψει όλα τα ενδεχόμενα περιβάλλοντα. Χρήσιμη

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 1 Για τις ερωτήσεις 1-4 θεωρήσατε τον ακόλουθο γράφο. Ποιές από τις παρακάτω προτάσεις αληθεύουν και ποιές όχι;

ΑΣΚΗΣΗ 1 Για τις ερωτήσεις 1-4 θεωρήσατε τον ακόλουθο γράφο. Ποιές από τις παρακάτω προτάσεις αληθεύουν και ποιές όχι; ΘΕΜΑΤΑ ΔΕΝΔΡΩΝ ΓΙΑ ΤΙΣ ΕΞΕΤΑΣΕΙΣ ΠΛΗ0 ΑΣΚΗΣΗ Για τις ερωτήσεις - θεωρήσατε τον ακόλουθο γράφο. Ποιές από τις παρακάτω προτάσεις αληθεύουν και ποιές όχι; Β Ε Α 6 Δ 5 9 8 0 Γ 7 Ζ Η. Σ/Λ Δυο από τα συνδετικά

Διαβάστε περισσότερα

Εφαρμοσμένα Μαθηματικά ΙΙ 9ο Σετ Ασκήσεων (Λύσεις) Διανυσματικοί Χώροι

Εφαρμοσμένα Μαθηματικά ΙΙ 9ο Σετ Ασκήσεων (Λύσεις) Διανυσματικοί Χώροι Εφαρμοσμένα Μαθηματικά ΙΙ 9ο Σετ Ασκήσεων (Λύσεις) Διανυσματικοί Χώροι Επιμέλεια: Ι. Λυχναρόπουλος. Δείξτε ότι ο V R εφοδιασμένος με τις ακόλουθες πράξεις (, a b) + (, d) ( a+, b+ d) και k ( ab, ) ( kakb,

Διαβάστε περισσότερα