Design and implementation of a system for recognizing patterns and unique events in IoT data streams

Data streams are perhaps one of the most important underlying concepts of the age of interconnected big data. However, data streams are generally quite difficult to be managed due to their noticeably volatile nature which can be attributed to the combination high speed and short information duration...

Πλήρης περιγραφή

Λεπτομέρειες βιβλιογραφικής εγγραφής
Κύριος συγγραφέας: Καρράς, Χρήστος
Άλλοι συγγραφείς: Karras, Christos
Γλώσσα:English
Έκδοση: 2022
Θέματα:
Διαθέσιμο Online:http://hdl.handle.net/10889/15850
id nemertes-10889-15850
record_format dspace
institution UPatras
collection Nemertes
language English
topic Data streams
Clustering
Reservoir sampling
Knowledge graphs
Ροές δεδομένων
Συσταδοποίηση
Δειγματοληψία με ρεζερβουάρ
Γράφοι γνώσης
spellingShingle Data streams
Clustering
Reservoir sampling
Knowledge graphs
Ροές δεδομένων
Συσταδοποίηση
Δειγματοληψία με ρεζερβουάρ
Γράφοι γνώσης
Καρράς, Χρήστος
Design and implementation of a system for recognizing patterns and unique events in IoT data streams
description Data streams are perhaps one of the most important underlying concepts of the age of interconnected big data. However, data streams are generally quite difficult to be managed due to their noticeably volatile nature which can be attributed to the combination high speed and short information duration. In turn this combination dictates the need for new and efficient stream analytics for gaining useful insights into the actual stream dynamics without the need to process its entirety, since collecting and communicating stream samples is challenging while storing globally or even locally, transmitting and relaying, or otherwise computing a function over the entire stream or even a large segment thereof is plainly out of the question. In response to this research challenge a number of strategies tailored explicitly for streaming scenarios were designed. These differentiate themselves from previous ones mainly in the point of available computational resources. Specifically, stream approaches assume that there is a limited capacity of one or more resources including processing power and memory, while additionally they may operate under time or accuracy constraints. The number and nature of these limitations is exactly the distinguishing factor between the various streaming strategy families. A prime example of these families is aggregating algorithms which collect streaming data in windows of finite length, compute a small number of selected analytics over each window, typically in the form of a vector, and progressively construct a stream summary consisting of successive such vectors. A related stream strategy family is that of sampling methods where one or more representative stream values are kept as the stream description. Reservoir sampling methods belong to this last category by selecting and storing values which are probabilistically determined to be important. In the above context the primary research objective of this MSc thesis is to develop and outline the inner workings of a weighted random sampling technique based on the generic reservoir sampling algorithmic framework for identifying unique events. In brief, this is accomplished by keeping k stream elements deemed to be representative for the whole stream by a progressively constructed estimation of the joint stream distribution taken over all possible elements. Once confidence is high in said estimation these k samples are selected uniformly. The elements are selected with a complexity of O(min(k, n – k) where n is the number of elements examined. The proposed algorithm proceeds as follows. Given that as a general rule events in the recent literature are considered as outliers, then it suffices in order to extract element patterns and drive them to an alternative version of the k-means technique which was developed in this work. To perform data stream clustering, during its execution the proposed algorithm chooses the location of k centroids and subsequently the distance among each item and its centroids is calculated. Similarly to the standard k-means methodology each item is assigned to the closer centroid. Assuming that the nature of the stream data allows averaging, then a new centroid is derived by averaging the samples allocated in each cluster. The respective distances from the new centroids are recalculated and each item is repeatedly re-allocated until no centroids move. In addition to the steps of the classical k-means the sum of squared errors (SSE) is also computed for each cluster in each step and it is used not only as a measure of convergence but also as a quantification and an indirect measure of the approximation accuracy of the element distribution. This clustering allows the discovery of outliers as the stream moves on with a probability based on the distances from the centroids representing normal events. Experimental results show that the weighted sampling in conjunction with the k-means alternative outperform standard methods for stream event detection. As an additional step towards stream visualization, the events detected along with the clusters of normal events are depicted as knowledge graphs. This allows the future evaluation of the proposed algorithms, perhaps through a crowdsourcing platform, from a large number of individuals who can provide immediate feedback.
author2 Karras, Christos
author_facet Karras, Christos
Καρράς, Χρήστος
author Καρράς, Χρήστος
author_sort Καρράς, Χρήστος
title Design and implementation of a system for recognizing patterns and unique events in IoT data streams
title_short Design and implementation of a system for recognizing patterns and unique events in IoT data streams
title_full Design and implementation of a system for recognizing patterns and unique events in IoT data streams
title_fullStr Design and implementation of a system for recognizing patterns and unique events in IoT data streams
title_full_unstemmed Design and implementation of a system for recognizing patterns and unique events in IoT data streams
title_sort design and implementation of a system for recognizing patterns and unique events in iot data streams
publishDate 2022
url http://hdl.handle.net/10889/15850
work_keys_str_mv AT karraschrēstos designandimplementationofasystemforrecognizingpatternsanduniqueeventsiniotdatastreams
AT karraschrēstos schediasmoskaianapytyxēsystēmatosanichneusēsmotibōnkaimonadikōngegonotōnseroesdedomenōnpouproerchontaiapoexypnousaisthētēresstodiadiktyotōnpragmatōniot
_version_ 1771297242238418944
spelling nemertes-10889-158502022-09-05T14:00:43Z Design and implementation of a system for recognizing patterns and unique events in IoT data streams Σχεδιασμός και ανάπυτυξη συστήματος ανίχνευσης μοτίβων και μοναδικών γεγονότων σε ροές δεδομένων που προέρχονται από έξυπνους αισθητήρες στο διαδίκτυο των πραγμάτων (IoT) Καρράς, Χρήστος Karras, Christos Data streams Clustering Reservoir sampling Knowledge graphs Ροές δεδομένων Συσταδοποίηση Δειγματοληψία με ρεζερβουάρ Γράφοι γνώσης Data streams are perhaps one of the most important underlying concepts of the age of interconnected big data. However, data streams are generally quite difficult to be managed due to their noticeably volatile nature which can be attributed to the combination high speed and short information duration. In turn this combination dictates the need for new and efficient stream analytics for gaining useful insights into the actual stream dynamics without the need to process its entirety, since collecting and communicating stream samples is challenging while storing globally or even locally, transmitting and relaying, or otherwise computing a function over the entire stream or even a large segment thereof is plainly out of the question. In response to this research challenge a number of strategies tailored explicitly for streaming scenarios were designed. These differentiate themselves from previous ones mainly in the point of available computational resources. Specifically, stream approaches assume that there is a limited capacity of one or more resources including processing power and memory, while additionally they may operate under time or accuracy constraints. The number and nature of these limitations is exactly the distinguishing factor between the various streaming strategy families. A prime example of these families is aggregating algorithms which collect streaming data in windows of finite length, compute a small number of selected analytics over each window, typically in the form of a vector, and progressively construct a stream summary consisting of successive such vectors. A related stream strategy family is that of sampling methods where one or more representative stream values are kept as the stream description. Reservoir sampling methods belong to this last category by selecting and storing values which are probabilistically determined to be important. In the above context the primary research objective of this MSc thesis is to develop and outline the inner workings of a weighted random sampling technique based on the generic reservoir sampling algorithmic framework for identifying unique events. In brief, this is accomplished by keeping k stream elements deemed to be representative for the whole stream by a progressively constructed estimation of the joint stream distribution taken over all possible elements. Once confidence is high in said estimation these k samples are selected uniformly. The elements are selected with a complexity of O(min(k, n – k) where n is the number of elements examined. The proposed algorithm proceeds as follows. Given that as a general rule events in the recent literature are considered as outliers, then it suffices in order to extract element patterns and drive them to an alternative version of the k-means technique which was developed in this work. To perform data stream clustering, during its execution the proposed algorithm chooses the location of k centroids and subsequently the distance among each item and its centroids is calculated. Similarly to the standard k-means methodology each item is assigned to the closer centroid. Assuming that the nature of the stream data allows averaging, then a new centroid is derived by averaging the samples allocated in each cluster. The respective distances from the new centroids are recalculated and each item is repeatedly re-allocated until no centroids move. In addition to the steps of the classical k-means the sum of squared errors (SSE) is also computed for each cluster in each step and it is used not only as a measure of convergence but also as a quantification and an indirect measure of the approximation accuracy of the element distribution. This clustering allows the discovery of outliers as the stream moves on with a probability based on the distances from the centroids representing normal events. Experimental results show that the weighted sampling in conjunction with the k-means alternative outperform standard methods for stream event detection. As an additional step towards stream visualization, the events detected along with the clusters of normal events are depicted as knowledge graphs. This allows the future evaluation of the proposed algorithms, perhaps through a crowdsourcing platform, from a large number of individuals who can provide immediate feedback. Οι ροές δεδομένων είναι ίσως μια από τις πιο σημαντικές υποκείμενες έννοιες της εποχής των διασυνδεδεμένων δεδομένων μεγάλου όγκου. Ωστόσο, η διαχείριση των ροών δεδομένων είναι γενικά αρκετά δύσκολη λόγω της αισθητά ασταθούς φύσης τους, η οποία μπορεί να αποδοθεί στον συνδυασμό υψηλής ταχύτητας και μικρής διάρκειας πληροφοριών. Με τη σειρά του, αυτός ο συνδυασμός υπαγορεύει την ανάγκη για νέα και αποτελεσματικά αναλυτικά στοιχεία ροής για την απόκτηση χρήσιμων γνώσεων σχετικά με την πραγματική δυναμική ροής χωρίς την ανάγκη επεξεργασίας του συνόλου της, καθώς η συλλογή και η επικοινωνία δειγμάτων ροής είναι δύσκολη κατά την αποθήκευση σε παγκόσμιο ή ακόμη και τοπικό επίπεδο, μετάδοση και αναμετάδοση ή διαφορετικά ο υπολογισμός μιας συνάρτησης σε ολόκληρη τη ροή ή ακόμη και σε ένα μεγάλο τμήμα της είναι αρκετά πολύπλοκος. Ως απάντηση σε αυτήν την ερευνητική πρόκληση, σχεδιάστηκαν ορισμένες στρατηγικές προσαρμοσμένες ρητά για σενάρια ροής. Αυτές οι τεχνικές διαφοροποιούνται από τις ήδη υπάρχουσες κυρίως στο σημείο των διαθέσιμων υπολογιστικών πόρων. Συγκεκριμένα, οι προσεγγίσεις ροής υποθέτουν ότι υπάρχει περιορισμένη χωρητικότητα ενός ή περισσότερων πόρων, συμπεριλαμβανομένης της επεξεργαστικής ισχύος και της μνήμης, ενώ επιπλέον μπορεί να λειτουργούν υπό χρονικούς περιορισμούς ή περιορισμούς ακρίβειας. Ο αριθμός και η φύση αυτών των περιορισμών είναι ακριβώς ο παράγοντας διάκρισης μεταξύ των διαφόρων τεχνικών στρατηγικής ροής. Ένα χαρακτηριστικό παράδειγμα αυτών των τεχνικών είναι οι αλγόριθμοι συγκέντρωσης που συλλέγουν δεδομένα ροής σε παράθυρα πεπερασμένου μήκους, υπολογίζουν έναν μικρό αριθμό επιλεγμένων αναλυτικών στοιχείων σε κάθε παράθυρο, συνήθως με τη μορφή διανύσματος, και κατασκευάζουν σταδιακά μια σύνοψη ροής που αποτελείται από διαδοχικά τέτοια διανύσματα. Μια σχετική οικογένεια στρατηγικής ροής είναι αυτή των μεθόδων δειγματοληψίας όπου μια ή περισσότερες αντιπροσωπευτικές τιμές ροής διατηρούνται ως περιγραφή ροής. Οι μέθοδοι δειγματοληψίας με τη χρήση ρεζερβουάρ ανήκουν σε αυτή την τελευταία κατηγορία επιλέγοντας και αποθηκεύοντας τιμές που πιθανολογικά προσδιορίζονται ως σημαντικές. Στο παραπάνω πλαίσιο, ο πρωταρχικός ερευνητικός στόχος αυτής της μεταπτυχιακής διπλωματικής εργασίας είναι να αναπτύξει και να σκιαγραφήσει τις εσωτερικές λειτουργίες μιας τεχνικής σταθμισμένης τυχαίας δειγματοληψίας που βασίζεται στο γενικό αλγοριθμικό πλαίσιο δειγματοληψίας με ρεζερβουάρ για τον εντοπισμό μοναδικών γεγονότων. Εν συντομία, αυτό επιτυγχάνεται διατηρώντας k στοιχεία ροής που θεωρούνται αντιπροσωπευτικά για ολόκληρο το stream με μια προοδευτικά κατασκευασμένη εκτίμηση της κατανομής του data stream που λαμβάνεται σε όλα τα πιθανά στοιχεία. Μόλις το διάστημα εμπιστοσύνης είναι υψηλό στην εν λόγω εκτίμηση, αυτά τα k δείγματα επιλέγονται ομοιόμορφα. Τα στοιχεία επιλέγονται με πολυπλοκότητα O(min(k, n – k) όπου n είναι ο αριθμός των στοιχείων που εξετάζονται. Ο προτεινόμενος αλγόριθμος λειτουργεί ως εξής. Δεδομένου ότι κατά γενικό κανόνα τα γεγονότα στην πρόσφατη βιβλιογραφία θεωρούνται outliers, τότε αρκεί για να εξαγάγουμε μοτίβα στοιχείων και να τα οδηγήσουμε σε μια εναλλακτική έκδοση της τεχνικής k-means που αναπτύχθηκε σε αυτή την εργασία. Υπολογίζεται η απόσταση μεταξύ κάθε στοιχείου και των κεντροειδών του. Ομοίως με την τυπική μεθοδολογία k-means, κάθε στοιχείο εκχωρείται στο πιο κοντινό κέντρο. Υποθέτοντας ότι η φύση των δεδομένων ροής επιτρέπει τον υπολογισμό του μέσου όρου, τότε ένα νέο κεντροειδές εξάγεται με τον μέσο όρο των δειγμάτων που κατανέμονται σε κάθε συστάδα. Οι αντίστοιχες αποστάσεις από τους νέους κεντροειδείς υπολογίζονται εκ νέου και κάθε στοιχείο ανακατανέμεται επανειλημμένα μέχρι να μην μετακινηθεί κανένα κέντρο. Εκτός από τα βήματα του κλασικού k-means ότι το άθροισμα των τετραγωνικών σφαλμάτων (SSE) υπολογίζεται επίσης για κάθε ομάδα σε κάθε βήμα και χρησιμοποιείται όχι μόνο ως μέτρο σύγκλισης αλλά και ως ποσοτικό και έμμεσο μέτρο της ακρίβειας προσέγγισης της κατανομής στοιχείων. Αυτή η ομαδοποίηση επιτρέπει την ανακάλυψη ακραίων σημείων καθώς το stream προχωρά με μια πιθανότητα που βασίζεται στις αποστάσεις από τους κεντροειδείς που αντιπροσωπεύουν κανονικά γεγονότα. Τα πειραματικά αποτελέσματα δείχνουν ότι η σταθμισμένη δειγματοληψία σε συνδυασμό με την εναλλακτική λύση k-means υπερέχει των τυπικών μεθόδων για την ανίχνευση συμβάντων ροής. Ως πρόσθετο βήμα προς την οπτικοποίηση ροής, τα συμβάντα που ανιχνεύονται μαζί με τα συμπλέγματα κανονικών συμβάντων απεικονίζονται ως γραφήματα γνώσης. Αυτό επιτρέπει τη μελλοντική αξιολόγηση των προτεινόμενων αλγορίθμων, ίσως μέσω μιας πλατφόρμας crowdsourcing, από μεγάλο αριθμό ατόμων που μπορούν να παρέχουν άμεση ανατροφοδότηση. 2022-02-28T11:06:07Z 2022-02-28T11:06:07Z 2022-02-28 http://hdl.handle.net/10889/15850 en application/pdf