Μηχανική Μάθηση Βαθιά Μάθηση και Εφαρμογές. Κωνσταντίνος Διαμαντάρας Τμήμα Μηχανικών Πληροφορικής ΑΤΕΙ Θεσσαλονίκης

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

ΕΥΦΥΗΣ ΕΛΕΓΧΟΣ. Ενότητα #12: Εισαγωγή στα Nευρωνικά Δίκτυα. Αναστάσιος Ντούνης Τμήμα Μηχανικών Αυτοματισμού Τ.Ε.

Μοντέλο Perceptron πολλών στρωμάτων Multi Layer Perceptron (MLP)

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

Το μοντέλο Perceptron

Το Πολυεπίπεδο Perceptron. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

HMY 795: Αναγνώριση Προτύπων. Διαλέξεις 15-16

Μέθοδοι Μηχανικής Μάθησης στην επεξεργασία Τηλεπισκοπικών Δεδομένων. Δρ. Ε. Χάρου

Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων

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

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

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

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

Πληροφοριακά Συστήματα & Περιβάλλον

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας

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

Πληροφοριακά Συστήματα Διοίκησης

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

Βασικές αρχές εκπαίδευσης ΤΝΔ: το perceptron. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ. Καραγιώργου Σοφία

ΤΕΙ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ» ΔΕ. 11 ΙΟΥΝΙΟΥ 2012

ΤΕΙ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ» ΠΑ. 7 ΣΕΠΤΕΜΒΡΙΟΥ 2012

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

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

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

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π. Ανάλυση Κυρίων Συνιστωσών (Principal-Component Analysis, PCA)

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

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

ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ. 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

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

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

Τεχνητά Νευρωνικά Δίκτυα. Τσιριγώτης Γεώργιος Τμήμα Μηχανικών Πληροφορικής ΤΕΙ Ανατολικής Μακεδονίας & Θράκης

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

ΔΙΚΤΥO RBF. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

of Cognition, Brain, and Language, Spain.

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

Εισαγωγικά για την αναγνώριση έκφρασης προσώπου (Facial Expression Recognition)

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

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΕΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗ ΨΗΦΙΑΚΩΝ ΜΕΣΩΝ. Πτυχιακή Εργασία

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

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

Gemini, FastMap, Applications. Εαρινό Εξάμηνο Τμήμα Μηχανικών Η/Υ και Πληροϕορικής Πολυτεχνική Σχολή, Πανεπιστήμιο Πατρών

Ανδρέας Παπαζώης. Τμ. Διοίκησης Επιχειρήσεων

3. O ΑΛΓΟΡΙΘΜΟΣ ΤΟΥ PERCEPTRON

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

Ψηφιακές Τηλεπικοινωνίες

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

Πιθανότητες & Στατιστική (ΜΥΥ 304)

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ

Υπολογιστική Νοημοσύνη. Μάθημα 13: Αναδρομικά Δίκτυα - Recurrent Networks

Υπολογιστικές μέθοδοι για την ανάλυση της πληροφορίας των εικόνων και την κατανόηση του περιεχομένου

Μη γραµµικοί ταξινοµητές Νευρωνικά ίκτυα

Κεφάλαιο 8. Οπτικοποίηση Απαλοιφή

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

Υπολογιστική Νοημοσύνη. Μάθημα 12: Παραδείγματα Ασκήσεων 2

Νευρωνικά Δίκτυα στο Matlab

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

Επιστημονικοί Υπολογισμοί (ή Υπολογιστική Επιστήμη)

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα.

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

Τεχνητή Νοημοσύνη. TMHMA ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ. Εξάμηνο 5ο Οικονόμου Παναγιώτης & Ελπινίκη Παπαγεωργίου. Νευρωνικά Δίκτυα.

Ζωντανό Εργαστήριο Thessaloniki Active and Healthy Ageing Living Lab Παρακολούθηση ατόμων στο σπίτι σε πραγματικό χρόνο

Πληροφορική 2. Τεχνητή νοημοσύνη

Πιθανότητες & Στατιστική (ΜΥΥ 304) Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων

ΑΝΤΑΓΩΝΙΣΤΙΚΗ ΜΑΘΗΣΗ ΔΙΚΤΥA LVQ και SOM. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Μηχανική Μάθηση Μερωνυµιών για Αναγνώριση Γεγονότων

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

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

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

Υπολογιστική Νοημοσύνη. Μάθημα 4: Μάθηση στον απλό τεχνητό νευρώνα (2)

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


ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ

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

Πρόλογος... xv. Κεφάλαιο 1. Εισαγωγικές Έννοιες... 1

Fast Fourier Transform

ΜΕΛΕΤΗ ΣΧΕΔΙΑΣΗ ΕΦΑΡΜΟΓΗΣ ΣΕ ΥΠΟΛΟΓΙΣΤΙΚΟ ΝΕΦΟΣ (CLOUD COMPUTING) ΜΕ ΕΜΦΑΣΗ ΣΤΗΝ ΚΑΤΑΣΚΕΥΗ ΔΕΝΤΡΩΝ.

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

Κινητά Δίκτυα Επικοινωνιών. Συμπληρωματικό υλικό. Προσαρμοστική Ισοστάθμιση Καναλιού

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

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

ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ ΚΑΙ ΓΛΩΣΣΙΚΑ ΕΡΓΑΛΕΙΑ. Τεχνικές NLP Σχεδιαστικά Θέματα

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

ΕΡΕΥΝΗΤΙΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΑΡΧΙΜΗΔΗΣ ΕΝΙΣΧΥΣΗ ΕΡΕΥΝΗΤΙΚΩΝ ΟΜΑΔΩΝ ΣΤΟ ΤΕΙ ΣΕΡΡΩΝ. Ενέργεια στ ΘΕΜΑ ΕΡΕΥΝΑΣ: ΔΙΑΡΘΡΩΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΕΧΡΩΜΩΝ ΕΓΓΡΑΦΩΝ

Αλεξάνδρειο ΣΕΙ Θεσσαλονίκης 1. Σμήμα Διοίκησης Επιχειρήσεων 2. Σμήμα Μηχανικών Πληροφορικής

Αναγνώριση Προτύπων. Μη παραμετρικές τεχνικές Αριθμητικά. (Non Parametric Techniques)

Ανάκτηση πολυμεσικού περιεχομένου

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π.

Αναγνώριση Προτύπων - Νευρωνικά ίκτυα

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

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

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ

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

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

Π Τ Υ Χ Ι Α Κ Η /ΔΙ Π Λ Ω Μ ΑΤ Ι Κ Η Ε Ρ ΓΑ Σ Ι Α

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

Μελέτη και Υλοποίηση Αλγορίθμων για Βιολογικές Εφαρμογές σε MapReduce Περιβάλλον

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

Εισαγωγή στην υδροπληροφορική και βελτιστοποίηση συστημάτων υδατικών πόρων

Transcript:

Μηχανική Μάθηση Βαθιά Μάθηση και Εφαρμογές Κωνσταντίνος Διαμαντάρας Τμήμα Μηχανικών Πληροφορικής ΑΤΕΙ Θεσσαλονίκης

Τι είναι η Μηχανική Μάθηση; Συλλογή αλγορίθμων και μεθόδων με τις οποίες βελτιώνεται η αποδοτικότητα μιας μηχανής (βλ. υπολογιστή) στην εκτέλεση «ευφυών» εργασιών. Βασικές κατηγορίες ευφυών εργασιών: Αναγνώριση προτύπων (Pattern Recognition): Αναγνώριση προσώπου, αναγνώριση ομιλίας/ομιλητή, αναγνώριση εικόνας, αναγνώριση βλαβών, αναγνώριση ασθενειών,... Εξαγωγή χαρακτηριστικών (Feature Extraction): Ανάλυση δεδομένων σε συνιστώσες, αναπαράσταση δεδομένων Πρόβλεψη (Prediction) και παλινδρόμηση (Regression): Εκτίμηση τιμών μιας συνάρτησης Ομαδοποίηση (Clustering) Γενίκευση (Generalization) 2

Σημασία της μάθησης Η μάθηση είναι μια από τις βασικότερες λειτουργίες της ανθρώπινης νοημοσύνης. Δυνατότητα της προσαρμοστικότητας στο περιβάλλον που είναι σημαντική, αν όχι απαραίτητη, για την επιβίωση. Η μηχανική μάθηση είναι σημαντική σε πλήθος εφαρμογών Η/Υ: Machine perception, Computer vision, Object recognition, Natural Language processing, Syntactic pattern recognition, Search engines, Medical diagnosis, Recommender systems, Sentiment analysis (or opinion mining), Bioinformatics, Brain-machine interfaces, Detecting credit card fraud, Stock market analysis, Classifying DNA sequences, Sequence mining, Speech and handwriting recognition, Game playing, Software engineering, Adaptive websites, Robot locomotion, Computational advertising, Computational finance, Structural health monitoring, Affective computing, Information retrieval, κα. 3

Προβλήματα Μάθησης

Ταξινόμηση (Classification) Ταξινομητής (Classifier): Μηχανή (Αλγόριθμος) αντιστοίχισης πραγματικών αντικειμένων, εικόνων ή χρονοσειρών σε κατηγορίες. Απαραίτητη η εισαγωγή των δεδομένων υπό αριθμητική μορφή. Πρότυπο (Pattern): Διάνυσμα που περιέχει την περιγραφή του αντικειμένου. Πχ. Αν το αντικείμενο είναι μια εικόνα μεγέθους 500 500 pixels τότε το πρότυπο είναι το διάνυσμα με τα 250000 pixels (αριθμοί από 0-255) 5

Παραδείγματα ταξινόμησης Ταξινομητής-1 (Classifier) Γυναίκα Ταξινομητής-2 (Classifier) Λουλούδι Ταξινομητής-3 (Classifier) Το γράμμα d Ταξινομητής-4 (Classifier) Το φώνημα «Ε» 6

Παλινδρόμηση (Regression) Το πρόβλημα της παλινδρόμησης είναι παρόμοιο με αυτό της ταξινόμησης με τη διαφορά ότι η έξοδος πρέπει να προσεγγίζει πραγματικές τιμές και όχι αναγκαστικά δυαδικές. Παράδειγμα: Διαθέτουμε στοιχεία για το πλήθος των χρηστών του Facebook τα τελευταία χρόνια Μήνας/ Έτος 12/ 2005 12/ 2006 10/ 2007 8/ 2008 12/ 2009 12/ 2010 12/ 2011 12/ 2012 Χρήστες (εκατομμ.) 5.5 12 50 100 350 608 845 1006 http://news.yahoo.com/number-active-users-facebook-over-230449748.html 7

