Markov
This presentation is the property of its rightful owner.
Sponsored Links
1 / 19

Προσομοίωση Απλού Μοντέλου Markov σε PowerPoint PPT Presentation


  • 103 Views
  • Uploaded on
  • Presentation posted in: General

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

Download Presentation

Προσομοίωση Απλού Μοντέλου Markov σε

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Markov

Προσομοίωση Απλού Μοντέλου Markov σε

Επιμέλεια:

Γιώργος ΠληγορόπουλοςΣπύρος ΔημόπουλοςΜανώλης Βαρδάκης


Markov models

Markov Models

  • Μοντελοποίηση πιθανοτήτων στο χρόνο

  • Φανερά και κρυφά

  • Διακριτά και συνεχή

  • Χαρακτηριστικά:

    • Καταστάσεις

    • Παρατηρήσεις

    • Πίνακας Μεταβάσεων

    • Πιθανότητες παρατηρήσεων σε κάθε κατάσταση

    • Order μοντέλου

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Περιγραφή Μοντέλου

  • Κρυφό και διακριτό μοντέλο

  • 11 καταστάσεις

  • 4 παρατηρήσεις

  • Πίνακας μεταβάσεων (11x11) a(i,j)

  • Πίνακας παρατηρήσεων (11x4) b(j,k)

  • Αρχικές πιθανότητες πi

  • First order

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Διάγραμμα Μεταβάσεων

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Πίνακας Μεταβάσεων μεταξύ καταστάσεων

Στην πρώτη γραμμή εμφανίζονται οι αρχικές πιθανότητες. Όπου δεν υπάρχει τιμή εννοείται η μηδενική πιθανότητα μετάβασης

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Πίνακας πιθανοτήτων παρατηρήσεων

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Αλγόριθμοι για HMM

  • Training(Learning): ρυθμίζονται οι παράμετροι σύμφωνα με κάποια δεδομένα εκμάθησης

  • Evaluation: υπολογίζεται η πιθανότητα χρονικών ακολουθιών παρατηρήσεων να έχουν προέλθει από την διεργασία που μοντελοποιεί το HMM

  • Decoding: βρίσκεται η πιο πιθανή ακολουθία κρυφών καταστάσεων του μοντέλου που αντιστοιχεί με κάποια χρονοσειρά παρατηρήσεων.

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

  • Θεωρούμε το μοντέλου αυτού του project ήδη εκπαιδευμένο με πίνακες αυτούς που παρουσιάστηκαν παραπάνω

  • Για το evaluation υπάρχουν δύο αλγόριθμοι

    • Ο straightforward που υλοποιείται σύμφωνα με τον τύπο. O(cT T)

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

  • O forward αλγόριθμός τον οποίο χρησιμοποιούμε στη δική μας υλοποίηση έχει πολύ μικρότερη πολυπλοκότηταΟ(c2T) και φαίνεται παρακάτω.

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Υλοποίηση Μοντέλου σε C

  • Δομή κώδικα

    • Συνάρτηση CreateInput()δημιουργεί τα vectors παρατηρήσεων εισόδου με τυχαίο τρόπο 20 στοιχείων

    • Συνάρτηση LoopFunction( )υλοποιεί το forward αλγόριθμό του μοντέλου Markov και επιστρέφει την πιθανότητα

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Θέματα εισόδου/εξόδου

  • Προκύπτουν από τους υπολογισμούς πιθανότητες της τάξεως του 10-12

  • Πρόβλημα: Μικρές τιμές πιθανοτήτων

  • Αναγκαία χρήση τύπου long long

  • Long long αναπαράσταση 64bit =>

  • Ικανοποιεί τις απαιτήσεις

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Αναπαράσταση πιθανοτήτων

  • Χρειαζόμαστε αντιστοίχηση του [0,1] σε [0,264-1]

  • Ισχύει ο τύπος μετατροπής f(P(x))=P(x)*(264-1)

  • Πράξεις

    • Πρόσθεση, δεν χρειάζεται τροποποίηση

    • Πολλαπλασιασμός 64bit x 64bit =128bit. Κρατάμε τα 64 Most Significant bits

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Testbench

Testbench

  • 300 διανύσματα εισόδου

  • Κάθε διάνυσμα αποτελείται από 20 παρατηρήσεις

  • Δημιουργούνται μέσω της rand με τυχαίο τρόπο

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Υπολογιστικά ακριβά κομμάτια

  • Bρόγχος επανάληψης που εκτελείται n*c2*T

  • Όπου n=300 Vectors εισόδου c=11 αριθμός καταστάσεων και Τ=20 μέγεθος Vector.

  • Ο βρόγχος εκτελεί πολλαπλασιασμούς και προσθέσεις που συμφωνά με τα αποτελέσματα του profiling μονοπωλούν τους κύκλους εκτέλεσης του μοντέλου μας .

  • 70% του χρόνου

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Βελτιστοποίηση Κώδικα

  • Xρήση αναδιατασσομένης λογικής και loop unrolling

  • Παράλληλη επεξεργασία προσθέσεων και πολλαπλασιασμών

  • Εκμετάλλευση των 128bit των Wide Registers για εκτέλεση στο αναδιατασσόμενο

  • Χρήση της Cache μνήμης του επεξεργαστή

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Stretch c

Υλοποίηση Σε Stretch C

  • Σε κάθε επανάληψη του βρόχου, επεξεργασία δεδομένων ανά128 bit

  • Χρήση δυο συναρτήσεων για το αναδιατασσόμενο:

    • Mult64(wra IN1,wra IN2, wra *OUT)

    • Multsum(wra IN1,wra IN2, wra IN3, wra *OUT)

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

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

  • Χρόνος / Κύκλοι εκτέλεσης

    • Χωρίς αναδιατασσομένη λογική

      102.292.543 κύκλους=> 340ms με 300MHzclock

      Χρόνος προσομοίωσης 5minute

      Σε επεξεργαστή AMD Athlon 2.6MHz

    • Με αναδιατασσομένη λογική

      33.295.495 κύκλους=>90ms με 300MHzclock

      Χρόνος προσομοίωσης 3minute

      Σε επεξεργαστή AMD Athlon 2.6MHz

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Επιπλέον Βελτιστοποίηση

  • Ανάθεση στο αναδιατασσόμενο δύο επιπλέων βρόχων

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


Markov

Ευχαριστούμε!!!

Πληγορόπουλος - Δημόπουλος - Βαρδάκης


  • Login