Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Προσομοίωση Απλού Μοντέλου Markov σε Επιμέλεια: Γιώργος Πληγορόπουλος Σπύρος Δημόπουλος Μανώλης Βαρδάκης.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Προσομοίωση Απλού Μοντέλου Markov σε Επιμέλεια: Γιώργος Πληγορόπουλος Σπύρος Δημόπουλος Μανώλης Βαρδάκης."— Μεταγράφημα παρουσίασης:

1 Προσομοίωση Απλού Μοντέλου Markov σε Επιμέλεια: Γιώργος Πληγορόπουλος Σπύρος Δημόπουλος Μανώλης Βαρδάκης

2 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Markov Models •Μοντελοποίηση πιθανοτήτων στο χρόνο •Φανερά και κρυφά •Διακριτά και συνεχή •Χαρακτηριστικά: –Καταστάσεις –Παρατηρήσεις –Πίνακας Μεταβάσεων –Πιθανότητες παρατηρήσεων σε κάθε κατάσταση –Order μοντέλου

3 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Περιγραφή Μοντέλου •Κρυφό και διακριτό μοντέλο •11 καταστάσεις •4 παρατηρήσεις •Πίνακας μεταβάσεων (11x11) a (i,j) •Πίνακας παρατηρήσεων (11x4) b(j,k) •Αρχικές πιθανότητες πi •First order

4 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Διάγραμμα Μεταβάσεων

5 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Πίνακας Μεταβάσεων μεταξύ καταστάσεων Στην πρώτη γραμμή εμφανίζονται οι αρχικές πιθανότητες. Όπου δεν υπάρχει τιμή εννοείται η μηδενική πιθανότητα μετάβασης

6 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Πίνακας πιθανοτήτων παρατηρήσεων

7 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Αλγόριθμοι για HMM 1.Training(Learning): ρυθμίζονται οι παράμετροι σύμφωνα με κάποια δεδομένα εκμάθησης 2.Evaluation: υπολογίζεται η πιθανότητα χρονικών ακολουθιών παρατηρήσεων να έχουν προέλθει από την διεργασία που μοντελοποιεί το HMM 3.Decoding: βρίσκεται η πιο πιθανή ακολουθία κρυφών καταστάσεων του μοντέλου που αντιστοιχεί με κάποια χρονοσειρά παρατηρήσεων.

8 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης •Θεωρούμε το μοντέλου αυτού του project ήδη εκπαιδευμένο με πίνακες αυτούς που παρουσιάστηκαν παραπάνω •Για το evaluation υπάρχουν δύο αλγόριθμοι –Ο straightforward που υλοποιείται σύμφωνα με τον τύπο. O(c T T)

9 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης –O forward αλγόριθμός τον οποίο χρησιμοποιούμε στη δική μας υλοποίηση έχει πολύ μικρότερη πολυπλοκότητα Ο(c 2 T) και φαίνεται παρακάτω.

10 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Υλοποίηση Μοντέλου σε C •Δομή κώδικα –Συνάρτηση CreateInput( ) δημιουργεί τα vectors παρατηρήσεων εισόδου με τυχαίο τρόπο 20 στοιχείων –Συνάρτηση LoopFunction( ) υλοποιεί το forward αλγόριθμό του μοντέλου Markov και επιστρέφει την πιθανότητα

11 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Θέματα εισόδου/εξόδου •Προκύπτουν από τους υπολογισμούς πιθανότητες της τάξεως του •Πρόβλημα: Μικρές τιμές πιθανοτήτων •Αναγκαία χρήση τύπου long long •Long long αναπαράσταση 64bit => •Ικανοποιεί τις απαιτήσεις

12 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Αναπαράσταση πιθανοτήτων •Χρειαζόμαστε αντιστοίχηση του [0,1] σε [0, ] •Ισχύει ο τύπος μετατροπής f(P(x))=P(x)*( ) •Πράξεις –Πρόσθεση, δεν χρειάζεται τροποποίηση –Πολλαπλασιασμός 64bit x 64bit = 128bit. Κρατάμε τα 64 Most Significant bits

13 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Testbench •300 διανύσματα εισόδου •Κάθε διάνυσμα αποτελείται από 20 παρατηρήσεις •Δημιουργούνται μέσω της rand με τυχαίο τρόπο

14 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Υπολογιστικά ακριβά κομμάτια •Bρόγχος επανάληψης που εκτελείται n*c 2 *T •Όπου n=300 Vectors εισόδου c=11 αριθμός καταστάσεων και Τ=20 μέγεθος Vector. •Ο βρόγχος εκτελεί πολλαπλασιασμούς και προσθέσεις που συμφωνά με τα αποτελέσματα του profiling μονοπωλούν τους κύκλους εκτέλεσης του μοντέλου μας. •70% του χρόνου

15 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Βελτιστοποίηση Κώδικα •Xρήση αναδιατασσομένης λογικής και loop unrolling •Παράλληλη επεξεργασία προσθέσεων και πολλαπλασιασμών •Εκμετάλλευση των 128bit των Wide Registers για εκτέλεση στο αναδιατασσόμενο •Χρήση της Cache μνήμης του επεξεργαστή

16 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Υλοποίηση Σε Stretch C •Σε κάθε επανάληψη του βρόχου, επεξεργασία δεδομένων ανά128 bit •Χρήση δυο συναρτήσεων για το αναδιατασσόμενο: –Mult64(wra IN1,wra IN2, wra *OUT) –Multsum(wra IN1,wra IN2, wra IN3, wra *OUT )

17 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Αποτελέσματα •Χρόνος / Κύκλοι εκτέλεσης –Χωρίς αναδιατασσομένη λογική κύκλους=> 340ms με 300MHz clock Χρόνος προσομοίωσης 5minute Σε επεξεργαστή AMD Athlon 2.6MHz –Με αναδιατασσομένη λογική κύκλους=> 90ms με 300MHz clock Χρόνος προσομοίωσης 3minute Σε επεξεργαστή AMD Athlon 2.6MHz

18 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Επιπλέον Βελτιστοποίηση •Ανάθεση στο αναδιατασσόμενο δύο επιπλέων βρόχων

19 HMM - Stretch Implementation Πληγορόπουλος - Δημόπουλος - Βαρδάκης Ευχαριστούμε!!!


Κατέβασμα ppt "Προσομοίωση Απλού Μοντέλου Markov σε Επιμέλεια: Γιώργος Πληγορόπουλος Σπύρος Δημόπουλος Μανώλης Βαρδάκης."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google