Παράδειγμα παλινδρόμησης Ημερομηνία (σε μήνες από 1/2005) x Πλήθος χρηστών (σε εκατομμύρια) f ( x ; w) y Δυνατότητα εκτίμησης των χρηστών «ανάμεσα» στις δεδομένες ημερομηνίες (interpolation) Δυνατότητα εκτίμησης των χρηστών «μετά» ή «πριν» τις δεδομένες ημερομηνίες (extrapolation) 8

Συσταδοποίηση (Clustering) Δίνονται μόνο τα πρότυπα χωρίς στόχους Ομαδοποίηση με βάση την ομοιότητα 9

Ανάλυση χαρακτηριστικών Ανάλυση δεδομένων: θεωρούμε ότι η ωμή πληροφορία x=[x1,...,xn], αποτελείται από την «μίξη» απλούστερων συνιστωσών (components) y1,...,ym, m<<n: x=f ( y 1,, y m ) Πρόβλημα: να επιλέξουμε την καταλληλότερη συνάρτηση f και τις καταλληλότερες συνιστώσες y1,...,ym ώστε να έχουμε τη μικρότερη απώλεια πληροφορίας x f ( y 1,, y m ) =minimum Συνηθέστερη επιλογή η γραμμική συνάρτηση 10

Ανάλυση δεδομένων Παράδειγμα: Ανάλυση μετοχών του χρηματιστηρίου. Μελετήσαμε τις 100 σημαντικότερες μετοχές του δείκτη NASDAQ (NASDΑQ100). Τo πρότυπο xt είναι ένα διάνυσμα με τις 100 τιμές των μετοχών την ημέρα t. Βρίσκουμε ότι το 80% της τιμής των μετοχών αυτών είναι το άθροισμα 4 σημάτων 11

Σκοπός της Μάθησης Γενίκευση

Σκοπός της μάθησης Παράδειγμα: Θεωρήστε το πρόβλημα της παλινδόμησης Σκοπός? Να μάθουμε ακριβώς τις τιμές των στόχων ti για κάθε διάνυσμα εισόδου xi? Αυτό μάθαμε t Πραγματική συνάρτηση Παρατηρήσεις x 13

Σκοπός της μάθησης Παράδειγμα: Θεωρήστε το πρόβλημα της παλινδόμησης Σκοπός? Να μάθουμε ακριβώς τις τιμές των στόχων ti για κάθε διάνυσμα εισόδου xi? Αυτό μάθαμε t Πραγματική συνάρτηση Παρατηρήσεις x 14

Γενίκευση Σκοπός: Να μάθουμε την κρυμμένη «αλήθεια» δηλαδή την συνάρτηση που παρήγαγε τα δεδομένα Μην ξεχνάμε ότι υπάρχει συνήθως σφάλμα παρατήρησης Σκοπός είναι η γενίκευση: Γενίκευση: η ικανότητα να εκτιμάμε τη σωστή έξοδο ti για πρότυπα εισόδου xi που δεν έχουμε δει κατά την εκπαίδευση. 15

Κίνδυνος 1: Υπερμοντελοποίηση Σφάλμα υπερ-μοντελοποίησης (over-modeling): Πιο πολύπλοκο μοντέλο εκτίμησης από την πραγματικότητα. Το μοντέλο μας δεν γενικεύει καλά μακριά από τις τιμές παρατήρησης Αυτό μάθαμε t Πραγματική τιμή Πραγματική συνάρτηση Εκτίμηση x 16

Κίνδυνος 2: Υπομοντελοποίηση Σφάλμα υπο-μοντελοποίησης (under-modeling): Πιο απλοϊκό μοντέλο εκτίμησης από την πραγματικότητα. Το μοντέλο μας πάλι δεν γενικεύει καλά μακριά από τις τιμές παρατήρησης Αυτό μάθαμε t Εκτίμηση Πραγματική συνάρτηση Πραγματική τιμή x 17

Το πρόβλημα της ταξινόμησης 18

Γραμμικός διαχωρισμός Perceptron: Ένας νευρώνας 1=x0 w0 x1.... w1 xn Επαυξημένες είσοδοι (μαζί με x0=1) + wn u f(u) y Βηματική συνάρτηση (step function) Επαυξημένα βάρη (μαζί με w0=πόλωση) 19

