Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

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

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

Μη Συµβολικές Μέθοδοι

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

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

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

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

Κεφάλαιο 19 Τεχνητά Νευρωνικά ίκτυα (Artificial Neural Nets)

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

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

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006

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

Phys460.nb Solution for the t-dependent Schrodinger s equation How did we find the solution? (not required)

TMA4115 Matematikk 3

Το μοντέλο Perceptron

Section 8.3 Trigonometric Equations

2 Composition. Invertible Mappings

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

derivation of the Laplacian from rectangular to spherical coordinates

The Simply Typed Lambda Calculus

LESSON 14 (ΜΑΘΗΜΑ ΔΕΚΑΤΕΣΣΕΡΑ) REF : 202/057/34-ADV. 18 February 2014

HOMEWORK 4 = G. In order to plot the stress versus the stretch we define a normalized stretch:

Υπολογιστική Νοημοσύνη. Μάθημα 6: Μάθηση με Οπισθοδιάδοση Σφάλματος Backpropagation Learning

Τεχνητά Νευρωνικά Δίκτυα

Example Sheet 3 Solutions

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade

Math 6 SL Probability Distributions Practice Test Mark Scheme

9.09. # 1. Area inside the oval limaçon r = cos θ. To graph, start with θ = 0 so r = 6. Compute dr

How to register an account with the Hellenic Community of Sheffield.

ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY 21 ος ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δεύτερος Γύρος - 30 Μαρτίου 2011

7 Present PERFECT Simple. 8 Present PERFECT Continuous. 9 Past PERFECT Simple. 10 Past PERFECT Continuous. 11 Future PERFECT Simple

Fractional Colorings and Zykov Products of graphs

3.4 SUM AND DIFFERENCE FORMULAS. NOTE: cos(α+β) cos α + cos β cos(α-β) cos α -cos β

Finite Field Problems: Solutions

Απόκριση σε Μοναδιαία Ωστική Δύναμη (Unit Impulse) Απόκριση σε Δυνάμεις Αυθαίρετα Μεταβαλλόμενες με το Χρόνο. Απόστολος Σ.

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

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

Example of the Baum-Welch Algorithm

Right Rear Door. Let's now finish the door hinge saga with the right rear door

EE512: Error Control Coding

Solutions to Exercise Sheet 5

Other Test Constructions: Likelihood Ratio & Bayes Tests

Instruction Execution Times

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

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

Συστήματα Διαχείρισης Βάσεων Δεδομένων

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

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

Overview. Transition Semantics. Configurations and the transition relation. Executions and computation

Διδάσκουσα: Χάλκου Χαρά,

BECAUSE WE REALLY WANT TO KNOW WHAT YOU THINK ABOUT SCHOOL AND YOUR GARDEN. Fairly true If I decide to learn something hard, I can.

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

Paper Reference. Paper Reference(s) 1776/04 Edexcel GCSE Modern Greek Paper 4 Writing. Thursday 21 May 2009 Afternoon Time: 1 hour 15 minutes

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 24/3/2007

Statistical Inference I Locally most powerful tests

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

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

Code Breaker. TEACHER s NOTES

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

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

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

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

Section 7.6 Double and Half Angle Formulas

Dynamic types, Lambda calculus machines Section and Practice Problems Apr 21 22, 2016

Κατανοώντας και στηρίζοντας τα παιδιά που πενθούν στο σχολικό πλαίσιο

Homework 3 Solutions

1) Formulation of the Problem as a Linear Programming Model

Advanced Subsidiary Unit 1: Understanding and Written Response

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ψηφιακή Οικονομία. Διάλεξη 10η: Basics of Game Theory part 2 Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών

Potential Dividers. 46 minutes. 46 marks. Page 1 of 11

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

Matrices and Determinants

PARTIAL NOTES for 6.1 Trigonometric Identities

Strain gauge and rosettes

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

Econ 2110: Fall 2008 Suggested Solutions to Problem Set 8 questions or comments to Dan Fetter 1

«ΨΥΧΙΚΗ ΥΓΕΙΑ ΚΑΙ ΣΕΞΟΥΑΛΙΚΗ» ΠΑΝΕΥΡΩΠΑΪΚΗ ΕΡΕΥΝΑ ΤΗΣ GAMIAN- EUROPE

