Πληροφοριακά Συστήματα Διοίκησης Τρεις αλγόριθμοι μηχανικής μάθησης ΠΜΣ Λογιστική Χρηματοοικονομική και Διοικητική Επιστήμη ΤΕΙ Ηπείρου @ 2018
Μηχανική μάθηση αναγνώριση προτύπων Η αναγνώριση προτύπων έχει ως στόχο να δημιουργήσει συστήματα που λειτουργούν με «νοήμονα» τρόπο απέναντι σε δεδομένα που παρουσιάζουν μεγάλη ποικιλομορφία (π.χ. αναγνώριση χειρόγραφων κειμένων, αναγνώριση προσώπων, ) Προβλήματα ταξινόμησης: Υποθέτουμε ότι διαθέτουμε δείγματα δεδομένων και κάθε δείγμα ανήκει σε μια κατηγορία από ένα σύνολο καλά καθορισμένων κατηγοριών Ζητούμενο είναι η αυτόματη κατηγοριοποίηση νέων δειγμάτων Βασική μέθοδος Φάση εκπαίδευσης: Δίνεται στον Η/Υ μια μεγάλη ποσότητα δεδομένων με επιγραφές (labels) δηλαδή ήδη ταξινομημένων δεδομένων, επεξεργάζονται και εξάγονται κάποια χαρακτηριστικά των κατηγοριών Φάση ταξινόμησης: Όταν ληφθεί ένα νέο δείγμα, η κατηγορία του επιλέγεται να είναι εκείνη ανάμεσα στις κατηγορίες τα χαρακτηριστικά (features) της οποίας μοιάζουν περισσότερο με αυτά του δείγματος 2
Τρεις αλγόριθμοι μηχανικής μάθησης 1. Ταξινομητές πλησιέστερου γείτονα 2. Δένδρα αποφάσεων 3. Τεχνητά νευρωνικά δίκτυα 3
Ταξινομητές πλησιέστερου γείτονα Ταξινομητής πλησιέστερου γείτονα: προκειμένου να ταξινομηθεί ένα νέο δείγμα εξετάζεται σε ποια κατηγορία ανήκει το πλησιέστερο σε αυτό από τα υπάρχοντα δείγματα και επιλέγεται η ίδια κατηγορία Ταξινομητής k πλησιέστερων γειτόνων (k-nn): Εξετάζονται οι k πλησιέστεροι γείτονες (π.χ. k=3) και επιλέγεται η κατηγορία που εμφανίζεται περισσότερες φορές γεωγραφικές θέσεις υποστηρικτών της κάθε ομάδας Παράδειγμα k-nn (k=3): Υποστηρικτές 2 ομάδων (της μπλε και της πορτοκαλί ομάδας) με βάση τη θέση στο χάρτη στην οποία μένουν. Ζητείται να προβλεφθεί το ποια ομάδα είναι πιθανότερο να υποστηρίζει το νέο άτομο που έχει ως θέση στο χάρτη το κίτρινο (?) Απάντηση: Την μπλε ομάδα. 4
Παράδειγμα πλησιέστερου γείτονα στην αναγνώριση ψηφίων Πρόβλημα: Δεδομένης μιας νέας ομάδας χειρόγραφων ψηφίων ζητείται να αναγνωριστεί κάθε ψηφίο της ομάδας Δεδομένα: Βάση χειρόγραφων ψηφίων (π.χ. MNIST dataset) Εύρεση απόστασης ανάμεσα σε δύο διαφορετικά δείγματα χειρόγραφων ψηφίων Τα ψηφία αλλάζουν κλίμακα έτσι ώστε να έχουν ίδιο μέγεθος Η μια εικόνα «αφαιρείται» από την άλλη οπότε προκύπτουν μαύρα pixels μόνο στα σημεία που η μια εικόνα έχει μαύρο pixel ενώ η άλλη έχει λευκό pixel http://yann.lecun.com/exdb/mnist/ (60.000 παραδείγματα ταξινομημένων χειρόγραφων ψηφίων) Εικόνες που μοιάζουν έχουν μικρό ποσοστό μαύρων pixels στη διαφορά τους Χρησιμοποιώντας παρόμοια μέτρα απόστασης και τον ταξινομητή k-nn μπορούν να επιτευχθεί ακρίβεια πάνω από 99% στην αναγνώριση ψηφίων νέο δείγμα (6% διαφορά) (21% διαφορά) 5
Δένδρα αποφάσεων Ένα δένδρο απόφασης είναι ένα δένδρο που χρησιμοποιεί «διακλαδώσεις» για να υποδηλώσει εναλλακτικές απαντήσεις σε ερωτήματα και «φύλλα» για τις τελικές αποφάσεις που λαμβάνονται κατά περίπτωση Δένδρο απόφασης για χορήγηση δανείου 6
Το παιχνίδι των 20 ερωτήσεων Μερικές ερωτήσεις είναι «καλύτερες» από άλλες καθώς αποκαλύπτουν περισσότερες πληροφορίες 7
Δένδρα απόφασης ως ταξινομητές Διαθέτοντας ένα σύνολο δεδομένων με επιγραφές μπορεί στη φάση εκπαίδευσης να κατασκευαστεί αυτόματα ένα δένδρο απόφασης που να εκτελεί ακριβείς ταξινομήσεις Δένδρο απόφασης που δημιουργήθηκε αυτόματα για την ταξινόμηση σελίδων ως ιστορυπαντικών ή μη ιστορυπαντικών Δημιουργία δένδρου απόφασης: Ο Η/Υ δοκιμάζει ένα μεγάλο αριθμό από πιθανές πρώτες ερωτήσεις για να βρει αυτή που δίνει την καλύτερη δυνατή πληροφορία και διαχωρίζει τα δεδομένα σε δύο ομάδες Η διαδικασία επαναλαμβάνεται με την επιλογή της δεύτερης καλύτερης ερώτησης μέχρι να οδηγηθεί σε ομάδες που αποτελούνται από αμιγή δείγματα Τα δένδρα που παράγονται είναι πολλών επιπέδων και πολύπλοκα αλλά δημιουργούνται αυτόματα! Για κάθε νέο δείγμα η κατηγοριοποίησή του γίνεται πολύ γρήγορα ξεκινώντας από την κορυφή και απαντώντας στις ερωτήσεις κάθε διακλάδωσης μέχρι να φθάσουμε σε κάποιο φύλλο του δένδρου που περιέχει και την απόφαση για την ταξινόμηση του δείγματος 8
Αναγνώριση σελίδων ιστορύπανσης με δένδρο απόφασης Ποσοστό των 1000 δημοφιλέστερων λέξεων στο κείμενο Εκπαιδευτικά δεδομένα: 17.000 ιστοσελίδες ταξινομημένες είτε σε ιστορυπαντικές είτε σε μη ιστορυπαντικές Το δένδρο έχει ακρίβεια ανίχνευσης ιστορυπαντικών ιστοσελίδων περίπου 90% Ένα παράδειγμα ιστορυπαντικής σελίδας (SPAM). Aν και περιέχει δημοφιλείς λέξεις κλειδιά, το περιεχόμενότης είναι ουσιαστικά άχρηστο Ntoulas, Alexandros, et al. "Detecting spam web pages through content analysis." Proceedings of the 15th international conference on World Wide Web. ACM, 2006. 9
Βιολογικά νευρωνικά δίκτυα Ο εγκέφαλος αποτελείται από κύτταρα τα οποία ονομάζονται νευρώνες Κάθε νευρώνας συνδέεται με πολλούς άλλους μέσω συνδέσεων που στέλνουν ηλεκτρικά και χημικά σήματα Κάποιες συνδέσεις δέχονται σήματα από άλλους νευρώνες ενώ οι υπόλοιπες μεταδίδουν σήματα προς άλλους νευρώνες Ένας νευρώνας μπορεί να είναι αδρανής ή ενεργός: Ένας νευρώνας είναι ενεργός όταν τα εισερχόμενα σε αυτόν σήματα είναι επαρκώς ισχυρά Ένας ενεργός νευρώνας εκπέμπει ριπές σημάτων προς τους νευρώνες με τους οποίους συνδέεται Ανθρώπινος εγκέφαλος Αριθμός νευρώνων: 10 11 Αριθμός συνάψεων: 10 14 Ταχύτητα μετάδοσης σημάτων 0,001 δευτερόλεπτα 10
Τεχνητά Νευρωνικά Δίκτυα (ΤΝΝ) τεχνητοί νευρώνες Ένα Τεχνητό Νευρωνικό Δίκτυο είναι ένα υπολογιστικό μοντέλο που αναπαριστά απλοϊκά ένα μικρό τμήμα εγκεφάλου Ένας τεχνητός νευρώνας: Δέχεται είσοδο από άλλους νευρώνες ή από εξωτερικές πηγές και υπολογίζει μια έξοδο Κάθε είσοδος έχει ένα βάρος που υποδηλώνει τη σημασία της εισόδου Μια μη γραμμική συνάρτηση ενεργοποίησης (π.χ. tanh) δέχεται το σταθμισμένο άθροισμα από τις εισόδους και υπολογίζει την τιμή που παράγει ως έξοδο ο νευρώνας 11
Επίπεδα ΤΝΝ Τ. νευρώνες εισόδου: Δέχονται την είσοδο από τον «έξω» κόσμο Κρυμμένοι τ. νευρώνες: μπορεί να είναι διαστρωματωμένοι σε πολλά επίπεδα Τ. νευρώνες εξόδου: Παράγουν το αποτέλεσμα που μεταφέρεται στον «έξω» κόσμο Αρχικά τα βάρη λαμβάνουν τυχαίες τιμές Ακολουθεί διαδικασία αυτόματης ενημέρωσης των βαρών έτσι ώστε να κατηγοριοποιούν σωστά τα δείγματα της φάσης εκπαίδευσης 12
Παράδειγμα εκπαίδευσης ΤΝΝ Ώρες μελέτης Βαθμός προόδου Τελικό αποτέλεσμα 35 67 1 (πέρασε) 12 75 0 (απέτυχε) 16 89 1 (πέρασε) 45 56 1 (πέρασε) 10 90 0 (απέτυχε) Ώρες μελέτης Βαθμός προόδου Τελικό αποτέλεσμα 25 70? 13
Αναγνώριση ψηφίων με ΤΝΝ http://scs.ryerson.ca/~aharley/vis/fc/ Είσοδοι: εικόνες 28 x 28 pixels χειρόγραφων ψηφίων (MNIST dataset) Τεχνητό Νευρωνικό Δίκτυο 784 τ. νευρώνες στο επίπεδο εισόδου 300 τ. νευρώνες στο πρώτο κρυφό επίπεδο 100 τ. νευρώνες στο δεύτερο κρυφό επίπεδο 10 τ. νευρώνες στο επίπεδο εξόδου 14
Αναφορές Εννέα αλγόριθμοι που άλλαξαν το μέλλον https://www.cup.gr/book/ennea-algorithmi-pou-allaxan-to-mellon/ http://www.20q.net/ http://yann.lecun.com/exdb/mnist/ Ntoulas, Alexandros, et al. "Detecting spam web pages through content analysis." Proceedings of the 15th international conference on World Wide Web. ACM, 2006. https://ujjwalkarn.me/2016/08/09/quick-intro-neural-networks/ 15