Εκπαίδευση Perceptron f(u) Έξοδος: y=f ( w T x+w 0 ) { 1, 1} Στόχος: t { 1,1} u Κανόνας μάθησης: { +β x i if t=1, y= 1 wi =w i β x i if t= 1, y=1 +0 if t= y Θεώρημα: Αν το πρόβλημα είναι γραμμικά διαχωρίσιμο, ο κανόνας Perceptron θα βρει λύση σε πεπερασμένο αριθμό βημάτων. Άλλος πολύ δημοφιλής γραμμικός ταξινομητής: Logistic Regression. 20

Διαχωριστικό υπερεπίπεδο y= 1 y= 1 w w 0 w Διαχωριστική γραμμή κάθετη στο w η οποία χωρίζει το επίπεδο σε αρνητικό μέρος και σε θετικό μέρος Αν y= 1: Το πρότυπο ταξινομείται στην C0 Αν y=1: Το πρότυπο ταξινομείται στην C1 21

Πραγματικότητα... Λαμβάνω συνεχώς δεδομένα Με βάση τα υπάρχοντα δεδομένα θέλω να ξεχωρίσω την μπλε από την πορτοκαλί κλάση όχι μόνο τώρα αλλά και στο μέλλον Πολύπλοκη Διαχωριστική Επιφάνεια 22

Καλός μετασχηματισμός Πολύπλοκη Διαχωριστική Επιφάνεια Ο μετασχηματισμός μπορεί να μετατρέψει το πρόβλημα σε γραμμικά διαχωρίσιμο 23

Παράδειγμα μετασχηματισμού x2 (0,1) Αρχικά Δεδομένα: Πρόβλημα XOR. Oι κλάσεις δεν είναι γραμμικά διαχωρίσιμες! (1,1) x1 (0,0) (1,0) 24

Παράδειγμα μετασχηματισμού Εισάγω δύο νευρώνες a1, a2 με τα βάρη και τις πολώσεις που φαίνονται x2 (0,1) a2 a1 (1,1) 0.5 x1 (0,0) 1 1 1 (1,0) x1 1 1.5 x2 25

Παράδειγμα μετασχηματισμού Αρχικά Δεδομένα Μετασχηματισμένα Δεδομένα a2 x2 (0,1) a2 a1 (1,1) 0.5 x1 (0,0) 1 1 1.5 a1 1 (0,0) (1,0) x1 1 (1,1) (1,0) x2 26

Παράδειγμα μετασχηματισμού Αρχικά Δεδομένα Μετασχηματισμένα Δεδομένα y x2 0.5 1 (0,1) x1 a2 1 1 1 (1,1) 1.5 a1 1 (0,0) (1,0) x1-1 a1 (1,1) 0.5 (0,0) a2 (1,0) x2 27

Ρηχοί μετασχηματισμοί: Support Vector Machines P SVM με πυρήνα k ( ): y= i=1 λ i t i k ( x, x i )+ w 0 Αλγόριθμος εκπαίδευσης: Τετραγωνικός Προγραμματισμός [ ] k ( x, x1 ) x T ( x)= k ( x, x2 ) k ( x, x P) + 28

Ρηχός Μετασχηματισμός: Multi-Layer Perceptron MLP με ένα κρυφό στρώμα ( f =σιγμοειδής συνάρτηση ) Κανόνας εκπαίδευσης: Back-Propagation [ ] f ( x ; w (1) 1 ) (1) f ( x ; w 2 ) x T ( x)= (1) f (x ; wp ) + 29

Βαθιά Νευρωνικά Δίκτυα 30

Multi-Layer Perceptron Βάθος: το μήκος του μεγαλύτερου μονοπατιού ενός γράφου. Βάθος = 5 Τα νευρωνικά δίκτυα μπορούν να θεωρηθούν υπολογιστικοί γράφοι: κόμβοι = πράξεις, ακμές = ροή δεδομένων Στα παραδοσιακά Νευρωνικά Δίκτυα, όπως το MLP, το βάθος είναι το πλήθος των στρωμάτων, πχ: Βάθος = 2 31

Γιατί Βαθιά Νευρωνικά Δίκτυα (ΒΝΔ); Μειονεκτήματα των ρηχών δικτύων: Aν και διάφορα δίκτυα βάθους 2 είναι καθολικοί προσεγγιστές (πχ. Τα δίκτυα Multilayer Perceptron MLP ή τα δίκτυα Radial Basis Function RBF) σε πολλές περιπτώσεις απαιτείται εξαιρετικά μεγάλος αριθμός κρυφών νευρώνων. Υπάρχουν οικογένειες συναρτήσεων, όπως η parity: p(x)= { 0 αν το x έχει άρτιο πλήθος 1 1 αν το x έχει περιττό πλήθος 1 οι οποίες απαιτούν Ο(2n) νευρώνες αν το δίκτυο έχει 2 στρώματα, ενώ απαιτούν μόνο O(n) νευρώνες αν το δίκτυο έχει d στρώματα. Βαθιά Δίκτυα: πιο αποδοτική αναπαράσταση της πληροφορίας 32

Γιατί ΒΝΔ (2); Ο εγκέφαλος διαθέτει αρχιτεκτονική δικτύου μεγάλου βάθους. Παράδειγμα: ο οπτικός φλοιός διαθέτει μια σειρά από στρώματα νευρώνων όπου κάθε στρώμα, δέχεται είσοδο από τα προηγούμενο στρώμα, τροφοδοτεί το επόμενο στρώμα, αναπαριστά την πληροφορία με αυξανόμενη αφαιρετικότητα. Η ανθρώπινη αντίληψη γίνεται σε στάδια αυξανόμενης πολυπλοκότητας. Οι ιδέες οργανώνονται ιεραρχικά: πρώτα ξεκινάμε από απλούστερες ιδέες ή έννοιες και κατόπιν προχωράμε σε πιο πολύπλοκες έννοιες βασισμένοι στις απλούστερες Λύνουμε δύσκολα προβλήματα σπάζοντάς τα σε μικρότερα απλούστερα υπο-προβλήματα 33

Γιατί όχι Back-Propagation; Πρόβλημα εκπαίδευσης με πολλά στρώματα: η διόρθωση είτε τείνει στο μηδέν, είτε τείνει στο άπειρο [Hochreiter, 1991] Blame propagation στον BP 34

Νέες μέθοδοι εκπαίδευσης ΒΝΔ Μέχρι το 2006 η εκπαίδευση Βαθιών Νευρωνικών Δικτύων (ΒΝΔ) δεν ήταν ικανοποιητική. Η κατάσταση άλλαξε όταν σχεδόν ταυτόχρονα, προτάθηκαν Τα Βαθιά Δίκτυα Πεποιθήσεων (Deep Belief Networks) [Hinton, Osindero, and Teh, A fast learning algorithm for deep belief nets Neural Computation 18:15271554, 2006] Οι Αυτο-Συσχετιστές (Auto-Encoders) για την εξαγωγή χαρακτηριστικών [Bengio, Lamblin, Popovici and Larochelle, Greedy Layer-Wise Training of Deep Networks, in J. Platt et al. (Eds), Advances in Neural Information Processing Systems 19 (NIPS 2006), pp. 153-160, MIT Press, 2007] Η χρήση αυτο-συσχετιστών στα Συνελικτικά Δίκτυα (Convolutional Nets) τα οποία είχαν προταθεί παλαιότερα από τον Yann LeCun [Ranzato, Poultney, Chopra and LeCun, Efficient Learning of Sparse Representations with an Energy-Based Model, in J. Platt et al. (Eds), Advances in Neural Information Processing Systems (NIPS 2006), MIT Press, 2007] 35

Βαθιά Δίκτυα Πεποιθήσεων Deep Belief Networks 36

Μηχανές Boltzmann Μια μηχανή Boltzmann είναι ένα στοχαστικό νευρωνικό δίκτυο (εμπνευσμένο από τη θερμοδυναμική) με την ακόλουθη δομή:...... Κρυφοί νευρώνες Ορατοί νευρώνες (inputs & outputs) Υπάρχουν δύο τύποι νευρώνων οι ορατοί (visible) και οι κρυφοί (hidden) και κάθε νευρώνας συνδέεται με όλους τους υπόλοιπους. Κάθε νευρώνας βρίσκεται σε μια από δύο καταστάσεις: on () ή off ( / ) 37

Μηχανές Boltzmann (2) Οι ορατοί νευρώνες αλληλεπιδρούν με το περιβάλλον. Για παράδειγμα, δέχονται εισόδους ή επιστρέφουν εξόδους. Οι κρυφοί νευρώνες είναι ελεύθεροι. Σκοπός τους είναι να συλλάβουν και να αναπαραστήσουν τις συσχετίσεις μεταξύ των ορατών νευρώνων. Τα συναπτικά βάρη είναι συμμετρικά: για κάθε, και κανένας νευρώνας δεν τροφοδοτεί τον εαυτό του, δηλ. wii =0. Η έξοδος του νευρώνα i είναι μια δυαδική τυχαία μεταβλητή : xi= { 1 με πιθανότητα σ ( j w ij x j +w 0 ) 1 με πιθανότητα 1 σ ( j w ij x j +w 0 ) όπου σ() είναι η σιγμοειδής συνάρτηση. 38

Περιορισμένες Μηχανές Boltzmann Μια Περιορισμένη Μηχανή Boltzmann (Restricted Boltzmann Machine) διαθέτει ένα στρώμα κρυφών νευρώνων καθώς και ένα στρώμα ορατών νευρώνων. Οι ορατοί νευρώνες συνδέονται με τους κρυφούς αλλά δεν υπάρχουν συνάψεις μεταξύ ομοειδών νευρώνων (δεν συνδέονται ορατοί με ορατούς ούτε κρυφοί με κρυφούς) Τα συναπτικά βάρη μεταξύ ορατών και κρυφών νευρώνων είναι συμμετρικά, δηλ. wij =w ji....... 39

Εκτίμηση Κατανομής Δεδομένα: ένα σύνολο δειγμάτων. Προέρχονται από μία άγνωστη κατανομή Θέλουμε να εκτιμήσουμε την κατανομή Δεδομένα Κατανομή 40

Το RBM ως εκτιμητής κατανομών Στην πράξη μας δίνεται ένα dataset με P δείγματα {x1,,xp}. Χρήση sampling: Βρίσκει μια σειρά ψευδοτυχαίων διανυσμάτων {v1,,vk} που ακολουθεί την κατανομή του x. Υπολόγισε τα στατιστικά που θέλεις (πχ. μέση τιμή, διασπορά, κλπ) χρησιμοποιώντας αυτή την σειρά 41

Εκπαίδευση RBM Δ wij =β( v i h j data v i h j recon ) Learning rate 1. Θέσε vii ίσο με την είσοδο xii 2. Υπολόγισε τυχαίες τιμές hjj χρησιμοποιώντας τις πιθανότητες P(hjj=1 v)=σ(σiiwijijvii + bjj) 3. Υπολόγισε τη μέση τιμή viihjj 1. Έχοντας τα hjj από πριν 2. Υπολόγισε νέες τυχαίες vii τιμές (reconstruction) χρησιμοποιώντας τις πιθανότητες P(vii=1 h)=σ(σjjwijijhjj + aii) 3. Υπολόγισε τη μέση τιμή viihjj 42

Εκπαίδευση RBM: Contrastive Divergence Η εύρεση του από το και κατόπιν η εύρεση του νέου από το προηγούμενο αποτελούν ένα βήμα από το λεγόμενο alternating Gibbs sampling. Είναι δυνατόν να εκτελεστούν περισσότερα βήματα alternating Gibbs sampling πριν κάνουμε τον υπολογισμό του data Χρόνος: 0... reconstruction reconstruction 1... N Συγκλίνει στην πραγματική κατανομή Ο παραπάνω κανόνας εκπαίδευσης προέρχεται από την παραγώγιση της συνάρτησης κόστους που λέγεται Contrastive Divergence (CD). Ανάλογα με το πόσα βήματα εκτελούμε ο αλγόριθμος αναφέρεται ως CD 1, CD2,, CDn. 43

Πρακτικά Θέματα Υπολογισμός κρυφών νευρώνων Στα βήματα Gibbs sampling εκτός από το τελευταίο υπολογίζουμε τυχαίες τιμές h j= 1 ή +1 με βάση την πιθανότητα P(h j =1 v )=σ (b j + i w ij v i ) Στο τελευταίο βήμα Gibbs sampling υπολογίζουμε μόνο τις πιθανότητες P(h j =1 v )=σ (b j + i w ij v i ) Υπολογισμός ορατών νευρώνων Σε όλα τα βήματα Gibbs sampling υπολογίζουμε τις τυχαίες τιμές v i= 1 ή +1 με βάση την πιθανότητα P(v i=1 h)=σ (ai + j wij h j ) 44

Χρήση RBM στην ταξινόμηση RBM + Ταξινομητής (πχ. MLP, SVM, κλπ)... MLP Ταξινόμηση RBM Αναπαράσταση Πληροφορίας (Μετασχηματισμός)...... 45

Deep Belief Nets Ιδέα: Χρήση L στρωμάτων RBM RBM....... RBM Βάθος Δικτύου = RBM RBM 46

Εκπαίδευση DBN Προ-εκπαίδευση (Pre-training) 1) Εκπαίδευσε το πρώτο στρώμα ως RBM με τους ορατούς νευρώνες g 0 να δέχονται τις εισόδους: g 0 =x. Υπολόγισε τις 1 τιμές του κρυφού στρώματος g του πρώτου RBM. 1 2) Χρησιμοποίησε τους κρυφούς νευρώνες g του πρώτου RBM σαν εισόδους (δηλ. σαν ορατούς νευρώνες) για το δεύτερο RBM 3) Εκπαίδευσε το δεύτερο RBM 4) Επανάλαβε τα βήματα 2, 3 για όλα τα στρώματα μέχρι το στρώμα L. 47

