Νευρωνικά Δίκτυα Εργαστήριο Εικόνας, Βίντεο και Πολυμέσων

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Αλγόριθμοι σχεδίασης βασικών 2D σχημάτων (ευθεία)
Advertisements

Γραφήματα & Επίπεδα Γραφήματα
Βασικές έννοιες αλγορίθμων
ΑΠΟΤΙΜΗΣΗ ΑΠΟΔΟΣΗΣ ΔΙΚΤΥΩΝ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΟΥΝ ΑΞΙΟΠΙΣΤΑ ΠΡΩΤΟΚΟΛΛΑ ΜΕΤΑΦΟΡΑΣ ΚΑΙ ΑΞΙΟΠΙΣΤΑ ΠΡΩΤΟΚΟΛΛΑ ΣΥΝΔΕΣΗΣ Ιωάννης Κόμνιος Μεταπτυχιακή Διατριβή Τμήμα.
Ερωτηματολόγιο Συλλογής Απαιτήσεων Εφαρμογών Υψηλών Επιδόσεων
Μεταπτυχιακή Διατριβή
Βασικές Συναρτήσεις Πινάκων
Τα στοιχειώδη περί γεωδαιτικών υπολογισμών
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Εισαγωγή στους Η/Υ Πίνακες.
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές
Προγραμματισμός Ι Πίνακες •Ο πίνακας είναι μία συλλογή μεταβλητών ίδιου τύπου, οι οποίες είναι αποθηκευμένες σε διαδοχικές θέσεις μνήμης. Χρησιμοποιείται.
Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού
Πρόγραμμα Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ. Ε
Μάθημα 2 Εισαγωγή στην Επιστήμη των Η/Υ ΙΙ
Εκτέλεση Αλγορίθμων σε ψευδογλώσσα
Εισαγωγή στον Προγραμματισμό, Αντώνιος Συμβώνης, ΣΕΜΦΕ, ΕΜΠ, Slide 1 Εβδομάδα 3: Υλοποίηση μεθόδων.
Εισαγωγή στο MATLAB.
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος γ
ΕΙΣΑΓΩΓΗ ΣΤΑ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος δ
Page  1 Ο.Παλιάτσου Γαλλική Επανάσταση 1 ο Γυμνάσιο Φιλιππιάδας.
ΝΕΟ ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ Α’, Β’, & Γ’ ΓΥΜΝΑΣΙΟΥ ΟΜΑΔΑ ΕΡΓΑΣΙΑΣ Ανδρέας Σ. Ανδρέου (Αναπλ. Καθηγητής ΤΕΠΑΚ - Συντονιστής) Μάριος Μιλτιάδου, Μιχάλης Τορτούρης.
Κώστας Διαμαντάρας Τμήμα Πληροφορικής ΤΕΙ Θεσσαλονίκης 2011 Συστολικοί επεξεργαστές.
© GfK 2012 | Title of presentation | DD. Month
-17 Προσδοκίες οικονομικής ανάπτυξης στην Ευρώπη Σεπτέμβριος 2013 Δείκτης > +20 Δείκτης 0 a +20 Δείκτης 0 a -20 Δείκτης < -20 Σύνολο στην Ευρωπαϊκή Ένωση:
ΠΠΜ 221: Στατική Ανάλυση των Κατασκευών ΙI
Προγραμματισμός στο ΜatLab
Αναγνώριση Προτύπων.
Αβιοτικό περιβάλλον οργανισμοί.
Προγραμματισμός ΙΙ Διάλεξη #7: Περισσότερες Δομές Ελέγχου Δρ. Νικ. Λιόλιος.
Κεφάλαιο 2ο Πεπερασμένα αυτόματα.
Γραφήματα & Επίπεδα Γραφήματα
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
1 Θεματική Ενότητα Γραφήματα & Επίπεδα Γραφήματα.
HY 120 ΨΗΦΙΑΚΗ ΣΧΕΔΙΑΣΗ Ασυγχρονα ακολουθιακα κυκλωματα.
Η ΓΛΩΣΣΑ C ΜΑΘΗΜΑ 2.
Προγραμματισμός ΙΙ Διάλεξη #6: Απλές Δομές Ελέγχου Δρ. Νικ. Λιόλιος.
Ανάλυση Πολλαπλής Παλινδρόμησης
Ηλεκτρονική Ενότητα 5: DC λειτουργία – Πόλωση του διπολικού τρανζίστορ
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τρίτο Συστήματα.
Δομές Δεδομένων 1 Στοίβα. Δομές Δεδομένων 2 Στοίβα (stack)  Δομή τύπου LIFO: Last In - First Out (τελευταία εισαγωγή – πρώτη εξαγωγή)  Περιορισμένος.
Τεχνολογία ΛογισμικούSlide 1 Αλγεβρική Εξειδίκευση u Καθορισμός τύπων αφαίρεσης σε όρους σχέσεων μεταξύ τύπων λειτουργιών.
ΗΥ120 ΨΗΦΙΑΚΗ ΣΧΕΔΙΑΣΗ Συναρτησεις Boole.
Συνδυαστικά Κυκλώματα
Προγραμματισμός ΙΙ Διάλεξη #5: Εντολές Ανάθεσης Εντολές Συνθήκης Δρ. Νικ. Λιόλιος.
Σέρρες,Ιούνιος 2009 Τίτλος: Αυτόματος έλεγχος στο Scilab: Ανάπτυξη πακέτου για εύρωστο έλεγχο. Ονοματεπώνυμο Σπουδάστριας: Ευαγγελία Δάπκα Επιβλέπων Καθηγητής.
Ανάπτυξη Πρωτοτύπου Λογισμικού
Ενότητα Α.4. Δομημένος Προγραμματισμός
Επικοινωνίες δεδομένων
Τα προϊόντα της EmGoldEx Τα προϊόντα της EmGoldEx Ράβδοι χρυσού 24k καθαρότητας 999,9 απο 1 έως 100 γραμμάρια Όλες οι ράβδοι χρυσού είναι πιστοποιημένες.
Το Εκτεταμένο Μοντέλο Οντοτήτων - Συσχετίσεων
Ομάδα Α. Ο υπολογιστής ως επιστημονικό εργαλείο. Λίστες - Πίνακες In[1]:=lista1={a1, 2.1, x, Sqrt[2], I, Sin[x]} Out[1]:={a1, 2.1, x, 2, I, Sin[x]} Η.
ΜΑΘΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗ ΜΕΤΑΓΓΙΣΗ ΑΙΜΑΤΟΣ - ΑΙΜΟΔΟΣΙΑ
Ερωτήσεις Σωστού - Λάθους
Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών – Τμήμα Πληροφορικής και Τηλεπικοινωνιών 1 Κεφάλαιο 3 Η Σημασιολογία των Γλωσσών Προγραμματισμού Προπτυχιακό.
Computers: Information Technology in Perspective By Long and Long Copyright 2002 Prentice Hall, Inc. Προγραμματισμός Η / Υ 6 η Διάλεξη.
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Τάξεις και Αφαίρεση Δεδομένων.
+19 Δεκέμβριος 2014 Δείκτης > +20 Δείκτης 0 έως +20 Δείκτης 0 έως -20 Δείκτης < -20 Συνολικά της ΕΕ: +5 Δείκτης > +20 Δείκτης 0 έως +20 Δείκτης 0 έως -20.
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Αγγελική Γεωργιάδου- Αναστασία Πεκτέσογλου Δράμα 2006
Επιστημονικός Υπολογισμός Ι Πρώτο Εργαστήριο Εισαγωγή στο matlab 15 Οκτωβρίου 2010 Γιώργος Δρακόπουλος ΤΜΗΥΠ.
Παρεμβολή συνάρτησης μιας μεταβλητής με την βοήθεια νευρωνικών δικτύων
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Παραδείγματα BP.
ΥΝ Ι: ΑΝΑΠΑΡΑΣΤΑΣΗ ΓΝΩΣΗΣ 1 ΥΠΟΛΟΓΙΣΤΙΚΗ ΝΟΗΜΟΣΥΝΗ (Τεχνητά Νευρωνικά Δίκτυα και Γενετικοί Αλγόριθμοι) ΣΠΥΡΟΣ ΛΥΚΟΘΑΝΑΣΗΣ, ΚΑΘΗΓΗΤΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ.
Ακαδημαϊκό Έτος  Ο σκοπός της οπτικής αναγνώρισης χαρακτήρων είναι να μετατρέψει σαρωμένες εικόνες γραπτού κειμένου σε κείμενο ASCII που είναι.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ
Τίτλος Πτυχιακής Εργασίας :
Μεταγράφημα παρουσίασης:

