Μη Συµβολικές Μέθοδοι! Η Συµβολική (symbolic AI): # Προσοµοιώνει τον τρόπο σκέψης του ανθρώπου, χρησιµοποιώντας ως δοµικές µονάδες τα σύµβολα. # Ένα σύµβολο µπορεί να αναπαριστά µία έννοια ή µία σχέση ανάµεσα σε έννοιες. # Παραδείγµατα αυτής της κατηγορίας είναι οι εφαρµογές της ΤΝ που χρησιµοποιούν αναπαράσταση γνώσης µε λογική, κανόνες, πλαίσια, κλπ.! Η Μη Συµβολική (non symbolic AI): # Προσοµοιώνει βιολογικές διεργασίες, όπως τη διαδικασία εξέλιξης των ειδών ή τη λειτουργία του εγκεφάλου. # Παραδείγµατα τέτοιων τεχνικών αποτελούν τα νευρωνικά δίκτυα και οι γενετικοί αλγόριθµοι.
Νευρωνικά ίκτυα Φυσικά νευρωνικά δίκτυα! Νευρώνας: Ηδοµική µονάδα του εγκεφάλου # Σώµα: ο πυρήνας του νευρώνα # ενδρίτες: λαµβάνει σήµατα από γειτονικούς νευρώνες (σηµεία εισόδου) # Άξονας: η έξοδος του νευρώνα και το µέσο σύνδεσης του µε άλλους νευρώνες.! Σε κάθε δενδρίτη υπάρχει ένα απειροελάχιστο κενό που ονοµάζονται σύναψη. # Η ικανότητα µάθησης και µνήµης που παρουσιάζει ο εγκέφαλος οφείλεται στην ικανότητα τωνσυνάψεωνναµεταβάλουν την αγωγιµότητά τους. Συνάψεις Σώµα ενδρίτες Άξονας
Μοντέλο Τεχνητού Νευρώνα! Σήµατα εισόδου x 0, x 1,..., x n : Συνεχείς µεταβλητές.! Τιµή βάρουςw i (weight): Αντίστοιχο των συνάψεων.! Σώµα του τεχνητού νευρώνα: # Αθροιστής (sum): προσθέτει τα επηρεασµένα από τα βάρη σήµατα εισόδου και παράγει την ποσότητα S. # Συνάρτηση ενεργοποίησης ή κατωφλίου (activation ή threshold function): µη γραµµικό φίλτρο που διαµορφώνει το σήµαεξόδουy, σε συνάρτηση µε την ποσότητα S. x 0 w 0 S=Σw i x i (i = 1..n) y=φ(s) x 1 w 1 w i Αθροιστής Συνάρτηση Ενεργοποίησης Έξοδος y x i w n x n Σώµα
Συναρτήσεις Ενεργοποίησης Φ(S) Φ(S) Φ(S) a 1 +1 +1 +1 S S a 2 S 0 Κατώφλι T -1 Κατώφλι T 0 a 1 >a 2 α) Βηµατική συνάρτηση β) Συνάρτηση προσήµου γ) Σιγµοειδής συνάρτηση x 1 x 2 w=1 w=1 Βηµατική Τ= 1.5 AND x 1 x 2 w=1 w=1 Βηµατική Τ= 0.5 OR w=-1 Βηµατική Τ= -0.5 NOT
Τεχνητά Νευρωνικά ίκτυα (ΤΝ ) (1/2)! Στρώµατα ή επίπεδα (layers) νευρώνων # επίπεδο εισόδου (input layer) # ενδιάµεσα ή κρυφά επίπεδα (hidden layers) # επίπεδο εξόδου (output layer) x 1 1 w 15 w 14 4 w 24 w 34 w 25 5 w 49 w 58 Κρυφό Επίπεδο w 48 8 y 8 w 59 x 2 2 w 35 w 68 w 16 w 26 6 w 69 w 36 9 y 9 x 3 3 w 27 w 17 w 78 w 79 w 37 Επίπεδο Εισόδου 7 Επίπεδο Εξόδου
Τεχνητά Νευρωνικά ίκτυα (ΤΝ ) (2/2)! Πλήρως συνδεδεµένοι (fully connected) νευρώνες # Συνδέονται µε όλους τους νευρώνες του επόµενου επιπέδου.! Μερικώς συνδεδεµένοι (partially connected) νευρώνες! ίκτυα µε απλή τροφοδότηση (feedforward) # εν υπάρχουν συνδέσεις µεταξύ νευρώνων ενός επιπέδου και νευρώνων προηγούµενου επιπέδου.! ίκτυα µε ανατροφοδότηση (feedback ή recurrent)
Μάθηση και Ανάκληση! Μάθηση (learning) είναι η διαδικασία της τροποποίησης της τιµής των βαρών του δικτύου, ώστε δοθέντος συγκεκριµένου διανύσµατος εισόδου να παραχθεί συγκεκρι- µένο διάνυσµα εξόδου.! Ανάκληση (recall) είναι η διαδικασία του υπολογισµού ενός διανύσµατος εξόδου για συγκεκριµένο διάνυσµα εισόδου και τιµές βαρών.! Μάθηση υπό επίβλεψη (supervised learning): Στο δίκτυο δίνονται ζευγάρια διανυσµάτων εισόδου - επιθυµητής εξόδου. # Κανόνας έλτα (Delta rule learning) # Αλγόριθµος ανάστροφης µετάδοσης λάθους (back propagation) # Ανταγωνιστική µάθηση (competitive learning) # Τυχαία µάθηση (random learning)! Μάθηση χωρίς επίβλεψη (unsupervised learning)
ίκτυα µεαπλήτροφοδότηση! Αποτελούνται από: # Ένα επίπεδο εισόδου # Ένα επίπεδο εξόδου # Κανένα, ένα ή περισσότερα ενδιάµεσα, κρυφά επίπεδα! Μάθηση µε επίβλεψη! Τοπολογία του δικτύου: Πόσα κρυφά επίπεδα θα έχει το δίκτυο και από πόσους νευρώνες θα αποτελείται το κάθε επίπεδο.! Perceptron: Η πιο απλή τοπολογία δικτύου µε απλήτροφοδότηση. # Πρόκειται για ένα µοναδικό τεχνητό νευρώνα, ο οποίος χρησιµοποιεί ως συνάρτηση κατωφλίου τη βηµατική συνάρτηση.
Perceptron (1/2)! Αλγόριθµος µεταβολής των βαρών 1.Εάν για τη συγκεκριµένη είσοδο παράγεται το επιθυµητό αποτέλεσµα τότεδε γίνεται καµία µεταβολή. 2.Εάν το αποτέλεσµα είναι1, ενώ θα έπρεπε να είναι 0, τότε µειώνονται τα βάρη των ενεργών γραµµών (εκείνες που στο συγκεκριµένο πρότυπο έχουν είσοδο 1) κατά µια τιµή d, η οποία ονοµάζεται ρυθµός µάθησης (learning rate). 3.Εάν το αποτέλεσµα είναι0 ενώ θα έπρεπε να είναι 1 τότε αυξάνονται τα βάρη των ενεργών γραµµών κατά d.! Ένα perceptron µε n γραµµές εισόδου µπορεί να θεωρηθεί ότι αναπαριστά ένα υπερεπίπεδο n-1 διαστάσεων που διαχωρίζει τα διανύσµατα εισόδου σε δύο οµάδες, τοποθετώντας από τη µία µεριά όσα παράγουν έξοδο 1 και από την άλλη όσα παράγουν έξοδο 0.! Γραµµικώς διαχωρίσιµα προβλήµατα (linearly separable)
Perceptron (2/2) x 2 1 0 1 x 2 1 1 0 ε 0 0 0 1 x 1 0 0 1 1 x 1 Συνάρτηση AND (γραµµικώς διαχωρίσιµη) Συνάρτηση XOR (µη γραµµικώς διαχωρίσιµη)
Κανόνας έλτα! Συνάρτηση ενεργοποίησης, π.χ.! Έξοδος ενός νευρώνα i a g( z) i = g 1 = 1 + e n ( j = 0 w j z a j )! Μεταβολή του βάρους w j! Συνολικό σφάλµα w ( a a) a j = wj _ old d Err = 1 2 i a i ( a ) 2 j
Ανάστροφη Μετάδοση Λάθους! Βασική ιδέα: Να καθοριστεί το "ποσοστό" του συνολικού σφάλµατος που αντιστοιχεί στα βάρη του κάθε νευρώνα. # Υπολογίζεται αρχικά το σφάλµα για τους νευρώνες του επιπέδου εξόδου. # Υπολογίζονται τα σφάλµατα στο τελευταίο κρυµµένο επίπεδο. # Η διαδικασία συνεχίζεται αναδροµικά µέχρι το πρώτο επίπεδο. # Υπολογισµός της συνεισφοράς κάθε βάρους των νευρώνων στο ολικό σφάλµα. # Τα σφάλµατα κάθε επιπέδου χρησιµοποιούνται για να µεταβάλλουν τα βάρη του κάθε νευρώνα. # Ηδιαδικασίαεπαναλαµβάνεται µέχρι το σφάλµα ναπάρειτιµή στα όρια ανοχής που έχει θέσει ο χρήστης.! Αναζήτηση τύπου αναρρίχησης λόφου. # Τοπικά ελάχιστα
Νευρωνικά ίκτυα µε Ανατροφοδότηση! Βρόχοι στην συνδεσµολογία των νευρώνων. R w q! Αυξηµένη πολυπλοκότητα # ίκτυα Hopfield # ίκτυα Kohonen
ίκτυα Hopfield! Κάθε νευρώνας συνδέεται µε όλους τους υπόλοιπους! Οι συνδέσεις µεταξύ των νευρώνων είναι αµφίδροµες και έχουν συµµετρικά βάρη (w ij =w ji ).! Όλοι οι νευρώνες λειτουργούν ταυτόχρονα σαν είσοδοι και έξοδοι του δικτύου.! Απλά perceptrons µε συνάρτηση ενεργοποίησης τη συνάρτηση προσήµου και έξοδο -1 ή 1.! Η εκπαίδευση βασίζεται στη µεταβολή της τιµής των βαρών σύµφωνα µε τησχέση: w ij =(2 x i -1) (2 x j -1) όπου τα x i και x j έχουν τιµές 0 ή 1.
ίκτυα Hopfield Τοπολογία δικτύου Hopfield Επίπεδο Εξόδου x 1 x 2 x 3 x n Επίπεδο Hopfield w 12 w 13 w 1n w 21 w 23 w 2n w 31 w 32 w 3n w n1 w n2 w n3 Επίπεδο Εισόδου
ίκτυο Kohonen! Μάθηση χωρίς επίβλεψη.! Νευρώνες τοποθετηµένοι σε γεωµετρική τοπολογία (π.χ. επίπεδο, σφαίρα, torus).! Κάθε νευρώνας είναι συνδεδεµένος µέσω βαρών µε τηνείσοδο(που αποτελείται από Μ στοιχεία) και λαµβάνει ένα πλήρες αντίγραφο του διανύσµατος εισόδου τροποποιηµένου από τα βάρη.! Για µια δεδοµένη είσοδο, ο νευρώνας του οποίου τα συνδετικά βάρη είναι πιο "κοντά" σε αυτήν, επιλέγεται και µεταβάλλει τα βάρη του έτσι ώστε να την πλησιάζει ακόµη περισσότερο.! Λόγω της συνδεσµολογίας, µεταβάλλονται και τα βάρη στους νευρώνες που βρίσκονται στην άµεση γειτονιά του επιλεγµένου νευρώνα.! Ένα εκπαιδευµένο δίκτυο Kohonen µπορεί να χρησιµοποιηθεί για να κατατάξει στοιχεία σε µια από τις κατηγορίες που ήδη έχουν σχηµατιστεί.
Εφαρµογές ΤΝ! Σχεδιασµός ενεργειών (planning)! Χρονοπρογραµµατισµός (scheduling)! Αναγνώριση προτύπων (π.χ. υπογραφών, οµιλίας, γραφής, εικόνων κλπ)! Πρόβλεψη (π.χ. καιρού, τιµών µετοχών)! Συστήµατα ελέγχου που βασίζονται στην ασαφή λογική
Γενετικοί Αλγόριθµοι Θεωρία της εξέλιξης (evolution)! Κανόνας της φυσικής επιλογής # Οι οργανισµοί που δε µπορούν να επιβιώσουν στο περιβάλλον τους πεθαίνουν, ενώ οι υπόλοιποι πολλαπλασιάζονται µέσω της αναπαραγωγής.! Οι απόγονοι παρουσιάζουν µικρές διαφοροποιήσεις από τους προγόνους τους, ενώ συνήθως υπερισχύουν αυτοί που συγκεντρώνουν τα καλύτερα χαρακτηριστικά.! Σποραδικά συµβαίνουν τυχαίες µεταλλάξεις, από τις οποίες οι περισσότερες οδηγούν τα µεταλλαγµένα άτοµα στο θάνατο, αν και είναι πιθανό, πολύ σπάνια όµως, να οδηγήσουν στη δηµιουργία νέων "καλύτερων" οργανισµών.
Γενική Μορφή Γενετικού Αλγόριθµου! Βήµατα 1. ηµιούργησε έναν αρχικό πληθυσµό P, µε Ν υποψήφιες λύσεις. 2. Υπολόγισε την καταλληλότητα κάθε λύσης. 3. Όσοοπληθυσµός P δε συγκλίνει σε µια λύση: Επανέλαβε Ν/2 φορέςταακόλουθαβήµατα: α. Επέλεξε δύο λύσεις από τον πληθυσµό P. β. Συνδύασε τις δύο λύσεις για να βγάλεις δύο απογόνους. γ. Υπολόγισε την καταλληλότητα των δύο απογόνων. δ. Εισήγαγε τους δύο απογόνους στο νέο πληθυσµό.! Αναρρίχηση λόφου (hill climbing)! Τέσσερα βασικά θέµατα: # Αναπαράσταση λύσεων # Συνάρτηση καταλληλότητας # Επιλογή ζευγαριών # ιαδικασία αναπαραγωγής
Αναπαράσταση Υποψήφιων Λύσεων! Κάθε υποψήφια λύση αναπαρίσταται µε µία συµβολοσειρά (string) ενός πεπερασµένου αλφάβητου. Συµβολοσειρά = χρωµόσωµα (chromosome)! Κάθε στοιχείο της συµβολοσειράς ονοµάζεται γονίδιο (gene). # Συνήθως χρησιµοποιείται το δυαδικό αλφάβητο, οπότε οι συµβολοσειρές ονοµάζονται και bit-strings.! Γονότυπος (genotype): Το σύνολο των παραµέτρων που αναπαρίστανται από ένα συγκεκριµένο χρωµόσωµα.! Φαινότυπος (phenotype): Οπραγµατικός οργανισµός που αναπαρίσταται από τον γονότυπο.
Συνάρτηση Καταλληλότητας! έχεται ως είσοδο ένα χρωµόσωµα και επιστρέφει έναν αριθµό (συνήθως στο διάστηµα [0,1]), που υποδηλώνει το πόσο κατάλληλο είναι.! Η κατασκευή της µπορεί να είναι από απλή, έως εξαιρετικά πολύπλοκη. # Η ιδανική συνάρτηση καταλληλότητας θα έπρεπε να είναι συνεχής και µονότονη.! Προσεγγιστική συνάρτηση καταλληλότητας (approximate fitness function) # Συµβιβασµός µεταξύ επιθυµητής ακρίβειας και υπολογιστικού κόστους.
ιαδικασία Επιλογής Γονέων (1/2)! Απόδοση πιθανοτήτων επιλογής προς αναπαραγωγή στα µέλη ενός πληθυσµού υποψηφίων λύσεων.! Τεχνική της ρουλέτας 1. Παράγεται το άθροισµα S όλων των τιµών αξιολόγησης των υποψηφίων λύσεων. 2. Επιλέγεται ένας τυχαίος αριθµός n, από το 0 µέχρι το S, χρησιµοποιώντας συνάρτηση οµοιόµορφης κατανοµής για τη δηµιουργία των τυχαίων αριθµών. 3. Επαναληπτικά εξετάζεται κάθε υποψήφια λύση και η τιµή του προστίθεται σε έναν καταχωρητή Κ. 4. Αν η τιµή τουκγίνειµεγαλύτερηήίσητουn, η λύση επιλέγεται και ο Κ µηδενίζεται. Στην αντίθετη περίπτωση εκτελείται πάλι το 4. 5. Αν δεν έχει επιλεγεί ικανοποιητικός αριθµός υποψηφίων λύσεων εκτελείται το 3, αλλιώς ο αλγόριθµος τερµατίζει.
ιαδικασία Επιλογής Γονέων (2/2)! Σύγκλιση: Η επικράτηση ενός χρωµοσώµατος ή µικρών παραλλαγών του, σε µεγάλο ποσοστό στον πληθυσµό.! Ένα γονίδιο συγκλίνει, όταν έχει την ίδια τιµή στο95% των χρωµοσωµάτων.! Ένας πληθυσµός συγκλίνει, όταν όλα τα γονίδιά του έχουν συγκλίνει. # Πρόωρη σύγκλιση (premature convergence). # Αργή σύγκλιση (slow convergence).! Χάσµα γενεών (generation gap): Το ποσοστό των χρωµοσωµάτων κάθε γενιάς που ανανεώθηκε, προς το σύνολο των χρωµοσωµάτων. # Μέθοδος µερικής ανανέωσης (steady-state replacement). Επιλογή των γονέων προς αναπαραγωγή µε πιθανότητα ανάλογη προς την καταλληλότητά τους και τυχαία επιλογή των γονέων που θα αποχωρήσουν. Επιλογή των γονέων προς αναπαραγωγή τυχαία και επιλογή των γονέων που θα αποχωρήσουν µε πιθανότητα αντιστρόφως ανάλογη προς την καταλληλότητά τους. Επιλογή των γονέων προς αναπαραγωγή µε πιθανότητα ανάλογη προς την καταλληλότητά τους και επιλογή των γονέων που θα αποχωρήσουν µε πιθανότητα αντιστρόφως ανάλογη προς την καταλληλότητά τους.
Αναπαραγωγή! ιασταύρωση (cross-over) # Σηµείο διασταύρωσης (cross-point) # Παράδειγµα: Έστω οι γονείς Α=011001 και Β=110010 και σηµείο διασταύρωσης το 4. Οι δύο απόγονοι θα είναι οι : 011010 και 110001.! Μετάλλαξη (mutation): Με βάση µία πολύ µικρή πιθανότητα, κάθε σύµβολο των bitstrings των απογόνων αλλάζει τιµή. Υποψήφιες λύσεις bit-string Καταλληλότητα Πιθανότητα επιλογής Α 000110010111 8 0.32 Β 111010101100 6 0.24 Γ 001110101001 6 0.24 111011011100 5 0.20 Γονέας 1 (Β) 1110-10101100 (Β) 1110-10101100 (Β) 111010101-100 (Β) 111010101-100 Γονέας 2 (Α) 0001-10010111 (Α) 0001-10010111 (Γ) 001110101-001 (Γ) 001110101-001 Απόγονος 1 ος 2 ος 3 ος 4 ος ιασταύρωση 1110-10010111 0001-10101100 111010101-001 001110101-100 Μετάλλαξη 1110-10010111 0001-10101100 111110101-001 001110101-101
Παραδείγµατα Εύρεση µεγίστου συνάρτησης µιας µεταβλητής! f(x)=x sin(10π x)+1.0, στο διάστηµα [-1, 2] 3 2.5 2 1.5 1 0.5 0-1 -0.5 0 0.5 1 1.5 2-0.5-1! Χρήση δυαδικής αναπαράστασης
Το πρόβληµα του πλανόδιου πωλητή! Αναπαράσταση µε διανύσµατα ακεραίων αριθµών µήκους ίσου µε το πλήθος των πόλεων. Έτσι, για παράδειγµα, ένα χρωµόσωµα θαέχειτηµορφή v= i 1 i 2 i n, όπου i 1,i 2,..., i n 1..n και i j i k για j k.! ηµιουργία αρχικού πληθυσµού µε τυχαίοτρόπο.! Απλή συνάρτηση καταλληλότητας.! Αναπαραγωγή: Μπορεί να προκύψουν µη-έγκυρα χρωµοσώµατα! # Έλεγχος των απογόνων και επιδιόρθωση των µη-έγκυρων χρωµοσωµάτων. # Τροποποιηµένες τεχνικές διασταύρωσης και µετάλλαξης, οι οποίες δίνουν πάντα έγκυρα χρωµοσώµατα.
Αποτελεσµατικότητα και Αποδοτικότητα! Θεώρηµα τωνσχηµάτων # Ένα σχήµα (scheme) είναι ένα χρωµόσωµα πουδηµιουργείται από το αλφάβητο {0, 1, #}, όπου το σύµβολο # υποδηλώνει οποιαδήποτε τιµή. # Ένα χρωµόσωµα λέγεται ότι περιέχει ένα σχήµα, εάν οι δύο συµβολοσειρές ταυτίζονται γιαόλαταδιάφορααπότο# στοιχεία του σχήµατος. # Τάξη (order) ενός σχήµατος το πλήθος των συµβόλων που είναι διάφορα από το #. # Μήκος (length) ενός σχήµατος η απόσταση των δύο πιο εξωτερικών µη-# συµβόλων.! Η υψηλήτιµή καταλληλότητας ενός χρωµοσώµατος οφείλεται στο γεγονός ότι αυτό περιέχει "καλά" σχήµατα.! Αποδίδοντας πιθανότητα αναπαραγωγής στα χρωµοσώµατα ανάλογη προς την καταλληλότητά τους, τα "καλά" σχήµατα τυγχάνουν εκθετικά αυξανόµενου αριθµού αναπαραγωγών στις επόµενες γενεές. Ο αριθµός των σχηµάτων τα οποία µεταφέρονται από γενεά σε γενεά είναι της τάξης του Ν 3, όπου Ν το µέγεθος του πληθυσµού (έµµεσος παραλληλισµός, implicit parallelism).! Σχετικά γονίδια είναι αυτά τα οποία συνδυασµένα επηρεάζουν τη συνάρτηση καταλληλότητας.
Εφαρµογές! Εύρεση µέγιστης τιµής αριθµητικών συναρτήσεων! Επεξεργασία εικόνων! Συνδυαστική βελτιστοποίηση! Σχεδίαση! Μηχανική µάθηση
Γενετικός Προγραµµατισµός Αναπαράσταση! Αυτόµατη κατασκευή προγραµµάτων υπολογιστών.! Οι υποψήφιες λύσεις είναι προγράµµατα υπολογιστών. 2 sin( x ) + x + y
Γενετικός Προγραµµατισµός ιασταύρωση