Εκπαίδευση DBN (2) Εκπαίδευση (Training) 1) Φτιάξε ένα δίκτυο MLP με τα ίδια ακριβώς στρώματα, με τους ίδιους νευρώνες και τα ίδια βάρη όπως το δίκτυο RBM. 2) Στην κορυφή του δικτύου πρόσθεσε ένα ταξινομητή (πχ ένα γραμμικό νευρώνα) με τυχαία αρχικά βάρη 3) Χρησιμοποίησε τα βάρη που βρήκες από το RBM ως αρχικά βάρη αυτού του δικτύου 4) Εκπαίδευσε το δίκτυο κανονικά με Back-Propagation 48

Συμπίεση πληροφορίας Αν η εφαρμογή μας απαιτεί συμπίεση πληροφορίας τότε τα στρώματα RBM layers έχουν τη διπλανή δομή (λέγονται Autoencoders): Τα βάρη αρχικοποιούνται με CDk Κατόπιν χρησιμοποιείται κλασικός BackPropagation Στόχος Αποσυμπίεση Πληροφορίας (decoding) ίδια Συμπίεση Πληροφορίας (encoding) Είσοδος 49

Εκπαίδευση DBN (3) Ταξινομητής....... M L P Παράδειγμα: Hinton, & Salakhutdinov, Reducing the dimensionality of data with neural networks, Science, 2006 Κώδικας MATLAB http://www.cs.toronto.edu/~hinton/matlabf orsciencepaper.html 50