Νευρωνικά Δίκτυα 2007-08 Εργαστήριο Εικόνας, Βίντεο και Πολυμέσων Νίκος Σίμου – Βαγγέλης Σπύρου 03.12.2007

Μέρος 1ο Εισαγωγή στη MATLAB

Πίνακες και MATLAB MATLAB = MATrix LABoratory Αποτελεί ισχυρό υπολογιστικό περιβάλλον και ταυτόχρονα γλώσσα προγραμματισμού που χειρίζεται με ευκολία πίνακες και πολύπλοκες πράξεις Βασική Δομική Μονάδα: Πίνακες (1-Δ, 2-Δ, 3-Δ,...) Κάθε μεταβλητή στη MATLAB αποθηκεύεται σαν ένας πίνακας 1x1 Η MATLAB είναι case-sensitive, άρα a≠A Το στοιχείο στη γραμμή i και στη στήλη j του πίνακα Α συμβολίζεται με Α(i,j)

Πίνακες και MATLAB Δημιουργία Πινάκων: Ορισμός όλων των στοιχείων του πίνακα: Αναλυτικά: Α=[1 2 3 4] , Β=[1 2;3 4] Περιγραφικά: C=[1:10] , D = [1:5:100] Φόρτωμα πίνακα από αρχείο: load myMatrix.mat Δημιουργία πίνακα χρησιμοποιώντας μια από τις έτοιμες συναρτήσεις της MATLAB: E=zeros(3,4) , F=ones(5,6), G=eye(10) H=rand(5,2) Δημιουργία πίνακα με χρήση δικής μας συνάρτησης: I=myFunction(E,F)

