Οι ιστοσελίδες συνιστούν το πιο διαδεδομένο και πλέον απαραίτητο μέσο για όλους τους τομείς, από την ενημέρωση μέχρι και τη διασκέδαση. Η αισθητική τους αποτελεί αναπόσπαστο κομμάτι του σχεδιασμού μιας ιστοσελίδας, καθώς o ρόλος της είναι πολυδιάστατος. Αρχικά, βοηθά στην υποστήριξη του περιεχομένου και της λειτουργικότητας μιας ιστοσελίδας ενώ ταυτόχρονα αποσκοπεί στο να κεντρίσει το ενδιαφέρον συγκεκριμένων δημογραφικών ομάδων. Επίκεντρο της παρούσας εργασίας είναι να διερευνήσει τη σημαντικότητα των δημογραφικών χαρακτηριστικών στην αξιολόγηση της αισθητικής μιας ιστοσελίδας, μέσω της χρήσης αλγορίθμων βαθιάς μάθησης. Για την επίλυση του προβλήματος εφαρμόστηκαν δύο διαφορετικές προσεγγίσεις. Η πρώτη αφορά την εκπαίδευση τριών διαφορετικών αρχιτεκτονικών συνελικτικών νευρωνικών δικτύων στο σύνολο των δεδομένων, την αρχιτεκτονική AlexNet, VGG16 και Xception. Η AlexNet έχει αξιολογηθεί ξανά στο συγκεκριμένο σετ και παρουσιάζει αξιόπιστα αποτελέσματα ενώ η VGG16 παρουσιάζεται ως μια βελτιωμένη λύση. Η Xception είναι μια σύγχρονη αρχιτεκτονική που δοκιμάζεται για πρώτη φορά στο σύνολο αυτό και ξεπέρασε τα βιβλιογραφικά αποτελέσματα. Η δεύτερη προσέγγιση περιλαμβάνει τον διαχωρισμό του σετ δεδομένων σε δημογραφικές ομάδες και την εκπαίδευση συνελικτικών δικτύων για κάθε ομάδα ξεχωριστά. Με αυτό τον τρόπο τα εκάστοτε μοντέλα μπορούν να αντιληφθούν τα χαρακτηριστικά της κάθε δημογραφικής ομάδας. Τέλος, τα μοντέλα αυτά ενώνονται με διαφορετικές συνδυαστικές μεθόδους και επιλέγεται η βέλτιστη για την αξιολόγηση και τη σύγκριση των αποτελεσμάτων. Στα πειράματα που πραγματοποιήθηκαν γίνονται συγκρίσεις μεταξύ των μοντέλων για κάθε προσέγγιση καθώς και παρουσίαση παραδειγμάτων. Σκοπός της εργασίας είναι να αναδείξει τον ρόλο και τη σημασία των δημογραφικών χαρακτηριστικών, ενώ παράλληλα επισημαίνεται και η συνεισφορά των εξελιγμένων αλγορίθμων βαθιάς μάθησης στην επίτευξη αξιόπιστων προβλεπτικών αποτελεσμάτων αναφορικά με υποκειμενικά ζητήματα, όπως είναι η πρόβλεψη αισθητικής ιστοσελίδων.
Gougousis Dimitris: Development of an automated machine learning system for p...Manos Tsardoulias
The benefits of machine learning are undeniable in most, if not all the aspects of human activity. From weather forecasting to classifying a tumor as benign or malignant the use of machine learning speeds up and facilitates solving the problem at hand. However, the deployment of the most suitable machine learning model for the problem at hand is a time consuming process that requires knowledge gained through experience and continuous practice on the subject. The aforementioned obstacles can be removed by means of automated machine learning which, as the name suggests, attempts to automate the development process of machine learning models, and thus the benefits of the former to become broadly available. Contributing towards that end is the field of meta-learning, which studies the performance of different machine learning models in a wide range of tasks and uses this experience to "predict" the most suitable model for a given task, avoiding the process of trial and error. This thesis deals with the task of automating machine learning by employing meta-learning techniques specifically for regression problems. The aim of this work is the development of a system able to decide the exact optimal values for the hyperparameters of three algorithms, given the data to process. In that way a great deal of time is saved during the deployment of the model and the use of machine learning becomes available to more groups of people.
Ανίχνευση Αποκλίνουσας Συμπεριφοράς Χρηστών Διαδικτυακής Εφαρμογής Σε Πραγματ...ISSEL
Δεδομένης της ταχείας ανάπτυξης της τεχνητής νοημοσύνης τα τελευταία χρόνια, γεννάται το ερώτημα αν θα μπορούσε να αξιοποιηθεί προκειμένου να βελτιωθεί η ασφάλεια των διαδικτυακών υπηρεσιών. Τα τελευταία χρόνια το διαδίκτυο ολοένα και με μεγαλύτερο ρυθμό καταλαμβάνει θέση στις ζωές των ανθρώπων αποτελώντας ένα από τα βασικότερα μέσα ενημέρωσης, ψυχαγωγίας, επικοινωνίας και άλλα. Ωστόσο, δεν είναι λίγοι και εκείνοι οι οποίοι χρησιμοποιούν το διαδίκτυο αποσκοπώντας να αυξήσουν τα προσωπικά τους κέρδη, όχι πάντα με νόμιμα ή ηθικά μέσα. Ανακαλύπτοντας και εκμεταλλεύοντας ευπάθειες συστημάτων κακόβουλοι χρήστες του διαδικτύου μπορούν να αποκτούν πρόσβαση σε ευαίσθητα δεδομένα, να τα μεταπωλλούν σε τρίτους είτε ακόμα και να ρίχνουν ιστοσελίδες μεγάλων εταιριών ή κυβερνήσεων. Παράλληλα, ωστόσο, με την αύξηση της υπολογιστικής ισχύος και την ανάπτυξη των μαθηματικών και της στατιστικής σημειώθηκε σημαντική πρόοδος και στον τομέα της τεχνητής νοημοσύνης. Πρόκειται για ένα τομέα με εφαρμογές σε πολλά διαφορετικά πεδία όπως η εκπαίδευση, η οικονομία, η επιστήμη, η υγεία και άλλα. Τα τελευταία χρόνια χρησιμοποιείται επίσης στον τομέα της κυβερνοασφάλειας για την ανάπτυξη συστημάτων προστασίας τα οποία επιδιώκουν να προβλέψουν ή να εντοπίσουν μία επικείμενη επίθεση μειώνοντας κατά το δυνατόν την πιθανότητα εισβολής και κλοπής δεδομένων. Στα πλαίσια της παρούσας διπλωματικής αναπτύχθηκε ένα σύστημα που μπορεί να λειτουργεί ταυτόχρονα με μία διαδικτυακή εφαρμογή με στόχο την ανίχνευση αποκλίνουσας συμπεριφοράς χρηστών. Το σύστημα αυτό λειτουργεί και εντοπίζει τις ανωμαλίες αυτές σε πραγματικό χρόνο, ενώ λαμβάνει παράλληλα και μέτρα για τον αποκλεισμό των επιτήδειων χρηστών.
Giannopoulos Nikolaos: Ανάπτυξη Τεχνικών Εξατομίκευσης Διαφημιστικών Προβολών...Manos Tsardoulias
The rapid technological development of recent years, the improvement of computer systems, and the familiarization of a large percentage of the world's population with the digital world have given an enormous boost to e-commerce, which is continually evolving and serving more needs. Simultaneously, the significant increase of users and products, coming as a result of this progress, and the dynamic entry of machine learning and data science in the field of information technology has allowed e-commerce sites to improve the browsing experience significantly. Nowadays, e-commerce sites provide users with personalized product suggestions that meet their preferences, which means a simultaneous increase in sales for online stores.
In addition to personalized direct product recommendations to consumers, there are also advertising views (or banners). They are quite common on e-commerce websites, aiming to help and promote consumer product groups to the consumer according to his preferences or by categorizing him according to key elements of his electronic imprint. Personalized banner recommendations have not been studied to the same degree as product personalization and are more applicable to large e-commerce platforms.
This dissertation aims to design and build a real-time personalized banner recommendation system for a medium-sized online e-shop with real-time data based on machine learning methods and algorithms. In the context of the work, we propose a novel framework that takes into account the actions of the users during their navigation, known as "clickstream" data. The proposed framework effectively recognizes user interests and suggests banners that correspond to their preferences.
Ανάλυση αθλητικών επιδόσεων με τη χρήση του συστήματος REMEDESISSEL
Η επιστήμη των δεδομένων αν και προϋπήρχε, στις μέρες μας κυριαρχεί και ενδέχεται να κάνει το ίδιο στο μέλλον. Η ύπαρξη τεράστιου αποθηκευτικού χώρου και ισχυρών επεξεργαστών, ικανών να διαχειριστούν αντίστοιχου μεγέθους βάσεις δεδομένων, έχουν δώσει τη δυνατότητα συλλογής πληροφορίας σε κάθε εργασιακό χώρο, από τον κλάδο της ιατρικής και των μηχανικών, μέχρι τις τέχνες και τον αθλητισμό. Στη συγκεκριμένη διπλωματική εργασία θα σταθούμε στο χώρο του επαγγελματικού αθλητισμού και συγκεκριμένα της καλαθοσφαίρισης (Basketball). Αρχικά θα παρουσιαστούν βασικές γνώσεις γύρω από το άθλημα, θα αναφερθούν κάποια από τα εργαλεία συλλογής πληροφορίας και θα αναλυθεί η σημασία και ο ρόλος των δεδομένων στην προπόνηση, στην προετοιμασία των αθλητών αλλά και στις αποφάσεις των προπονητών. Στη συνέχεια, έχοντας συλλέξει δεδομένα με τη χρήση του συστήματος REMEDES πάνω σε συγκεκριμένο ασκησιολόγιο καλαθοσφαίρισης, αναπτύχθηκε ένα σύστημα αξιολόγησης αθλητικών επιδόσεων, χρησιμοποιώντας τη γλώσσα προγραμματισμού Python και διάφορες τεχνικές επεξεργασίας και προ-επεξεργασίας δεδομένων (Data Preprocessing) και μηχανικής μάθησης (Machine Learning). Σκοπός του εν λόγω συστήματος είναι η όσο το δυνατόν πιο αντιπροσωπευτική αξιολόγηση μη αθλητών, αθλητών και αθλητών Basketball σε συγκεκριμένες ασκήσεις που αφορούν φυσικά την καλαθοσφαίριση. Κατά τη διάρκεια της ανάλυσης αλλά και με την προσεκτική παρακολούθηση των αποτελεσμάτων, προέκυψαν κάποια πολύ ενδιαφέροντα συμπεράσματα που θα παρουσιαστούν και θα ερμηνευθούν στην παρούσα διπλωματική εργασία.
Ανίχνευση Αποκλίνουσας Συμπεριφοράς Χρηστών Διαδικτυακής Εφαρμογής Με Χρήση Τ...ISSEL
Τα τελευταία χρόνια η εξάπλωση του διαδικτύου και των εφαρμογών του αυξάνεται με ραγδαίους ρυθμούς, καταλαμβάνοντας ολοένα και μεγαλύτερο μέρος της καθημερινότητας των ανθρώπων. Πλέον, το διαδίκτυο αποτελεί βασικό και αναγκαίο μέσο επικοινωνίας, ψυχαγωγίας, ενημέρωσης, αγοροπωλησιών και άλλων πολλών λειτουργιών που πια γίνονται μέσω αυτού. Μαζί με την ανάπτυξη αυτών των δυνατοτήτων, δυστυχώς, αυξήθηκαν και οι παράνομες ενέργειες όπως η εξαπάτηση χρηστών, η πρόσβαση σε εμπιστευτικές και απόρρητες πληροφορίες, η προώθηση ορισμένων προϊόντων ακόμα και η διακοπή διάθεσης ιστοσελίδων από το διαδίκτυο, εκμεταλλεύοντας τις αδυναμίες και τα τρωτά σημεία στην ασφάλεια των διαδικτυακών εφαρμογών και συστημάτων. Με τον όρο κυβερνοασφάλεια ορίζουμε την ανάπτυξη συστημάτων και μεθόδων προστασίας με στόχο τον εντοπισμό και την αναγνώριση μίας επικείμενης διαδικτυακής επίθεσης συμβάλλοντας έτσι δραστικά στην προστασία από τις κακόβουλες ενέργειες. Από την άλλη, και ο τομέας της Μηχανικής Μάθησης επιδεικνύει μεγάλη άνθιση. Η Μηχανική Μάθηση ασχολείται με τον προγραμματισμό του υπολογιστή ώστε να μπορεί να «σκέφτεται» και να «αποφασίζει», και όχι μόνο να εκτελεί ρητά εντολές που του έχουν υπαγορευθεί από τον προγραμματιστή. Πλέον τεχνικές Μηχανικής Μάθησης εφαρμόζονται σε μία πλειάδα πεδίων του διαδικτύου, όπως είναι η κυβερνοασφάλεια με την οποία η παρούσα διπλωματική εργασία ασχολείται. Στο πλαίσιο της παρούσας διπλωματικής εργασίας, μοντελοποιήθηκε και αναπτύχθηκε ένα σύστημα το οποίο λαμβάνει απαραίτητες και χρήσιμες πληροφορίες για την συμπεριφορά του χρήστη σε μια διαδικτυακή εφαρμογή ηλεκτρονικού εμπορίου και αφού τις αποθηκεύει και τις επεξεργάζεται με συγκεκριμένο τρόπο, εν τέλει τις τροφοδοτεί σε μοντέλα μηχανικής μάθησης ακολουθιακής ταξινόμησης ώστε να χαρακτηριστεί η συμπεριφορά του χρήστη είτε καλόβουλη είτε κακόβουλη.
Gougousis Dimitris: Development of an automated machine learning system for p...Manos Tsardoulias
The benefits of machine learning are undeniable in most, if not all the aspects of human activity. From weather forecasting to classifying a tumor as benign or malignant the use of machine learning speeds up and facilitates solving the problem at hand. However, the deployment of the most suitable machine learning model for the problem at hand is a time consuming process that requires knowledge gained through experience and continuous practice on the subject. The aforementioned obstacles can be removed by means of automated machine learning which, as the name suggests, attempts to automate the development process of machine learning models, and thus the benefits of the former to become broadly available. Contributing towards that end is the field of meta-learning, which studies the performance of different machine learning models in a wide range of tasks and uses this experience to "predict" the most suitable model for a given task, avoiding the process of trial and error. This thesis deals with the task of automating machine learning by employing meta-learning techniques specifically for regression problems. The aim of this work is the development of a system able to decide the exact optimal values for the hyperparameters of three algorithms, given the data to process. In that way a great deal of time is saved during the deployment of the model and the use of machine learning becomes available to more groups of people.
Ανίχνευση Αποκλίνουσας Συμπεριφοράς Χρηστών Διαδικτυακής Εφαρμογής Σε Πραγματ...ISSEL
Δεδομένης της ταχείας ανάπτυξης της τεχνητής νοημοσύνης τα τελευταία χρόνια, γεννάται το ερώτημα αν θα μπορούσε να αξιοποιηθεί προκειμένου να βελτιωθεί η ασφάλεια των διαδικτυακών υπηρεσιών. Τα τελευταία χρόνια το διαδίκτυο ολοένα και με μεγαλύτερο ρυθμό καταλαμβάνει θέση στις ζωές των ανθρώπων αποτελώντας ένα από τα βασικότερα μέσα ενημέρωσης, ψυχαγωγίας, επικοινωνίας και άλλα. Ωστόσο, δεν είναι λίγοι και εκείνοι οι οποίοι χρησιμοποιούν το διαδίκτυο αποσκοπώντας να αυξήσουν τα προσωπικά τους κέρδη, όχι πάντα με νόμιμα ή ηθικά μέσα. Ανακαλύπτοντας και εκμεταλλεύοντας ευπάθειες συστημάτων κακόβουλοι χρήστες του διαδικτύου μπορούν να αποκτούν πρόσβαση σε ευαίσθητα δεδομένα, να τα μεταπωλλούν σε τρίτους είτε ακόμα και να ρίχνουν ιστοσελίδες μεγάλων εταιριών ή κυβερνήσεων. Παράλληλα, ωστόσο, με την αύξηση της υπολογιστικής ισχύος και την ανάπτυξη των μαθηματικών και της στατιστικής σημειώθηκε σημαντική πρόοδος και στον τομέα της τεχνητής νοημοσύνης. Πρόκειται για ένα τομέα με εφαρμογές σε πολλά διαφορετικά πεδία όπως η εκπαίδευση, η οικονομία, η επιστήμη, η υγεία και άλλα. Τα τελευταία χρόνια χρησιμοποιείται επίσης στον τομέα της κυβερνοασφάλειας για την ανάπτυξη συστημάτων προστασίας τα οποία επιδιώκουν να προβλέψουν ή να εντοπίσουν μία επικείμενη επίθεση μειώνοντας κατά το δυνατόν την πιθανότητα εισβολής και κλοπής δεδομένων. Στα πλαίσια της παρούσας διπλωματικής αναπτύχθηκε ένα σύστημα που μπορεί να λειτουργεί ταυτόχρονα με μία διαδικτυακή εφαρμογή με στόχο την ανίχνευση αποκλίνουσας συμπεριφοράς χρηστών. Το σύστημα αυτό λειτουργεί και εντοπίζει τις ανωμαλίες αυτές σε πραγματικό χρόνο, ενώ λαμβάνει παράλληλα και μέτρα για τον αποκλεισμό των επιτήδειων χρηστών.
Giannopoulos Nikolaos: Ανάπτυξη Τεχνικών Εξατομίκευσης Διαφημιστικών Προβολών...Manos Tsardoulias
The rapid technological development of recent years, the improvement of computer systems, and the familiarization of a large percentage of the world's population with the digital world have given an enormous boost to e-commerce, which is continually evolving and serving more needs. Simultaneously, the significant increase of users and products, coming as a result of this progress, and the dynamic entry of machine learning and data science in the field of information technology has allowed e-commerce sites to improve the browsing experience significantly. Nowadays, e-commerce sites provide users with personalized product suggestions that meet their preferences, which means a simultaneous increase in sales for online stores.
In addition to personalized direct product recommendations to consumers, there are also advertising views (or banners). They are quite common on e-commerce websites, aiming to help and promote consumer product groups to the consumer according to his preferences or by categorizing him according to key elements of his electronic imprint. Personalized banner recommendations have not been studied to the same degree as product personalization and are more applicable to large e-commerce platforms.
This dissertation aims to design and build a real-time personalized banner recommendation system for a medium-sized online e-shop with real-time data based on machine learning methods and algorithms. In the context of the work, we propose a novel framework that takes into account the actions of the users during their navigation, known as "clickstream" data. The proposed framework effectively recognizes user interests and suggests banners that correspond to their preferences.
Ανάλυση αθλητικών επιδόσεων με τη χρήση του συστήματος REMEDESISSEL
Η επιστήμη των δεδομένων αν και προϋπήρχε, στις μέρες μας κυριαρχεί και ενδέχεται να κάνει το ίδιο στο μέλλον. Η ύπαρξη τεράστιου αποθηκευτικού χώρου και ισχυρών επεξεργαστών, ικανών να διαχειριστούν αντίστοιχου μεγέθους βάσεις δεδομένων, έχουν δώσει τη δυνατότητα συλλογής πληροφορίας σε κάθε εργασιακό χώρο, από τον κλάδο της ιατρικής και των μηχανικών, μέχρι τις τέχνες και τον αθλητισμό. Στη συγκεκριμένη διπλωματική εργασία θα σταθούμε στο χώρο του επαγγελματικού αθλητισμού και συγκεκριμένα της καλαθοσφαίρισης (Basketball). Αρχικά θα παρουσιαστούν βασικές γνώσεις γύρω από το άθλημα, θα αναφερθούν κάποια από τα εργαλεία συλλογής πληροφορίας και θα αναλυθεί η σημασία και ο ρόλος των δεδομένων στην προπόνηση, στην προετοιμασία των αθλητών αλλά και στις αποφάσεις των προπονητών. Στη συνέχεια, έχοντας συλλέξει δεδομένα με τη χρήση του συστήματος REMEDES πάνω σε συγκεκριμένο ασκησιολόγιο καλαθοσφαίρισης, αναπτύχθηκε ένα σύστημα αξιολόγησης αθλητικών επιδόσεων, χρησιμοποιώντας τη γλώσσα προγραμματισμού Python και διάφορες τεχνικές επεξεργασίας και προ-επεξεργασίας δεδομένων (Data Preprocessing) και μηχανικής μάθησης (Machine Learning). Σκοπός του εν λόγω συστήματος είναι η όσο το δυνατόν πιο αντιπροσωπευτική αξιολόγηση μη αθλητών, αθλητών και αθλητών Basketball σε συγκεκριμένες ασκήσεις που αφορούν φυσικά την καλαθοσφαίριση. Κατά τη διάρκεια της ανάλυσης αλλά και με την προσεκτική παρακολούθηση των αποτελεσμάτων, προέκυψαν κάποια πολύ ενδιαφέροντα συμπεράσματα που θα παρουσιαστούν και θα ερμηνευθούν στην παρούσα διπλωματική εργασία.
Ανίχνευση Αποκλίνουσας Συμπεριφοράς Χρηστών Διαδικτυακής Εφαρμογής Με Χρήση Τ...ISSEL
Τα τελευταία χρόνια η εξάπλωση του διαδικτύου και των εφαρμογών του αυξάνεται με ραγδαίους ρυθμούς, καταλαμβάνοντας ολοένα και μεγαλύτερο μέρος της καθημερινότητας των ανθρώπων. Πλέον, το διαδίκτυο αποτελεί βασικό και αναγκαίο μέσο επικοινωνίας, ψυχαγωγίας, ενημέρωσης, αγοροπωλησιών και άλλων πολλών λειτουργιών που πια γίνονται μέσω αυτού. Μαζί με την ανάπτυξη αυτών των δυνατοτήτων, δυστυχώς, αυξήθηκαν και οι παράνομες ενέργειες όπως η εξαπάτηση χρηστών, η πρόσβαση σε εμπιστευτικές και απόρρητες πληροφορίες, η προώθηση ορισμένων προϊόντων ακόμα και η διακοπή διάθεσης ιστοσελίδων από το διαδίκτυο, εκμεταλλεύοντας τις αδυναμίες και τα τρωτά σημεία στην ασφάλεια των διαδικτυακών εφαρμογών και συστημάτων. Με τον όρο κυβερνοασφάλεια ορίζουμε την ανάπτυξη συστημάτων και μεθόδων προστασίας με στόχο τον εντοπισμό και την αναγνώριση μίας επικείμενης διαδικτυακής επίθεσης συμβάλλοντας έτσι δραστικά στην προστασία από τις κακόβουλες ενέργειες. Από την άλλη, και ο τομέας της Μηχανικής Μάθησης επιδεικνύει μεγάλη άνθιση. Η Μηχανική Μάθηση ασχολείται με τον προγραμματισμό του υπολογιστή ώστε να μπορεί να «σκέφτεται» και να «αποφασίζει», και όχι μόνο να εκτελεί ρητά εντολές που του έχουν υπαγορευθεί από τον προγραμματιστή. Πλέον τεχνικές Μηχανικής Μάθησης εφαρμόζονται σε μία πλειάδα πεδίων του διαδικτύου, όπως είναι η κυβερνοασφάλεια με την οποία η παρούσα διπλωματική εργασία ασχολείται. Στο πλαίσιο της παρούσας διπλωματικής εργασίας, μοντελοποιήθηκε και αναπτύχθηκε ένα σύστημα το οποίο λαμβάνει απαραίτητες και χρήσιμες πληροφορίες για την συμπεριφορά του χρήστη σε μια διαδικτυακή εφαρμογή ηλεκτρονικού εμπορίου και αφού τις αποθηκεύει και τις επεξεργάζεται με συγκεκριμένο τρόπο, εν τέλει τις τροφοδοτεί σε μοντέλα μηχανικής μάθησης ακολουθιακής ταξινόμησης ώστε να χαρακτηριστεί η συμπεριφορά του χρήστη είτε καλόβουλη είτε κακόβουλη.
Εντοπισμός του Image Inpainting με Μεθόδους Τεχνητής ΝοημοσύνηςISSEL
To image inpainting είναι η διαδικασία επιδιόρθωσης μιας αλλοιωμένης ή/και κατεστραμμένης περιοχής σε μια εικόνα από την οποία απουσιάζει μέρος νοηματικής πληροφορίας και κατά συνέπεια παρουσιάζεται έλλειψη νοηματικής συνέχειας. Σχεδιάστηκε αρχικά με σκοπό την αποτελεσματική επιδιόρθωση κατ εστραμμένων περιοχών σε εικόνες. Γρήγορα, όμως, χρησιμοποιήθηκε με σκοπό την πλαστογράφηση και την παραπλάνηση. Τα τελευταία χρόνια, οι μέθοδοι που εφαρμόζουν inpainting σε εικόνες χρησι μοποιώντας μοντέλα τεχνητής νοημοσύνης, πετυχαίνουν όλο και ποιοτικότερα αποτελέσματα παρά γοντας εικόνες όπου η αλλοίωση τους, σε ορισμένες περιπτώσεις, είναι αδύνατον να εντοπιστεί με το ανθρώπινο μάτι. Κρίνεται αναγκαία λοιπόν η δημιουργία ενός μηχανισμού, που θα εντοπίζει αυτές ακριβώς τις αλλοιώσεις. Για το λόγο αυτό, η παρούσα διπλωματική εργασία εστιάζει στη μελέτη των μεθόδων εντοπισμού του inpainting σε εικόνες, αλλά και στην υλοποίηση ενός δικτύου τεχνητής νοημοσύνης ικανού να ανιχνεύει τις περιοχές όπου μια εικόνα έχει αλλοιωθεί μέσω inpainting. Εκ παιδεύτηκαν και έλεγχθηκαν συνολικά οχτώ δίκτυα, βασισμένα σε δύο αρχιτεκτονικές συνελικτικών νευρωνικών δικτύων, προτεινόμενες από σχετική βιβλιογραφία. Η εκπαίδευση πραγματοποιήθηκε με δύο διαφορετικά σύνολα ρυθμίσεων, για 10 και 50 εποχές αντίστοιχα και ως συνάρτηση κόστους χρησι μοποιήθηκε η Binary Cross Entropy (BCE). Επίσης, μελετήθηκε το κατά πόσο η χρήση ενός συνόλου δεδομένων αποτελούμενο από εικόνες που έχουν υποστεί inpainting σε σημασιολογικές περιοχές, βο ηθάει περισσότερο από ένα αντίστοιχο με εικόνες που έχουν υποστεί inpainting σε τυχαίες περιοχές στη διαδικασία του εντοπισμού του. Για το λόγο αυτό, δημιουργήθηκαν δύο σύνολα εκπαίδευσης (train set) από τα οποία το πρώτο αποτελείται από εικόνες με τυχαίες μάσκες inpainting, ενώ το δεύτερο απο εικόνες με μάσκες σημασιολογικής μορφής. Ο έλεγχος έγινε με τη χρήση ενός συνόλου ελέγχου (test set) αποτελούμενο και από τις 2 μορφές μασκών για να δοθεί μια αντικειμενική ερμηνεία των αποτε λεσμάτων. Σε κάθε ένα από τα εκπαιδευμένα δίκτυα, δόθηκε ως είσοδος μία έγχρωμη RGB είκονα I με σκοπό να παράξει στην έξοδο του την προβλεμόμενη μάσκα Mo. Τέλος, δεδομένης της πραγματικής μάσκας Mg πραγματοποιήθηκε 1-1 σύγκριση των αντίστοιχων εικονοστοιχείων και υπολογίστηκαν οι τιμές των μετρικών απόδοσης AUC και ΙοU. Αποδείχθηκε πως η εκπαίδευση με εικόνες που έχουν αλλοιωθεί σε τυχαίες περιοχές τους (τυχαίες μάσκες) οδηγεί σε καλύτερα αποτελέσματα εντοπισμού του inpainting, από ότι η εκπαίδευση με εικόνες που έχουν αλλοιωθεί σε σημασιολογικές περιοχές (αντικείμενα).
Η αυξανόµενη δηµοτικότητα των κινητών τηλεφώνων (smartphones) έχει εγείρει σοβαρούς προβληµατισµούς σχετικά µε την ασφάλεια τους. Αυτό οφείλεται στο ότι σε αυτές τις συσκευές διατηρούνται πλέον ευαίσθητα προσωπικά και συχνά επαγγελµατι κά δεδοµένα και οι υπάρχοντες τρόποι αυθεντικοποίησης έχουν αποδειχθεί αναποτελε σµατικοί. Κωδικοί-µοτίβα και PIN, συγκεκριµένα, µπορούν εύκολα να αποκτηθούν από υποκλοπείς κοιτάζοντας κρυφά τις κινήσεις του ϑύµατος στην οθόνη του κινητού, ενώ όλοι οι ευρέως χρησιµοποιούµενοι τρόποι αυθεντικοποίησης, γενικότερα, προσφέρουν αυθεντικοποίηση µόνο κατά το ξεκλείδωµα της συσκευής, αφήνοντας την χωρίς καµία προστασία µετά από αυτό το στάδιο. Στη διπλωµατική αυτή, εισάγεται µια συνεχής και έµµεση προσέγγιση αυθεντικοποίησης που µπορεί να λειτουργήσει ως συµπληρω µατικός τρόπος αυθεντικοποίησης. Η προσέγγιση αυτή υποβοηθείται και ενισχύεται από την ανάπτυξη µιας µεθοδολογίας εξατοµίκευσης των κριτηρίων αυθεντικοποίησης, η οποία ϐασίζεται στον τρόπο που διαφορετικοί χρήστες συµπεριφέρονται ανάλογα µε το περιεχόµενο της οθόνης που πλοηγούνται. Αυτή η τελευταία προσθήκη µπορεί εν δεχοµένως να ϑεωρηθεί και ως η σηµαντικότερη συνεισφορά αυτής της διπλωµατικής στον τοµέα της συνεχούς και έµµεσης αυθεντικοποίησης, καθώς δεν έχουν διερευνηθεί ακόµα πολλοί τρόποι ϐελτιστοποίησης των µεθόδων αυθεντικοποίησης. Για να επιτευ χθούν αυτοί οι στόχοι, αξιοποιήθηκε µια συµπεριφορική, ϐιοµετρική ϐάση δεδοµένων, που περιέχει χειρονοµίες διαφόρων χρηστών. ∆ύο τύποι χειρονοµιών αναλύθηκαν, χειρονοµίες αγγίγµατος της οθόνης (taps) και χειρονοµίες κατά τις οποίες κινείται το δάχτυλο κατά µήκος της οθόνης (swipes), ως προς τη δυνατότητά τους να διαχωρίζουν τους χρήστες. Οι Μηχανές ∆ιανυσµάτων Υποστήριξης Μίας Κλάσης (One-Class SVM) έπαιξαν σηµαντικό ϱόλο στην ανάπτυξη αυτής της µεθοδολογίας καθώς εκπαιδεύονται µε τη χρήση χειρονοµίων ενός και µόνο χρήστη, κάτι που µπορεί να εφαρµοστεί και σε ϱεαλιστικές συνθήκες. Το πρόβληµα του καθορισµού της διακύµανσης που εµφανίζει κάθε χρήστης στη συµπεριφορά του (ϐάσει του περιεχοµένου της οθόνης που πλοη γείται) αντιµετωπίστηκε σαν πρόβληµα οµαδοποίησης, µε τη ϐοήθεια του αλγορίθµου k-means. Η µεθοδολογία αποδείχθηκε αποτελεσµατική, ειδικά κατά την ανάλυση χει ϱονοµιών swipes, και η ενσωµάτωση πληροφοριών συµπεριφοράς σε συνδυασµό µε το περιεχόµενο της οθόνης πλοήγησης µπορεί να επιφέρει σηµαντικές ϐελτιώσεις κατά την αυθεντικοποίηση χρηστών.
Έγκαιρη ταυτοποίηση βλαβών με αλγόριθμους Μηχανικής MάθησηςISSEL
Με την ανάπτυξη της τεχνολογίας και την είσοδο στην 4η βιομηχανική επανάσταση, ο τομέας της μηχανολογικής συντήρησης επεκτείνεται καθώς μεταβαίνει από προληπτικά μέτρα σε προβλεπτικές τεχνικές που αξιοποιούν μεθόδους και μοντέλα μηχανικής μάθησης. Η κείμενη διπλωματική εργασία στοχεύει μέσα από έρευνα και εφαρμογή κλασσικών και καινοτόμων τεχνικών στον τομέα της ανίχνευσης ανωμαλιών και ταξινόμησης χρονοσειρών να υλοποιήσει ένα εύχρηστο και αξιόπιστο εργαλείο ταυτοποίησης βλαβών. Μια τέτοια υλοποίηση προϋποθέτει την έρευνα διαθέσιμων τεχνικών μηχανικής μάθησης, την υλοποίηση και προσαρμογή τους σε ένα πραγματικό βιομηχανικό περιβάλλον, και την αξιολόγηση των αποτελεσμάτων στον επιτρεπόμενο βαθμό.
Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων για την Εξαγωγή Προτύπων Διόρθωσης σε Σφ...ISSEL
Τις τελευταίες δεκαετίες, τα έργα λογισµικού γίνονται όλο και µεγαλύτερα, χρησιµότερα και διεισδύουν σε όλο και περισσότερες πτυχές του ανθρώπινου ϐίου. Κατά την ανάπτυξη και τη συντήρηση λογισµικού, οι προγραµµατιστές σπαταλούν µεγάλο µέρος του χρόνου τους στον εντοπισµό και τη διόρθωση σφαλµάτων. Τα εργαλεία στατικής ανάλυσης κώδικα αυτοµατοποιούν τη διαδικασία εντοπισµού των σφαλµάτων. Η χρήση τους, ωστόσο, παραµένει περιορισµένη, καθώς η κατανόηση και η διόρθωση σφαλµάτων παραµένουν ευθύνες των προγραµµατιστών. Τα τελευταία χρόνια, πραγµατοποιούνται έρευνες για την εξόρυξη προτύπων διόρθωσης τέτοιων σφαλµάτων άλλα και την ανάπτυξη συστηµάτων αυτοµατοποιηµένης διόρθωσης σφαλµάτων. Οι πρώτες στοχεύουν στην κατανόηση του τρόπου που οι προγραµµατιστές αντιµετωπίζουν τέτοια προβλήµατα, και πολλές ϕορές τα αποτελέσµατα τους αποτελούν ϐάση για τις δεύτερες. Η παρούσα διπλωµατική, στοχεύει στην εξόρυξη χρήσιµων προτύπων διόρ ϑωσης σφαλµάτων για σφάλµατα που ανήκουν στους κανόνες του εργαλείου στατικής ανάλυσης PMD. Αρχικά, µέσω κατάλληλων ερωτηµάτων στο API του Github, αναζητο ύνται commits που αφορούν διορθώσεις τέτοιων σφαλµάτων και λαµβάνονται οι εκδόσεις των αρχείων πριν και µετά των αλλαγών των commits. Στη συνέχεια, µέσω εκτέλεσης του PMD στις δύο εκδόσεις, εντοπίζονται οι επιµέρους διορθώσεις και δηµιουργείται κα τάλληλο σύνολο δεδοµένων, αποτελούµενο αποκλειστικά από διορθώσεις σφαλµάτων, κανόνων του PMD. Οι επιµέρους διορθώσεις αναλύονται και µε αξιοποίηση της αναπα ϱάστασης κώδικα srcML και του αλγορίθµου απόστασης επεξεργασίας δέντρου Gumtree, είναι εφικτή η εξαγωγή µιας ακολουθίας όρων που είναι αντιπροσωπευτικοί για κάθε διόρθωση. ΄Ετσι, µε εύρεση του µήκους της µέγιστης κοινής υπακολουθίας µεταξύ δύο διορθώσεων, είναι εφικτή η ανάπτυξη ενός µοντέλου οµοιότητας για τις διορθώσεις συνολικά και κατ΄ επέκταση, η οµαδοποίηση τους και η εξαγωγή προτύπων διόρθω σης. Πραγµατοποιήθηκαν δύο διαφορετικά πειράµατα οµαδοποίησης : στο ένα αξιοποιήθηκε ο αλγόριθµος K-medoids και στο άλλο ο DBSCAN. Και στα δύο πειράµα τα, άλλα ιδιαίτερα σε αυτό µε τον DBSCAN, σχεδόν κάθε εξαγόµενη οµάδα αποτελείται κυρίως από διορθώσεις σφαλµάτων ενός κανόνα του PMD. Παράλληλα, µε τον υπο λογισµό του αριθµού των commits και των αποθετηρίων από τα οποία προέρχονται οι διορθώσεις κάθε οµάδας - προτύπου, ϕανερώνεται ότι οι περισσότερες οµάδες προκύπτουν από διορθώσεις προερχόµενες από µεγάλο αριθµό commits και αποθετηρίων. ΄Ετσι αντανακλούν τον τρόπο που αρκετοί προγραµµατιστές ϑα αντιµετώπιζαν παρόµοια προβλήµατα. Συνεπώς, τα εξαγόµενα πρότυπα ϑα µπορούσαν να αποτελέσουν αφετη ϱία για κάποιον µηχανισµό αυτοµατοποιηµένης διόρθωσης σφαλµάτων, ϐασιζόµενο στο PMD για τον εντοπισµό τους.
Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης παραγωγής Λογισμικού Ελέγχου...ISSEL
Σήμερα, η ανάπτυξη της τεχνολογίας και η αξιοποίηση της σε όλους τους τομείς της ζωής του ανθρώπου, δημιουργεί την ανάγκη για λογισμικό που είναι έυκολα προσαρμόσιμο, ευπαρουσίαστο, επιλύει πολλούς τύπους προβλημάτων, είναι οικονομικό και αξιόπιστο. Η Μοντελοστραφής Μηχανική (MDE), δηλαδή η ανάπτυξη λογισμικού που στηρίζεται σε μοντέλα, η αυτόματη παραγωγή κώδικα με βάση αυτά τα μοντέλα, η δυνατότητα γραφικής απεικόνισης του λογισμικού σε συνδυασμό με τις τεχνικές του Αυτοματοποιημένου Ελέγχου Συμπερασμών (Automated Reasoning) καλύπτουν ανά περίπτωση τις παραπάνω ανάγκες. Στην παρούσα διπλωματική εργασία, έγινε αξιοποίηση όλων των παραπάνω τεχνικών για την κατασκευή ενός ολοκληρωμένου εργαλείου, στην πλατφόρμα του Eclipse, με στόχο την κάλυψη των προαναφερθέντων αναγκών. Πιο συγκεκριμένα στα πλαίσια της Μοντελοστραφούς Μηχανικής (MDE) κατασκευάστηκε ένα μέτα-μοντέλο που αποτελεί τον πηρύνα του συστήματος και ενσωματώνει όρους από το πεδίο του Λογισμού. Στη συνέχεια, πάνω σε αυτό δημιουργήθηκε μια γραφική διεπαφή, στο περιβάλλον του Sirius, που δίνει την δυνατότητα στον ενδιαφερόμενο να καταγράψει, με γραφικό τρόπο, το μοντέλο που επιθυμεί. Η καταγραφή του μοντέλου γίνεται με την μορφή εξισώσεων σωστά διατυπωμένων στα πρότυπα της Κατηγορηματικής Λογικής Πρώτης Τάξης (FOL). Από αυτό το μοντέλο ύστερα, παράγεται αυτόματα κώδικας Java, ο οποίος αξιοποιώντας συναρτήσεις και αντικείμενα της βιβλιοθήκης TweetyProject, διαμορφώνεται κατάλληλα ώστε να αποτελεί έγκυρη είσοδο για τον built-in prover της ίδιας βιβλιοθήκης που μπορεί να πραγματοποιεί λογικούς ελέγχους στα πρότυπα του Αυτοματοποιημένου Ελέγχου Συμπερασμών. Μερικές ακόμα βοηθητικές συναρτήσεις σε Java, ολοκληρώνουν το εργαλείο της διπλωματικής. Όλα τα παραπάνω καθιστούν, το σύστημα που αναπτύχθηκε σε αυτή την διπλωματική, ικανό να χρησιμοποιηθεί από διάφορους υπάρχοντες μηχανισμούς αυτόματης παραγωγής συστημάτων, προκειμένου να ελέγξουν την εγκυρότητα των υπό σχεδίαση συστημάτων, δίχως κάποιος να απαιτείται να υλοποιήσει λογισμικό που κάνει λογικούς συμπερασμούς.
Επανοργάνωση πηγαίου κώδικα από γράφους εξαρτήσεων οντοτήτων µε βάση παραδείγ...ISSEL
Με την ολοένα και αυξανόµενη ενσωµάτωση του λογισµικού σε κοινωνικές δοµές όπως η εκπαίδευση και η υγεία, η γρήγορη συντήρηση (π.χ. αποσφαλµάτωση) µεγάλων έργων λογισµικού γίνεται όλο και πιο σηµαντική. Για αυτό το σκοπό, καθίσταται αναγκαία η κοινοτική οργάνωση του πηγαίου κώδικα σε οµάδες οντοτήτων (π.χ. µεθόδων σε κλάσεις, κλάσεων σε πακέτα, πακέτων σε ϐιβλιοθήκες), έτσι ώστε να διευκολύνεται η κατανόηση και πλοήγηση µεταξύ υλοποιηµένων λειτουργιών. Αν οι οντότητες οργανωθούν σε γράφους των οποίων οι ακµές αντικατοπτρίζουν τις εξαρτήσεις τους, υπάρχουν κοινά αποδεκτές αρχές της τεχνολογίας λογισµικου για το τι συνιστά καλή ποιοτικά οργάνωση του πηγαίου κώδι κα, όπως η υψηλή συνεκτικότητα εντός οµάδων οντοτήτων και η χαλαρή συνδεσιµότητα µε οντότητες άλλων οµάδων. Σε αυτή τη διπλωµατική, εξετάζεται το πρόβληµα της αυτοµατο ποιηµένης επανοργάνωσης οντοτήτων πηγαίου κώδικα ώστε να ϐελτιστοποιηθούν µετρικές που ποσοτικοποιούν αρχές ποιοτικής κοινοτικής οργάνωσης. Για να το πετύχουµε αυτό, χρησιµοποιούµε µεθόδους εξόρυξης κοινοτικής πληροφορίας από γράφους εξαρτήσεων ο ντοτήτων. Η κύρια υπόθεσή µας είναι η τρέχουσα ιεραρχική οργάνωση του κώδικα περιέχει ψήγµατα της ϐέλτιστης οργάνωσης και τη χρησιµοποιούµε ως µια προσεγγιστική πρώτη εκτίµηση την οποία και προσπαθούµε να ϐελτιώσουµε µε ϕίλτρα γράφων. Αυτή η ηµιε πιβλεπόµενη µέθοδος συγκρίνεται µε υπάρχουσες πρακτικές άπληστης ϐελτιστοποίησης της αρχικής εκτίµησης και µη επιβλεπόµενης γενετικής ϐελτιστοποίησης των κοινοτήτων στους γράφους εξαρτήσεων οντοτήτων 10 δηµοφιλών έργων λογισµικού. Βρίσκουµε ότι, δεδοµένης µια ¨στρευλωµένης¨ οργάνωσης, η προσέγγισή µας επιτρέπει την ακριβέστερη εξόρυξη των κοινοτήτων που ορίστηκαν από τους προγραµµατιστές των έργων. Επιπρο σθέτως, ολοκληρώνεται σε σχεδόν γραµµικούς χρόνους εκτέλεσης σε σχέση με τον αριθµό των εξαρτήσεων που επιτρέπουν την εφαρµογή της σε μεγάλα έργα λογισµικού.
Theofilos Georgiadis: Library recommendation system for the reuse of software...Manos Tsardoulias
This system helps developers when searching for python libraries. The developer constructs the query in natural language and the system returns the 10 most relevant libraries. It is based on a graph, its nodes are constructed by keywords and libraries that was extracted from a set of open source projects. For every keyword that is present with a library we connect the two nodes with an edge. For every time that a keyword is present with a library, the weight of the edge is increased by one. Using this graph we extract representations of the graph's nodes. Lastly using these representations and a method for calculating the similarity, we calculate the similarity of each library with each keyword and we extract a recommendation for the 10 libraries with the highest value of similarity.
Σχεδίαση και ανάπτυξη μηχανισμού αναγνώρισης επιθέσεων ασφαλείας σε διαδικτυα...ISSEL
Η αυξανόμενη χρήση του διαδικτυακού λογισμικού και η δημοφιλία του λογισμικού-ως-υπηρεσία έχει δημιουργήσει ένα μεγάλο κενό ασφαλείας στα συστήματα που μέχρι πριν από λίγα χρόνια "έτρεχαν" σε κλειστά δίκτυα: η πληροφορία (ευαίσθητη και μη) είναι πλέον διαθέσιμη στο διαδίκτυο. Κατά συνέπεια, η εφαρμογή κατάλληλων τεχνικών ασφάλειας του λογισμικού είναι μονόδρομος για τη θωράκισή της. Ο έλεγχος ασφάλειας πρέπει πλέον να γίνεται σε διάφορα και διαφορετικά επίπεδα, όπως στο επίπεδο δικτύου, στο επίπεδο του λειτουργικού, αλλά και στο επίπεδο της εφαρμογής. Στο πλαίσιο αυτό η παρούσα διπλωματική αποσκοπεί στη σχεδίαση και ανάπτυξη ενός μηχανισμού για την αναγνώριση πιθανών επιθέσεων ασφαλείας με τη χρήση τεχνικών μηχανικής μάθησης. Στόχος είναι η εφαρμογή τεχνικών μηχανικής μάθησης για την αναγνώριση "καλών" και “κακών” προτύπων συμπεριφοράς στο επίπεδο χρήστη (application-level). Ανάλυση θα γίνει σε δυναμικό επίπεδο (κατά τη λειτουργία των εφαρμογών) και θα αναπτυχθεί ένας μηχανισμός λήψης αποφάσεων.
Εφαρµογή τεχνικών µηχανικής µάθησης και ευφυούς διαχείρισης πληροφορίας για τ...ISSEL
Η σωστή σύνταξη των λειτουργικών απαιτήσεων αποτελεί ϐασική προϋπόθεση για την ανάπτυξη ενός έργου λογισµικού. Σφάλµατα στον ορισµό των λειτουργικών απαι τήσεων και ο ορισµός ελλιπούς λειτουργικότητας αποτελούν τα σηµαντικότερα προ ϐλήµατα που οδηγούν στην αποτυχία της διαδικασίας ανάπτυξης λογισµικού. Ο µη ολοκληρωµένος ορισµός των λειτουργικών απαιτήσεων έχει ως αποτέλεσµα τον λανθασµένο προγραµµατισµό των απαραίτητων εργασιών και ακολούθως την αποτυχία της υλοποίησης του έργου λογισµικού. Η παρούσα διπλωµατική εργασία αρχικά συγκεντρώνει ένα σύνολο δεδοµένων από λειτουργικές απαιτήσεις έργων λογισµικού από διάφορες πηγές. Σε πρώτο στάδιο ορίζεται η οντολογία που καλείται να περιγράψει την στατική όψη ενός έργου λογισµικού. Οι οντότητες που ορίζονται εντοπίζονται στις λειτουργικές απαιτήσεις του συνόλου δεδοµένων και δίνεται η δυνατότητα της αποδοτικής αποθήκευσης των δεδοµένων µε τη µορφή της οντολογίας. Σε επόµενο στάδιο γίνεται χρήση αλγορίθµων µηχανικής µάθησης µε στόχο την ε ξαγωγή προτάσεων ϐελτίωσης σε όλα τα επίπεδα ανάλυσης απαιτήσεων λογισµικού. Για την αξιολόγηση της απόδοσης των αλγορίθµων, µετά την εκπαίδευσή τους στο σύνολο δεδοµένων, δέχονται ως είσοδο ένα νέο έργο λογισµικού µε µη ολοκληρωµένη λειτουργικότητα και εξετάζεται η πληροφορία που εξάγεται από τον κάθε αλγόριθµο. Πιο συγκεκριµένα, υλοποιείται ο αλγόριθµος Apriori για την εξαγωγή κανόνων συσχέτισης µε στόχο τον εντοπισµό απούσας λειτουργικότητας. Επιπλέον, χρησιµοποιείται ο αλγόριθµος Λανθάνουσας Κατανοµής Dirichlet που εκτελεί τη ϑεµατική µοντελοποίηση των έργων λογισµικού του συνόλου δεδοµένων. Τέλος, γίνεται χρήση ενός αλγορίθµου Ιεραρχικής Οµαδοποίησης κειµένου και συγκρίνονται τα αποτελέσµατά του µε αυτά του προηγούµενου αλγορίθµου.
System Development for Prediction of Static Analysis Metrics of Source CodeISSEL
Nowadays, the pace of technological development and the uninterrupted use of online sources have resulted in rapid software development processes. In the numerous projects that are constantly being implemented, what is becoming more and more evident is the smooth development of the source code around a number of criteria that define its quality. This problem is especially magnified when there are dilemmas of reusing snippets of code and doubts arise about the best choice. Therefore, such issues make it necessary to assess the quality of code fragments that are candidates for reuse based on their maintainability. The process of evaluating the quality of the source code of a software project is a time consuming and costly operation, as it involves a high degree of complexity depending on the languages the project has been implemented in and its scope. At the same time, the contribution of many developers to a project always increases the difficulties of correct evaluation. Consequently, such issues require techniques and tools that take into account multiple parameters in order to rigorously and reasonably assess the quality of a project in terms of its maintainability. One of the most prevalent techniques is the analysis of source code using static metrics that rigorously evaluate the characteristics of the software project. This is what this thesis is based on, as it focuses on static source code analysis and methods that will contribute to the evaluation of software quality through them. This is done as long as there is the availability of open source projects in repositories such as GitHub and can be used to build tools aiming at solving the issue. The static analysis of open-source projects through metrics is the basis of the system designed in the current thesis. The system designed and built in this thesis is to create a reliable and functionally useful process that is capable of predicting the future values of static analysis metrics. This tool essentially attempts to detect patterns of behavior of static metrics for past metrics and predict similar behavior in the future using memory. This is implemented using LSTM and GRU networks as their architecture focuses on holding information in memory for long periods of time. Since software production is growing at an increasingly rapid pace, such a tool will be a key element in a smooth and well-guided source code development path.
Ανάπτυξη συστήματος πρόβλεψης της εξέλιξης των μετρικών στατικής ανάλυσης πηγ...ISSEL
Στις μέρες μας, ο ρυθμός ανάπτυξης της τεχνολογίας και η αδιάλειπτη χρήση του διαδικτύου έχουν ως αποτέλεσμα την εξέλιξη της διαδικασίας ανάπτυξης λογισμικού με ταχύτατους ρυθμούς. Στα πολυάριθμα έργα που υλοποιούνται συνεχώς, αυτό που προβληματίζει όλο και περισσότερο τους ειδικούς στον τομέα, είναι η ομαλή ανάπτυξη του πηγαίου κώδικα γύρω από ένα πλήθος κριτηρίων που ορίζουν την ποιότητά του. Αυτό το πρόβλημα διογκώνεται κυρίως όταν υπάρχουν διλήμματα επαναχρησιμοποίησης τμημάτων κώδικα και προκύπτουν ενδοιασμοί για τη σωστότερη επιλογή. Επομένως, τέτοιου είδους θέματα καθιστούν αναγκαία την αξιολόγηση της ποιότητας τμημάτων κώδικα που είναι υποψήφια για επαναχρησιμοποίηση βάση της συντηρησιμότητάς τους. Η διαδικασία αξιολόγησης της ποιότητας του πηγαίου κώδικα ενός έργου λογισμικού αποτελεί μια χρονοβόρα και κοστοβόρα λειτουργία, καθώς περιέχει υψηλό βαθμό περιπλοκότητας ανάλογα με τις γλώσσες που περιλαμβάνει το έργο αλλά και την έκταση του. Παράλληλα, η συμβολή πολλών και διαφορετικών προγραμματιστών στην ανάπτυξη του έργου, αποτελεί καθοριστικό παράγοντα στην αύξηση των δυσκολιών σωστής αξιολόγησης. Καθώς το έργο αναπτύσσεται, η ανάγκη για έλεγχο συντηρησιμότητας τόσο από την πλευρά του μηχανικού όσο και από την πλευρά του πελάτη γίνεται πρωταρχικός σκοπός. Συνεπώς, τέτοια ζητήματα απαιτούν τεχνικές και εργαλεία που θα λαμβάνουν υπόψιν πλήθος παραμέτρων με στόχο την αυστηρή και λογική αξιολόγηση της ποιότητας ενός έργου ως προς την συντηρησιμότητα του. Μια από τις επικρατέστερες τεχνικές είναι η ανάλυση του πηγαίου κώδικα με χρήση μετρικών που αξιολογούν με αυστηρά κριτήρια τα χαρακτηριστικά του έργου λογισμικού. Πάνω σε αυτό βασίστηκε και η παρούσα διπλωματική, καθώς εστιάζει στη στατική ανάλυση πηγαίου κώδικα και σε μεθόδους που θα συμβάλλουν στην αξιολόγηση της ποιότητας λογισμικού μέσω αυτών. Αυτό γίνεται εφόσον υπάρχει διαθεσιμότητα έργων ανοιχτού κώδικα τα οποία βρίσκονται διαθέσιμα σε αποθετήρια όπως το GitHub και μπορούν να αξιοποιηθούν για τη δημιουργία εργαλείων που στοχεύουν στην επίλυση του ζητήματος. Η στατική ανάλυση έργων ανοιχτού κώδικα μέσω μετρικών αποτελεί την βάση δεδομένων του συστήματος της παρούσας διπλωματικής. Σκοπός του συστήματος που ερευνούμε σε αυτή την διπλωματική είναι η δημιουργία μιας αξιόπιστης και λειτουργικά χρήσιμης διαδικασίας που θα είναι ικανή να προβλέπει τις μελλοντικές τιμές των μετρικών στατικής ανάλυσης. Αυτό το εργαλείο ουσιαστικά προσπαθεί να ανιχνεύσει μοτίβα συμπεριφοράς των στατικών μετρικών για μετρήσεις του παρελθόντος και να προβλέπει όμοιες συμπεριφορές στο μέλλον με χρήση της μνήμης. Η υλοποίηση αυτή γίνεται με δίκτυα LSTM και GRU καθώς η αρχιτεκτονική τους εστιάζει στην συγκράτηση πληροφοριών στη μνήμη για μεγάλα χρονικά διαστήματα. Από την στιγμή που η παραγωγή λογισμικού αυξάνεται με όλο και πιο ραγδαίους ρυθμούς, ένα τέτοιο εργαλείο θα αποτελέσει βασικό στοιχείο στην ομαλή και σωστά καθοδηγούμενη πορεία ανάπτυξης του πηγαίου κώδικα.
Alexandros Delitzas: Understanding website aesthetics using deep learningManos Tsardoulias
Website aesthetics play an important role in attracting users and customers as well as in enhancing user experience. In this work, we propose a tool that automatically measures website aesthetics. For this purpose, we developed deep learning models which present high correlation to human perception. These models were developed using two different datasets. The first dataset was created with a rating-based ranking. Thus, it contains user judgements on websites in the form of an explicit numerical value in a scale. Based on this, we developed models following three different approaches and managed to outperform previous works. In addition, we created a novel dataset with comparison-based ranking, which is a more reliable and natural data collection method. In this case, users were asked to compare two websites at a time and choose which is more attractive. The data collection was performed via a web application that we especially designed and developed for this purpose. In the experiments that we conducted, we evaluated each model and compared the two data collection methods. This work aims to indicate the effectiveness of deep learning as a solution to the problem as well as to highlight the importance of comparison-based ranking in order to achieve a reliable result. In the final phase, we developed a tool which measures the aesthetics of a website demanding only a URL as an input. This tool can serve as a reliable guide in the hands of designers and developers during the design process.
Applying Data Mining Techniques to Extract Fix Patterns for Static Analysis V...ISSEL
Contemporary Software products are getting larger and more complex. Dur ing the processes of software development and maintenance, developers spend a significant amount of their work time on detecting and fixing bugs. Static Analysis Tools automate the process of bug detection. Their application, however, is lim ited as the process of understanding and fixing of bugs, remains part of developer’s responsibilities. Lately, several research approaches aspire to extract useful bug fix patterns, or to automate the bug fixing process. The first approaches focus on understanding how developers face similar problems and frequently they serve as groundwork for systems for automated bug fixing. Our research aims at the extraction of useful bug fix patterns, for bugs that trigger the rules of the static analysis tool PMD. Initially, by querying the Github API, we search for commits that correspond to fixes of these categories of bugs. Both the before and after the commit versions of the commits’ files are downloaded. Then, by executing PMD on the two versions of each file, individual fixes are detected and a proper dataset is crafted. The dataset comprises fixes of bugs detectable from rules of PMD. The fixes are analyzed, and by utilizing srcML code representation and tree edit distance algorithm Gumtree, a representative sequence is extracted from each fix. Afterwards, by utilizing the metric of longest common subsequence between two sequences of two fixes, we develop a similarity scheme for the dataset’s fixes. This similarity scheme, operates as the base for the clustering of fixes and pattern extraction. In order to cluster the fixes, two separate experiments were conducted, one with K-medoids and one with the DBSCAN algorithm. In both experiments, but mostly with the DBSCAN algorithm, almost each cluster groups mostly bug fixes of a certain PMD rule. Alongside, by computing the number of commits and repositories from which the fixes of each cluster come from, it becomes obvious, that most of the clusters arise from fixes coming from a large number of commits and repositories. Thus, the extracted patterns correspond to the way in which similar problems are faced, by a number of different developers. Consequently, our extracted patterns, can be utilized as groundwork for an automated bug fixing system, where PMD will serve for bug detection.
Βελτίωση Τεχνικών Επαναχρησιμοποίησης Κώδικα από Αποθήκες Λογισμικού με χρήση Τεχνικών Ανάπτυξης Λογισμικού Οδηγούμενης από Ελέγχους και Τεχνικών Μετασχηματισμού Κώδικα
Εντοπισμός του Image Inpainting με Μεθόδους Τεχνητής ΝοημοσύνηςISSEL
To image inpainting είναι η διαδικασία επιδιόρθωσης μιας αλλοιωμένης ή/και κατεστραμμένης περιοχής σε μια εικόνα από την οποία απουσιάζει μέρος νοηματικής πληροφορίας και κατά συνέπεια παρουσιάζεται έλλειψη νοηματικής συνέχειας. Σχεδιάστηκε αρχικά με σκοπό την αποτελεσματική επιδιόρθωση κατ εστραμμένων περιοχών σε εικόνες. Γρήγορα, όμως, χρησιμοποιήθηκε με σκοπό την πλαστογράφηση και την παραπλάνηση. Τα τελευταία χρόνια, οι μέθοδοι που εφαρμόζουν inpainting σε εικόνες χρησι μοποιώντας μοντέλα τεχνητής νοημοσύνης, πετυχαίνουν όλο και ποιοτικότερα αποτελέσματα παρά γοντας εικόνες όπου η αλλοίωση τους, σε ορισμένες περιπτώσεις, είναι αδύνατον να εντοπιστεί με το ανθρώπινο μάτι. Κρίνεται αναγκαία λοιπόν η δημιουργία ενός μηχανισμού, που θα εντοπίζει αυτές ακριβώς τις αλλοιώσεις. Για το λόγο αυτό, η παρούσα διπλωματική εργασία εστιάζει στη μελέτη των μεθόδων εντοπισμού του inpainting σε εικόνες, αλλά και στην υλοποίηση ενός δικτύου τεχνητής νοημοσύνης ικανού να ανιχνεύει τις περιοχές όπου μια εικόνα έχει αλλοιωθεί μέσω inpainting. Εκ παιδεύτηκαν και έλεγχθηκαν συνολικά οχτώ δίκτυα, βασισμένα σε δύο αρχιτεκτονικές συνελικτικών νευρωνικών δικτύων, προτεινόμενες από σχετική βιβλιογραφία. Η εκπαίδευση πραγματοποιήθηκε με δύο διαφορετικά σύνολα ρυθμίσεων, για 10 και 50 εποχές αντίστοιχα και ως συνάρτηση κόστους χρησι μοποιήθηκε η Binary Cross Entropy (BCE). Επίσης, μελετήθηκε το κατά πόσο η χρήση ενός συνόλου δεδομένων αποτελούμενο από εικόνες που έχουν υποστεί inpainting σε σημασιολογικές περιοχές, βο ηθάει περισσότερο από ένα αντίστοιχο με εικόνες που έχουν υποστεί inpainting σε τυχαίες περιοχές στη διαδικασία του εντοπισμού του. Για το λόγο αυτό, δημιουργήθηκαν δύο σύνολα εκπαίδευσης (train set) από τα οποία το πρώτο αποτελείται από εικόνες με τυχαίες μάσκες inpainting, ενώ το δεύτερο απο εικόνες με μάσκες σημασιολογικής μορφής. Ο έλεγχος έγινε με τη χρήση ενός συνόλου ελέγχου (test set) αποτελούμενο και από τις 2 μορφές μασκών για να δοθεί μια αντικειμενική ερμηνεία των αποτε λεσμάτων. Σε κάθε ένα από τα εκπαιδευμένα δίκτυα, δόθηκε ως είσοδος μία έγχρωμη RGB είκονα I με σκοπό να παράξει στην έξοδο του την προβλεμόμενη μάσκα Mo. Τέλος, δεδομένης της πραγματικής μάσκας Mg πραγματοποιήθηκε 1-1 σύγκριση των αντίστοιχων εικονοστοιχείων και υπολογίστηκαν οι τιμές των μετρικών απόδοσης AUC και ΙοU. Αποδείχθηκε πως η εκπαίδευση με εικόνες που έχουν αλλοιωθεί σε τυχαίες περιοχές τους (τυχαίες μάσκες) οδηγεί σε καλύτερα αποτελέσματα εντοπισμού του inpainting, από ότι η εκπαίδευση με εικόνες που έχουν αλλοιωθεί σε σημασιολογικές περιοχές (αντικείμενα).
Η αυξανόµενη δηµοτικότητα των κινητών τηλεφώνων (smartphones) έχει εγείρει σοβαρούς προβληµατισµούς σχετικά µε την ασφάλεια τους. Αυτό οφείλεται στο ότι σε αυτές τις συσκευές διατηρούνται πλέον ευαίσθητα προσωπικά και συχνά επαγγελµατι κά δεδοµένα και οι υπάρχοντες τρόποι αυθεντικοποίησης έχουν αποδειχθεί αναποτελε σµατικοί. Κωδικοί-µοτίβα και PIN, συγκεκριµένα, µπορούν εύκολα να αποκτηθούν από υποκλοπείς κοιτάζοντας κρυφά τις κινήσεις του ϑύµατος στην οθόνη του κινητού, ενώ όλοι οι ευρέως χρησιµοποιούµενοι τρόποι αυθεντικοποίησης, γενικότερα, προσφέρουν αυθεντικοποίηση µόνο κατά το ξεκλείδωµα της συσκευής, αφήνοντας την χωρίς καµία προστασία µετά από αυτό το στάδιο. Στη διπλωµατική αυτή, εισάγεται µια συνεχής και έµµεση προσέγγιση αυθεντικοποίησης που µπορεί να λειτουργήσει ως συµπληρω µατικός τρόπος αυθεντικοποίησης. Η προσέγγιση αυτή υποβοηθείται και ενισχύεται από την ανάπτυξη µιας µεθοδολογίας εξατοµίκευσης των κριτηρίων αυθεντικοποίησης, η οποία ϐασίζεται στον τρόπο που διαφορετικοί χρήστες συµπεριφέρονται ανάλογα µε το περιεχόµενο της οθόνης που πλοηγούνται. Αυτή η τελευταία προσθήκη µπορεί εν δεχοµένως να ϑεωρηθεί και ως η σηµαντικότερη συνεισφορά αυτής της διπλωµατικής στον τοµέα της συνεχούς και έµµεσης αυθεντικοποίησης, καθώς δεν έχουν διερευνηθεί ακόµα πολλοί τρόποι ϐελτιστοποίησης των µεθόδων αυθεντικοποίησης. Για να επιτευ χθούν αυτοί οι στόχοι, αξιοποιήθηκε µια συµπεριφορική, ϐιοµετρική ϐάση δεδοµένων, που περιέχει χειρονοµίες διαφόρων χρηστών. ∆ύο τύποι χειρονοµιών αναλύθηκαν, χειρονοµίες αγγίγµατος της οθόνης (taps) και χειρονοµίες κατά τις οποίες κινείται το δάχτυλο κατά µήκος της οθόνης (swipes), ως προς τη δυνατότητά τους να διαχωρίζουν τους χρήστες. Οι Μηχανές ∆ιανυσµάτων Υποστήριξης Μίας Κλάσης (One-Class SVM) έπαιξαν σηµαντικό ϱόλο στην ανάπτυξη αυτής της µεθοδολογίας καθώς εκπαιδεύονται µε τη χρήση χειρονοµίων ενός και µόνο χρήστη, κάτι που µπορεί να εφαρµοστεί και σε ϱεαλιστικές συνθήκες. Το πρόβληµα του καθορισµού της διακύµανσης που εµφανίζει κάθε χρήστης στη συµπεριφορά του (ϐάσει του περιεχοµένου της οθόνης που πλοη γείται) αντιµετωπίστηκε σαν πρόβληµα οµαδοποίησης, µε τη ϐοήθεια του αλγορίθµου k-means. Η µεθοδολογία αποδείχθηκε αποτελεσµατική, ειδικά κατά την ανάλυση χει ϱονοµιών swipes, και η ενσωµάτωση πληροφοριών συµπεριφοράς σε συνδυασµό µε το περιεχόµενο της οθόνης πλοήγησης µπορεί να επιφέρει σηµαντικές ϐελτιώσεις κατά την αυθεντικοποίηση χρηστών.
Έγκαιρη ταυτοποίηση βλαβών με αλγόριθμους Μηχανικής MάθησηςISSEL
Με την ανάπτυξη της τεχνολογίας και την είσοδο στην 4η βιομηχανική επανάσταση, ο τομέας της μηχανολογικής συντήρησης επεκτείνεται καθώς μεταβαίνει από προληπτικά μέτρα σε προβλεπτικές τεχνικές που αξιοποιούν μεθόδους και μοντέλα μηχανικής μάθησης. Η κείμενη διπλωματική εργασία στοχεύει μέσα από έρευνα και εφαρμογή κλασσικών και καινοτόμων τεχνικών στον τομέα της ανίχνευσης ανωμαλιών και ταξινόμησης χρονοσειρών να υλοποιήσει ένα εύχρηστο και αξιόπιστο εργαλείο ταυτοποίησης βλαβών. Μια τέτοια υλοποίηση προϋποθέτει την έρευνα διαθέσιμων τεχνικών μηχανικής μάθησης, την υλοποίηση και προσαρμογή τους σε ένα πραγματικό βιομηχανικό περιβάλλον, και την αξιολόγηση των αποτελεσμάτων στον επιτρεπόμενο βαθμό.
Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων για την Εξαγωγή Προτύπων Διόρθωσης σε Σφ...ISSEL
Τις τελευταίες δεκαετίες, τα έργα λογισµικού γίνονται όλο και µεγαλύτερα, χρησιµότερα και διεισδύουν σε όλο και περισσότερες πτυχές του ανθρώπινου ϐίου. Κατά την ανάπτυξη και τη συντήρηση λογισµικού, οι προγραµµατιστές σπαταλούν µεγάλο µέρος του χρόνου τους στον εντοπισµό και τη διόρθωση σφαλµάτων. Τα εργαλεία στατικής ανάλυσης κώδικα αυτοµατοποιούν τη διαδικασία εντοπισµού των σφαλµάτων. Η χρήση τους, ωστόσο, παραµένει περιορισµένη, καθώς η κατανόηση και η διόρθωση σφαλµάτων παραµένουν ευθύνες των προγραµµατιστών. Τα τελευταία χρόνια, πραγµατοποιούνται έρευνες για την εξόρυξη προτύπων διόρθωσης τέτοιων σφαλµάτων άλλα και την ανάπτυξη συστηµάτων αυτοµατοποιηµένης διόρθωσης σφαλµάτων. Οι πρώτες στοχεύουν στην κατανόηση του τρόπου που οι προγραµµατιστές αντιµετωπίζουν τέτοια προβλήµατα, και πολλές ϕορές τα αποτελέσµατα τους αποτελούν ϐάση για τις δεύτερες. Η παρούσα διπλωµατική, στοχεύει στην εξόρυξη χρήσιµων προτύπων διόρ ϑωσης σφαλµάτων για σφάλµατα που ανήκουν στους κανόνες του εργαλείου στατικής ανάλυσης PMD. Αρχικά, µέσω κατάλληλων ερωτηµάτων στο API του Github, αναζητο ύνται commits που αφορούν διορθώσεις τέτοιων σφαλµάτων και λαµβάνονται οι εκδόσεις των αρχείων πριν και µετά των αλλαγών των commits. Στη συνέχεια, µέσω εκτέλεσης του PMD στις δύο εκδόσεις, εντοπίζονται οι επιµέρους διορθώσεις και δηµιουργείται κα τάλληλο σύνολο δεδοµένων, αποτελούµενο αποκλειστικά από διορθώσεις σφαλµάτων, κανόνων του PMD. Οι επιµέρους διορθώσεις αναλύονται και µε αξιοποίηση της αναπα ϱάστασης κώδικα srcML και του αλγορίθµου απόστασης επεξεργασίας δέντρου Gumtree, είναι εφικτή η εξαγωγή µιας ακολουθίας όρων που είναι αντιπροσωπευτικοί για κάθε διόρθωση. ΄Ετσι, µε εύρεση του µήκους της µέγιστης κοινής υπακολουθίας µεταξύ δύο διορθώσεων, είναι εφικτή η ανάπτυξη ενός µοντέλου οµοιότητας για τις διορθώσεις συνολικά και κατ΄ επέκταση, η οµαδοποίηση τους και η εξαγωγή προτύπων διόρθω σης. Πραγµατοποιήθηκαν δύο διαφορετικά πειράµατα οµαδοποίησης : στο ένα αξιοποιήθηκε ο αλγόριθµος K-medoids και στο άλλο ο DBSCAN. Και στα δύο πειράµα τα, άλλα ιδιαίτερα σε αυτό µε τον DBSCAN, σχεδόν κάθε εξαγόµενη οµάδα αποτελείται κυρίως από διορθώσεις σφαλµάτων ενός κανόνα του PMD. Παράλληλα, µε τον υπο λογισµό του αριθµού των commits και των αποθετηρίων από τα οποία προέρχονται οι διορθώσεις κάθε οµάδας - προτύπου, ϕανερώνεται ότι οι περισσότερες οµάδες προκύπτουν από διορθώσεις προερχόµενες από µεγάλο αριθµό commits και αποθετηρίων. ΄Ετσι αντανακλούν τον τρόπο που αρκετοί προγραµµατιστές ϑα αντιµετώπιζαν παρόµοια προβλήµατα. Συνεπώς, τα εξαγόµενα πρότυπα ϑα µπορούσαν να αποτελέσουν αφετη ϱία για κάποιον µηχανισµό αυτοµατοποιηµένης διόρθωσης σφαλµάτων, ϐασιζόµενο στο PMD για τον εντοπισµό τους.
Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης παραγωγής Λογισμικού Ελέγχου...ISSEL
Σήμερα, η ανάπτυξη της τεχνολογίας και η αξιοποίηση της σε όλους τους τομείς της ζωής του ανθρώπου, δημιουργεί την ανάγκη για λογισμικό που είναι έυκολα προσαρμόσιμο, ευπαρουσίαστο, επιλύει πολλούς τύπους προβλημάτων, είναι οικονομικό και αξιόπιστο. Η Μοντελοστραφής Μηχανική (MDE), δηλαδή η ανάπτυξη λογισμικού που στηρίζεται σε μοντέλα, η αυτόματη παραγωγή κώδικα με βάση αυτά τα μοντέλα, η δυνατότητα γραφικής απεικόνισης του λογισμικού σε συνδυασμό με τις τεχνικές του Αυτοματοποιημένου Ελέγχου Συμπερασμών (Automated Reasoning) καλύπτουν ανά περίπτωση τις παραπάνω ανάγκες. Στην παρούσα διπλωματική εργασία, έγινε αξιοποίηση όλων των παραπάνω τεχνικών για την κατασκευή ενός ολοκληρωμένου εργαλείου, στην πλατφόρμα του Eclipse, με στόχο την κάλυψη των προαναφερθέντων αναγκών. Πιο συγκεκριμένα στα πλαίσια της Μοντελοστραφούς Μηχανικής (MDE) κατασκευάστηκε ένα μέτα-μοντέλο που αποτελεί τον πηρύνα του συστήματος και ενσωματώνει όρους από το πεδίο του Λογισμού. Στη συνέχεια, πάνω σε αυτό δημιουργήθηκε μια γραφική διεπαφή, στο περιβάλλον του Sirius, που δίνει την δυνατότητα στον ενδιαφερόμενο να καταγράψει, με γραφικό τρόπο, το μοντέλο που επιθυμεί. Η καταγραφή του μοντέλου γίνεται με την μορφή εξισώσεων σωστά διατυπωμένων στα πρότυπα της Κατηγορηματικής Λογικής Πρώτης Τάξης (FOL). Από αυτό το μοντέλο ύστερα, παράγεται αυτόματα κώδικας Java, ο οποίος αξιοποιώντας συναρτήσεις και αντικείμενα της βιβλιοθήκης TweetyProject, διαμορφώνεται κατάλληλα ώστε να αποτελεί έγκυρη είσοδο για τον built-in prover της ίδιας βιβλιοθήκης που μπορεί να πραγματοποιεί λογικούς ελέγχους στα πρότυπα του Αυτοματοποιημένου Ελέγχου Συμπερασμών. Μερικές ακόμα βοηθητικές συναρτήσεις σε Java, ολοκληρώνουν το εργαλείο της διπλωματικής. Όλα τα παραπάνω καθιστούν, το σύστημα που αναπτύχθηκε σε αυτή την διπλωματική, ικανό να χρησιμοποιηθεί από διάφορους υπάρχοντες μηχανισμούς αυτόματης παραγωγής συστημάτων, προκειμένου να ελέγξουν την εγκυρότητα των υπό σχεδίαση συστημάτων, δίχως κάποιος να απαιτείται να υλοποιήσει λογισμικό που κάνει λογικούς συμπερασμούς.
Επανοργάνωση πηγαίου κώδικα από γράφους εξαρτήσεων οντοτήτων µε βάση παραδείγ...ISSEL
Με την ολοένα και αυξανόµενη ενσωµάτωση του λογισµικού σε κοινωνικές δοµές όπως η εκπαίδευση και η υγεία, η γρήγορη συντήρηση (π.χ. αποσφαλµάτωση) µεγάλων έργων λογισµικού γίνεται όλο και πιο σηµαντική. Για αυτό το σκοπό, καθίσταται αναγκαία η κοινοτική οργάνωση του πηγαίου κώδικα σε οµάδες οντοτήτων (π.χ. µεθόδων σε κλάσεις, κλάσεων σε πακέτα, πακέτων σε ϐιβλιοθήκες), έτσι ώστε να διευκολύνεται η κατανόηση και πλοήγηση µεταξύ υλοποιηµένων λειτουργιών. Αν οι οντότητες οργανωθούν σε γράφους των οποίων οι ακµές αντικατοπτρίζουν τις εξαρτήσεις τους, υπάρχουν κοινά αποδεκτές αρχές της τεχνολογίας λογισµικου για το τι συνιστά καλή ποιοτικά οργάνωση του πηγαίου κώδι κα, όπως η υψηλή συνεκτικότητα εντός οµάδων οντοτήτων και η χαλαρή συνδεσιµότητα µε οντότητες άλλων οµάδων. Σε αυτή τη διπλωµατική, εξετάζεται το πρόβληµα της αυτοµατο ποιηµένης επανοργάνωσης οντοτήτων πηγαίου κώδικα ώστε να ϐελτιστοποιηθούν µετρικές που ποσοτικοποιούν αρχές ποιοτικής κοινοτικής οργάνωσης. Για να το πετύχουµε αυτό, χρησιµοποιούµε µεθόδους εξόρυξης κοινοτικής πληροφορίας από γράφους εξαρτήσεων ο ντοτήτων. Η κύρια υπόθεσή µας είναι η τρέχουσα ιεραρχική οργάνωση του κώδικα περιέχει ψήγµατα της ϐέλτιστης οργάνωσης και τη χρησιµοποιούµε ως µια προσεγγιστική πρώτη εκτίµηση την οποία και προσπαθούµε να ϐελτιώσουµε µε ϕίλτρα γράφων. Αυτή η ηµιε πιβλεπόµενη µέθοδος συγκρίνεται µε υπάρχουσες πρακτικές άπληστης ϐελτιστοποίησης της αρχικής εκτίµησης και µη επιβλεπόµενης γενετικής ϐελτιστοποίησης των κοινοτήτων στους γράφους εξαρτήσεων οντοτήτων 10 δηµοφιλών έργων λογισµικού. Βρίσκουµε ότι, δεδοµένης µια ¨στρευλωµένης¨ οργάνωσης, η προσέγγισή µας επιτρέπει την ακριβέστερη εξόρυξη των κοινοτήτων που ορίστηκαν από τους προγραµµατιστές των έργων. Επιπρο σθέτως, ολοκληρώνεται σε σχεδόν γραµµικούς χρόνους εκτέλεσης σε σχέση με τον αριθµό των εξαρτήσεων που επιτρέπουν την εφαρµογή της σε μεγάλα έργα λογισµικού.
Theofilos Georgiadis: Library recommendation system for the reuse of software...Manos Tsardoulias
This system helps developers when searching for python libraries. The developer constructs the query in natural language and the system returns the 10 most relevant libraries. It is based on a graph, its nodes are constructed by keywords and libraries that was extracted from a set of open source projects. For every keyword that is present with a library we connect the two nodes with an edge. For every time that a keyword is present with a library, the weight of the edge is increased by one. Using this graph we extract representations of the graph's nodes. Lastly using these representations and a method for calculating the similarity, we calculate the similarity of each library with each keyword and we extract a recommendation for the 10 libraries with the highest value of similarity.
Σχεδίαση και ανάπτυξη μηχανισμού αναγνώρισης επιθέσεων ασφαλείας σε διαδικτυα...ISSEL
Η αυξανόμενη χρήση του διαδικτυακού λογισμικού και η δημοφιλία του λογισμικού-ως-υπηρεσία έχει δημιουργήσει ένα μεγάλο κενό ασφαλείας στα συστήματα που μέχρι πριν από λίγα χρόνια "έτρεχαν" σε κλειστά δίκτυα: η πληροφορία (ευαίσθητη και μη) είναι πλέον διαθέσιμη στο διαδίκτυο. Κατά συνέπεια, η εφαρμογή κατάλληλων τεχνικών ασφάλειας του λογισμικού είναι μονόδρομος για τη θωράκισή της. Ο έλεγχος ασφάλειας πρέπει πλέον να γίνεται σε διάφορα και διαφορετικά επίπεδα, όπως στο επίπεδο δικτύου, στο επίπεδο του λειτουργικού, αλλά και στο επίπεδο της εφαρμογής. Στο πλαίσιο αυτό η παρούσα διπλωματική αποσκοπεί στη σχεδίαση και ανάπτυξη ενός μηχανισμού για την αναγνώριση πιθανών επιθέσεων ασφαλείας με τη χρήση τεχνικών μηχανικής μάθησης. Στόχος είναι η εφαρμογή τεχνικών μηχανικής μάθησης για την αναγνώριση "καλών" και “κακών” προτύπων συμπεριφοράς στο επίπεδο χρήστη (application-level). Ανάλυση θα γίνει σε δυναμικό επίπεδο (κατά τη λειτουργία των εφαρμογών) και θα αναπτυχθεί ένας μηχανισμός λήψης αποφάσεων.
Εφαρµογή τεχνικών µηχανικής µάθησης και ευφυούς διαχείρισης πληροφορίας για τ...ISSEL
Η σωστή σύνταξη των λειτουργικών απαιτήσεων αποτελεί ϐασική προϋπόθεση για την ανάπτυξη ενός έργου λογισµικού. Σφάλµατα στον ορισµό των λειτουργικών απαι τήσεων και ο ορισµός ελλιπούς λειτουργικότητας αποτελούν τα σηµαντικότερα προ ϐλήµατα που οδηγούν στην αποτυχία της διαδικασίας ανάπτυξης λογισµικού. Ο µη ολοκληρωµένος ορισµός των λειτουργικών απαιτήσεων έχει ως αποτέλεσµα τον λανθασµένο προγραµµατισµό των απαραίτητων εργασιών και ακολούθως την αποτυχία της υλοποίησης του έργου λογισµικού. Η παρούσα διπλωµατική εργασία αρχικά συγκεντρώνει ένα σύνολο δεδοµένων από λειτουργικές απαιτήσεις έργων λογισµικού από διάφορες πηγές. Σε πρώτο στάδιο ορίζεται η οντολογία που καλείται να περιγράψει την στατική όψη ενός έργου λογισµικού. Οι οντότητες που ορίζονται εντοπίζονται στις λειτουργικές απαιτήσεις του συνόλου δεδοµένων και δίνεται η δυνατότητα της αποδοτικής αποθήκευσης των δεδοµένων µε τη µορφή της οντολογίας. Σε επόµενο στάδιο γίνεται χρήση αλγορίθµων µηχανικής µάθησης µε στόχο την ε ξαγωγή προτάσεων ϐελτίωσης σε όλα τα επίπεδα ανάλυσης απαιτήσεων λογισµικού. Για την αξιολόγηση της απόδοσης των αλγορίθµων, µετά την εκπαίδευσή τους στο σύνολο δεδοµένων, δέχονται ως είσοδο ένα νέο έργο λογισµικού µε µη ολοκληρωµένη λειτουργικότητα και εξετάζεται η πληροφορία που εξάγεται από τον κάθε αλγόριθµο. Πιο συγκεκριµένα, υλοποιείται ο αλγόριθµος Apriori για την εξαγωγή κανόνων συσχέτισης µε στόχο τον εντοπισµό απούσας λειτουργικότητας. Επιπλέον, χρησιµοποιείται ο αλγόριθµος Λανθάνουσας Κατανοµής Dirichlet που εκτελεί τη ϑεµατική µοντελοποίηση των έργων λογισµικού του συνόλου δεδοµένων. Τέλος, γίνεται χρήση ενός αλγορίθµου Ιεραρχικής Οµαδοποίησης κειµένου και συγκρίνονται τα αποτελέσµατά του µε αυτά του προηγούµενου αλγορίθµου.
System Development for Prediction of Static Analysis Metrics of Source CodeISSEL
Nowadays, the pace of technological development and the uninterrupted use of online sources have resulted in rapid software development processes. In the numerous projects that are constantly being implemented, what is becoming more and more evident is the smooth development of the source code around a number of criteria that define its quality. This problem is especially magnified when there are dilemmas of reusing snippets of code and doubts arise about the best choice. Therefore, such issues make it necessary to assess the quality of code fragments that are candidates for reuse based on their maintainability. The process of evaluating the quality of the source code of a software project is a time consuming and costly operation, as it involves a high degree of complexity depending on the languages the project has been implemented in and its scope. At the same time, the contribution of many developers to a project always increases the difficulties of correct evaluation. Consequently, such issues require techniques and tools that take into account multiple parameters in order to rigorously and reasonably assess the quality of a project in terms of its maintainability. One of the most prevalent techniques is the analysis of source code using static metrics that rigorously evaluate the characteristics of the software project. This is what this thesis is based on, as it focuses on static source code analysis and methods that will contribute to the evaluation of software quality through them. This is done as long as there is the availability of open source projects in repositories such as GitHub and can be used to build tools aiming at solving the issue. The static analysis of open-source projects through metrics is the basis of the system designed in the current thesis. The system designed and built in this thesis is to create a reliable and functionally useful process that is capable of predicting the future values of static analysis metrics. This tool essentially attempts to detect patterns of behavior of static metrics for past metrics and predict similar behavior in the future using memory. This is implemented using LSTM and GRU networks as their architecture focuses on holding information in memory for long periods of time. Since software production is growing at an increasingly rapid pace, such a tool will be a key element in a smooth and well-guided source code development path.
Ανάπτυξη συστήματος πρόβλεψης της εξέλιξης των μετρικών στατικής ανάλυσης πηγ...ISSEL
Στις μέρες μας, ο ρυθμός ανάπτυξης της τεχνολογίας και η αδιάλειπτη χρήση του διαδικτύου έχουν ως αποτέλεσμα την εξέλιξη της διαδικασίας ανάπτυξης λογισμικού με ταχύτατους ρυθμούς. Στα πολυάριθμα έργα που υλοποιούνται συνεχώς, αυτό που προβληματίζει όλο και περισσότερο τους ειδικούς στον τομέα, είναι η ομαλή ανάπτυξη του πηγαίου κώδικα γύρω από ένα πλήθος κριτηρίων που ορίζουν την ποιότητά του. Αυτό το πρόβλημα διογκώνεται κυρίως όταν υπάρχουν διλήμματα επαναχρησιμοποίησης τμημάτων κώδικα και προκύπτουν ενδοιασμοί για τη σωστότερη επιλογή. Επομένως, τέτοιου είδους θέματα καθιστούν αναγκαία την αξιολόγηση της ποιότητας τμημάτων κώδικα που είναι υποψήφια για επαναχρησιμοποίηση βάση της συντηρησιμότητάς τους. Η διαδικασία αξιολόγησης της ποιότητας του πηγαίου κώδικα ενός έργου λογισμικού αποτελεί μια χρονοβόρα και κοστοβόρα λειτουργία, καθώς περιέχει υψηλό βαθμό περιπλοκότητας ανάλογα με τις γλώσσες που περιλαμβάνει το έργο αλλά και την έκταση του. Παράλληλα, η συμβολή πολλών και διαφορετικών προγραμματιστών στην ανάπτυξη του έργου, αποτελεί καθοριστικό παράγοντα στην αύξηση των δυσκολιών σωστής αξιολόγησης. Καθώς το έργο αναπτύσσεται, η ανάγκη για έλεγχο συντηρησιμότητας τόσο από την πλευρά του μηχανικού όσο και από την πλευρά του πελάτη γίνεται πρωταρχικός σκοπός. Συνεπώς, τέτοια ζητήματα απαιτούν τεχνικές και εργαλεία που θα λαμβάνουν υπόψιν πλήθος παραμέτρων με στόχο την αυστηρή και λογική αξιολόγηση της ποιότητας ενός έργου ως προς την συντηρησιμότητα του. Μια από τις επικρατέστερες τεχνικές είναι η ανάλυση του πηγαίου κώδικα με χρήση μετρικών που αξιολογούν με αυστηρά κριτήρια τα χαρακτηριστικά του έργου λογισμικού. Πάνω σε αυτό βασίστηκε και η παρούσα διπλωματική, καθώς εστιάζει στη στατική ανάλυση πηγαίου κώδικα και σε μεθόδους που θα συμβάλλουν στην αξιολόγηση της ποιότητας λογισμικού μέσω αυτών. Αυτό γίνεται εφόσον υπάρχει διαθεσιμότητα έργων ανοιχτού κώδικα τα οποία βρίσκονται διαθέσιμα σε αποθετήρια όπως το GitHub και μπορούν να αξιοποιηθούν για τη δημιουργία εργαλείων που στοχεύουν στην επίλυση του ζητήματος. Η στατική ανάλυση έργων ανοιχτού κώδικα μέσω μετρικών αποτελεί την βάση δεδομένων του συστήματος της παρούσας διπλωματικής. Σκοπός του συστήματος που ερευνούμε σε αυτή την διπλωματική είναι η δημιουργία μιας αξιόπιστης και λειτουργικά χρήσιμης διαδικασίας που θα είναι ικανή να προβλέπει τις μελλοντικές τιμές των μετρικών στατικής ανάλυσης. Αυτό το εργαλείο ουσιαστικά προσπαθεί να ανιχνεύσει μοτίβα συμπεριφοράς των στατικών μετρικών για μετρήσεις του παρελθόντος και να προβλέπει όμοιες συμπεριφορές στο μέλλον με χρήση της μνήμης. Η υλοποίηση αυτή γίνεται με δίκτυα LSTM και GRU καθώς η αρχιτεκτονική τους εστιάζει στην συγκράτηση πληροφοριών στη μνήμη για μεγάλα χρονικά διαστήματα. Από την στιγμή που η παραγωγή λογισμικού αυξάνεται με όλο και πιο ραγδαίους ρυθμούς, ένα τέτοιο εργαλείο θα αποτελέσει βασικό στοιχείο στην ομαλή και σωστά καθοδηγούμενη πορεία ανάπτυξης του πηγαίου κώδικα.
Alexandros Delitzas: Understanding website aesthetics using deep learningManos Tsardoulias
Website aesthetics play an important role in attracting users and customers as well as in enhancing user experience. In this work, we propose a tool that automatically measures website aesthetics. For this purpose, we developed deep learning models which present high correlation to human perception. These models were developed using two different datasets. The first dataset was created with a rating-based ranking. Thus, it contains user judgements on websites in the form of an explicit numerical value in a scale. Based on this, we developed models following three different approaches and managed to outperform previous works. In addition, we created a novel dataset with comparison-based ranking, which is a more reliable and natural data collection method. In this case, users were asked to compare two websites at a time and choose which is more attractive. The data collection was performed via a web application that we especially designed and developed for this purpose. In the experiments that we conducted, we evaluated each model and compared the two data collection methods. This work aims to indicate the effectiveness of deep learning as a solution to the problem as well as to highlight the importance of comparison-based ranking in order to achieve a reliable result. In the final phase, we developed a tool which measures the aesthetics of a website demanding only a URL as an input. This tool can serve as a reliable guide in the hands of designers and developers during the design process.
Applying Data Mining Techniques to Extract Fix Patterns for Static Analysis V...ISSEL
Contemporary Software products are getting larger and more complex. Dur ing the processes of software development and maintenance, developers spend a significant amount of their work time on detecting and fixing bugs. Static Analysis Tools automate the process of bug detection. Their application, however, is lim ited as the process of understanding and fixing of bugs, remains part of developer’s responsibilities. Lately, several research approaches aspire to extract useful bug fix patterns, or to automate the bug fixing process. The first approaches focus on understanding how developers face similar problems and frequently they serve as groundwork for systems for automated bug fixing. Our research aims at the extraction of useful bug fix patterns, for bugs that trigger the rules of the static analysis tool PMD. Initially, by querying the Github API, we search for commits that correspond to fixes of these categories of bugs. Both the before and after the commit versions of the commits’ files are downloaded. Then, by executing PMD on the two versions of each file, individual fixes are detected and a proper dataset is crafted. The dataset comprises fixes of bugs detectable from rules of PMD. The fixes are analyzed, and by utilizing srcML code representation and tree edit distance algorithm Gumtree, a representative sequence is extracted from each fix. Afterwards, by utilizing the metric of longest common subsequence between two sequences of two fixes, we develop a similarity scheme for the dataset’s fixes. This similarity scheme, operates as the base for the clustering of fixes and pattern extraction. In order to cluster the fixes, two separate experiments were conducted, one with K-medoids and one with the DBSCAN algorithm. In both experiments, but mostly with the DBSCAN algorithm, almost each cluster groups mostly bug fixes of a certain PMD rule. Alongside, by computing the number of commits and repositories from which the fixes of each cluster come from, it becomes obvious, that most of the clusters arise from fixes coming from a large number of commits and repositories. Thus, the extracted patterns correspond to the way in which similar problems are faced, by a number of different developers. Consequently, our extracted patterns, can be utilized as groundwork for an automated bug fixing system, where PMD will serve for bug detection.
Βελτίωση Τεχνικών Επαναχρησιμοποίησης Κώδικα από Αποθήκες Λογισμικού με χρήση Τεχνικών Ανάπτυξης Λογισμικού Οδηγούμενης από Ελέγχους και Τεχνικών Μετασχηματισμού Κώδικα
Basketball data analytics via Machine Learning techniques using the REMEDES s...ISSEL
Data science although pre-existing, now days dominates and may do the same in the future. The existence of huge storage space and powerful processors capable of managing corresponding-sized databases, have enabled information to be collected in every workplace, from the medical and engineering sectors to the arts and sports. In this diploma thesis we will stand in the field of professional sport and in particular basketball. Initially basic knowledge about the sport will be presented, some of the information collection tools will be mentioned and we will analyze the importance and role of data in training, in the preparation of athletes and in the decisions of coaches. Subsequently, having collected data using the "REMEDES" system on a specific basketball set of drills, a sports performance evaluation system was developed using the "Python" programming language and various Data Preprocessing and Machine Learning techniques. The purpose of this system is to evaluate as representatively as possible non-athletes, athletes and Basketball athletes in a specific set of drills that obviously concern basketball. During the analysis and through careful monitoring of the results we have drawn some very interesting conclusions that will be presented and interpreted in this report along the way.
Εφαρµογή Τεχνικών Μηχανικής Μάθησης για την Ανάλυση Αλλαγών Κώδικα µε στόχο τ...ISSEL
Στη σημερινή εποχή, η ραγδαία ανάπτυξη της τεχνολογίας, έχει οδηγήσει και στη γρήγορη ανάπτυξη έργων λογισµικού πολλών γραμμών κώδικα, τα οποία έχουν επηρεάσει πολλές πτυχές της καθημερινής µας ζωής. Η αναγνωσιμότητας του κώδικα, αποτελεί χρήσιμο ποιοτικό χαρακτηριστικό ενός έργου λογισµικού. Μάλιστα, έρευνες έχουν δείξει ότι επηρεάζει το έργο τόσο κατά το στάδιο ανάπτυξής του όσο και κατά τη διάρκεια συντήρησης του έργου. Για τον σκοπό αυτό, έχουν αναπτυχθεί διάφορα μοντέλα αναγνωσιμότητας κώδικα. Κάθε ένα από αυτά τα μοντέλα βασίζεται σε διαφορετικά χαρακτηριστικά, αναλύοντας πτυχές όπως η δομή του κώδικα, η όψη του κώδικα, αλλά και το περιεχόµενο. Στην παρούσα διπλωματική εργασία, επιχειρούμε, βασιζόμενοι στα ήδη υπάρχοντα μοντέλα αξιολόγησης αναγνωσιμότητας κώδικα, να αναλύσουμε περαιτέρω την έννοια της αναγνωσιμότητας. Αναλύθηκαν commits χρηστών από την πλατφόρμα GitHub, τα οποία είναι συνδεδεμένα µε την αναγνωσιμότητα του κώδικα, µε βάση κάποια από τα ήδη υπάρχοντα μοντέλα αξιολόγησης αναγνωσιμότητας. Αρχικός στόχος ήταν µε βάση τα δεδοµένα που προέκυψαν από αυτά τα commits των προγραμματιστών να διερευνηθεί εάν τα commits, τα οποία ισχυρίζονται τη βελτίωση της αναγνωσιμότητας πράγματι τη βελτιώνουν, καθώς και ποιες αλλαγές ή συνδυασμός αυτών είναι υπεύθυνες για τη βελτίωση ή µη της αναγνωσιμότητας. Ένας δεύτερος στόχος, ο οποίος µας απασχόλησε ήταν εάν θα µπορούσαμε µέσα από τις διαφορές των χαρακτηριστικών του κώδικα πριν και µετά το commit να καταλάβουμε ποια μοντέλα αναγνωσιμότητας είναι ικανά να κατηγοριοποιήσουν ποιες αλλαγές έχουν πραγματοποιηθεί στον κώδικα, καθώς και να προτείνουμε ένα πιο αποδοτικό μοντέλο. Και στα δύο παραπάνω ερωτήματα για την ανάπτυξη των μοντέλων χρησιμοποιήθηκαν μετρικές από διαφορετικά μοντέλα αξιολόγησης αναγνωσιμότητας κώδικα, τα οποία συγκρίθηκαν ως προς την απόδοσή τους.
Ανάπτυξη Μηχανισμών Αυτοματοποίησης των διαδικασιών κατασκευής συστημάτων λο...ISSEL
Όπως έχει αποτυπωθεί στην ιστορία μέσω των συντελεσθεισών βιομηχανικών
επαναστάσεων, βαρύνουσας σημασίας στην εξέλιξη της ανθρωπότητας υπήρξε, και συνεχίζει να είναι, η αυτοματοποίηση διαδικασιών στην επαγγελματική και ιδιωτική ζωή του ανθρώπου. Η εξάπλωση της τεχνολογίας σε αυτές και η δεσπόζουσα θέση του διαδικτυακού «παράλληλου σύμπαντος», οδηγούν στην ψηφιοποίηση ολοένα και περισσότερων διαδικασιών, που επομένως βασίζονται σε Λογισμικό. Συνεπώς, το στοίχημα κάλυψης της ταχέως αυξανόμενης ανάγκης ψηφιοποίησης αποτελεί η έτι περαιτέρω αυτοματοποίηση της παραγωγής Λογισμικού μέσω της ανάπτυξης νέων μεθοδολογιών, στοχεύοντας στην παραγωγή ορθού και ποιοτικού Λογισμικού. Στο πλαίσιο αυτό, η παρούσα διατριβή πραγματεύεται τη σχεδίαση και εφαρμογή καινοτόμων μηχανισμών για την αυτοματοποίηση των διαδικασιών παραγωγής λογισμικού, εν προκειμένω RESTful Διαδικτυακών Υπηρεσιών. Προς επίτευξη των στόχων αυτής (μεταξύ άλλων και η ανάπτυξη αντίστοιχου Μηχανισμού Αυτοματοποίησης), χρησιμοποιείται ως μέσο αυτοματοποίησης η Μηχανική Λογισμικού Οδηγούμενη από Μοντέλα, με τους βασικούς δομικούς λίθους της οποίας (μετα-μοντέλα και μετασχηματισμούς) επιχειρείται η επίτευξη αυτοματοποίησης στο ευρύτερο πεδίο
των RESTful διαδικτυακών υπηρεσιών.
Στη συνεισφορά της παρούσας διατριβής στον τομέα της αυτοματοποίησης
συγκαταλέγεται καταρχάς, η διδιάστατη Αρχιτεκτονική Μηχανισμών αυτοματοποίησης με χρήση Μηχανικής Λογισμικού Οδηγούμενης από Μοντέλα, η οποία διευκολύνει την παραλληλοποίηση της ανάπτυξής τους, τη μείωση της πολυπλοκότητάς τους και αυξάνει την συντηρησιμότητα και επεκτασιμότητά τους. Επιπλέον, συνοδεύεται από μία συνεκτική στρατηγική διάσπασης του συνολικού προβλήματος σε μικρότερα, τόσο σε επίπεδο μετα-μοντέλων όσο και σε επίπεδο μετασχηματισμών, λαμβάνοντας υπόψιν τα εγγενή αίτια πολυπλοκότητας της μεθοδολογίας, προκειμένου να διευκολύνει επιπλέον την κατασκευή τους.
Ακολούθως, συνεισφέρει μετα-μοντέλα και μετασχηματισμούς που αφορούν την
αυτοματοποίηση των πτυχών των Διαδικτυακών Υπηρεσιών με τις οποίες ασχολείται όπως: α) δόμηση συστημάτων αρχιτεκτονικής REST, β) με δυνατότητες ταυτοποίησης χρήστη, γ) εξουσιοδότησης χρήστη, δ) αυτόματης εφαρμογής Προτύπων Σχεδίασης για την ικανοποίηση μη λειτουργικών πτυχών αυτών, ε) αναζήτησης δεδομένων, ζ) αλληλεπίδρασης με υπάρχουσες υπηρεσίες στο Διαδίκτυο και, τέλος, η) δυνατότητας μετασχηματισμού υπηρεσιών σε RESTful με ταυτόχρονη διατήρηση των δεδομένων τους.
Τέλος, η παρούσα διατριβή απαντά σε ερευνητικά ερωτήματα που άπτονται: α) της βελτίωσης της παραγωγικότητας των Μηχανικών Λογισμικού για την παραγωγή RESTful Διαδικτυακών Υπηρεσιών, β) της βελτίωσης της παραγωγικότητάς τους κατά την εφαρμογή Προτύπων Σχεδίασης για την επίλυση συχνά συναντώμενων προβλημάτων, γ) την εκτίμηση του χάσματος προσπάθειας ανάμεσα σε ...
User-generated online content has met a significant increase in recent years, as comments, online conversations, wikis etc. are an integral part of everyday human life. The storage capability improvement of such data, combined with evolution of machine learning techniques, has led to the creation of Natural Language Understanding-Processing (NLU NLP) systems. These systems are capable of extracting useful information, without any human intervention. The sentiment that is expressed in the content contributed by users is valuable information for analysis and a number of efficient analysis systems have been built. However, there are few systems that perform sentiment analysis for the Greek language. The lack of datasets hinders the research in that direction. Within the context of the present diploma thesis, a data annotation system is developed, which is used to create a dataset containing technology product reviews and the sentiment that is expressed towards their aspects. The dataset is utilized to train sentiment analysis models. Firstly, a comparison between already existing models for Greek is conducted. Then, a new architecture for Aspect Category Detection (ACD) from reviews is proposed, which is used along with an existing architecture for Sentiment Polarity (SP) to forge an end-to-end model. Furthermore, a web interface is implemented, with the purpose of analyzing text from any given review and presenting the respective results in a user-friendly graphical interface. Experimentation with the trained models shows promising results. The end-to-end model manages to accurately recognize aspects that are included in a review and analyze the sentiment expressed towards them.
Ανίχνευση και Ανάλυση Συναισθήματος Πτυχών ΚριτικώνISSEL
Το περιεχόμενο που παράγεται από τους χρήστες στο διαδίκτυο έχει σημειώσει σημαντική αύξηση τα τελευταία χρόνια, καθώς τα σχόλια, οι διαδικτυακές συζητή σεις, οι ηλεκτρονικές πηγές κλπ. αποτελούν αναπόσπαστο κομμάτι της καθημερινό τητας. Η βελτίωση της ικανότητας αποθήκευσης τέτοιων δεδομένων, σε συνδυασμό με την εξέλιξη τεχνικών μηχανικής μάθησης, οδήγησε στην δημιουργία συστημάτων Κατανόησης-Επεξεργασίας Φυσικής Γλώσσας (NLU-NLP). Τα συστήματα αυτά εί ναι σε θέση να διαχειριστούν μεγάλο όγκο δεδομένων και να εξάγουν χρήσιμη πληροφορία, χωρίς ανθρώπινη παρέμβαση. Στο πλαίσιο αυτό, το συναίσθημα που εκφράζεται στο κείμενο των χρηστών αποτελεί επιθυμητή πληροφορία προς ανάλυση και υπάρχουν αρκετά και αξιόπι στα συστήματα σε αυτή την κατεύθυνση. Ωστόσο, δεν υπάρχουν πολλά συστήματα που να πραγματοποιούν ανάλυση συναισθήματος στην ελληνική γλώσσα. Η έλλειψη συνόλων δεδομένων αποτελεί τροχοπέδη στην έρευνα προς αυτή την κατεύθυνση. Στην παρούσα διπλωματική εργασία υλοποιείται ένα σύστημα σχολιασμού δε δομένων και μέσω αυτού δημιουργείται ένα σύνολο δεδομένων που περιέχει κριτι κές προϊόντων τεχνολογίας και το συναίσθημα που εκφράζεται προς τις πτυχές των προϊόντων. Το σύνολο δεδομένων αξιοποιείται για την εκπαίδευση μοντέλων ανά λυσης συναισθήματος. Σε πρώτη φάση, πραγματοποιείται μία σύγκριση μεταξύ των ήδη υπαρχόντων μοντέλων για τα ελληνικά. Έπειτα, προτείνεται μία νέα αρχιτεκτο νική για την ανίχνευση πτυχών από κριτικές (ACD), η οποία, σε συνδυασμό με μία υπάρχουσα αρχιτεκτονική για ανάλυση συναισθήματος πτυχών (SP), αξιοποιείται για την δημιουργία ενός συνολικού μοντέλου. Επιπρόσθετα, υλοποιείται μία διαδικτυακή διεπαφή για την ανάλυση κειμένου από οποιαδήποτε κριτική και την παρουσίαση των αποτελεσμάτων σε ένα γραφικό περιβάλλον φιλικό προς τον χρήστη. Η διεξαγωγή πειραμάτων με τα εκπαιδευμένα μοντέλα παρουσιάζει ικανοποιη τικά αποτελέσματα. Το συνολικό μοντέλο επιτυγχάνει την ακριβή αναγνώριση των πτυχών που περιέχονται σε μία κριτική και την ανάλυση του συναισθήματος που εκφράζεται προς αυτές.
Implementation of a platform for assessing indoor spaces regarding their frie...ISSEL
This thesis presents an innovative tool specifically designed to assess the dementia friendliness of indoor spaces. With the rise in dementia cases globally, the need to adapt environments to the unique needs of those affected is becoming increasingly important. This research focuses on evaluating how friendly and suitable these spaces are for individuals with dementia, with a particular emphasis on flooring. The developed tool leverages the power of deep learning and machine learning to analyze images of indoor spaces, identifying objects within these images to evaluate their suitability for dementia-friendly environments. The tool currently focuses on evaluating rugs, equipped with an easy to navigate and effective web application that allows caregivers, designers (or other users) to easily upload photos for assessment. This specialized approach ensures that users can quickly understand how these floor coverings align with dementia-friendly design principles. The tool is user-friendly and efficient, designed for quick assessment of indoor areas. Rather than suggesting changes, it rates how dementia-friendly these spaces are, providing valuable insights for caregivers and designers. This feature is essential for public places such as care homes, private residences or even hotels that aim to be dementia-friently, where creating safe, understandable, and comfortable environments for people with dementia is crucial. Overall, this thesis merges technology with the principles of interior design in the context of dementia care. It offers a significant contribution to the field, providing a practical and innovative approach to assess and understand dementia-friendly environments.
Autonomous car position calculation with particle filters using traffic data ...ISSEL
As autonomous vehicle technology progresses, the need for precise real-time positioning in dynamic urban environments becomes increasingly vital. This thesis explores the utilization of particle filters to calculate the position of autonomous cars, using traffic data within a simulated environment. The primary goal is to improve accuracy and reliability in vehicle localization by integrating information from dynamic traffic conditions into the positioning algorithm. A simulated environment is employed to replicate realistic traffic scenarios, generating diverse and dynamic datasets. Particle filters are implemented as a probabilistic framework, assimilating information from various sources such as sensor data and traffic patterns to estimate the vehicle’s position. Through extensive experimentation, the efficacy of the proposed approach is assessed across diverse traffic conditions and scenarios. Results indicate that real time traffic data significantly enhances the precision and robustness of autonomous car positioning. The particle filter algorithm seamlessly adapts to changing traffic situations, demonstrating its potential for practical implementation in autonomous driving systems. Additionally, the thesis investigates the influence of different parameters and configurations on the particle filter algorithm’s performance. Insights gained from these studies contribute to optimizing the algorithm for a range of urban driving conditions. In summary, this research advances autonomous vehicle positioning by introducing an innovative approach that integrates particle filters with traffic data in a simulated environment. The findings hold implications for developing more accurate and adaptable autonomous navigation systems, laying the foundation for safer and more reliable self-driving vehicles in intricate urban settings.
Ανίχνευση αντικειµένων από λίγα δείγµατα µε χρήση γραφηµάτων και τεχνικών ΜΕΤ...ISSEL
Η ανίχνευση αντικειµένων από λίγα δείγµατα (FSOD) αποσκοπεί στην ανίχνευση αντικειµένων κλάσεων για τις οποίες υπάρχουν περιορισµένα δεδοµένα. Η προσαρµογή των σύγχρονων ανιχνευτών στο σενάριο περιορισµένων δεδοµένων παραµένει µια πρόκλη ση, καθώς τα περισσότερα µοντέλα απαιτούν τεράστιες ποσότητες δειγµάτων για να εκπαιδευτούν σωστά. Το FSOD αντιµετωπίζει αυτό το πρόβληµα µε την τεχνική ΜΕΤΑ εκπαίδευσης δύο κλάδων, κατά την οποία το µοντέλο εκπαιδεύεται επεισοδιακά. Χρησιµοποιώντας αυτή τη µέθοδο, ένα µοντέλο είναι σε θέση να ανιχνεύει νέες κατηγορίες δίχως ποτέ να έχει εκπαιδευτεί σε αυτές (meta-testing). Μια κοινή µέθοδος ανίχνευσης είναι η δηµιουργία προτύπων κατηγοριών από ένα σύνολο εικόνων υποστήριξης σε κάθε επεισόδιο και η εκµάθηση του τρόπου αντιστοίχησης αυτών µε κάθε εικόνα ερώτησης. Ωστόσο, οι περισσότερες προσεγγίσεις δηµιουργούν αυτά τα πρότυπα µεµονωµένα, χωϱίς να λαµβάνουν υπόψη όλες τις άλλες κλάσεις και τις συσχετίσεις τους, οι οποίες θα µπορούσαν να προσφέρουν κρίσιµη πληροφορία και να εµπλουτίσουν σηµαντικά κάθε ένα από αυτά. Στην παρούσα εργασία, προσπαθούµε να ενσωµατώσουµε αυτές τις συσχετίσεις σε ένα σύγχρονο µοντέλο χρησιµοποιώντας ένα γράφηµα προτύπων. Μέσω της αποτελεσµατικής µεταβίβασης µηνυµάτων µεταξύ όλων των κόµβων, κάθε πρότυπο εµπλουτίζεται από τους πιο παρόµοιους γείτονές του, γεγονός που µπορεί να αντισταθµίσει την περίπτωση των θορυβωδών προτύπων και να βελτιώσει την ακρίβεια ανίχνευσης νέων κλάσεων. Τα πειραµατικά αποτελέσµατα δείχνουν ότι οι προτεινόµενες µέθοδοι βελτιώνουν σηµαντικά την ακρίβεια ανίχνευσης meta-testing του βασικού µοντέλου στο PASCAL VOC σετ δεδοµένων, υπό διαφορετικό αριθµό δειγµάτων (shots) και µετρικών.
Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...ISSEL
Το διευρυµένο τοπίο του λογισµικού ανοιχτού κώδικα OSS αποδεικνύει την αυξανόµενη παραγωγική δραστηριότητα των µηχανικών λογισµικού που συνεισφέρουν σε πολλαπλές πλατφόρµες και διάφορα έργα λογισµικού. Η συµµετοχή τους σε αυτά τα έργα αναδεικνύει το ευρύ ϕάσµα των δεξιοτήτων τους, από τη συγγραφή κώδικα έως τη συνεργασία τους µε άλλους µηχανικούς λογισµικού. Καθώς στο οικοσύστηµα του λογισµικού ανοιχτού κώδικα υπάρχει µια διαρκής και συνεχώς αυξανόµενη δραστηριότητα, είναι πολύ σηµαντική µια πιο ολοκληρωµένη κατανόηση των συνεισφορών και των δεξιοτήτων των µηχανικών λογισµικού. Σκοπός της παρούσας διπλωµατικής είναι να αξιοποιήσει δεδοµένα από την υποδοµή World of Code (WoC) που περιέχει συγκεντρωµένα δεδοµένα από τα περισσότερα δη µόσια συστήµατα ελέγχου εκδόσεων για να παρέχει µια πιο ολοκληρωµένη εικόνα του προφίλ ενός µηχανικού λογισµικού. Εξάγοντας, αναλύοντας και οπτικοποιώντας αυτά τα δεδοµένα, αναπτύχθηκε µια εφαρµογή που παρουσιάζει µια περιεκτική επισκόπηση των δραστηριοτήτων ενός µηχανικού στα έργα λογισµικού ανοικτού κώδικα. Η οπτική αναπαράσταση των δεδοµένων, µετατρέπει πολύπλοκα σύνολα δεδοµένων σε εύκολα κατανοητές γραφικές µορφές. Η αξιολόγηση της εφαρµογής σε ένα σύνολο µηχανικών λογισµικού δείχνει ότι πετυχαίνει τους στόχους της. Προσφέρει µια εικόνα της δραστηριότητας, του ϱόλου και των τεχνικών δεξιοτήτων ενός µηχανικού, ενισχύοντας τη διαφάνεια και την κατανόηση της συνεισφοράς του στο οικοσύστηµα του OSS.
Ανάπτυξη ∆υναµικού και Προσωποποιηµένου Συστήµατος Ερωταπαντήσεων µε Πηγή το ...ISSEL
Η Τεχνητή Νοηµοσύνη αποτελεί έναν τοµέα της τεχνολογίας που καθηµερινά πραγµατοποιεί άλµατα. Αποτελεί την αιχµή του δόρατος στην επίλυση πληθώρας προβληµάτων αλλά και στην παροχή υπηρεσιών υψηλού επιπέδου. Οι εµπορικές εφαρµογές, αν και µε απεριόριστες προοπτικές, τα τελευταία χρόνια εστιάζουν κυϱίως στη Συνοµιλητική Τεχνητή Νοηµοσύνη ή στην Τεχνητή Νοηµοσύνη Επεξεργασίας Βίντεο και Εικόνας, µε αποτέλεσµα τον ενθουσιασµό της αγοράς και των χρηστών, οι οποίοι αποκτούν όλο και µεγαλύτερες απαιτήσεις, ως προς την ποιότητα και τις δυνατότητες των εργαλείων τους. Οι συνοµιλητικοί ϐοηθοί, Chatbots, έχουν διεισδύσει στην καθηµερινότητά, µε πληθώρα µορφών και χρήσεων. Η παραδοσιακή µορφή τους, που απαντούσε ένα κλειστό σύνολο απλοϊκών ερωτήσεων, αντικαταστάθηκε από µοντέρνα συστήµατα και εφαρµογές που προτείνουν, συζητούν, συνοµιλούν, διασκεδάζουν, συµβουλεύουν. Είτε ως εφαρµογές στο κινητό του χρήστη, είτε διαθέσιµοι online, οι σύγχρονοι βοηθοί αποτελούν πλέον κοµµάτι της καθηµερινής ϱουτίνας και των εργαλείων που την καθιστούν πιο ανεκτή και ευχάριστη. Αυτή η καθολική πλέον παρουσία τους καθιστά αναγκαίο τον εκλεκτισµό αυτών των υπηρεσιών προσθέτοντας νέα στοιχεία και παραµέτρους, ανάλογα µε την εξειδίκευση κάθε χρήστη και των αναγκών του. Αυτές οι εφαρµογές, όντας συνεχώς συνδεδεµένες στο διαδίκτυο, θυσιάζουν την ιδιωτικότητα του χρήστη, καθιστώντας τον επιρρεπή σε κακόβουλο λογισµικό ή απάτες. Παράλληλα ,όµως, η πλειοψηφία αυτών των εφαρµογών αδυνατούν να χρησιµοποιήσουν τον µεγαλύτερο όγκο της πληροφορίας η οποία είναι διαθέσιµη στο διαδίκτυο, παρότι είναι συνδεδεµένες σε αυτό. Τέλος, τα υπάρχοντα συστήµατα δεν έχουν προσωποποιηµένο χαρακτήρα. Οι απαντήσεις και οι υπηρεσίες τους σπανίως προσαρµόζονται στον εκάστοτε χρήστη. Σε αυτήν τη διπλωµατική εργασία γίνεται µια προσπάθεια ανάπτυξης ενός ψηφιακού βοηθού ερωταπαντήσεων που αναζητά δυναµικά τις απαντήσεις στον ιστό. Αυτό το σύστηµα, χρησιµοποιώντας προεκπαιδευµένα µοντέλα αλλά και τεχνολογίες λογισµικού, απαντάει τις ερωτήσεις του χρήστη αξιοποιώντας το σύνολο της online πληροφορίας. Η ϕορητότητα του συστήµατος µπορεί να εξασφαλίσει µια ιδιωτική εµπειρία καθώς και απαντήσεις από εξειδικευµένες πηγές δεδοµένων. Τα πειραµατικά αποτελέσµατα αποδεικνύουν ότι το συγκεκριµένο σύστηµα είναι επαρκώς ακριβές, ενώ ταυτόχρονα επιτυγχάνει τους σκοπούς για τους οποίους αναπτύχθηκε. Θυσιάζεται η αναλυτικότητα και το συνοµιλητικό ύφος των συµβατικών ψηφιακών βοηθών, για να αξιοποιηθεί το µέγιστο πλήθος πληροφορίας. Επιπλέον, οι προεκτάσεις του συστήµατος µπορούν να οδηγήσουν σε χρήση του σε εξειδικευµένα συστήµατα όπου η πληροφορία που είναι διαθέσιµη είναι περιορισµένη και προέρχεται πάλι από το διαδίκτυο αλλά µόνο από µια συγκεκριµένη πηγή.
Ανάπτυξη Φίλτρων Ανεπιθύμητων Μηνυμάτων με Χρήση Τεχνικών Τεχνητής ΝοημοσύνηςISSEL
Το ”spamming”, δηλαδή η αποστολή ανεπιθύμητων μηνυμάτων σε πολλούς χρήστες, έχει ευνοηθεί με την ανάπτυξη των ψηφιακών επικοινωνιών και την τεχνοκεντρική στροφή στη ζωή του ανθρώπου. Οι συνθήκες αυτές, διευκολύνουν την αποστολή spam μηνυμάτων, αλλά και ο άνθρωπος είναι περισσότερο εκτεθειμένος σ’ αυτά. Ωστόσο, η ερευνητική κοινότητα έχει αναπτύξει συστήματα ανίχνευσης των ανεπιθύμητων μηνυμάτων για να προστατεύσει τους χρήστες και τον απρόσκοπτο χαρακτήρα της επικοινωνίας, που πραγματοποιείται μέσω των ψηφιακών μέσων. Η αγγλική βιβλιογραφία είναι πλούσια σε μεθόδους που μπορούν να χρησιμοποιηθούν για τον περιορισμό του spam. Από την άλλη, η έρευνα σε άλλες γλώσσες είναι αρκετά περιορισμένη. Η παρούσα διπλωματική στοχεύει στην επέκταση των μεθόδων και συστημάτων ανίχνευσης από τα αγγλικά στα ελληνικά. Λόγω της έλλειψης διαθέσιμων ελληνικών δεδομένων, πραγματοποιείται αυτόματη μετάφραση από τα αγγλικά στα ελληνικά, με τη χρήση της υπηρεσίας μετάφρασης Google translate. Οπότε, τα ελληνικά φίλτρα ανίχνευσης, εκπαιδεύονται στα μεταφρασμένα δεδομένα. Ειδικότερα, εξετάζει διαφόρους αλγορίθμους Μηχανικής Μάθησης και Επεξεργασίας Φυσικής Γλώσσας για την ανάπτυξη των συστημάτων ανίχνευσης. Η διπλωματική, καταλήγει ότι η επανεκπαίδευση μοντέλων BERT, στα δεδομένα του προβλήματος, έχουν τις καλύτερες αποδόσεις και στις δυο γλώσσες. Επίσης, πετυχαίνουν τη μικρότερη δυνατή διαφορά στις αποδόσεις των δυο γλωσσών. Οπότε, προτείνει υλοποιήσεις που βασίζονται στo επανεκπαιδευμένo BERT για τα αγγλικά και στο Greek BERT για τα ελληνικά. Ειδικότερα υλοποιεί ένα Καθολικό Φίλτρο, που συνδυάζει τα διαθέσιμα δεδομένα, Θεματικά Φίλτρα που ανιχνεύουν συγκεκριμένες κατηγορίες spam αλλά και ένα Σύστημα Θεματικών Φίλτρων για την ανίχνευση όλων των κατηγοριών. Τελικά, μέσω της σύγκρισης των αποδόσεων των αγγλικών φίλτρων στα πρωτότυπα αγγλικά δεδομένα και των ελληνικών φίλτρων στα μεταφρασμένα ελληνικά (ανθρωπίνως και αυτοματοποιημένα), η συμβολή της μηχανικής μετάφρασης στην ανάπτυξη ελληνικού συστήματος ανίχνευσης, κρίνεται επιτυχημένη.
Ανάπτυξη Ελληνικών Μοντέλων Εντοπισμού Ρητορικής Μίσους.pptxISSEL
Η ραγδαία και συνεχής εξάπλωση των μέσων κοινωνικής δικτύωσης έχει οδηγήσει σε έξαρση της ρητορικής μίσους και της χρήσης προσβλητικής γλώσσας στη σύγχρονη εποχή. Πολλές έρευνες δείχνουν ότι η ρητορική μίσους στα μέσα κοινωνικής δικτύωσης έχει δυσμενείς επιπτώσεις στην ψυχική και σωματική ευεξία των ατόμων που τα χρησιμοποιούν. Κατά συνέπεια, υπάρχει αυξανόμενη ανάγκη για την αυτοματοποίηση της ανίχνευσης της ρητορικής μίσους και του προσβλητικού περιεχομένου. Είναι σημαντικό να σημειωθεί ότι η πλειονότητα των ερευνητικών προσπαθειών επικεντρώνονται στην ανίχνευση ρητορικής μίσους στην αγγλική γλώσσα. Αυτό οφείλεται κυρίως στη διαθεσιμότητα των απαραίτητων μοντέλων και συνόλων δε δομένων για τη εκπαίδευση τους για την ανίχνευση ρητορικής μίσους. Η ανάγκη ανίχνευσης της ρητορικής μίσους σε γλώσσες εκτός της αγγλικής είναι υψίστης σημασίας. Για να γεφυρωθεί αυτό το κενό, η παρούσα εργασία στοχεύει στην αύξηση των διαθέσιμων ελληνικών δεδομένων με την δημιουργία ενός χειροκίνητα σχολιασμένου συνόλου δεδομένων που αποτελείται από ελληνικά tweets με ετικέτα που αφορά την παρουσία ή την απουσία προσβλητικού περιεχομένου. Επιπλέον, δημιουργήθηκε ένα ακόμα σετ δεδομένων από τα tweets που περιείχαν μόνο ρητορική μίσους, τα οποία επιπλέον διαχωρίστηκαν σε υποκατηγορίες ρητορικής μίσους. Στη συνέχεια, χρησιμοποιούμε τα δύο νέα αυτά σύνολα δεδομένων καθώς και ένα προϋπάρχον ελληνικό σύνολο δεδομένων, εκπαιδεύουμε μοντέλα μηχανικής μάθησης, καθώς και γλωσσικά μοντέλα στηριζόμενα σε νευρωνικά δίκτυα για το ζήτημα της ανίχνευσης ρητορικής μίσους.
Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...ISSEL
Με την ολοένα και αυξανόμενη υιοθέτηση των πρακτικών DevOps και την άνοδο του Continuous Integration/Continuous Deployment (CI/CD) στην ανάπτυξη λογισμικού, ο κύκλος ζωής ανάπτυξης λογισμικού (SDLC) έχει επιφέρει σημαντικές αλλαγές στη βιομηχανία. Αν και αυτές οι μέθοδοι προσφέρουν πολλά πλεονεκτήματα, παρουσιάζουν επίσης μοναδικές προ κλήσεις ασφαλείας, καθώς οι εφαρμογές που αναπτύσσονται με αυτές είναι πιο επιρρεπείς σε κυβερνοεπιθέσεις συγκριτικά με τις παραδοσιακές μεθόδους ανάπτυξης λογισμικού. Το DevSecOps, ένας συνδυασμός πρακτικών ανάπτυξης (Dev), ασφάλειας (Sec) και λειτουργιών (Ops), έχει αναδειχθεί ως μια κρίσιμη προσέγγιση στην ασφάλεια λογισμικού στο σημερινό ταχέως εξελισσόμενο τεχνολογικό τοπίο. Αυτή η μεθοδολογία είναι ουσιαστική και σχετική για διάφορους λόγους. Πρώτον, αντιμετωπίζει την αυξανόμενη ανάγκη για ασφάλεια στην ανάπτυξη λογισμικού. Καθώς οι απειλές και οι επιθέσεις στον κυβερνοχώρο γίνονται πιο εξελιγμένες, η ενσωμάτωση της ασφάλειας στον αγωγό DevOps βοηθά τους οργανισμούς να εντοπίζουν και να μετριάζουν προληπτικά τις ευπάθειες από το πρώιμο στάδιο ανάπτυξης του λογισμικού, μειώνοντας τον κίνδυνο παραβίασης δεδομένων και διακοπής λειτουργίας. Δεύτερον, η ανάγκη για ταχύτερες και συχνότερες εκδόσεις λογισμικού απαιτεί μια μετατόπιση από τις παραδοσιακές πρακτικές ασφαλείας, οι οποίες συχνά προκαλούν καθυστε ρήσεις. Το DevSecOps απλοποιεί την ασφάλεια αυτοματοποιώντας τις δοκιμές και τους ελέγχους συμμόρφωσης, επιτρέποντας τη συνεχή παράδοση (CD) χωρίς να θυσιάζεται η ασφάλεια. Επιπλέον, το DevSecOps ενθαρρύνει μια κουλτούρα κοινής ευθύνης, ενισχύοντας τη συνεργασία μεταξύ προγραμματιστών, επαγγελματιών ασφάλειας και ομάδων επιχειρήσεων. Αυτή η συλλογική προσέγγιση οδηγεί σε βελτιωμένη επικοινωνία, βελτιωμένη επίγνωση των ανη συχιών για την ασφάλεια και ταχύτερη απόκριση σε αναδυόμενες απειλές. Σε μια εποχή όπου ο ψηφιακός μετασχηματισμός βρίσκεται στην πρώτη γραμμή των επιχει ρηματικών στρατηγικών, το DevSecOps είναι απαραίτητο για τη διασφάλιση της ανθεκτικότητας, της ακεραιότητας και της εμπιστευτικότητας των συστημάτων λογισμικού. Ευθυγραμμίζει την ασφάλεια με το ρυθμό της σύγχρονης ανάπτυξης λογισμικού, καθιστώντας το ένα κρίσιμο και επίκαιρο παράδειγμα για τη διαφύλαξη των ψηφιακών δεδομένων και περιουσιακών στοιχείων. Η παρούσα διπλωματική προτείνει μια μέθοδο για τη συμπλήρωση και την αυτοματοποίηση σαρώσεων ασφάλειας έργων λογισμικού με χρήση αποκλειστικά εργαλείων ανοιχτού κώδικα (Open-source software) για την πραγματοποίηση των σαρώσεων ασφάλειας, την παρακολούθηση των αποτελεσμάτων και την αυτοματοποίηση επιδιορθώσεων ευπαθειών. Η προτεινόμενη έρευνα έχει ενσωματωθεί σε υποδομή Continuous Integration/Continuous Delivery, επιτρέποντας την αυτόματη σάρωση και επιδιόρθωση τρωτών σημείων κατά τη διαδικασία και τον κύκλο ανάπτυξης και παράδοσης του λογισμικού.
Ανάπτυξη συστήματος ιεραρχικής ομαδοποίησης και διαχείρισης κειμένων για αποκ...ISSEL
Η ανάκτηση πληροφορίας ανέκαθεν ήταν μια πλέον σημαντική πτυχή κάθε διεργασίας και δεδομένης της ταχείας αύξησης της απαίτησης γρήγορης και εύστοχης παροχής και ανάκτησης πληροφοριών, δεν είναι τίποτα παρά φυσικό να γίνεται συλλογική προσπάθεια προς την βελτιστοποίηση αυτής της διαδικασίας με οποιαδήποτε μέσα είναι διαθέσιμα, όπως η Τεχνητή Νοημοσύνη. Με αυτό τον τρόπο θα μπορεί ένας υπολογιστής να “εκπαιδευτεί” και να βοηθάει στο έργο αυτό, αντί να είναι μονάχα ένα εργαλείο για μαθηματικά πιθανοτήτων και στατιστική. Σε μία εποχή όπου τα πάντα είναι καθοδηγούμενα από την πληροφορία και τα δεδομένα, η ανάγκη για δομημένα δεδομένα και ορθή ανάκτηση πληροφορίας είναι τουλάχιστον επιτακτική. Η δομή και η οργάνωση στα δεδομένα διευκολύνει την λήψη αποφάσεων και μέσω αυτού επιβεβαιώνεται πάντα η σημασία και η συνεισφορά της τεχνητής νοημοσύνης και των μοντέλων μηχανικής μάθησης. Η εφαρμογή και η υλοποίηση μεθόδων και τεχνικών βαθιάς μάθησης μπορεί σταδιακά μπορεί να βοηθήσει στην απαλλαγή μας από την εξάρτηση από λέξεις κλειδιά και να οδεύσουμε προς την διδασκαλία της σημασιολογικής κατανόησης της φυσικής γλώσσας από τους υπολογιστές. Σε αυτό μπορεί να συνεισφέρει εν μέρει από ένα πλήρως αυτόνομο σύστημα ικανό να οργανώνει, να διαχειρίζεται και να ταξινομεί έγγραφα σημασιολογικά, με ελάχιστη εκπαίδευση. Η αξιοποίηση των δυνατοτήτων και της πολυχρηστικότητας της μάθησης και ταξινόμησης μηδενικών και λίγων βολών, καθώς και των σύγχρονων τεχνικών θεματικής μοντελοποίησης, μπορεί κανείς να αναπτύξει μια εφαρμογή που ως είσοδο λαμβάνει ακατέργαστα μη επισημειωμένα ή επεξεργασμένα δεδομένα και να επιστρέφει μια πλήρως λειτουργική εφαρμογή ερωτοαπαντήσεων. Στην προσπάθεια μεγιστοποίησης της πολυχρηστικότητας του εν λόγω συστήματος, η παρούσα διπλωματική εργασία ερευνεί και αξιολογεί την βιωσιμότητα ενός συστήματος τέτοιας φύσεως. Δεδομένου ότι ο τελικός σκοπός είναι η δομημένη πληροφορία και η αποτελεσματική ανάκτηση της, θα εξεταστεί η υπόθεση της αποκεντρωμένης προσέγγισης, καθώς μειώνονται σημαντικά οι απαιτήσεις υπολογιστικής ισχύος και αποθηκευτικού χώρου. Μέσω δοκιμών και πειραμάτων τα παραγόμενα δεδομένα φαίνεται να υποστηρίζουν την υπόθεση υπέρ ενός τέτοιου συστήματος, και δυνητικά με διάφορα πλεονεκτήματα υπέρ ενός αντίστοιχου αλλά ενιαίου συστήματος.
Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στό...ISSEL
Η συνεχής ανάπτυξη της τεχνολογίας έχει εδραιώσει τη χρήση γραφικών διεπαφών ως έναν εύχρηστο και χρήσιμο τρόπο αλληλεπίδρασης με έναν υπολογιστή. Παράλληλα η εξάπλωση του ηλεκτρονικού εμπορίου, που αποτελεί πλέον κυρίαρχο τρόπο πραγματοποίησης εμπορικών συναλλαγών, αλλάζει τα εμπορικά δεδομένα. Αυτά καθιστούν απαραίτητο τον εκσυγχρονισμό των επιχειρήσεων και την αναπροσαρμογή των πολιτικών και στρατηγικών τιμολόγησης που θα υιοθετήσουν, ώστε οι τιμές και οι προωθητικές τους ενέργειες να είναι ανταγωνιστικές, να συμβάλλουν στην επίτευξη των στόχων τους και στην μεγιστοποίηση των κερδών τους μέσα από ένα φιλικό γραφικό περιβάλλον διεπαφής. Η παρούσα διπλωματική εργασία πραγματεύεται τον σχεδιασμό και την ανάπτυξη μιας γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στόχο την εξέλιξη τεχνικών δυναμικής τιμολόγησης. Η γραφική διεπαφή που αναπτύσσεται περιέχει μια φόρμα συμπλήρωσης των παραμέτρων ενός αλγοριθμικού μοντέλου στρατηγικών τιμολόγησης, ένα περιβάλλον γραφικής οπτικοποίησης των εισόδων του χρήστη και ένα αντίστοιχο περιβάλλον προβολής των αποτελεσμάτων του συστήματος.
Δημιουργία Ολοκληρωμένου Συστήματος Επαλήθευσης Ορθότητας ΙσχυρισμώνISSEL
Βασικό χαρακτηριστικό της σημερινής εποχής είναι η ταχύτατη διακίνηση της πληροφορίας. Η ποικιλία και ο τεράστιος όγκος των μεταδιδόμενων πληροφοριών δεν επιτρέπουν πάντα τον έλεγχο της εγκυρότητάς τους πριν τη μαζική αναπαραγωγή τους, με αποτέλεσμα να εμφανίζεται έντονα το φαινόμενο της παραπληροφόρησης. Παλαιότερα ο έλεγχος των ειδήσεων πραγματοποιούνταν χειροκίνητα, ωστόσο πλέον η ανάγκη ανάπτυξης αυτόματων συστημάτων διασταύρωσης της πληροφορίας κρίνεται επιτακτική. Στο πλαίσιο της παρούσας διπλωματικής εργασίας αναπτύσσεται ένα end to end σύστημα ανίχνευσης ψευδών ειδήσεων, το οποίο αποτελείται από επιμέρους εξαρτήματα που ακολουθούν την παρακάτω συλλογιστική πορεία. Σε πρώτη φάση ανιχνεύονται προτάσεις που αξίζει να ελεγχθούν ως προς την ορθότητά τους. Για κάθε μία από αυτές, συγκεντρώνεται ένας αριθμός εγγράφων από μια βάση ‘αλήθειας’, τα οποία λειτουργούν ως αποδεικτικά στοιχεία. Τέλος, με βάση τα παραπάνω αποδεικτικά έγγραφα λαμβάνεται μία απόφαση σχετικά με την εγκυρότητα των προτάσεων που επιλέγονται. Για τη δημιουργία του παραπάνω συστήματος αξιοποιείται το σύνολο δεδομένων FEVER, το οποίο περιέχει προτάσεις γενικού ενδιαφέροντος. Εξετάζεται η απόδοση των προ-εκπαιδευμένων μοντέλων BERT, RoBERTa, DistilBERT και SqueezeBERT τα οποία εκπαιδεύονται σε τμήμα του συνόλου. Διερευνάται η επιρροή του ρυθμού και του αριθμού εποχών εκπαίδευσης στην επίδοσή τους, καθώς και η συμπεριφορά τους σε απλές και σύνθετες διεργασίες, όπως είναι ο εντοπισμός των προτάσεων προς εξέταση και η επαλήθευσή τους αντίστοιχα. Για την ανάκτηση των απαραίτητων εγγράφων που χρησιμοποιούνται για την επαλήθευση της ορθότητας των προτάσεων, αξιοποιούνται αλγόριθμοι που στηρίζονται στα λεξιλογικά χαρακτηριστικά των κειμένων, BM25, αλλά και Sentence Transformers, msmarco distilbert-base-tas-b, που έχουν την ικανότητα να αντιλαμβάνονται τα συμφραζόμενα των κειμένων. Τέλος, δημιουργείται μια εφαρμογή η οποία προσφέρει τη δυνατότητα στο χρήστη να καταθέτει την πρόταση του συνόλου ελέγχου που επιθυμεί να ελέγξει και παράλληλα οπτικοποιεί τα αποτελέσματα του συστήματος παρέχοντας αιτιολόγηση για κάθε απόφαση που λαμβάνεται. Τα πειραματικά αποτελέσματα καταδεικνύουν την απόδοση των επιλεγόμενων υλοποιήσεων στο σύνολο ελέγχου του FEVER Shared Task για κάθε διεργασία ξεχωριστά και το πως επηρεάζει την απόδοση ο συνδυασμός τους. Το σύστημα που προτείνεται επιτυγχάνει ακρίβεια πρόβλεψης 60.2% στο FEVER Shared Task, υπολείπεται 8% της καλύτερης υλοποίησης, και 58.12% στο σύνολο της διεργασίας, συμπεριλαμβανομένης της διαδικασίας ανίχνευσης ισχυρισμών, φανερώνοντας την πολυπλοκότητα δημιουργίας τέτοιων συστημάτων.
Εξόρυξη δεδοµένων για τη δυναµική ενσωµάτωση γνώσης σε πολυπρακτορικά συστήµαταISSEL
Η κατανεµηµένη φύση της τεχνολογίας Εξόρυξης ∆εδοµένων έχει στο παρελθόν
αντιµετωπιστεί επιτυχώς µε τη χρήση και αξιοποίηση της τεχνολογίας των Πρακτόρων Λογισµικού, οι οποίοι καταµερίζουν τις εργασίες, συνεργάζονται και συγχρονίζονται έτσι ώστε να φτάσουν στον τελικό τους στόχο, την εξαγωγή χρήσιµης γνώσης. Μια σειρά από εξελιγµένα εργαλεία Εξόρυξης ∆εδοµένων έχουν ήδη αναπτυχθεί, αποδεικνύοντας ότι η Πολυπρακτορική Τεχνολογία µπορεί πράγµατι να χρησιµοποιηθεί για να επιλύσει τέτοιου είδους προβλήµατα. Αντιστρέφοντας τους ρόλους του σκοπού και του µέσου, όµως, γνώση η οποία εξάγεται µε τη χρήση τεχνικών Εξόρυξης ∆εδοµένων δεν έχει χρησιµοποιηθεί για τη βελτίωση Πολυπρακτορικών Συστηµάτων. Περιορισµοί οι οποίοι σχετίζονται µε τη
διαφορετική φύση της λογικής που υιοθετούν οι δυο εµπλεκόµενες τεχνολογίες
(επαγωγική για την Εξόρυξη ∆εδοµένων και συµπερασµατική για τα Πολυπρακτορικά
Συστήµατα), εµποδίζουν την απρόσκοπτη εφαρµογή της εξαγόµενης γνώσης στο
λογικό µοντέλο των πρακτόρων. Εάν αυτοί οι περιορισµοί υπερκεραστούν, τότε ο
συγκερασµός των δυο τεχνολογιών θα καταστεί εφικτός.
Στα πλαίσια της διατριβής αυτής παρουσιάζεται µια ενοποιηµένη µεθοδολογία, η
οποία επιτρέπει την εφαρµογή δυναµικών, σύνθετων και ανανεώσιµων κανόνων σε
πολυπρακτορικά συστήµατα. Οι κανόνες αυτοί εξάγονται µε τη χρήση τεχνικών
Εξόρυξης ∆εδοµένων, σε πράκτορες και πολυπρακτορικά συστήµατα. Η µεθοδολογία
αυτή αναγνωρίζει τρεις διαφορετικούς τύπους γνώσης, η οποία προέρχεται από την
εφαρµογή τεχνικών Εξόρυξης ∆εδοµένων, και ανάλογα διαφοροποιεί το µοντέλο
διάχυσής της. Οι τρεις αυτοί τύποι γνώσης είναι: α) γνώση η οποία εξάγεται µε τη
χρήση τεχνικών Εξόρυξης ∆εδοµένων στα ιστορικά δεδοµένα µιας εφαρµογής, β)
γνώση η οποία εξάγεται µε τη χρήση τεχνικών Εξόρυξης ∆εδοµένων στα ιστορικά
δεδοµένα των συµπεριφορών των πρακτόρων µιας εφαρµογής και, γ) γνώση η οποία
εξάγεται µε τη χρήση εξελικτικών τεχνικών Εξόρυξης ∆εδοµένων σε πολυπρακτορικές κοινωνίες. Στη διατριβή αυτή µελετάται η δυνατότητα εφαρµογής των τεσσάρωνκυρίαρχων τεχνικών Εξόρυξης ∆εδοµένων σε πολυπρακτορικά συστήµατα:
Οµαδοποίηση για διαχωρισµό, Ταξινόµηση για κατηγοριοποίηση και πρόβλεψη,
εξαγωγή Κανόνων Συσχέτισης για ανακάλυψη συσχετισµών και Γενετικοί αλγόριθµοι
για αυτό-οργάνωση. Για την υλοποίηση και επίδειξη της δυναµικής ενσωµάτωσης
γνώσης σε πράκτορες αναπτύχθηκε ο Data Miner, ένα εργαλείο που περιγράφεται στο Κεφάλαιο 4. Για κάθε έναν από τους τρεις διαφορετικούς τύπους γνώσης αναπτύχθηκε και ένα αντιπροσωπευτικό Πολυπρακτορικό Σύστηµα, του οποίου και γίνεται εκτενής παρουσίαση (Κεφάλαια 5-7). Τέλος, η παρούσα διατριβή πραγµατεύεται και το θέµα της βελτίωσης του γνωσιακού µοντέλου των πρακτόρων, µε την επανάληψη της διαδικασίας χρήσης τεχνικών Εξόρυξης ∆εδοµένων πάνω σε σύγχρονα και ενηµερωµένα δεδοµένα (Επανεκπαίδευση – Κεφάλαιο 8). Τα συµπεράσµατα από την εκπόνηση της διατριβής και πιθανές µελλοντικές επεκτάσεις συνοψίζονται στο Κεφάλαιο 9.
ΕΥΦΥΗΣ ΜΕΘΟΔΟΛΟΓΙΑ ΑΠΟΤΙΜΗΣΗΣ ΤΟΥ ΒΑΘΜΟΥ ΔΙΑΤΗΡΗΣΙΜΟΤΗΤΑΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ ΜΕ...ISSEL
Οι ολοένα αυξανόμενες απαιτήσεις των σύγχρονων έργων λογισμικού τόσο σε
λειτουργικό, όσο και σε μη λειτουργικό επίπεδο έχουν καταστήσει παραπάνω από
εμφανή την ανάγκη επόπτευσης της ποιότητάς τους. Το γεγονός αυτό
καταδεικνύεται από το μεγάλο ποσοστό των έργων λογισμικού που αποτυγχάνουν,
καθώς αδυνατούν να ικανοποιήσουν τις προδιαγραφές που έχουν τεθεί στα
πλαίσια ενός σαφούς χρονοδιαγράμματος και εντός προϋπολογισμού. Η απάντηση
στην πρόκληση αυτή εντοπίζεται στην ανάπτυξη μεθοδολογιών και τεχνικών
αποτίμησης της ποιότητας λογισμικού, διαδικασία που αποτελεί ανοιχτό πεδίο
ερευνητικού ενδιαφέροντος και συγκεντρώνει μεγάλη απήχηση εδώ και δεκαετίες.
...
Μηχανισμοί αυτοματοποίησης διαδικασιών σχεδίασης, υλοποίησης και ανάπτυξης λο...ISSEL
Ως γνωστόν, οι επιστήμες της ρομποτικής και των Κυβερνοφυσικών Συστημά-
των (ΚΦΣ) καλύπτουν/απαιτούν ένα ευρύ φάσμα γνώσεων στα πεδία του υλικού,
του λογισμικού, των συστημάτων, των αλγορίθμων μηχανικής μάθησης κ.α., καθι-
στώντας τον έλεγχο ενός ρομπότ, ή μίας συσκευής, μία χρονοβόρα και δύσκολη
διαδικασία, ακόμη και για κάποιον εξοικειωμένο με τους συγκεκριμένους τομείς.
Από την άλλη, η ραγδαία εξέλιξη στους κλάδους της ρομποτικής, του διαδικτύου
των πραγμάτων (IoT) και των σύγχρονων ΚΦΣ, έχει ως αποτέλεσμα την ανάπτυ-
ξη διάφορων τεχνολογιών και εργαλείων υποστήριξης της ανάπτυξης συστημάτων
και εφαρμογών τα τελευταία χρόνια. Η υψηλή ετερογένεια που συναντάμε στα
συστήματα αυτά, βασίζεται κυρίως στην διασύνδεση του φυσικού και του ψηφια-
κού κόσμου, αλλά και στην πληθώρα των διαθέσιμων τεχνολογιών και εργαλείων
σχεδίασης, ανάπτυξης και εγκατάστασης. Παραδείγματα σύγχρονων ΚΦΣ είναι τα
έξυπνα σπίτια και οι έξυπνες υποδομές γενικότερα, καθώς και τα ψηφιακά δίδυμα.
Τα συστήματα αυτά αποτελούνται από φυσικές συσκευές, οι οποίες αλληλεπιδρούν
με το φυσικό περιβάλλον μέσω των αισθητήρων και ενεργοποιητών που διαχειρί-
ζονται, καθώς και από ψηφιακές οντότητες, οι οποίες είναι υπεύθυνες για την δια-
σύνδεση, την επεξεργασία, την παρακολούθηση, τον έλεγχο και την ενορχήστρωση
σε επίπεδο συστήματος και εφαρμογής.
Η παρούσα διδακτορική διατριβή επικεντρώνεται στο πρόβλημα της μέτα-μοντε-
λοποίησης των φάσεων σχεδίασης (design), υλοποίησης (implementation) και α-
νάπτυξης (deployment) Κυβερνοφυσικών Συστημάτων (ΚΦΣ). Συγκεκριμένα, στα
πλαίσια της διατριβής μελετήθηκαν και εφαρμόστηκαν τεχνικές μηχανικής λογισμι-
κού οδηγούμενης από μοντέλα για την ανάπτυξη μιας μεθοδολογίας και αντίστοι-
χων Γλωσσών Ειδικού Πεδίου (Domain Specific Languages - DSLs) για την αυτο-
ματοποίηση των προαναφερθεισών φάσεων. Βασικός στόχος της διατριβής είναι η
συστηματοποίηση των διαδικασιών ανάπτυξης σύγχρονων συστημάτων και εφαρ-
μογών ΚΦΣ, με χρήση υψηλού επιπέδου εργαλείων, μεσολογισμικού και γλωσσών
ειδικού πεδίου. Η διατριβή εστιάζει σε συσκευές ανοικτού υλικού και λογισμι-
κού (open hardware/open software), ενώ στοχεύει να διευκολύνει την ανάπτυξη
εφαρμογών από μη ειδικούς του πεδίου (citizen developers) μέσω της χρήσης των
μέτα-μοντέλων και των γλωσσών που αναπτύχθηκαν στα πλαίσια της διατριβής.
Εξόρυξη δεδομένων τεχνολογίας λογισμικού για επαναχρησιμοποίηση λογισμικούISSEL
Η ανάγκη για την αποτελεσματική ανάπτυξη και συντήρηση λογισμικού έχει εντοπιστεί εδώ και αρκετό καιρό στο σχετικό κλάδο της Τεχνολογίας Λογισμικού. Σήμερα, ωστόσο, με την εισαγωγή νέων πρακτικών ανάπτυξης λογισμικού και πρωτοβουλιών λογισμικού ανοικτού κώδικα, τα δεδομένα λογισμικού που μπορεί να βρει κανείς στο διαδίκτυο είναι άφθονα, επομένως η πρόκληση που προκύπτει είναι η αποτελεσματική αξιοποίησή τους για την παραγωγή καλύτερων προϊόντων λογισμικού. Και η πρόκληση αυτή αποτελεί στην πραγματικότητα ένα πρόβλημα επαναχρησιμοποίησης. Στο πλαίσιο αυτής της διατριβής προτείνουμε μια ενιαία προσέγγιση που περιλαμβάνει την εφαρμογή τεχνικών εξόρυξης δεδομένων σε δεδομένα τεχνολογίας λογισμικού για τη διευκόλυνση της επαναχρησιμοποίησης σε διάφορες φάσεις του κύκλου ζωής του λογισμικού. Η μεθοδολογία μας προτείνει λύσεις για τη φάση του καθορισμού των απαιτήσεων και της εξαγωγής προδιαγραφών, τις φάσεις της σχεδίασης και ανάπτυξης λογισμικού, ενώ συμβάλλει επίσης στην αξιολόγηση της ποιότητας και τον έλεγχο του λογισμικού.
Ανάλυση ∆εδοµένων ΄Εργων Λογισµικού για Ανάπτυξη σε Νέα Πεδία ΕφαρµογήςISSEL
Η ταχεία παραγωγή έργων λογισµικού σε ανταγωνιστικές αγορές πλέον επιτάσσει
αυτοµατοποίηση των ϕάσεων σχεδίασης και ανάπτυξης. Οι µηχανικοί λογισµικο-
ύ εξοικειώνονται συνεχώς µε νέα εργαλεία και τεχνολογίες που εξασφαλίζουν την
ορθή εφαρµογή σύγχρονων µεθοδολογιών, αλλά καλούνται συχνά να παράξουν
λογισµικό και σε πεδία εφαρµογής µε τα οποία δεν είναι εξοικειωµένοι, πάντο-
τε προσπαθώντας να ικανοποιήσουν τον προϊοντικό χάρτη στον οποίο εργάζονται.
Η παρούσα διδακτορική διατριβή έχει ως στόχο να ϐοηθήσει τους µηχανικούς
σε αυτήν τους την προσπάθεια εισάγοντας µια επικουρική µεθοδολογία ανάπτυ-
ξης. Αυτή ϐασίζεται στην ανάλυση της διαθέσιµης πεδιακής γνώσης προηγούµενων
έργων λογισµικού µε συστήµατα τεχνητής νοηµοσύνης και στη µερικώς αυτοµα-
τοποιηµένη συγγραφή πηγαίου κώδικα µε νέες τεχνικές. Για την ακρίβεια, προ-
τείνεται µια ϱοή ανάπτυξης και µια σειρά ϑεωρητικών και πρακτικών εργαλείων
τα οποία ϐοηθούν στη διερεύνηση υπαρχουσών λύσεων, την κατανόησή τους, και
τη συγγραφή πηγαίου κώδικα για την παραγωγή επαναχρησιµοποιήσιµων έργων
λογισµικού. Η προτεινόµενη µεθοδολογία µπορεί να υιοθετηθεί τόσο από νέους
όσο και από πεπειραµένους µηχανικούς για την επιτάχυνση της διαδικασίας α-
νάπτυξης λογισµικού σε νέα (για αυτούς) πεδία εφαρµογής.
Camera-based localization of annotated objects in indoor environmentsISSEL
As the demands increases, the detection and monitoring of motion are increasingly recognized as significant features in every vision system designed to operate in an uncontrolled, indoor environment. From the autonomous navigation and execution of tasks that require interaction with the environments, to simple monitoring, position detection is considered essential. Due to the variety of the system requirements, several detection approaches have been implemented based on indoor or outdoor sensors. However, one of the most important cases of external sensors are cameras. This dissertation aims to introduce the usage of visual patterns as landmarks to detect the pattern’s exact position by a camera system located in the environment. This attempt could be possibly considered as the main contribution of this thesis, since it introduces a universal way of position detection that can be integrated in various systems regardless of type and task to be implemented. To achieve these goals, three patterns were created, -one with LEDs, one with colors and QR codes, which are based on different recognition principles in order to conclude which one results to more accurate detection over a wide range of conditions. The methodology built has proven to be effective and highly accurate during the experimental process on a small scale environment for all different patterns.
Εντοπισμός θέσης επισημασμένου αντικειμένου σε εσωτερικό χώρο με χρήση πολλαπ...ISSEL
Η ανίχνευση και η παρακολούθηση κίνησης αναγνωρίζονται όλο και περισσότερο ως σημαντικές δυνατότητες σε κάθε σύστημα όρασης σχεδιασμένο να λειτουργεί σε μη ελεγχόμενο, εσωτερικό περιβάλλον καθώς αυξάνονται όλο ένα και περισσότερο οι απαιτήσεις. Από την αυτόνομη πλοήγηση και την επιτέλεση εργασιών που απαιτούν αλληλεπίδραση με το περιβάλλον, μέχρι και την απλή παρακολούθηση αποτελούν δραστηριότητες που ωθούν την ανάπτυξη τεχνολογιών για την δημιουργία ενός εύρωστου τρόπου εντοπισμού της θέσης. Λόγω της ποικιλομορφίας των απαιτήσεων των συστημάτων, έχουν αναπτυχθεί τρόποι εντοπισμού που βασίζονται είτε σε εσωτερικούς είτε σε εξωτερικούς αισθητήρες. Στην περίπτωση των εξωτερικών αισθητήρων από τους πιο σημαντικούς αποτελούν οι κάμερες. Στη διπλωματική αυτή, εισάγεται η χρήση εξωτερικών μοτίβων σαν ορόσημα για την αναγνώριση και τον εντοπισμό της ακριβούς θέσης από ένα σύστημα καμερών που είναι τοποθετημένο στο περιβάλλον. Αυτό μπορεί να θεωρηθεί ενδεχομένως και ως η σημαντικότερη συνεισφορά της διπλωματικής καθώς εισάγει έναν καθολικό τρόπο εντοπισμού, που μπορεί να ενσωματωθεί σε διάφορα συστήματα ανεξάρτητα από το είδος τους και τις εργασίες που επιθυμούμε να υλοποιούν. Για να επιτευχθούν αυτοί οι στόχοι δημιουργήθηκαν τρία διαφορετικά μοτίβα, -ένα με led, ένα με χρώματα και QR Codes βασισμένα σε διαφορετικές αρχές αναγνώρισης με σκοπό να μελετήσουμε ποιο λειτουργεί πιο εύρωστα σε μεγαλύτερο εύρος συνθηκών. Η μεθοδολογία αποδείχθηκε αποτελεσματική και με μεγάλη ακρίβεια στην πειραματική διαδικασία σε ένα περιβάλλον μικρής κλίμακας για όλα τα διαφορετικά μοτίβα.
Design and implementation of an automation mechanism to automatically develop...ISSEL
As the internet acquires an increasingly important role in society, computer systems tend to become larger and more complex. That means there is a greater need for quicker development of reliable software. A promising answer to that need are automated code generation mechanisms. The use of those mechanisms can provide a great increase, both in productivity and in the quality of the final product. However, developing such a mechanism usually follows the “traditional” ways of developing software, therefore exhibits the downsides of those ways such as increased effort in debugging requires a high level in technical skills. Aiming to solve the problems presented in the development of automated code generation mechanisms, in the current diploma thesis, model driven engineering (MDE) is utilized. Specifically, once a subtractive model has been defined, a series of transformations take place, resulting in a fully functional system. In this way, the software development process is accelerated and software is produced with greater reliability. This thesis implements the DeGraCom (Designing Graphical Commands) system. DeGraCom offers a user-friendly interface, which allows its user, even if they do not have any expertise when it comes to web programming, to design and implement web components-commands in an automated way. These components follow the client-server architecture, so that they can be easily integrated to existing automated mechanisms, in order to expand their functionality. To test and evaluate the DeGraCom system, the components-commands produced by DeGraCom are tested on the TekTrain platform. TekTrain offers a number of tools and interfaces, along with a series of smart devices, and aims to ease the learning process of new technologies for children. The main interface offered by TekTrain, allows its users to define a number of commands for its smart devices to perform. DeGraCom aims to automate the process of creating such a command.
ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΜΗΧΑΝΙΣΜΟΥ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗΣ ΤΗΣ ΑΝΑΠΤΥΞΗΣ ΓΡΑΦΙΚΩΝ ΕΝΤΟΛ...ISSEL
Καθώς το διαδίκτυο αποκτά ολοένα και σημαντικότερο ρόλο στην κοινωνία, τα υπολογιστικά συστήματα γίνονται ολοένα και μεγαλύτερα, και συγχρόνως πολυπλοκότερα. Διογκώνεται έτσι η ανάγκη για γρήγορη παραγωγή αξιόπιστου λογισμικού. Μία υποσχόμενη απάντηση στην ανάγκη αυτή είναι οι μηχανισμοί αυτοματοποίησης παραγωγής κώδικα για συγκεκριμένα προβλήματα. Η χρήση των μηχανισμών αυτών, αποφέρει σημαντικά κέρδη παραγωγικότητας και ποιότητας του τελικού αποτελέσματος. Ωστόσο η ανάπτυξή τους ακολουθεί ως επί το πλείστων τον «παραδοσιακό» τρόπο ανάπτυξης και συνεπώς παρουσιάζει τα μειονεκτήματα αυτού, όπως αυξημένη προσπάθεια εκσφαλμάτωσης και μεγαλύτερη ανθρωποπροσπάθεια ενώ ταυτοχρόνως απαιτεί σημαντικές τεχνικές γνώσεις. Με στόχο να αντιμετωπιστούν οι αγκυλώσεις που παρουσιάζει η ανάπτυξη μηχανισμών αυτοματοποίησης παραγωγής κώδικα, στην παρούσα διπλωματική εργασία, αξιοποιείται η μηχανική οδηγούμενη από μοντέλα ή μοντελοστρεφής μηχανική (Model Driven Engineering ή MDE). Συγκριμένα, αφού οριστεί ένα αφαιρετικό μοντέλο, πραγματοποιείται μια σειρά από μετασχηματισμούς, με τελικό αποτέλεσμα μια πλήρως λειτουργική εφαρμογή. Με αυτό τον τρόπο, επιταχύνεται διαδικασία ανάπτυξης λογισμικού και παράγεται λογισμικό με μεγαλύτερη αξιοπιστία. Η παρούσα διπλωματική εργασία υλοποιεί το σύστημα DeGraCom (Developing Graphical Commands). Το DeGraCom παρέχει μία φιλική γραφική διεπαφή επιτρέπει στους χρήστες του, ακόμη και αν δεν γνωρίζουν διαδικτυακό προγραμματισμό, να παράγουν διαδικτυακά τμήματα-εντολές με αυτοματοποιημένο τρόπο. Τα τμήματα αυτά ακολουθούν την αρχιτεκτονική Client-Server ούτως ώστε να είναι εύκολη η ενσωμάτωσή τους που σε υπάρχοντες διαδικτυακούς Αυτόματους Μηχανισμούς προς επέκταση των δυνατοτήτων τους. Για την δοκιμή και αξιολόγηση αυτού του συστήματος, τα τμήματα-εντολές που παράγονται δοκιμάστηκαν στην πλατφόρμα TekTrain. Το τελευταίο, παρέχει ένα σύνολο από εργαλεία και διεπαφές, παράλληλα με μία σειρά από έξυπνες συσκευές, με στόχο την διευκόλυνση την εκπαίδευσης των παιδιών στις νέες τεχνολογίες. Η βασική γραφική διεπαφή του επιτρέπει στους χρήστες της να ορίσουν ένα σύνολο από δράσεις/εντολές για τις έξυπνες συσκευές του. Το σύστημα DeGraCom στοχεύει στο να αυτοματοποιήσει την διαδικασία δημιουργίας νέων εντολών.
ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΜΗΧΑΝΙΣΜΟΥ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗΣ ΤΗΣ ΑΝΑΠΤΥΞΗΣ ΓΡΑΦΙΚΩΝ ΕΝΤΟΛ...
ΧΡΗΣΗ ΤΕΧΝΙΚΩΝ ΒΑΘΙΑΣ ΜΑΘΗΣΗΣ ΓΙΑ ΤΗΝ ΚΑΤΑΝΟΗΣΗ ΤΗΣ ΣΗΜΑΝΤΙΚΟΤΗΤΑΣ ΔΗΜΟΓΡΑΦΙΚΩΝ ΧΑΡΑΚΤΗΡΙΣΤΙΚΩΝ ΣΤΗΝ ΑΙΣΘΗΤΙΚΗ ΙΣΤΟΣΕΛΙΔΩΝ
1. ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ
ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ
ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ
ISSEL
ΧΡΗΣΗ ΤΕΧΝΙΚΩΝ ΒΑΘΙΑΣ ΜΑΘΗΣΗΣ ΓΙΑ ΤΗΝ ΚΑΤΑΝΟΗΣΗ ΤΗΣ
ΣΗΜΑΝΤΙΚΟΤΗΤΑΣ ΔΗΜΟΓΡΑΦΙΚΩΝ ΧΑΡΑΚΤΗΡΙΣΤΙΚΩΝ ΣΤΗΝ
ΑΙΣΘΗΤΙΚΗ ΙΣΤΟΣΕΛΙΔΩΝ
Εκπόνηση:
Αναστάσιος Παπαδόπουλος
ΑΕΜ 8407
Επιβλέποντες:
Αναπ. Καθηγητής Ανδρέας Συμεωνίδης
Ιούλιος 2021
Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών
2. Κίνητρο
• Επιρροή της αισθητικής ιστοσελίδων
• Κατανόηση των δημογραφικών χαρακτηριστικών
• Προσωποποιημένος σχεδιασμός ιστοσελίδας
3. Σκοπός της διπλωματικής εργασίας
Στόχος: Η διερεύνηση της σημαντικότητας των δημογραφικών
μεταβλητών στην επίδραση της αισθητικής αντίληψης του
ατόμου μέσω των αλγορίθμων βαθιάς μάθησης.
4. Σύνολο Δεδομένων
• 398 ιστοσελίδες
• 18,448 συμμετέχοντες από 43 χώρες
• 441,478 αξιολογήσεις σε κλίμακα 1-9
5. Μεθοδολογία
• Μελέτη της σημαντικότητας των δημογραφικών χαρακτηριστικών μέσω
διάφορων αλγορίθμων
• Εφαρμογή αλγορίθμων βαθιάς μάθησης:
1η προσέγγιση: Εφαρμογή τριών διαφορετικών αρχιτεκτονικών
συνελικτικών νευρωνικών δικτύων στο σύνολο δεδομένων.
2η προσέγγιση: Εφαρμογή μοντέλων βαθιάς μάθησης και
Συνδυαστικά μοντέλα σε δημογραφικές ομάδες
6. Διαδικασία Διπλωματικής
Εξαγωγή σημαντικότητας δημογραφικών μεταβλητών
Διαχωρισμός του σετ δεδομένων σε 4 δημογραφικές
ομάδες
Χρήση ενός CNN για εκπαίδευση κάθε ομάδας Μεταφορά μάθησης
Χρήση Συνδυαστικών μεθόδων για την ένωση των 4
δημογραφικών μοντέλων Πρόβλεψη σκορ αισθητικής
Αξιολόγηση των μοντέλων
8. 1η Προσέγγιση
• Χρήση τριών διαφορετικών αρχιτεκτονικών: μιας baseline AlexNet,
της VGG16 και μιας πιο σύγχρονης αρχιτεκτονικής Xception
• Μεταφορά μάθησης απο Imagenet σύνολο δεδομένων
• Χρήση μέσου όρου των αξιολογήσεων στο σύνολο του σετ
δεδομένων
9. Αρχιτεκτονική AlexNet
• 8 στρώματα
• Προσαρμογή των τελευταίων στρωμάτων και προσθήκη Dropout
• Συνάρτηση βελτιστοποίησης Stochastic Gradient Descent (SGD) με
χρήση Nesterov momentum.
Παράμετρος Τιμή
Learning rate 0.001
Batch size 32
Momentum 0.9
Εποχές 95
10. Αρχιτεκτονική VGG16
• 16 στρώματα
• Συνελίξεις με πίνακες - φίλτρα 3x3
• Προσαρμογή των τελευταίων στρωμάτων και προσθήκη Dropout
• Συνάρτηση βελτιστοποίησης RMSDrop
Παράμετρος Τιμή
Learning rate 0.001
Batch size 8
Εποχές 37
11. Αρχιτεκτονική Xception
• 36 στρώματα χωρισμένα σε 14 ενότητες
• Προσαρμογή των τελευταίων στρωμάτων και προσθήκη Dropout
• Συνάρτηση βελτιστοποίησης RMSDrop
Παράμετρος Τιμή
Learning rate 0.001
Batch size 8
Εποχές 100
12. 2η Προσέγγιση
• Διαχωρισμός του σετ δεδομένων σε 4 δημογραφικές ομάδες με βάση την ηλικία
και το φύλο:
• Δημογραφική Ομάδα 1: Άνδρες κάτω των 30 ετών
• Δημογραφική Ομάδα 2: Άνδρες άνω των 30 ετών
• Δημογραφική Ομάδα 3: Γυναίκες κάτω των 30 ετών
• Δημογραφική Ομάδα 4: Γυναίκες άνω των 30 ετών
• Χρήση της Xception αρχιτεκτονικής για εκπαίδευση του δικτύου σε κάθε ομάδα
ξεχωριστά
• Μεταφορά γνώσης από Imagenet σύνολο δεδομένων
• Χρήση Συνδυαστικών (Ensemble) μεθόδων για την ένωση των 4 δημογραφικών
μοντέλων
13. Αξιολόγηση μοντέλων
1η προσέγγιση 2η προσέγγιση
• Ίδιο σετ εκπαίδευσης /ελέγχου / επαλήθευσης για τα
δημογραφικά μοντέλα με διαφορετικό υπολογισμό
μέσων όρων για κάθε ομάδα.
• Ίδιο σετ εκπαίδευσης / ελέγχου / επαλήθευσης και για
τις συνδυαστικές μεθόδους στο σύνολο των δεδομένων.
• Διαχωρισμός σε σύνολο εκπαίδευσης, ελέγχου και
σύνολο επαλήθευσης
Σύνολο εκπαίδευσης: 300 ιστοσελίδες (75.5%)
Σύνολο ελέγχου: 40 ιστοσελίδες (10%)
Σύνολο επαλήθευσης: 58 ιστοσελίδες ( 14.5%)
Μετρικές: Συντελεστής συσχέτισης Pearson (PCC) , RMSE
14. Αποτελέσματα σημαντικότητας δημογραφικών
μεταβλητών
Χαρακτηριστικό Chi-square_all
Chi-
square_Website
RFE
Random
Forest
Total
Ηλικία 4
Χρήση διαδικτύου
2
Γένος
2
Εκπαίδευση
2
Αγροτική Περιοχή
2
Επάγγελμα
1
Αστική Περιοχή
1
Προάστεια
1
Ηλικία το κυρίαρχο χαρακτηριστικό
Σημαντικά αλλά δευτερεύοντα τα χαρακτηριστικά του γένους, της εκπαίδευσης, της
χρήσης διαδικτύου και της αγροτικής περιοχής.
16. Σύγκριση συμπεριφοράς μοντέλων
User average rating: 5.07
AlexNet prediction: 4.93
VGG16 prediction: 5.27
Xception prediction: 5.11
User average rating: 4.93
AlexNet prediction: 3.48
VGG16 prediction: 3.68
Xception prediction: 4.2
17. Σύγκριση συμπεριφοράς μοντέλων
User average rating: 5.59
AlexNet prediction: 5.1
VGG16 prediction: 5.28
Xception prediction: 5.16
User average rating: 6.11
AlexNet prediction: 5.1
VGG16 prediction: 5.34
Xception prediction: 5.4
18. Αποτελέσματα – 2ης προσέγγισης
Μοντέλο Ομάδας 2 PCC RMSE
Xception εκπαιδευμένο
στην ομάδα 2
0.74 [0.66, 0.78] 0.69
Xception εκπαιδευμένο σε
όλο το dataset
0.79 [0.71, 0.82] 0.55
Μοντέλο Ομάδας 1 PCC RMSE
Xception εκπαιδευμένο
στην ομάδα 1
0.76 [0.68, 0.79] 0.79
Xception εκπαιδευμένο σε
όλο το dataset
0.74 [0.66, 0.78] 0.78
Ομάδα 2: Άνδρες άνω των 30 ετών
Ομάδα 1: Άνδρες κάτω των 30 ετών
19. Αποτελέσματα – 2ης προσέγγισης
Μοντέλο Ομάδας 4 PCC RMSE
Xception εκπαιδευμένο
στην ομάδα 4
0.75 [0.67, 0.79] 0.65
Xception εκπαιδευμένο σε
όλο το dataset
0.77 [0.70, 0.80] 0.63
Μοντέλο Ομάδας 3 PCC RMSE
Xception εκπαιδευμένο
στην ομάδα 3
0.73 [0.65, 0.77] 0.82
Xception εκπαιδευμένο σε
όλο το dataset
0.79 [0.71, 0.82] 0.76
Ομάδα 4: Γυναίκες άνω των 30 ετών
Ομάδα 3: Γυναίκες κάτω των 30 ετών
20. Αποτελέσματα Συνδυαστικών Μεθόδων
Συνδυαστικές Μεθοδολογίες:
- Average Ensemble: Υπολογισμός των μέσων όρων για τα 4 μοντέλα
- Meta-Learner ensemble: Αλγόριθμος που μαθαίνει απο τα αποτελέσματα των προβλέψεων των 4
μοντέλων
- CNN fusion: Ενωση των αποτελεσμάτων των μοντέλων σε ένα έξτρα layer και εκ νέου εκμάθηση των
τελευταίων layer
Ensemble Μοντέλα PCC RMSE
Average 0.76 [0.68, 0.79] 0.73
Meta-Learner 0.76 [0.68, 0.79] 0.66
CNN Fusion 0.8 [0.73, 0.83] 0.6
Καλύτερη Μέθοδος
21. Σύγκριση δύο προσεγγίσεων
Μοντέλο PCC RMSE
AlexNet 0.75 [0.67, 0.79] 0.7
Average 0.76 [0.68, 0.79] 0.73
Meta-Learner 0.76 [0.68, 0.79] 0.66
VGG16 0.77 [0.7, 0.80] 0.63
Xception 0.8 [0.73, 0.83] 0.63
CNN Fusion 0.8 [0.73, 0.83] 0.6
Ένωση των ΣΝΔ σε ένα ενιαίο παρουσιάζει τα καλύτερα αποτελέσματα.
Οι αρχιτεκτονικές Xception & VGG16 ακολουθούν με πολύ κοντινά και αξιόπιστα αποτελέσματα
22. Συμπεράσματα
• Μεγάλη συνεισφορά του δημογραφικού παράγοντα για κατανόηση
και αντιμετώπιση υποκειμενικών ζητημάτων
• Μεταφορά μάθησης συνεπάγεται μείωση του χρόνου εκπαίδευσης
• Σύγχρονες αρχιτεκτονικές ΣΝΔ και Συνδυαστικοί μέθοδοι
επιτυγχάνουν βελτίωση αποτελεσμάτων
23. Μελλοντική Εργασία
• Ενημέρωση και εκσυγχρόνιση του υπάρχοντος συνόλου δεδομένων
• Μελέτη παραπάνω δημογραφικών χαρακτηριστικών και ομάδων
• Μεταφορά μάθησης από πρόβλημα κοντινότερο στην αισθητική
• Ενσωμάτωση των δημογραφικών μεταβλητών στα ΣΝΔ
Κίνητρο της παρούσας διπλωματικής αποτέλεσε η επιρροή που ασκεί η αισθητικής μιας ιστοσελίδας στον χρήστη. Από τα πρώτα κλασματα του δευτερολέπτου ένας χρήστης σχηματίζει άποψη για το αν του αρέσει αισθητικά ή όχι μια ιστοσελίδα. Τα πιο σημαντικά χαρακτηριστικά που στοιχειοθετούν τις αντιλήψεις του ατόμου περι αισθητικής είναι τα δημογραφικά χαρακτηριστικά που συνηθως περιλαμβανουν την ηλικια, την καταγωγη, το γενος και την εκπαίδευση. Άναδεικνύεται λοιπόν η αναγκαιότητα για κατανόηση των χαρακτηριστικών αυτών καθώς αυτή η πληροφορία θα ήταν εξαιρετικά χρήσιμη στα χέρια των σχεδιαστών ιστοσελίδων. Έτσι θα είναι εφικτός ένας προσωποποιημένος σχεδιασμός ιστοσελίδας με βάση το δημογραφικό γκρουπ που θα ήθελαν να απευθυνθούν.
Σκοπός της διπλωματικής είναι η διερεύνηση της σημαντικότητας των δημογραφικών μεταβλητών και το πως αυτές επιδρούν στην αισθητική αντίληψη του ατόμου έτσι ώστε μέσω της μελέτης των αλγορίθμων βαθιάς μάθησης να προβλέπεται για κάθε ιστοσελίδα ένα αισθητικό σκορ.
Το σύνολο δεδομένων που εξετάζεται αποτελείται από 398 ιστοσελίδες που χωρίζονται σε αγγλόφωνες, ξενόγλωσσές και ιστοσελίδες που έχουν προταθεί για webby awards.
Συμμετείχαν ~ 18.5k χρήστες από 43 χώρες εξασφαλίζοντας ποικιλομορφία στο σύνολο δεδομένων. Για κάθε χρήστη λαμβάνουμε τα δημογραφικά χαρακτηριστικά τους και την βαθμολογία που δίνουν για τις ιστοσελίδες σε κλίμακα από 1 για χαμηλή αισθητική ως 9 για υψηλή αισθητική μιας ιστοσελίδας. Συνολικά συλλέχθηκαν ~441k αξιολογήσεις.
Τέλος μέσα από το ιστόγραμμα των αξιολογήσεων παρατηρείται ότι η πληθώρα των βαθμολογιών συγκεντρώνεται στις κεντρικές τιμές μεταξύ 3 και 6 ενώ για τιμές μεγαλύτερες του 8 υπάρχουν λίγες παρατηρήσεις. Αυτή είναι μια σημαντική παρατήρηση που θα επηρεάσει έπειτα την εκπαίδευση των μοντέλων.
Η μεθοδολογία διακρίνεται σε δύο κύρια στάδιο. Το πρώτο αφορά την μελέτη της σημαντικότητας των δημογραφικών χαρακτηριστικών μέσω αλγ. Μηχ. Μάθησης για το σύνολο δεδομένων που περιεγράφηκε. Το δεύτερο αφορά την εφαρμογή αλγορίθμων βαθιάς μάθησης μέσω 2 προσεγγίσεων. Η πρώτη προσέγγιση εστιάζει στην εύρεση του βέλτιστου ΣΝΔ εξετάζοντας 3 διαφορετικών αρχιτεκτονικών (AlexNet, VGG16 & Xception) τους ενώ στη δεύτερη προσέγγιση γίνεται διαχωρισμός του συνόλου δεδομένων σε δημογραφικές ομάδες στις οποίες εφαρμόζονται τόσο μοντέλα βαθίάς μάθησης όσο και συνδυαστικα μοντέλα.
Μια πιο συγκεκρικμένη και συνοπτική ροή της μελέτης φαίνεται στο διάγραμμα. Αρχικά έγινε εξαγωγή των πιο σημαντικών δημογραφικών μεταβλητών, με βάση των οποίων διαχωρίστηκε το σύνολο δεδομένων σε 4 δημογραφικές ομάδες. Στη συνέχεια επιλέχθηκε ένα ΣΝΔ και εκπαιδεύθηκε σε κάθε ομάδα ξεχωριστά. Πραγματοποιήθηκε μεταφορά μάθησης για επιτάχυνση της διαδικασίας εκπαίδευσης. Έπειτα έγινε χρήση συνδυαστικών μεθόδων για την ένωση των 4 δημογραφικών μοντέλων από τις οποίες εξάγονται οι τεικές προβλέψεις για το σκορ αισθητικής των ιστοσελίδων. Τέλος πραγματοποίηθηκε αξιολόγηση και σύγκριση όλων των μοντέλων που αναπτύχθηκαν στην παρούσα διπλωματική.
Το πρώτο στάδιο αφοροά τη μελετη δημ χαρακτηρ. Ένα από τα πρώτα προβλήματα που αντιμετωπίστηκαν εδώ είναι η υπρξη κατηγορικών μεταβλητών. Για να αντιμετωπιστεί αυτό το πρόβλημα εφαρμόσθηκαν ορισμένοι μέθοδοι κωδικοποιησης ο ordinal,one-hot Και target κωδικοποιητής.
Ordinal κωδικοποιητής για μεταβλητές που μπορούν να ταξινομηθούν σε μια σειρά από αποψη σημαντικότητας κ νοηματος όπως είναι η εκπαίδευση.
One-hot χρησιμοποιείται για ονομαστικές μεταβλητες που δν μπορουν να ταξινομ. Για κάθε κατηγορική μεταβλητή δημιουργεί μία στήλη και τους αναθέτει μια δυαδική τιμή 1 ή 0 ανάλογα με την παρουσία ή απουσία της μεταβλητής.
Target μετατρέπει μια κατηγορική μεταβλητή με βάση την τιμή μιας άλλης μεταβλητής για παράδειγμα επιλέχθηκε το επάγγελμα με βάση την βαθμολογία.
Στη συνέχεια κι αφού έχουμε το συνολο΄δεδομένων στην επιθυμητή μοργή έγινε εξαγωγή χαρακτηριστικών χρησιμοποιήθηκαν
Ο Στατιστικός έλεγχος X2 μελετάει την σημαντικότητα μεταξύ μιας μεταβλητής και της μεταβλητής στόχου, όσο πιο υψηλή τιμή έχει τόσο πιο πολύ εξαρτάται η μεταβλητή από την μεταβλητή στόχο.
Η αναδρομική Εξάλειψη χαρακτηριστικών αφαιρεί αναδρομικά χαρακτηριστικά καταλήγοντας σ εένα μικρό υποσύνολο σημαντικών χαρακτηριστικών
Ο Ταξινομητής τυχαίων mesv της μετρικής GINI. Η μετρική αυτή για κάθε μεταβλητή ορίζεται ως το άθροισμα του αριθμού των διαχωρισμών (σε όλα τα δέντρα) που περιλαμβάνουν το χαρακτηριστικό, ανάλογα με τον αριθμό των δειγμάτων που χωρίζει
Η πρώτη προσέγγιση εστίασε αποκλειστικά στην ανάπτυξη ΣΝΔ και στην εύρεση του καλύτερου δικτύου.
Έγινε χρήση τριών διαφορετικών αρχιτεκτονικών ενός baseline AlexNet που αποτελεί την πρώτη επιλογή των υλοποιήσεων της βιβλιογραφίας, της αρχιτετκονικής VGG16 και μιας πιο σύγχρονης αρχιτεκτονικής της Xception οι οποίες δοκιμάζονται για πρώτη φορα στο συκγεκριμένι πρόβλημα. Για όλα τα δίκτυα χρησιμοποιήθηκε μεταφορά γνώσης από το imagenet σύνολο δεδομένων που αφορά αναγνώριση αντικειμένων. Τέλος τα δίκτυα αυτά εφαρμόστηκσαν σε όλο το σύνολο΄δεδομένων παίρνοντας τους μέσους όρους για κάθε ιστοσελίδα.
Η δομή του AlexNet δικτύου απεικονίζεται στο σχήμα. Αποτελείται από 8 στρώματα, 5 συνελικτικά και 3 μέγιστης συγκέντρωσης. Τα τελευταία πλήρως συνδεδεμένα στρώματα όπως και το στρώμα της εξόδου προσαρμόστηκε στο πρόβλημα παλινδρόμησης που αντιμετωπίζεται. Οπότε αντικαταστάθηκαν από 2 πλήρως συνδεδεμένα στρώματα με 1024 και 512 νευρώνες με dropout 0.5 για αποφυγή υπερεκπαίδευσης. Το τελευταίο στρώμα αντικαταστάθηκε από ένα γραμμικό στρώμα με ένα μόνο νευρώνα. Η συνάρτηση βελτιστοποίησης είναι η SGD με Nesterov momentum. Οι παράμετροι εκπαίδευσης του δικτύου..
Το VGG δίκτυο αποτελείται από 16 στρώματα που χωρίζονται σε 5 μπλοκ. Τα τελευταία στρώματα προσαρμόζονται με τον ίδιο τρόπο όπως το AlexNet για την αναγωγη του προβλήματος σε παλινδρόμηση. Το δίκτυο εκπαιδεύθηκε με παραμέτρους..
Τέλος, η αρχιτεκτ Xception αποτελείται από 36 στρώματα χωρισμένα σε 14 ενότητες. Πρόκειται για ένα βαθύ δίκτυο που αποτελείτα από τη ροή εισόδου όπως φαίνετια στο σχήμα που περιλαμβάνει 4 ενότητες, μετά ακολουθεί η μεσαία ροή που επαναλαμβάνεται 8 φορές ενώ στο τελος ερχεται η ροή εξόδου, η οποία προσαρμόζεται όπως τ απροηγούμενα 2 δίκτυα. Οι παράμετροι εκπαίδευσης του είναι..
Η 2η προσέγγιση στηρίχθηκε στα αποτελέσματα σχετικά με τα σημαντικότερα δημογραφικά χαρακτηριστικά για τον διαχωρισμό του συνολου δεδομένων σε 4 ομάδες. Ο δαιχψωρισμος εγινε με βαση την ηλικια και το φύλο 1η,2η,3η,4η. Η επιλογή του ηλικιακού ορίου έγινε με βάση την δημιουργία ίσων σε μέγεθος ομάδων. Στη συνέχεια σε κάθε ομάδα εκπαιδεύεται ένα δίκτυο Xception. Για κάθε ένα από τα δίκτυα αυτά γίνεται μεταφορά μάθησης από το imagenet σύνολο δεδομένων. Τέλος τα 4 δημογραφικά μοντέλα που αναπτύχθηκαν ενώνονται με διάφορες συνδυαστικές μεθόδους.
Οσον αφορά την αξιολόγηση των μοντέλων για την 1η προσέγγιση το σύνολο δεδομένων χωρίζεται σε 300 ιστοσελίδες για το σύνολο εκπαίδευσης, 40 για σύνολο ελέγχου ενώ 58 για το σύνολο επαλήθευσης. Ο χωρισμός αυτός έγινε έτσι ώστε κάθε σύνολο να περιλαμβάνει ίδια αναλογία ιστοσελίδων αγγλικών/ξενόγλωσων αλλά και αυτές που συμμετέχουν σε Webby Awards. Από την άλλη πλευρά για την δεύτερη προσέγγιση, έγινε ο ίδιος ποσοστιαίος διαχωρισμός απλά πλέον ο υπολογισμός των μέσων όρων των ιστοσελίδων έγινε για κάθε δημογραφική ομάδα ξεχωριστά. Τέλος η αξιολόγηση των συνδυαστικών μεθόδων έγινε πάλι στο σύνολο των δεδομένων με σκοπό την αξιολόγηση και σύγκριση τους με τα μοντέλα της 1ης προσεγγισης. Οι μετρικές που χρησιμοποιούνται για την αξιολόγηση των μοντέλων είναι ο συντελεστής συσχέτισης Pearson (PCC) και η ρίζα του μέσου τετραγωνικόυ σφάλματος (RMSE) με μεγαλύτερη έμφαση να δίνεται σε πρώτη φάση σε υψηλό και θετικό συντελεστή συσχέτισης και έπειτα μας ενδιαφέρει και χαμηλό σφάλμα RMSE.
Προχωρώντας εξετάζονται τα αποτελέσματα σημαντικότητας δημ. Μεταβλητών. Στον πίνακα παρουσιάζοντια τα δημογραφικά χαρακτριστικά που επιλέχθηκαν μαζί με τους αλγορίθμους εξαγωγης χαρακτηριστικων και την σημαντικότητα που τους δινει ο κάθε αλγοριθμος. Επειτα πραγματοποιείται ένας είδος ψηφοφορίας για την εξαγωγή των πιο σημαντικών χαρακτηριστικών. Αυτό που παρουσιάζεται εδώ αδιαμφισβήτητα είναι ότι η ηλικία παίζει πολύ σημαντικό ρόλο στις αξιολογήσεις αισθητικής γεγονός που φαίνεται και από την υψηλή σημαντικότητα που δέχεται από όλους τους αλγορίθμους όπως φάνηκε στν προηγούμενη διαφάνεια. Στην συνέχεια, παρατηρούμε ότι σε σημαντικότητα ακολουθούν οι ώρες χρήσης στο διαδίκτυο, το γένος, η εκπαίδευση καθώς και η προέλευση από αγροτική περιοχή. Λιγότερο σημαντικά είναι το επάγγελμα και η προέλευση από αστική περιοχή ή προάστεια.
Στη συνέχεια θα εξεταστούν τα αποτελέσματα της 1ης προσέγγισης. Οπως αναφέρθηκε και προηγουμένως το μοντέλο AlexNet που βασίζεται στη βιβλιογραφία είναι το μοντέλο-οδηγός με το οποίο θα συγκριθούν τα νέα εξεταζόμενα μοντέλα VGG16 κ Xception. Από τον πίνακα παρατηρείται λοιπόν, ότι όλα τα μοντέλα παρουσιάζουν πολύ καλή συμπεριφορά με τα μοντέλα ωστόσο του VGG & Xception να είναι καλύτερα από το AlexNet. Ιδιαίτερα φαίνεται ότι το μοντέλο με τα καλύτερα αποτελέσματα είναι το Χψεπτιον με συντ συσχ 0.8 σε 95% διαστ εμπιστοσυνης και rmse 0.63. Οσον αφορά τα διαγράμματα, απεικονίζουν τις κατανομές των προβλέψεων του κάθε μοντέλου με τήν αντίστοιχη κατανομή των πραγματικών αξιολογήσεων. Αυτό που φαίντεαι και στα τρία διαγράμματα είναι πως οι προβέψεις έχουν μεγάλο ποσοστο επικάλυψης με τις πραγματικές τιμές γεγονός που αναδεικνύει την καλή προβλεπτική συμπεριφορά των μοντέλων. Στο αριστερό σχήμα έχουμε την κατανομή για το μοντέλο AlexNet, όπου παρατηρείται μια μεγάλη συγκέντρωση των προβλέψεων στις κεντρικές τιμές γυρω στο 3.5. Στο μεσαίο σχήμα φαίνονται οι προβλέψεις του VGG16, εδώ οι προβλέψεις παρουσιάζουν παρα πολυ κοντινή κατανομή με τις πραγματικές τιμές. Τέλος, στο δεξί σχήμα είναι η κατανομή του Xception όπου υπάρχει μια μεγαλύτερη συγκέντρωση των προβλέψεων στις κεντρικές τιμές αλλά αυτή τη φορά γύρω από το 4.5 κ 5.5. Και τα τρία μοντέλα αδυνατούν να προβλέψουν ικανοποιητικά τις ακραίες τιμές.
Εδώ θα εξεταστει η συμπεριφορα των μοντέλων σε συγκεκριμένα παραδείγματα.
Αριστερά εικόνα: όλα τα μοντέλα λειτουργούν καλά και δίνουν καλο/κοντινό σκορ.
Δεξια εικόνα: ιδιαίτερη περίπτωση όπου υπάρχει πολύ κείμενο,λευκό φόντο και λίγες εικόνες, γεγονός που από βιβλιογραφία θα παρέπεμπε σε χαμηλή αισθητικά σελίδα, ωστόσο οι χρήστες έδωσαν βαθμολογία σχετικά υψηλή με 4.93. Είναι μια δύσκολη περίπτωση αναγνώρισης από τα μοντέλα ωστόσο το Xception φαίνεται ότι προβλέπει πιο κοντά στην τιμή των χρηστών ενώ τα άλλα μοντέλα κάνουν πολύ χαμηλότερες προβλέψεις.
Τέλος, σε αυτό το παράδειγμα εξετάζονται οι δυο ιστοσελ΄διες συγκριτικά, κατά τις οποίες οι χρήστε ςέχουν δώσει διαφορετίκή βαθμολογία με 5.59 στην αριστερή και 6.11 στην δεξιά. Παρατηρείται ότι τα μοντέλα AlexNet kai VGG16 αδυνατούν να ξεχωρίσουν τις 2 περιπτώσεις και να αναγνωρίσουν την δεξιά εικόνα ως αισθητικά καλύτερη δίνοντας ίδιες βαθμολογίες. Από την ΄΄άλλη το Xception φαίνεται να αναγνωρίζει τη διαβάθμιση μεταξύ αυτών των ιστοσελίδων και ακόμ κι αν η πρόβλεψη απέχει από τις πραγματικές τιμές, το σημαντικό είναι ότι αναγνωρίζει την δεύτερη εικόνα ως αισηθτικά καλύτερη από την πρώτη.
Στη συνέχεια μελετούνται τα αποτελέσματα της δεύτερης προσέγγισης. Αύτό που παρουσιαζεται σε κάθε πίνακα είναι η σύγκριση του δικτύου Xception που παρουσίαστηκε προηγουμένως, με ένα αντίστοιχο δίκτυο σε δομή που εκπαιδεύεται αποκλειστικά στην εκάστοτε ομάδα. Για τους άνδρες κατω των 30 ετών βλέπουμε ότι το μοντέλο που εκπαιδεύεται αποκλειστικά στη συγκεκριμένη όμάδα παρουσιάζει ελαφρώς καλύτερα αποτελέσματα από το βέλτιστο Xception. Στην άλλη περίπτωση ωστόσο, φαίνεται ότι το μοντέλο Xception σε όλο το σύνολο δεδομένων λειτουργεί καλύτερα από το δημογραφικό μοντέλο, παρουσιάζοντας αρκετά χαμηλό RMSE. Στα σχηματα φαίνονται οι συσχετίσεις των προβλ με τις πραγμ τιμές για τα δημογραφικά μοντέλα. Ένα συμπέρασμα που φαίνεται παρατηρώντας τις δύο ομάδες έιναι πως για μεγαλύτερες ηλικίες στους άντρες τα δίκτυα είναι πιο έυκολο να αναγνωρίσουν κάποια χαρακτηριστικά τους και κάνουν πιο ακριβής προβλέψεις.
Στη συνέχεια παρατηρούμε τα αντίστοιχα αποτελέσματα αλλά για τις δημογραφικές ομάδες των γυναικών. Εδώ παρατηρούμε ότι και στις δύο περιπτώσεις το συνολικό μοντέλο Xception παρουσιάζει καλύτερα αποτελέσματα ενώ τα δημογραφικά μοντέλα είναι πιο «αδύναμα» συγκριτικά. Κάτι που φαίνεται κ εδώ βλέποντας το rmse είναι πως για μεγαλύτερους σε ηλικία χρήστες το μοντέλο μαθαίνει πιο εύκολα τα χαρακτηριστικά τους και κάνει καλύτερες προβλέψεις. Οπότε μπορεί να γενικευθεί πως ανεξαρτήτως φύλου, όσο μεγαλύτερο ηλικιακά είναι ο χρήστης τόσο πιο καλά προβλέπει το μοντέλο.
Μετά την υλοποίηση των δημογραφικών μοντέλων κι αφού παρατηρήθηκε ότι είναι πι αδύναμα συγκριτικά με το γενικευμένο μοντέλο Xcetpio εφαρμόσθηκαν τρεις διαφορετικοί τύποι συνδυαστικών μεθόδων. Στην αρχή υλοποιήθηκε ένα απλό μοντέλο υπολογισμού των μέσων όρων των δημ μοντέλων όπου πέτυχε συντ. συσχ 0.76 και rmse 0.73. Στη συνέχεια υλοποίηθηκε μια μέθοδος μετά-μάθησης όπου οι προβλέψεις των 4 δημ μοντέλων τροφοδοτούνται σε ένα μοντέλο γραμμικής πάλινδρόμησης το οποίο εν τέλει παράγει την τελική πρόβλεψη. Παρατηρείται ότι ο συντελεστής συσχέτισης παραμένει σταθερός αλλα το rmse βελτιώνεται αισθητά. Τέλος, γίνεται συγχώνευση των 4 δημ μοντέλων σε ένα ενιαίο CNN τροφοδοτώντας τις προβλέψεις των επιμέρους μοντέλων σε ένα πλήρως συνδεδεμένο στρώμα πριν παράξει τις τελικές προβλέψεις. Το μοντέλο αυτό επανεκπαιδεύευται μόνο στα τελικά στάδια του διατηρώντας τα βάρη των υπόλοιπων μοντέλων σταθερά. Είναι φανερό πως η καλυτερη μέθοδος είναι η τελευταία της ένωσης των CNN σε ένα ενιαίο με συντ συσχ 0.8 καi rmse 0.6.
Καταλήγοντας, γίνεται η σύγκριση των συνδυαστικών μοντέλων με τα μοντέλα της 1ης προσέγγισης. Παρατηρείτια ότι για τα μοντελα AlexNet και των μέσων όρων παρουσιάζουν παρόμοι συμπεριφορα με κοντινά συντ. συσχ κ rmse. Το μον΄τλεο μετα-μάθησης παρουσιάζεται λίγο βελτιωμένο με μια μείωση του rmse. Προχωρόντας στις νεες αρχιτεκτονκές, το VGG16 παρουσιάζει βελτιωμένο τόσο το σνυτ συσχ όσο και το rsme. Τελος τα καλύτερα μοντέλα, είναι το Xception και το ενιαίο CNN το οποίο εμφανίζιε ελαφρώς κα΄λύτερα αποτελέσματα λόγω της χαμηλότερης τιμής στο rmse.
Τελος, αν και έχει γινει αναφορά ήδη σε αρκετά συμπεράσματα, εδώ θα αναφερθούν ορισμένα συμπερασματα σε υψηλοτερο επίπεδο. Αρχικά ειναι μεγάλη η σιυνεισφορά του δημογραιφκού παράγοντα για ….. Ζητημάτων όπως είναι η αισθητική ιστοσελ που εξετάζετια. Επίσης, η μεταφορά μάθησης βοηθάει σημαντικά στη μείωση του χρόνου εκπαίδευσης των ΣΝΔ. Τέλος, παρατηρείται ότι συγχρονες αρχιτεκοτνικε ΣΝΔ καθώς και Συνδ μεθοδοι επιτυγχανουν βελτιωση αποτελεσματων.
Σχετικά με την μελλοντική εργασία, το νο 1 μέλημα είναι η ενημέρωση κ εκσυγρόνιση του υπάρχοντος συνόλου δεδομένων με ιστοσελίδες των τελευταίων ετών καθώς η αισθητική ιστοσελίδων είναι ενας κλάδος που α΄λλάζει κι αυτός γρήγορα. Επίσης η μελέτη παραπάνω δημ χαρακτηριστικών αλλα και διαχωρισμό σε ομάδες θα βοηθήσει στην ακόμη καλύτερη κατανόηση τους. Η μεταφορά΄μαθησης…. . Τέλος, η ενσωμάτωση των δημ μεταβλητων ως παραμέτρους των ΣΝΔ αποτελει επίσης μια απαιτητική εργασία η οποία ωστοσο θα μπορούσε να παρουσιάσει πολύ ενδιαφέροντα αποτελέσματα.
Εδώ πέρα παρουσιάζονται τα πρώτα αποτελέσματα σχετικά με την σημαντικότητα των δημ. Μεταβλ. Στο πρώτο διάγραμμα εφαρμόσθηκε Χ2 σ΄τους μέσους όρους των ιστοσελίδων με κυρίαραχα χαρακτηρισιτκά την ηλικία και το φύλλο με μεγάλη διαφορά. Ωστόσο, η ίδια τεχνική όταν εφαρμόσθηκε σε κάθε ζευγάρι αξιολόγησης και σελίδας ξεχωριστά άρχισαν να εμφανίζεται σαν σημαντικό χαρακτηριστικό και η προέλευση του χρήστη, εάν ήταν από αγοριτική ,αστική περιοχή η τα προάστεια. Τέλος βλέπουμε ότι ο Random Forest ξεχωρίζει σαν τα τέσσερα σημαντικότερα δημογραφικά χαρακτηρισιτκά την ηλικία, το επάγγελμα, τις ώρες χρήσης του διαδικτύου και την εκπαίδευση.
Επειδή είναι σε αυτή βασίζεται το Χception δν ήξερα αν πρέπει ν αναφερθει.
Στη συνέχεια θα εξετάσουμε τα αποτελέσματα της 1ης προσέγγισης ξεκινόντας από το μοντέλο–οδηγό λόγω της αξιοπιστίας που προσέφερε στη βιβλιογραφία. Παρατηρείται΄ότι ο συντελεστής συσχέτισης είναι στο 0.75 με διάστημα εμπιστοσύνης [] ενώ το rmse einai 0.7 και φαίνεται και από το διάγραμμα ότι οι προβλέψεις ακολουθούν τις πραγματικές τιμές / κόκκινη γραμμή που αποτελεί τον Νο 1 στόχο όπως αναφέρθηκε. Στη συνέχεια βλε΄ποντας τις κατανομές των προβλέψεων και των πραγματικών τιμών παρατηρείται μια μεγάλη επικάλυψη των τιμών με μεγάλη συγκέντρωση των προβλέψεων στις κεντρικές τιμές γυρω στο 3.5 και αδυναμία πρόβλεψης για τις ακραίες τιμές.
Το επόμενο μοντέλο που εξετάστηκε είναι το VGG16, παρατηρούμε ότι έχουμε κι εδώ υψηλό συντελέστη΄συσχέτισης 0.77 με διαστ. Εμπιστ. Ενώ το rmse είναι 0.63. Αριστερά φαίνται και εδώ ότι οι προβλέψεις ακολοθούν τις πραγματικές τιμές πολύ κλαά και μάλιστα εδώ υπάρχει μεγαλύτερη συγκέντρωση΄γύρω από τν κόκκινη γραμμή γεγονός που δείχνει τη βελτίωση του σφάλματος των προβλέψεων. Οσον αφορά τις κατναομές παρατηρούμε ότι οι προβλέψεςι παρουσιάζουν σχεδόν ίδια κατανομή με τις πραγματικές τιμές με πολύ μεγάλο ποσοστό επικάληψης. Κι εδώ παρουσιάζετια αν και πλέον σε βελτιωμένη κατάταση η συγκέντρωση στις κεντρικές τιμές και η αδυναμία πρόβλεψης στα άκρα.
Τέλος, εδώ παρουσιάζονται τα αποτελέσματα του μοντέλου Xception. Όπως φαίνεται παρουσιάζει υψηλό και θετικό συντελεστή συσχέτισης 0.8 με διάστημα εμπιστοσύνης [], και rmse .63. Αυτό επιβεβαιώνεται και από το διάγραμμα της συσχέτισης των προβλέψεων με τις πραγματικές τιμές και παρατηρούμε πως οι προβλέψεις ακολουθούν τις πραγματικές τιμές σύμφωνα με την πορεία της κόκκινης γραμμής. Σχετικά με τις κατανομές παρατηρούμε κι εδώ μεγάλη επικάλυψη μεταξύ των δυο κατανομών (προβλέψεων και πραγματικών τιμών) ωστόσο υπάρχει μια μεγαλύτερη συγκέντρωση των προβλέψεων στις κεντρικές τιμές γύρω από το 4.5 κ 5.5 σε αντίθεση με το προηγούμενο μοντέλο.
Συνοτπικά λοιπόν βλέποντας τα αποτελέσματα των 3 μοντέλων μπορούμε να συμπεράνουμε πως το μοντέλο Xception παρουσιάζει τα καλύτερα αποτελέσματα ως προς τις μετρικές που μελετάμε. Εχει τον καλύτερο συνδυασμό προβλέψεων με την υψηλότερη συσχέτιση 0.8 και το μικρότερο σφάλμα 0.63. Ωστόσο βλέπουμε ότι και τα άλλα μοντέλα εμφανίζουν πολύ καλά και αξιόπιστα αποτελέσματα καθώς τόσο ο συν.τ. συσχ. Οσο και το σφαλμα έχουν μικρή απόσταση από αυτά του Xcpetion.