Συνελικτικά Νευρωνικά Δίκτυα Convolutional Neural Networks 51

Συνελικτικά Νευρωνικά Δίκτυα Τα Συνελικτικά Νευρωνικά Δίκτυα είναι μια ειδική κατηγορία δικτύων πολλαπλών στρωμάτων εμπνευσμένα από τον οπτικό φλοιό του εγκεφάλου. Το δίκτυο αποτελείται από εναλλαγή στρώματων δύο τύπων: Τύπος Α: Συνελικτικό στρώμα Τύπος Β: Στρώμα υπο-δειγματοληψίας Καθώς αυτά τα μοντέλα μιμούνται τον οπτικό φλοιό, χρησιμοποιούνται συνήθως στην αναγνώριση εικόνων ή 2-διάστατων σχημάτων (πχ. χαρακτήρων). Παράδειγμα: Υπ οδει γμ ατ ολ ηψ ία Συ νέ λι ξη Είσοδος Στρώμα 1 Συ νέ λι ξη Στρώμα 2 Υποδειγμ ατολ ηψία Στρώμα 3 Συ νέ λι ξη Έξοδος (26x1) Στρώμα 4 52

Συνελικτικό Στρώμα Σύμφωνα με ευρήματα της νευρο-φυσιολογίας, συγκεκριμένοι νευρώνες στον οπτικό φλοιό του εγκεφάλου αθροίζουν τις διεγέρσεις των νευρώνων του προηγούμενου στρώματος. Αυτό ισοδυναμεί με τον μαθηματικό τελεστή της δισδιάστατης συνέλιξης που περιγράφεται ως εξής: y ij =f ( a, b w a, b x i a, j b +bij ) Η συνέλιξη εξάγει τοπικά χαρακτηριστικά (πχ τοπικές ακμές στο οπτικό πεδίο). Δημιουργείται έτσι ένας «χάρτης χαρακτηριστικών». 53