Χρήσιμες πράξεις μεταξύ πινάκων έστω: τότε:

Χρήσιμες Πράξεις μεταξύ Πινάκων Πράξεις με συναρτήσεις: A=[1 2 3] Λογικές πράξεις: A = [1 2 1], B= [0 3 1] Πράξεις Μέγιστου/Ελάχιστου:

Αλληλουχία Πινάκων έστω: A = [1 2 3 4] τότε: B =[A A]

Έλεγχος Ροής if statement else statement end if statement elseif statement elseif … else statement end while statement end for statement end switch switch_expression case case_expression(s) statement(s) … otherwise end break Όχι σε άσκοπη χρήση for loops!!!

M-Files Δύο τρόποι για τη δημιουργία m-files: File→New→M-File edit file1.m [σε command line] Ένα M-File μπορεί να είναι: Μια συνάρτηση (function) function C = myFunction(A,B) C = A + 2*B; Μια ακολουθία εντολών (script) A, B C = A + 2*B

Σχεδίαση Γραφικής Παράστασης με τη χρήση της συνάρτησης plot H plot(x,y) δέχεται ως είσοδο δύο διανύσματα και εμφανίζει μια γραφική παράσταση του y σε συνάρτηση του x Παράδειγμα θέλουμε να σχεδιάσουμε το sin(x) για τιμές του x από 0 εώς 2π: t = 0:pi/100:2*pi; y = sin(t); plot(t,y)

Μέρος 2ο Multilayer Perceptrons

Πολυεπίπεδα Perceptrons (1) Γενικά: Ένα από τα πιο συνηθισμένα Νευρωνικά Δίκτυα Δίκτυο πρόσθιας τροφοδότησης (feed forward) Γενίκευση του μονοστρωματικού perceptron Eπιβλεπόμενη(supervised) μάθηση Αρχιτεκτονική: 1 επίπεδο εισόδου 1 ή περισσότερα κρυμμένα επίπεδα 1 επίπεδο εξόδου Εκπαίδευση με τον αλγόριθμο ανάστροφης διάδοσης σφάλματος (Back Propagation)

Πολυεπίπεδα Perceptrons (2) Κάθε κρυμμένος νευρώνας περιέχει μια ΜΗ-ΓΡΑΜΜΙΚΗ συνάρτηση ενεργοποίησης (activation function) Η συνάρτηση αυτή είναι ΔΙΑΦΟΡΙΣΙΜΗ Τα κρυμμένα επίπεδα προσδίδουν στο δίκτυο την δυνατότητα να «μάθει» πολύπλοκα πρότυπα Δεν έπιτρέπονται συνδέσεις μεταξύ επιπέδων που δεν ανήκουν σε διαδοχικά επίπεδα Δεν επιτρέπονται συνδέσεις μεταξύ νευρώνων του ίδιου επιπέδου

Παράδειγμα v10 w10 w11 v11 Y1 X1 v21 w21 v12 w12 Y2 X2 v22 w22 w20 v20

Παράδειγμα v10=1 w10=1 w11=1 v11=-1 v21=0 Y1 X1 w21=-1 v12=0 w12=0 Y2 15

Παράδειγμα Είσοδος: Επιθυμητή Έξοδος: w11=1 v11=-1 v21=0 Y1 X1=0 Είσοδος: Επιθυμητή Έξοδος: 16