Fourier Series. MATH 211, Calculus II. J. Robert Buchanan. Spring Department of Mathematics

Μηχανική Μάθηση. Η έννοια της µάθησης σε ένα γνωστικό σύστηµα µπορεί να συνδεθεί µε δύο βασικές ιδιότητες:

Living and Nonliving Created by: Maria Okraska

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

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

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

6.3 Forecasting ARMA processes

2. THEORY OF EQUATIONS. PREVIOUS EAMCET Bits.

b. Use the parametrization from (a) to compute the area of S a as S a ds. Be sure to substitute for ds!

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

Block Ciphers Modes. Ramki Thurimella

Αναερόβια Φυσική Κατάσταση

Math221: HW# 1 solutions

Srednicki Chapter 55

SCHOOL OF MATHEMATICAL SCIENCES G11LMA Linear Mathematics Examination Solutions

EU-Profiler: User Profiles in the 2009 European Elections

the total number of electrons passing through the lamp.

Pg The perimeter is P = 3x The area of a triangle is. where b is the base, h is the height. In our case b = x, then the area is

Assalamu `alaikum wr. wb.

Solutions to the Schrodinger equation atomic orbitals. Ψ 1 s Ψ 2 s Ψ 2 px Ψ 2 py Ψ 2 pz

ΠΡΟΣΕΓΓΙΣΗ ΚΑΙ ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ ΜΙΑΣ ΔΙΑΣΤΑΣΗΣ ΜΕ ΣΥΝΔΥΑΣΜΟ MLP ΚΑΙ RBF ΝΕΥΡΩΝΙΚΩΝ ΔΙΚΤΥΩΝ Η ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΕΞΕΙΔΙΚΕΥΣΗΣ.

Inverse trigonometric functions & General Solution of Trigonometric Equations

Transcript:

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή raniah@hua.gr 1

Εισαγωγή Προσομοιώνει βιολογικές διεργασίες (π.χ. λειτουργία του εγκεφάλου, διαδικασία εξέλιξης) Νευρωνικά δίκτυα (neural networks): Βασίζονται στο βιολογικό πρότυπο των νευρώνων (neurons) στον ανθρώπινο εγκέφαλο Δεν αναπαριστούν ρητά τη γνώση Δεν χρησιμοποιούν ρητά αλγόριθμους αναζήτησης 2

Βιολογικός Νευρώνας (1/2) Η δομική μονάδα του ανθρώπινου εγκεφάλου είναι ο νευρώνας Σώμα (πυρήνας) Δενδρίτες (είσοδοι) Άξονας (έξοδος) Συνάψεις (κενά στους δενδρίτες, επιβραδύνουν ή επιταχύνουν την ροή ηλεκτρικών φορτίων προς το σώμα του νευρώνα 3

Βιολογικός Νευρώνας (2/2) Η ικανότητα μνήμης και μάθησης του εγκεφάλου οφείλεται στην ικανότητα των συνάψεων να μεταβάλλουν την αγωγιμότητά τους. Τα ηλεκτρικά σήματα που εισέρχονται στον νευρώνα μέσω των δενδριτών συνδυάζονται Αν το αποτέλεσμα υπερβαίνει την τιμή κάποιου κατωφλίου, το σήμα διαδίδεται μέσω του άξονα 4

Φυσικά νευρωνικά δίκτυα Εγκέφαλος νεογέννητου 100 δισεκατομμύρια νευρώνες ο καθένας συνδέεται με περίπου 1000 άλλους περίπου 100 τρισεκατομμύρια συνάψεις Χρόνος απόκρισης της τάξεως των msec Ωστόσο, ο εγκέφαλος είναι σε θέση να λαμβάνει πολύπλοκες αποφάσεις πολύ γρήγορα Η υπολογιστική ικανότητα και η πληροφορία είναι διαμοιρασμένες σε όλο τον όγκο Παράλληλο και κατανεμημένο υπολογιστικό σύστημα Η αντιγραφή είναι δυνατή σε περιορισμένη κλίμακα 5

Μοντέλο Τεχνητού Νευρώνα 6

Τεχνητός νευρώνας Υπολογιστικό μοντέλο, τα μέρη του οποίου σχετίζονται άμεσα με έναν βιολογικό νευρώνα. Σήματα εισόδου x 0, x 1,, x n που αντιστοιχούν σε συνεχείς μεταβλητές Τιμές βάρους w i για το κάθε σήμα εισόδου (θετική ή αρνητική τιμή, ρόλος αντίστοιχος της σύναψης) Σώμα χωρισμένο σε δύο μέρη: Αθροιστης (sum): προσθέτει τα επηρρεασμένα από τα βάρη σήματα εισόδου και παράγει την ποσότητα S Συνάρτηση ενεργοποίησης ή κατωφλίου (activation / threshold function): μη γραμμικό φίλτρο που διαμορφώνει την τιμή εξόδου y σε συνάρτηση της ποσότητας S. 7

Νευρώνες και υπερεπίπεδα Ένας τεχνητός νευρώνας με n εισόδους ορίζει ένα υπερεπίπεδο στον Ν-διάστατο χώρο, το οποίο τον διαχωρίζει σε δύο περιοχές. Οι τιμές των βαρών στις εισόδους του νευρώνα καθορίζουν τη θέση του υπερεπιπέδου Χωρίς την πόλωση, το υπερεπίπεδο θα έπρεπε υποχρεωτικά να περνάει από την αρχή των αξόνων 8

Συνάρτηση ενεργοποίησης Βηματική (step) συνάρτηση: δίνει στην έξοδο αποτέλεσμα (συνήθως 1) μόνο αν η τιμή που υπολογίζει ο αθροιστής είναι μεγαλύτερη από την τιμή κατωφλίου Τ Συνάρτηση προσήμου (sign): δίνει στην έξοδο αρνητική ή θετική πληροφορία αν η τιμή που υπολογίζει ο αθροιστής είναι μικρότερη ή μεγαλύτερη από μία τιμή κατωφλίου Τ Σιγμοειδής (sigma) συνάρτηση: 9

Υλοποίηση λογικών συναρτήσεων Υλοποίηση των λογικών συναρτήσεων AND, OR και NOT με τεχνητό νευρώνα Παράδειγμα: υλοποίηση του ΝΟΤ με βηματική συνάρτηση και κατώφλι Τ=-0.5 10

Τεχνητά Νευρωνικά Δίκτυα Συστήματα επεξεργασίας δεδομένων που αποτελούνται από ένα πλήθος τεχνητών νευρώνων οργανωμένων σε δομές παρόμοιες με αυτές του ανθρώπινου εγκεφάλου Οργάνωση σε σειρά από επίπεδα ή στρώματα (layers) Επίπεδο εισόδου Ενδιάμεσα / κρυφά επίπεδα Επίπεδο εξόδου Σημειογραφία: 3-4-2 11

Συνδέσεις νευρώνων - Χαρακτηριστικά Οι νευρώνες των διαφόρων στρωμάτων μπορεί να είναι Πλήρως συνδεδεμένοι (fully connected): ο καθένας συνδέεται με όλους τους υπόλοιπους νευρώνες Μερικώς συνδεδεμένοι (partially connected) Κατηγορίες Τεχνητών Νευρωνικών Δικτύων: Με πρόσθια τροφοδότηση (feedforward) Με ανατροφοδότηση (feedback / recurrent) 12

Μάθηση και Ανάκληση Μάθηση (learning) ή εκπαίδευση (training) είναι η διαδικασία της τροποποίησης της τιμής των βαρών του δικτύου, ώστε δοθέντος ενός συγκεκριμένου διανύσματος εισόδου, να παράγεται ένα συγκεκριμένο διάνυσμα εξόδου Ανάκληση (recall) είναι η διαδικασία υπολογισμού ενός διανύσματος εξόδου για συγκεκριμένο διάνυσμα εισόδου και τιμές βαρών 13

Είδη μάθησης Μάθηση υπό επίβλεψη (supervised learning) Στο δίκτυο δίνονται ζευγάρια εισόδου επιθυμητής εξόδου Το δίκτυο αρχικά για κάθε είσοδο παράγει μια έξοδο που διαφέρει από την επιθυμητή (error) Αναπροσαρμογή των βαρών σύμφωνα με κάποιο αλγόριθμο Βαθμολογημένη μάθηση (graded learning) Η έξοδος χαρακτηρίζεται ως καλή ή κακή με βάση μια αριθμητική κλίματα Τα βάρη αναπροσαρμόζονται Μάθηση χωρίς επίβλεψη (unsupervised learning) Το δίκτυο αυτο-οργανώνεται με βάση τα διανύσματα εισόδου Η οργάνωση γίνεται έτσι ώστε σε συγκεκριμένο σύνολο εισόδων να αντιδρά ισχυρά ένας συγκεκριμένος νευρώνας (κατηγοριοποίηση) 14

Αλγόριθμοι μάθησης υπό επίβλεψη Κανόνας Δέλτα (Delta rule) Η διαφορά μεταξύ πραγματικής και επιθυμητής εξόδου ελαχιστοποιείται μέσω της διαδικασίας ελαχίστων τετραγώνων Ανάστροφη μετάδοση λάθους (back propagation) Η μεταβολή των βαρών βασιζεται στον υπολογισμό της συνεισφοράς κάθε βάρους στο συνολικό σφάλμα Ανταγωνιστική μάθηση (competitive learning) Οι τεχνητοί νευρώνες ανταγωνίζονται μεταξύ τους και αυτός με τη μεγαλύτερη απόκριση στην είσοδο τροποποιεί τα βάρη του Τυχαία μάθηση (random learning) Οι μεταβολές στα βάρη εισάγονται τυχαία και υιοθετούνται ή απορρίπτονται με βάση το αποτέλεσμα 15

Προσαρμογή (fitting) Ατελής μάθηση, το νευρωνικό δίκτυο δεν είναι αρκετά πολύπλοκο Το νευρωνικό δίκτυο είναι παραπάνω πολύπλοκο από όσο χρειάζεται, μοντελοποιείται και ο θόρυβος Τουλάχιστον 30πλάσια δεδομένα εκπαίδευσης από τον αριθμό των βαρών 16

Δεδομένα εκπαίδευσης Κύκλοι εκπαίδευσης: εποχές (epochs) Μάθηση δέσμης (batch learning): τα βάρη αναπροσαρμόζονται στο τέλος του κάθε κύκλου Επαυξητική μάθηση (incremental learning): τα βάρη αναπροσαρμόζονται μετά από κάθε διάνυσμα εκπαίδευσης Συνδυασμός των δύο Τερματισμός της εκπαίδευσης όταν το κριτήριο ελέγχου ποιότητας του δικτύου φτάσει σε κάποια επιθυμητή τιμή Μέσο σφάλμα συνόλου εκπαίδευσης Μεταβολή του μέσου σφάλματος του συνόλου εκπαίδευσης 17

Χαρακτηριστικά ΤΝΔ (1/2) Η ικανότητα των δικτύων να μαθαίνουν μέσω παραδειγμάτων (learn by example) Οργανώνουν την πληροφορία εισόδου Αποτελούν ένα μοντέλο που αναπαριστά τη σχέση των δεδομένων εισόδου και εξόδου Η δυνατότητα θεώρησής τους ως κατανεμημένη μνήμη (distributed memory) και ως μνήμη συσχέτισης (associative memory) Η πληροφορία κατανέμεται σε όλα τα βάρη της συνδεσμολογίας Η πληροφορία αποθηκεύεται συσχετίζοντας τα αποθηκευμένα δεδομένα μεταξύ τους Η ανάκληση γίνεται με βάση το περιεχόμενο και όχι τη διεύθυνση 18

Χαρακτηριστικά ΤΝΔ (2/2) Η μεγάλη ανοχή σε σφάλματα (fault tolerance) Ανεκτικά σε μικρές αλλαγές στην είσοδο Ανεκτικά σε δομικά σφάλματα (καταστροφή νευρώνων ή συνδέσεων) Το μέγεθος του σφάλματος είναι ανάλογο του ποσοστού των κατεστραμμένων συνδέσεων Η ικανότητα για αναγνώριση προτύπων (pattern recognition) Δεν επηρρεάζονται από ελλιπή δεδομένα Ανεκτικά στον θόρυβο 19

Νευρωνικά Δίκτυα Πρόσθιας Τροφοδότησης Επίπεδο εισόδου, επίπεδο εξόδου Προαιρετικά ένα ή περισσότερα κρυφά επίπεδα Μάθηση με επίβλεψη Τοπολογία Δεν υπάρχει κανόνας Έχουν προταθεί αλγόριθμοι που δημιουργούν τοπολογία βάσει των εισόδων και των επιθυμητών εξόδων 20

Κρυφά Επίπεδα Ο αριθμός των νευρώνων στα κρυφά επίπεδα σχετίζεται με πολύπλοκο τρόπο με τον αριθμό νευρώνων στα επίπεδα εισόδου / εξόδου τον αριθμό των διανυσμάτων εκπαίδευσης και τον θόρυβο σε αυτά την πολυπλοκότητα της συνάρτησης ή της κατηγοριοποίησης που πρέπει να μάθει το δίκτυο τις συναρτήσεις ενεργοποίησης τον αλγόριθμο εκπαίδευσης Για προβλήματα κατηγοριοποίησης, ο αριθμός των νευρώνων στα κρυφά επίπεδα δεν πρέπει να υπερβαίνει τον αριθμό των διανυσμάτων εκπαίδευσης (αποφυγή απομνημόνευσης) 21

Perceptron Η πιο απλή τοπολογία δικτύου με απλή τροφοδότηση Ένας νευρώνας Βηματική συνάρτηση Μάθηση με επίβλεψη Αλγόριθμος μεταβολής βαρών (d ρυθμός μάθησης): Μέχρι να ικανοποιηθεί η συνθήκη τερματισμού της εκπαίδευσης επανέλαβε: Για κάθε ζευγάρι εισόδου x και επιθυμητής εξόδου t από το σύνολο της εκπαίδευσης 1. Υπολόγισε την έξοδο y 2. Εάν y=t τότε δεν γίνεται καμία μεταβολή στα βάρη 3. Εάν y t τότε μετέβαλε τα βάρη των ενεργών γραμμών εισόδου (αυτών που έχουν σήμα 0) κατά την ποσότητα Δw=d(t-y)x, έτσι ώστε το y να πλησιάσει το t. 22

Γραμμική Διαχωρισιμότητα (1/2) Ένα perceptron με n γραμμές εισόδου μπορεί να θεωρηθεί ότι αναπαριστά ένα υπερεπίπεδο n-1 διαστάσεων που διαχωρίζει τα διανύσματα εισόδου σε δύο ομάδες, ανάλογα με την έξοδο. Γραμμικώς διαχωρίσιμα προβλήματα (linearly separable) Τα μη γραμμικώς διαχωρίσιμα προβλήματα απαιτούν την χρήση ΤΝΔ με ενδιάμεσα κρυφά επίπεδα 23

Γραμμική Διαχωρισιμότητα (2/2) Τα ΤΝΔ με κρυφά επίπεδα έχουν καλύτερη διαχωρισιμότητα επειδή ο χώρος τιμών εισόδου οριοθετείται με πιο πολύπλοκο τρόπο εξαιτίας της πολυπλοκότητας των συνδέσεων 24

Κανόνας Δέλτα (1/3) Γενίκευση του αλγορίθμου εκπαίδευσης του perceptron Ελαχιστοποίηση του μέσου τετραγωνικού σφάλματος των διανυσμάτων εκπαίδευσης Δεν εφαρμόζεται σε δίκτυα με κρυφά επίπεδα Μέσο τετραγωνικό σφάλμα Ε στο στοιχειώδες perceptron για p διανύσματα εκπαίδευσης t k : επιθυμητή έξοδος input k : σήμα εισόδου του νευρώνα (χωρίς συνάρτηση ενεργοποίησης) Συνολικό σήμα εισόδου για διάνυσμα εκπαίδευσης p: 25

Κανόνας Δέλτα (2/3) Ο κανόνας Δέλτα ακολουθεί την αρνητική κλίση της επιφάνειας σφάλματος, με κατεύθυνση προς το ελάχιστό της Η μεταβολή της τιμής του βάρους w i εξαιτίας της εκπαίδευσης με ένα μόνο από τα διανύσματα εκπαίδευσης δίνεται από τη σχέση: όπου input είναι το συνολικό σήμα εισόδου του νευρώνα, t είναι η επιθυμητή έξοδος, w i(old) και w i(new) η παλιά και η νέα τιμή του βάρους, x i η επιμέρους είσοδος i της οποίας το βάρος αναπροσαρμόζεται και d μια σταθερά που ρυθμίζει το ρυθμό μεταβολής των βαρών (ρυθμός μάθησης) 26

Γεωμετρική αναπαράσταση κανόνα Δέλτα για στοιχειώδες perceptron με 2 εισόδους Κανόνας της επικλινούς καθόδου (gradient descent rule) Δεν εφαρμόζεται σε δίκτυα με κρυφά επίπεδα Κανόνας Δέλτα (3/3) Αναπτύχθηκε η μέθοδος ανάστροφης μετάδοσης λάθους 27

Ανάστροφη μετάδοση λάθους (1/3) Η αναπροσαρμογή των βαρών γίνεται από το επίπεδο εξόδου προς το επίπεδο εισόδου Ανάστροφο πέρασμα (backward pass) ή ανάστροφη μετάδοση (back propagation) Διαδικασία βελτιστοποίησης επικλινούς καθόδου που ελαχιστοποιεί το μέσο τετραγωνικό σφάλμα Ε μεταξύ της εξόδου του δικτύου και της επιθυμητής εξόδου για p διανύσματα εκπαίδευσης 28

Ανάστροφη μετάδοση λάθους (2/3) Βασίζεται στον γενικευμένο κανόνα Δέλτα Καθορισμός του ποσοστού του συνολικού σφάλματος που αντιστοιχεί σε κάθε νευρώνα, ακόμη και αυτών που ανήκουν σε κρυφά επίπεδα 29

Ανάστροφη μετάδοση λάθους (3/3) Προβλήματα Τοπικά ελάχιστα Network paralysis: ένα ή περισσότερα βάρη έχουν σταθερές υψηλές απόλυτες τιμές και δεν τροποποιούνται σημαντικά σε κάθε διόρθωση Σχόλια Τα διανύσματα εκπαίδευσης δεν πρέπει να μεταβάλλονται γιατί δεν επέρχεται σύγκλιση Ο έλεγχος απόδοσης γίνεται με πρότυπα αξιολόγησης (validation data) 30

Perceptron Learning How does a perceptron acquire its knowledge? The question really is: How does a perceptron learn the appropriate weights?

Perceptron Learning Features: Taste Sweet = 1, Not_Sweet = 0 Seeds Edible = 1, Not_Edible = 0 Skin Edible = 1, Not_Edible = 0 For output: Good_Fruit = 1 Not_Good_Fruit = 0

Perceptron Learning Let s start with no knowledge: Input Tast e Seeds 0.0 0.0 Output Skin 0.0 If > 0.4 then fire

Perceptron Learning To train the perceptron, we will show it each example and have it categorize each one. Since it s starting with no knowledge, it is going to make mistakes. When it makes a mistake, we are going to adjust the weights to make that mistake less likely in the future.

Perceptron Learning When we adjust the weights, we re going to take relatively small steps to be sure we don t over-correct and create new problems.

Perceptron Learning I m going to learn the category good fruit defined as anything that is sweet. Good fruit = 1 Not good fruit = 0

Show it a banana: Perceptron Learning Input Tast e Seeds 1 1 1 1 0.0 0.0 0.0 Output 0 Skin 0 0 0.0 If > 0.4 then fire

Perceptron Learning In this case we have: (1 X 0) = 0 + (1 X 0) = 0 + (0 X 0) = 0 It adds up to 0.0. Since that is less than the threshold (0.40), we responded no. Is that correct? No.

Perceptron Learning Since we got it wrong, we know we need to change the weights. We ll do that using the delta rule (delta for change). w = learning rate X (overall teacher - overall output) X node output

Perceptron Learning The three parts of that are: Learning rate: We set that ourselves. I want it to be large enough that learning happens in a reasonable amount of time, but small enough that I don t go too fast. I m picking 0.25. (overall teacher - overall output): The teacher knows the correct answer (e.g., that a banana should be a good fruit). In this case, the teacher says 1, the output is 0, so (1-0) = 1. node output: That s what came out of the node whose weight we re adjusting. For the first node, 1.

Perceptron Learning To pull it together: Learning rate: 0.25. (overall teacher - overall output): 1. node output: 1. w = 0.25 X 1 X 1 = 0.25. Since it s a w, it s telling us how much to change the first weight. In this case, we re adding 0.25 to it.

Perceptron Learning Let s think about the delta rule: (overall teacher - overall output): If we get the categorization right, (overall teacher - overall output) will be zero (the right answer minus itself). In other words, if we get it right, we won t change any of the weights. As far as we know we have a good solution, why would we change it?

Perceptron Learning Let s think about the delta rule: (overall teacher - overall output): If we get the categorization wrong, (overall teacher - overall output) will either be -1 or +1. If we said yes when the answer was no, we re too high on the weights and we will get a (teacher - output) of -1 which will result in reducing the weights. If we said no when the answer was yes, we re too low on the weights and this will cause them to be increased.

Perceptron Learning Let s think about the delta rule: Node output: If the node whose weight we re adjusting sent in a 0, then it didn t participate in making the decision. In that case, it shouldn t be adjusted. Multiplying by zero will make that happen. If the node whose weight we re adjusting sent in a 1, then it did participate and we should change the weight (up or down as needed).

Perceptron Learning How do we change the weights for banana? Feature: Learning rate: (overall teacher - overall output): Node output: w taste 0.25 1 1 +0.25 seeds 0.25 1 1 +0.25 skin 0.25 1 0 0

Perceptron Learning Here it is with the adjusted weights: Input Tast e Seeds 0.25 0.25 Output Skin 0.0 If > 0.4 then fire

Perceptron Learning To continue training, we show it the next example, adjust the weights We will keep cycling through the examples until we go all the way through one time without making any changes to the weights. At that point, the concept is learned.

Perceptron Learning Show it a pear: Input Tast e Seeds 1 0 1 0 0.25 0.25 0.25 Output 0 Skin 1 1 0.0 If > 0.4 then fire

Perceptron Learning How do we change the weights for pear? Feature: Learning rate: (overall teacher - overall output): Node output: w taste 0.25 1 1 +0.25 seeds 0.25 1 0 0 skin 0.25 1 1 +0.25

Perceptron Learning Here it is with the adjusted weights: Input Tast e Seeds 0.25 0.50 Output Skin 0.25 If > 0.4 then fire

Show it a lemon: Perceptron Learning Input Tast e Seeds 0 0 0 0 0.25 0.50 0 Output 0 Skin 0 0 0.25 If > 0.4 then fire

Perceptron Learning How do we change the weights for lemon? Feature: Learning rate: (overall teacher - overall output): Node output: taste 0.25 0 0 0 seeds 0.25 0 0 0 skin 0.25 0 0 0 w

Perceptron Learning Here it is with the adjusted weights: Input Tast e Seeds 0.25 0.50 Output Skin 0.25 If > 0.4 then fire

Show it a strawberry: Perceptron Learning Input Tast e Seeds 1 1 1 1 0.25 0.50 1 Output 1 Skin 1 1 0.25 If > 0.4 then fire

Perceptron Learning How do we change the weights for strawberry? Feature: Learning rate: (overall teacher - overall output): Node output: taste 0.25 0 1 0 seeds 0.25 0 1 0 skin 0.25 0 1 0 w

Perceptron Learning Here it is with the adjusted weights: Input Tast e Seeds 0.25 0.50 Output Skin 0.25 If > 0.4 then fire

Show it a green apple: Perceptron Learning Input Tast e Seeds 0 0 0 0 0.25 0.50 0.25 Output 0 Skin 1 1 0.25 If > 0.4 then fire

Perceptron Learning If you keep going, you will see that this perceptron can correctly classify the examples that we have.

Ενδεικτική Βιβλιογραφία Ενότητες 19.1, 19.2, 19.3 και 19.4 του βιβλίου «Τεχνητή Νοημοσύνη», Ι. Βλαχάβας, Π. Κεφαλάς, Ν. Βασιλειάδης, Φ. Κόκκορας και Η. Σακελλαρίου. 60