370 likes | 514 Views
ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Πρόγραμμα μεταπτυχιακών σπουδών. Προσαρμοστικό σχήμα συμπίεσης δεδομένων σε ασύρματα δίκτυα αισθητήρων Μαρία Σ. Πουταχίδου ( Μ1151 ) Δήμητρα Α. Τσιρίκου ( Μ1150 ) Επιβλέποντες:
E N D
ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝΠρόγραμμα μεταπτυχιακών σπουδών Προσαρμοστικό σχήμα συμπίεσης δεδομένων σε ασύρματα δίκτυα αισθητήρων Μαρία Σ. Πουταχίδου ( Μ1151 ) Δήμητρα Α. Τσιρίκου ( Μ1150 ) Επιβλέποντες: Επίκουρος καθηγητής Ευστάθιος Χατζηευθυμιάδης Επίκουρος καθηγητής Χρήστος Αναγνωστόπουλος ΑΘΗΝΑ ΙΟΥΛΙΟΣ 2012
Περιεχόμενα • Γενικά για τη διπλωματική • PC3 • Το πρόβλημα της πώλησης του αντικειμένου • Εύρεση κανόνα βέλτιστης παύσης της φάσης συμπίεσης του infHorPC31 • INFHORPC31 • Το πρόβλημα του Χρονικά Μειωμένου Συσσωρευτικού Κέρδους • Kernel Density Estimator • INFHORPC32 • Incremental Principal Component Analysis • INCPCA • Πειραματικό σύνολο δεδομένων και ενεργειακό μοντέλο • Μετρικές επίδοσης • Διαγράμματα • Συμπεράσματα
Γενικά για τη Διπλωματική Εργασία • Πρόταση τριών νέων σχημάτων για τη συμπίεση πληροφορίας πλαισίου (contextual information) που προέρχεται από ασύρματα δίκτυα αισθητήρων. • Τα σχήματα αυτά βασίζονται στο σχήμα PC3 ( Principal component–based context compression ) • Στόχος: η βελτίωση του PC3 με την περαιτέρω μείωση της κατανάλωσης ενέργειας, με παράλληλη διατήρηση του σφάλματος μεταφοράς της πληροφορίας σε ανεκτά επίπεδα. • Τα δυο πρώτα σχήματα εμπνευσμένα από τη θεωρία βέλτιστης παύσης ( optimal stopping theory). • Το τρίτο σχήμα βασίζεται στην αυξητική ανάλυση κύριων συνιστωσών ( incremental principal component analysis ).
PC3 (1/2) Ο αλγόριθμος PC3 αποτελείται από 2 φάσεις: • Φάση εκμάθησης (learning phase) - Λήψη στον πομπό m δειγμάτων και αποστολή τους στο δέκτη χωρίς συμπίεση. - Υπολογισμός στον πομπό της βάσης συμπίεσης μέσω της μεθόδου PCA. • Φάση (από)συμπίεσης ((de) compression phase) - Λήψη στο δέκτη της βάσης συμπίεσης. - Για l χρονικές μονάδες λήψη στον πομπό νέων δειγμάτων και αποστολή τους στο δέκτη αφού συμπιεστούν. - Για l χρονικές μονάδεςαποσυμπίεση των συμπιεσμένων δειγμάτων που ελήφθησαν στο δέκτη.
Το πρόβλημα της πώλησης ενός αντικειμένου(1/4) • Έστω Χ1, Χ2, …., Χn, iid παρατηρήσειςπου αντιπροσωπεύουν την τιμή του αντικειμένου κάθε χρονική στιγμή και ακολουθούν γνωστή κατανομή F(x). • Έστω η ακολουθία ανταμοιβής χωρίς ανάκληση Υ0=-∞, Υ1 = Χ1 – c, …, Yn = Xn – n*c, …, Y∞=-∞, και η ακολουθία ανταμοιβής με ανάκληση Υ0=-∞, Υ1 = Μ1 – c, …, Yn = Μn – n*c, …, Y∞=-∞ όπου c > 0 κόστος ανά παρατήρηση και Μn = max{Χ1, Χ2, …., Χn}
Το πρόβλημα της πώλησης ενός αντικειμένου (2/4) • Έστω το πρόβλημα της πώλησης χωρίς ανάκληση: Yn = Xn – n*c. • Έστω V* αναμενόμενη ανταμοιβή από έναν κανόνα βέλτιστης παύσης.Υποθέτουμε ότι πληρώνουμε c και παρατηρούμε Χ1 = x1.Συνεχίζοντας από το σημείο αυτό, εφόσον δεν έχουμε ανάκληση, η τιμή x1 χάνεται και το κόστος c έχει ήδη πληρωθεί, οπότε είναι σα να ξεκινάμε το πρόβλημα ξανά από την αρχή. • Η αρχή της βελτιστότητας λέει ότι, εάν x1 < V*, συμφέρει να συνεχίσουμε, και εάν x1 > V*, θα πρέπει να σταματήσουμε τη διαδικασία. Έτσι ο κανόνας που προκύπτει από την αρχή της βελτιστότητας είναι • Ν* = min{n ≥ 1: Xn≥ V*} (1).
Το πρόβλημα της πώλησης ενός αντικειμένου (3/4) • Το πρόβλημα είναι να υπολογιστεί το αναμενόμενο κέρδος • (1) • όπου Fείναι η συνάρτηση κατανομής των παρατηρήσεων Χi. • Με αναδιάταξη των όρων, έχουμε • ή (2) • Αφού η αριστερή πλευρά είναι συνεχής στο V* και μειώνεται από το -∞έως το μηδέν, υπάρχει μία μοναδική λύση για το V* για κάθε c>0. • Υποθέτουμε ότι η F είναι ομοιόμορφη στο διάστημα (0,1).
Το πρόβλημα της πώλησης ενός αντικειμένου (4/4) • Για 0≤ u≤ 1, • ενώ για u<0, • Εξισώνοντας με c, βρίσκουμε • V* = 1 – (2c)1/2, αν c≤ 1/2, • V* = -c+ ½. αν c>½. • Ο βέλτιστος κανόνας N* υποδεικνύει να δεχτούμε την πρώτη προσφορά που θα είναι μεγαλύτερη ή ίση με V*.
Εύρεση κανόνα βέλτιστης παύσης της φάσης συμπίεσης για τον infHorPC31 (1/4) • Έστω ykτο δείγμα που λαμβάνουμε από τους αισθητήρες, yk’ το συμπιεσμένο δείγμα που στέλνει ο πομπός στο δέκτη και yk* το διάνυσμα προκύπτει από την αποσυμπίεση του yk’ στο δέκτη. • Ορίζουμε το ποσοστιαίο σφάλμα ανακατασκευής του αρχικού διανύσματος στο δέκτη λκ • όπου ||.|| η ευκλείδια νόρμα και • Έστω ένα κατώφλι σφάλματος errorThres • Αν λκ <= errorThres, τότε Xk = 0. • Αλλιώς, Xk =min{λκ,1}.
Εύρεση κανόνα βέλτιστης παύσης της φάσης συμπίεσης για τον infHorPC31(2/4) • Έστω X1, X2, ….., Xnπαρατηρήσεις που δηλώνουν το σφάλμα κάθε στιγμή. • Θεωρώντας σαν κέρδος την επίτευξη ελάχιστου σφάλματος, έστω η ακολουθία ανταμοιβής • Υ0=+∞, Υ1 = Χ1 + c, …, Yn = Xn + n*c, …, Y∞=+∞, • όπου c>0 το κόστος ανά παρατήρηση. • Έστω το πρόβλημα Yn = Xn + n*c, παρόμοιο με το πρόβλημα πώλησης αντικειμένου. • Έστω V* το αναμενόμενο κόστος (σφάλμα) από τον κανόνα βέλτιστης παύσης • Ν* = min{n ≥ 1: Xn≤ V*} (1).
Εύρεση κανόνα βέλτιστης παύσης της φάσης συμπίεσης για τον infHorPC31 (3/4) • Το πρόβλημα είναι να υπολογιστεί το αναμενόμενο κόστος • (1) • όπου Fείναι η συνάρτηση κατανομής των παρατηρήσεων Χi. • Με αναδιάταξη των όρων, έχουμε • (2) • Υποθέτουμε ότι η F είναι ομοιόμορφη στο διάστημα (0,1).
Εύρεση κανόνα βέλτιστης παύσης της φάσης συμπίεσης για τον infHorPC31 (4/4) • Για 0≤ u≤ 1, • Εξισώνοντας με c, βρίσκουμε • V* = (2c)1/2, αν c≤ 1/2 • Ο βέλτιστος κανόνας N* υποδεικνύει να δεχτούμε την πρώτη προσφορά που θα είναι μικρότερη ή ίση με V*.
INFHORPC31 • Είσοδοι: m (ορίζοντας φάσης εκμάθησης), c (κόστος), errorThres (κατώφλι σφάλματος) • currentSample = 0 • Μέχρι να τελειώσει το δείγμα • Στείλε m διανύσματα διάστασης n ασυμπίεστα, υπολόγισε τη βάση ιδιοδιανυσμάτων με ακρίβεια 0.9. currentSample = currentSample + m • Θέσε currentError = 1.1 (για να μπει τουλάχιστον μια φορά στην επανάληψη) • Όσο currentError > sqrt(2c) και υπάρχει δείγμα • 3.1currentSample = currentSample + 1 • 3.2 Συμπίεσε το τρέχον δείγμα y και στείλε το στον δέκτη y’ • 3.3 Αποσυμπίεση του δείγματος στον δέκτη, ynew • 3.4 Υπολογισμός του λόγου λκ = ||y – ynew||/||y||. • 3.5 Αν λκ <= errorThres • currentError = 0 • Αλλιως, • currentError = min{λκ,1} • τέλος αν
Το πρόβλημα του Χρονικά Μειωμένου Συσσωρευτικού Κέρδους (1/3) • Έστω Χtτυχαία μεταβλητή την χρονική στιγμή t. Η τιμή της μεταβλητής Χt αναφέρεται σε ποσότητα που συσσωρεύεται, π.χ., κέρδη. • Η συσσώρευση Stείναι το άθροισμα των τιμών που έχουν παρατηρηθεί από τη χρονική στιγμή 1 μέχρι και t, οπότε Stείναι τυχαία μεταβλητή • St = Χ1 + Χ2 + …. + Χt • Κάθε χρονική στιγμή t υπάρχει η πιθανότητα 1-β να χάσουμε το κέρδος μας St και πιθανότητα β να μην το χάσουμε, 0<β<1.
Το πρόβλημα του Χρονικά Μειωμένου Συσσωρευτικού Κέρδους (2/3) • Ορίζουμε την τυχαία μεταβλητή Ζt όπου • Ζt = 1 με πιθανότητα β, Ρ{Ζt = 1} = β και • Ζt = 0 με πιθανότητα 1-β, Ρ{Ζt = 0} = 1-β • Στόχος είναι να σταματήσουμε εκείνη την χρονική στιγμή όπου μεγιστοποιούμε το κέρδος με το φόβο ότι μπορούμε να τα χάσουμε όλα. • Ορίζουμε ως συνάρτηση κέρδους την ποσότητα • Yt = Ζ1Ζ2….Ζt(X1 + X2 + …… + Xt) • Αν τη στιγμή t έχουμε Ζt = 0 τότε το κέρδος μας είναι Υt = 0 • Αλλιώς το κέρδος μας είναι Υt = (X1 + X2 + …… + Xt) = St
Το πρόβλημα του Χρονικά Μειωμένου Συσσωρευτικού Κέρδους (3/3) • Το πρόβλημα μας είναι να βρούμε το t* έτσι ώστε • t* = arg{max(Yt, t=1,2, …)} • δηλαδή θέλουμε να παραμένουμε όλο και περισσότερο στη διαδικασία για να συσσωρεύσουμε όλο και περισσότερες Χtτιμές αλλά καθώς παρατείνουμε την διαδικασία τόσο μεγαλύτερο είναι το κόστος αν τα χάσουμε όλα. • Βάσει της θεωρίας βέλτιστης παύσης η αναδρομική εξίσωση είναι: • Yt = max(St, E{Yt+1}) • και σταματάμε τη διαδικασία Χt, και κατ’ επέκταση το άθροισμα Stόταν Yt > E{Yt+1}.
Εύρεση κανόνα βέλτιστης παύσης της φάσης συμπίεσης για τον infHorPC32 (1/2) • Έστω Χt τυχαία μεταβλητή τη χρονική στιγμή. Η τιμή της αναφέρεται σε κέρδος που συσσωρεύεται, όπου κέρδος ποσοστό δειγμάτων με λκ<= θ, θ κατώφλι σφάλματος. • Χt = 1, αν λκ<= θ • Χt = 0, αλλιώς • Ορίζουμε συνάρτηση κέρδους την ποσότητα • Υt = Ζ1* Ζ2*….* Ζt*(Χ1+ …+ Χt) = βt*St, β (0, 1) • Με βάση το πρόβλημα του χρονικά μειωμένου συσσωρευτικού κέρδους καταλήγουμε στον κανόνα βέλτιστης παύσης • t* = min{t: St>β*Ε{ Χt } / (1 – β)}
Εύρεση κανόνα βέλτιστης παύσης της φάσης συμπίεσης για τον infHorPC32 (2/2) • Έστω μη σταθερή μέση τιμή • Ε{Χt} = P(λκ <= θ) * 1 + P(λκ > θ) * 0 = P(λκ <= θ) • ο κανόνας βέλτιστης παύσης τροποποιείται ως εξής • t* = min{t: St>β* P(λκ<= θ) / (1 – β)} • Ο υπολογισμός της πιθανότητας P(λκ<= θ) γίνεται με τη χρήση του εκτιμητή πυκνότητας Kernel (Kernel Density Estimator, KDE), εφόσον τα λκδεν ακολουθούν γνωστή κατανομή.
Kernel Density Estimator • Υπολογίζει τη συνάρτηση πυκνότητας πιθανότητας P(x) για ένα σύνολο δειγμάτων • Συσσωρευτική συνάρτηση κατανομής (cumulative distribution function) CDF(x) = P(x) • Συνάρτηση σφάλματος γκαουσιανής συνάρτησης
INFHORPC32 • Είσοδοι: m (ορίζοντας φάσης εκμάθησης), b (πιθανότητα κέρδους), errorThres (κατώφλι σφάλματος) • currentSample = 0 • ErrorVector = [] • Μέχρι να τελειώσει το δείγμα • Στείλε m διανύσματα διάστασης n ασυμπίεστα, υπολόγισε τη βάση ιδιοδιανυσμάτων με ακρίβεια 0.9. currentSample = currentSample + m • Θέσε totalGain = 0 • Θέσε stopFactor = 1.1 (για να μπει τουλάχιστον μια φορά στην επανάληψη) • Όσο totalGain < stopFactor και υπάρχει δείγμα • 4.1currentSample = currentSample + 1 • 4.2 Συμπίεσε το τρέχον δείγμα y και στείλε το στον δέκτη y’ • 4.3 Αποσυμπίεση του δείγματος στον δέκτη, ynew • 4.4 Υπολογισμός του λόγου λκ = ||y – ynew||/||y||. • 4.6 Αν λκ <= errorThres • totalGain = totalGain + 1 • τέλος αν • 4.7 Πρόσθεσε στο ErrorVector την τρέχουσα τιμή λκ. • 4.8 p = cdf(errorThres, ErrorVector) • 4.9 stopFactor = (b/(1-b))*p
Incremental Principal Component Analysis (1/3) • Έστω ένα σύνολο Ν παρατηρήσεων. η μέση τιμή των παρατηρήσεων, Unpο πίνακας των ιδιοδιανυσμάτων που προέκυψε από τη μέθοδο PCA και Λpp ο διαγώνιος πίνακας των ιδιοτιμών. • Έστω μια καινούρια παρατήρηση . Το πρόβλημα είναι να υπολογίσουμε το σύνολο κύριων συνιστωσών για το νέο σύνολο παρατηρήσεων. • Ανανεώνουμε τη μέση τιμή • Ανανεώνουμε τον πίνακα συνδιακύμανσης
Incremental Principal Component Analysis (2/3) • Για τον υπολογισμό του νέου συνόλου ιδιοδιανυσμάτων πρέπει να επιλύσουμε το σύστημα • (1) • Ο νέος πίνακας ιδιοδιανυσμάτων δίνεται από τη σχέση • όπου R(p+1)(p+1) μια περιστροφή του τρέχοντος συνόλου ιδιοδιανυσμάτων και το residue διάνυσμα. • όπου h το σφάλμα ανακατασκευής της νέας παρατήρησης από προβολή στο τρέχον σύνολο κύριων συνιστωσών.
Incremental Principal Component Analysis (3/3) • Αντικαθιστώντας τα C΄nn και U΄nqστο σύστημα (1) προκύπτει το σύστημα • Επιλύοντας το βρίσκουμε το ζητούμενο σύνολο ιδιοδιανυσμάτων.
INCPCA • Είσοδοι: m (ορίζοντας φάσης εκμάθησης), acur (ακρίβεια συμπίεσης), noveltyThres (κατώφλι) • curSample = 0 • Για i από 1 μέχρι m • α. Στείλε το διάνυσμα στο δέκτη χωρίς συμπίεση • β. Αν i == m • Υπολόγισε τη βάση με τη μέθοδο PCA • 2. curSample = m+1 • 3. Μέχρι να τελειώσουν οι παρατηρήσεις • α. Βρες την προβολή του διανύσματος επάνω στην παλιά βάση • β. Ανακατασκεύασε το διάνυσμα • γ. Υπολόγισε το σχετικό σφάλμα ανάμεσα στο αρχικό διάνυσμα και το ανακατασκευασμένο διάνυσμα. • δ. Αν το σφάλμα > novelthyThres • i. Υπολόγισε τη νέα βάση με τη μέθοδο incremental PCA • ii. Υπολόγισε την απόσταση ανάμεσα την παλιά και τη νέα βάση • iii. Αν η απόσταση < novelthyThres && νέος #PCs > παλιός #PCs • Στείλε το διάνυσμα στο δέκτη χωρίς συμπίεση. • Στείλε το νέο PC στο δέκτη. • Αν curSample == m+1 • Στείλε στο δέκτη τη βάση. • iv. Αν η απόσταση < novelthyThres && νέος #PCs == παλιός #PCs • Στείλε το διάνυσμα στο δέκτη, αφού το συμπιέσεις. • Αν curSample == m+1 • Στείλε στο δέκτη τη βάση. • v. Αν η απόσταση < novelthyThres • Στείλε το διάνυσμα στο δέκτη χωρίς συμπίεση. • Στείλε τη νέα βάση στο δέκτη. • ε. Αν το σφάλμα <= novelthyThres • i. Στείλε το διάνυσμα στο δέκτη, αφού το συμπιέσεις. • ii. Αν curSample == m+1 • Στείλε στο δέκτη τη βάση. • στ. curSample = curSample + 1
Πειραματικό σύνολο δεδομένων και ενεργειακό μοντέλο • 3780 διανυσματικές μετρήσεις x = (temp1 , hum1 , temp2 , hum2 , temp3 , hum3 , wind4). • Ενεργειακό μοντέλο Mica
Μετρικές επίδοσης • Energy Gain: το ενεργειακό κέρδος μέχρι κάποια χρονική μονάδα • Compression ratio: το ποσοστό συμπίεσης • Mean total relative error: το μέσο συνολικό σχετικό σφάλμα ανακατασκευής του διανύσματος στον δέκτη • Efficiency:η απόδοση • Δυο μετρικές • και • Για τα σχήματα με μη πεπερασμένο ορίζοντα συμπίεσης • Αριθμός περιόδων συμπίεσης • Μέσο μήκος οριζόντων συμπίεσης
Διαγράμματα (1/8) Ενεργειακό κέρδος ως προς τον χρόνο για m = 7 και errorThres = 1%
Διαγράμματα (2/8) Μεταβολή m.t.r.e ως προς το μήκος της φάσης εκμάθησης
Διαγράμματα (3/8) Ποσοστό συμπίεσης ως προς τον χρόνο για m = 7 και errorThres = 1%
Διαγράμματα (4/8) 1η μετρική απόδοσης ως προς τον χρόνο για m = 7 και errorThres = 1%
Διαγράμματα (5/8) 2η μετρική απόδοσης ως προς τον χρόνο για m = 7 και errorThres = 1%
Διαγράμματα (6/8) incPCA: μεταβολή της απόδοσης ως προς noveltyThres ( m = 7 )
Διαγράμματα (7/8) Πλήθος περιόδων συμπίεσης infHorPC31 και infHorPC32 ως προς m (errorThres=1%)
Διαγράμματα (8/8) Μήκος ορίζοντα συμπίεσης infHorPC31 και infHorPC32 ως προς m (errorThres = 1%)
Συμπεράσματα • Είδαμε ότι: • Οι infHorPC31 και infHorPC32 είναι καλύτεροι ως προς την κατανάλωση ενέργειας συγκριτικά με τον PC3. • Οι infHorPC31 και infHorPC32 διατηρούν το παραγόμενο σφάλμα σε ανεκτά επίπεδα, παρόλο που είναι μεγαλύτερο συγκριτικά με το σφάλμα του PC3. • Ο incPCA έχει το μικρότερο ενεργειακό κέρδος από όλους. • Ο incPCA έχει το μικρότερο σφάλμα από όλους. • Βέβαια τα αποτελέσματα εξαρτώνται από την επιλογή των τιμών των παραμέτρων και από το πειραματικό σύνολο το οποίο είναι αρκετά συσχετισμένο.
Ευχαριστούμε πολύ! • Ερωτήσεις;