Παράδειγμα u1 = 1 u2 = 2 Πέρασμα κατά την ΕΥΘΕΙΑ φορα Υπολογίζουμε τις ενεργοποιήσεις 1ου επιπέδου u1 = 1 w11=1 v11=-1 v21=0 Y1 X1=0 w21=-1 v12=0 w12=0 Y2 X2=1 v22=1 w22=1 u2 = 2 17

Παράδειγμα Υπολογίζουμε τις εξόδους του πρώτου επιπέδου, περνώντας τις ενεργοποιήσεις που υπολογίσαμε προηγουμένως στη συνάρτηση ενεργοποίησης: z1 = 1 w11=1 v11=-1 v21=0 Y1 X1=0 w21=-1 v12=0 w12=0 Y2 X2=1 v22=1 w22=1 z2 = 2 18

Παράδειγμα z1 = 1 z2 = 2 Υπολογίζουμε τις εξόδους του 2ου layer: w11=1 v11=-1 v21=0 Y1=2 X1=0 w21=-1 v12=0 w12=0 Y2=2 X2=1 v22=1 w22=1 z2 = 2 19

Παράδειγμα Πέρασμα κατά την ΑΝΤΙΘΕΤΗ ΦΟΡΑ w11=1 v11=-1 v21=0 D1= -1 X1=0 w21=-1 v12=0 w12=0 D2= -2 X2=1 v22=1 w22=1 20

Παράδειγμα D1 z1 =-1 D1 z2 =-2 D2 z1 =-2 D2 z2 =-4 w11=1 v11=-1 v21=0 Υπολογίζουμε τις αλλαγές στα βάρη για το 2ο επίπεδο, με βάση τον κανόνα: D1 z1 =-1 w11=1 v11=-1 v21=0 X1=0 w21=-1 D1 z2 =-2 D2 z1 =-2 v12=0 w12=0 X2=1 D2 z2 =-4 v22=1 w22=1 21

Παράδειγμα w11= 0.9 v11=-1 v21=0 X1=0 w21= -1.2 v12=0 w12= -0.2 X2=1 Οι αλλαγές στα βάρη είναι: π.χ.: 22

Παράδειγμα D1 w11= -1 v11=-1 v21=0 D1= -1 X1=0 D2 w21= 2 v12=0 Υπολογίζουμε τα : 23

Παράδειγμα d1= 1 v11=-1 v21=0 D1= -1 X1=0 v12=0 D2= -2 X2=1 v22=1 Τα διαδίδονται προς την αντίθετη κατεύθυνση: 24

Και πολλαπλασιάζοντας με τις εισόδους: Παράδειγμα d1 x1 = 0 v11=-1 d1 x2 = 1 v21=0 D1= -1 X1=0 v12=0 d2 x1 = 0 D2= -2 X2=1 v22=1 d2 x2 = -2 Και πολλαπλασιάζοντας με τις εισόδους: 25

Παράδειγμα v11= -1 w11= 0.9 X1=0 w21= -1.2 v21= 0 v12= 0.1 w12= -0.2 Τέλος, αλλάζουμε τα βάρη.Παρατηρήστε ότι βάρη που πολλαπλασιάστηκαν με το 0 ΔΕΝ ΑΛΛΑΞΑΝ γιατί δεν επηρεάζουν το σφάλμα. Τα biases ΑΛΛΑΞΑΝ (δεν φαίνονται) 26

Παράδειγμα z1 = 1.2 v11= -1 w11= 0.9 X1=0 w21= -1.2 v21= 0 v12= 0.1 Επαναλαμβάνουμε την διαδικασία χρησιμοποιώντας το ίδιο πρότυπο 27

Παράδειγμα z1 = 1.2 v11= -1 w11= 0.9 y1 = 1.66 X1=0 w21= -1.2 v21= 0 Τώρα, οι έξοδοι βρίσκονται πιο κοντά στις επιθυμητές: 28

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

Παράδειγμα MATLAB %φτιάχνω το νευρωνικό δίκτυο net=newff([0 1;0 1],[3 1],{'tansig‘ 'tansig‘}, 'trainlm’ ,’learngdm’,’mse’); %ορίζω τις παραμέτρους του net.trainParam.goal = 0; net.trainParam.epochs = 300; net.trainParam.lr = 0.01; %αρχικοποίηση του δικτύου net = init(net); %εκπαίδευση του δικτύου [net,tr]=train(net,traindata,traintargets); %έλεγχος του δικτύου test = sim (net,testdata);