Στρώμα υποδειγματοληψίας Υπο-δειγματοληψία: κάθε νευρώνας λαμβάνει τη μέση τιμή ενός τοπικού μπλοκ μεγέθους m m του προηγούμενου στρώματος. ς α ψία ώμ Στρ ολη ματ ειγ -δ Υπο Αν το προηγούμενο στρώμα έχει μέγεθος n n τότε το στρώμα υποδειγματοληψίας έχει μέγεθος n n m m Για m=2 έχουμε y ij =s ij (x 2 i,2 j + x 2 i+1,2 j + x 2i,2 j+1 + x 2i+1,2 j+1 +bij ) Μειώνει την ευαισθησία του χάρτη χαρακτηριστικών σε μετατοπίσεις 54

Max pooling Max-pooling: αντί για εξαγωγή μέσου όρου, κάνουμε εξαγωγή της μέγιστης τιμής από το τοπικό block. Σύμφωνα με βιολογικές ενδείξεις το max-pooling πιθανώς να χρησιμοποιείται από τον ανθρώπινο εγκέφαλο. 7 9 Ωστόσο, το max-pooling κάνει το πρόβλημα 4 6 βελτιστοποίησης μη κυρτό δυσκολεύοντας έτσι την εκπαίδευση. α ώμ g Στρ oolin x-p Ma 5 7 2 5 4 4 8 3 3 4 6 9 3 4 1 4 55

Εκπαίδευση CNN Περιορισμοί στα βάρη: σε κάθε στρώμα τα βάρη του κάθε νευρώνα είναι ίδια με τους υπόλοιπους νευρώνες του ίδιου στρώματος. Αυτό μειώνει δραματικά το πλήθος των παραμέτρων που χρειάζεται να εκπαιδευτούν Βάρη με ίδιο χρώμα πρέπει να έχουν την ίδια τιμή. Άρα συνολικά: 3 άγνωστοι Στρώμα L Στρώμα L-1 Μέθοδος εκπαίδευσης: κατάβαση δυναμικού 56

Εφαρμογές 57

Εφαρμογές Βαθιάς Μάθησης CNN Πολύ αποδοτικό μοντέλο σε εφαρμογές επεξεργασίας εικόνας Ωστόσο έχει δώσει πολύ καλά αποτελέσματα και σε εφαρμογές επεξεργασίας φυσικής γλώσσας, πχ. Semantic parsing (Yih e.a., 2014), Search query retrieval (Shen e.a., 2014), Sentence modeling (Kalchbrenner e.a., 2014), Sentiment analysis (Kim 2014) Άλλες εφαρμογές NLP (Collobert et al., 2011). 58

Εφαρμογή: επεξεργασία φυσικής γλώσσας Αναδρομικοί αυτο-συσχετιστές Σκοπός: αναπαράσταση προτάσεων με διανύσματα Μπορεί να χρησιμοποιηθεί για ανάλυση περιεχομένου όπως εκτίμηση άποψης (θετικό/αρνητικό) ή ανάλυση συναισθήματος (θυμός, χαρά, λύπη, φόβος, αηδία, κλπ) 59

Ανάκτηση κειμένων με Deep ΑΕ [Hinton & Salakhutdinov 2010] 2000 500 500 128 Αναπαράσταση Κειμένου 500 500 2000 Bag 2000 κοινών λέξεων 60

Ανάκτηση κειμένων με Deep AE Reuters Corpus Vol. 2 61

Ανάκτηση κειμένων με Deep AE 20 Newsgroups 62

Αναπαράσταση πρότασης [Socher e.a., 2011] Αναπαράσταση πρότασης Word Vector Αναπαραστάσεις He saw a white cat Πρόταση 63

Βαθείς αναδρομικοί auto-encoders AutoEncoder 64

CNN για εξόρυξη συναισθήματος [Kim 2014] Τροποποιημένη αρχιτεκτονική CNN: wait for the movie and do n t rent it Αναπαράσταση πρότασης Συνέλιξη Max pooling Softmax 65

Αποτελέσματα 66

Διανυσματική αναπαράσταση λέξεων - Word2Vec [Mikolov, e.a. 2011, 2013] Προβολή Μοντέλο Μοντέλο SkipSkipgram gram 67

W2V αναπαραστάσεις 68

Πλατφόρμες λογισμικού 69

Πλατφόρμες Μηχανικής Μάθησης Scikit learn Theano MapReduce/Mahout Spark / MLlib Graphlab Tensorflow CuDNN Microsoft Cognitive Services Deep learning portal http://www.deeplearning.net 70

Πλατφόρμες ενός κόμβου Scikit-learn: http://scikit-learn.org/stable/ Βιβλιοθήκη Python για Μηχανική Μάθηση. Μεγάλη γκάμα αλγορίθμων για: Ταξινόμηση, Παλινδρόμηση, Συσταδοποίηση, Μείωση διαστάσεων, εξαγωγή χαρακτηριστικών, επιλογή μοντέλου, προεπεξεργασία δεδομένων Δεν διαθέτει αλγορίθμους για βαθιά μάθηση Theano: http://deeplearning.net/software/theano/ Βιβλιοθήκη Python για μαθηματικές εφαρμογές. Υπάρχουν υλοποιήσεις των βασικότερων αλγορίθμων μηχανικής μάθησης. Επιτάχυνση με χρήση GPU/CUDA. 71

Μεγάλα Δεδομένα (Big Data) Ολοένα πιο σημαντικές περιπτώσεις μεγάλου πλήθους δεδομένων με μεγάλες διαστάσεις εμφανίζονται όλο και πιο συχνά λόγω της διάδοσης του internet. Η ανάλυση και η επεξεργασία μεγάλων δεδομένων (big data) είναι εξαιρετικά δημοφιλές αντικείμενο έρευνας και ανάπτυξης τα τελευταία χρόνια. 72

Κατανεμημένες Πλατφόρμες: MapReduce / Mahout MapReduce: αρχικά ιδιωτική πλατφόρμα της Google, κατόπιν generic trademark. Παράλληλη και Κατανεμημένη επεξεργασία σε cluster. Apache/Hadoop: Δημοφιλής υλοποίηση MapReduce ανοιχτού κώδικα. Επί πλέον HDFS: κατανεμημένο σύστημα αρχείων (Hadoop Distributed File System) Apache/Mahout: Βιβλιοθήκη Μηχανικής Μάθησης πάνω σε Hadoop/MapReduce Περιορισμένο πλήθος μεθόδων Ταξινόμησης, Συσταδοποίησης και Ανάλυσης πινάκων. Μειωμένη ταχύτητα εκτεταμένη χρήση αρχείων Apache/Hadoop/Yarn: Εξελιγμένος resource allocator. 73

Κατανεμημένες Πλατφόρμες: Spark / MLlib Apache/Spark https://spark.apache.org/ Γενική πλατφόρμα κατανεμημένης επεξεργασίας για clusters. Τρέχει σε standalone mode, σε Hadoop HDFS, Yarn και Mesos. Σημαντικά ταχύτερη από MapReduce. Δυνατότητα χρήσης μνήμης για την αποθήκευση κατανεμημένων δεδομένων αντί για αρχεία. API για Scala, Python, Java, R Spark/MLlib: Βιβλιοθήκη μεθόδων Μηχανικής Μάθησης πάνω σε Spark. Σχετικά μεγάλη ποικιλία αλγορίθμων ταξινόμησης, παλινδρόμησης, συσταδοποίησης, στατιστικής, μείωσης διαστάσεων, εξαγωγής χαρακτηριστικών. Έλλειψη αλγορίθμων βαθιάς μάθησης. 74

Κατανεμημένες Πλατφόρμες: Graphlab Turi/Graphlab Create https://turi.com/ Μεγάλη ποικιλία μοντέλων Μηχανικής Μάθησης για προβλήματα ταξινόμησης, παλινδρόμησης, συσταδοποίησης, ανάλυσης χαρακτηριστικών, συστημάτων συστάσεων, αναγνώρισης συναισθήματος, κλπ. Υποστήριξη πολλών μοντέλων βαθιάς μάθησης, ειδικά CNN. Turi Distributed: Υλοποίηση περιορισμένου πλήθους μοντέλων σε κατανεμημένο περιβάλλον (cluster) με υποστήριξη Hadoop/HDFS. Πρόσφατη (2016) εξαγορά της εταιρίας από την Apple. 75

Κατανεμημένες Πλατφόρμες: Tensorflow Google/Tensorflow: Πλατφόρμα ανοιχτού κώδικα για μαθηματικούς υπολογισμούς με το μοντέλο υπολογιστικών γράφων. Έτοιμες βιβλιοθήκες για Βαθιά Νευρωνικά Δίκτυα και ειδικά για CNN. Ευκολία υλοποίησης εξαιρετικά βαθιών μοντέλων TFlearn: http://tflearn.org/ Βιβλιοθήκη Βαθιών Νευρωνικών Μοντέλων χτισμένη πάνω σε Tensorflow. 76

Κατανεμημένες Πλατφόρμες: Microsoft Cognitive Services Microsoft Cognitive Services https://www.microsoft.com/cognitive-services/en-us/ Σουίτα βιβλιοθηκών. API για Python, Java, C#, Ruby, κα. Βιβλιοθήκες για Vision Speech Language Knowledge Search Βιβλιοθήκη κλειστού κώδικα. Υπάρχουν χρεώσεις. 77