HEAL DSpace

Τεχνικές μηχανικής μάθησης για την πρόβλεψη σφαλμάτων σε λογισμικό

Αποθετήριο DSpace/Manakin

Εμφάνιση απλής εγγραφής

dc.contributor.author Δρόσης, Οδυσσέας el
dc.contributor.author Drosis, Odysseas en
dc.date.accessioned 2020-05-07T15:26:22Z
dc.identifier.uri https://dspace.lib.ntua.gr/xmlui/handle/123456789/50414
dc.identifier.uri http://dx.doi.org/10.26240/heal.ntua.18112
dc.rights Αναφορά Δημιουργού-Μη Εμπορική Χρήση-Όχι Παράγωγα Έργα 3.0 Ελλάδα *
dc.rights.uri http://creativecommons.org/licenses/by-nc-nd/3.0/gr/ *
dc.subject Αλγόριθμοι μηχανικής μάθησης el
dc.subject Σφάλματα λογισμικού el
dc.subject Λογιστική Παλινδρόμηση el
dc.subject Δυαδική Ταξινόμηση el
dc.subject Μετρικές
dc.subject Χρονοσειρές el
dc.subject Μαρκοβιανή αλυσίδα el
dc.subject Machine learning algorithms en
dc.subject Software Bugs en
dc.subject Logistic Regression en
dc.subject Binary classification en
dc.subject Metrics en
dc.subject Time series en
dc.subject Markov Chain en
dc.title Τεχνικές μηχανικής μάθησης για την πρόβλεψη σφαλμάτων σε λογισμικό el
dc.title Machine Learning Techniques to Predict Software Bugs en
heal.type bachelorThesis
heal.classification ΑΛΓΟΡΙΘΜΟΙ el
heal.dateAvailable 2021-05-06T21:00:00Z
heal.language el
heal.access embargo
heal.recordProvider ntua el
heal.publicationDate 2019-07-16
heal.abstract Στις μέρες μας ένα μεγάλο ποσοστό των προγραμματιστών ασχολούνται με την επιδιόρθωση αλγορίθμων και την εύρεση μεθόδων ελαχιστοποίησης των λαθών σε αυτούς. Η ανάγνωση, η κατανόηση και η επιδιόρθωση ενός κώδικα αποτελεί ένα αρκετά δύσκολο πρόβλημα και απαιτεί πολύ μεγάλη υπολογιστική δύναμη αλλά και ανθρώπινο δυναμικό. Ένας πιο αποδοτικός τρόπος επίλυσης του προβλήματος αυτού που παρουσιάζεται και σε όλες τις μεγάλες εταιρίες παγκοσμίου βεληνεκούς θα ήταν μέσω αλγορίθμων να υπολογίζουμε τις πιθανότητες εμφάνισης λαθών λογισμικού είτε γνωρίζοντας τον κώδικα αυτού είτε βασιζόμενοι αποκλειστικά σε δεδομένα του παρελθόντος είτε συνδυάζοντας τα δύο παραπάνω. Και οι δύο τρόποι υλοποιούνται με αλγορίθμους μηχανικής μάθησης και τις αντίστοιχες τεχνικές. Στην διπλωματική αυτή εργασία θα αφοσιωθούμε στις δυνατότητες πρόβλεψης λαθών λογισμικού χωρίς να γνωρίζουμε τον κώδικα της εφαρμογής ούτε την γλώσσα προγραμματισμού που έχει υλοποιηθεί αλλά μόνο το πλήθος και το είδος των bugs που εμφανίστηκαν από την μέρα που έχουμε αρχίσει την μελέτη. Οι αλγόριθμοι που θα υλοποιηθούν είναι μηχανικής μάθησης και προσαρμόζονται στα δεδομένα που διαθέτουμε χωρίς καμιά πρώιμη γνώση. Επίσης γίνεται αναφορά σε ήδη υπάρχοντες τρόπους επίλυσης του προβλήματος αυτού, σύγκριση αυτών με τις δίκες μου μεθόδους καθώς και διαφορετικούς τρόπος επίλυσης ακολουθώντας την ίδια μέθοδο. Τέλος, γίνεται σύγκριση των μεθόδων που χρησιμοποιήθηκαν (Poisson regression, Naive Bayes, Decision trees, Neural Networks Relu Activation Function, Logistic Regression) με την χρήση μετρικών που χρησιμοποιούνται για δυαδική ταξινόμηση. Στη συνέχεια αποφαινόμαστε σχετικά με την βέλτιστη προσέγγιση στο πρόβλημα αυτό που έγινε με την χρήση χρονοσειρών με την μέθοδο της Logistic Regression καθώς και τα επιπλέον δεδομένα που θα έπρεπε να διαθέτουμε ώστε να βελτιώσουμε την απόδοση των προσεγγίσεων el
heal.abstract Nowadays, a large percentage of developers are engaged in repairing algorithms and finding ways to minimize errors in them. Reading, understanding and correcting a code is a fairly challenging problem and requires a lot of computing power but also human resources. A more efficient way to solve this problem across all major global corporations would be by means of algorithms to calculate the chances of software errors either by knowing the code or by relying solely on past data or by combining the two above. Both ways are implemented with machine learning algorithms and the corresponding techniques. In this diploma thesis we will devote ourselves to the possibilities of predicting software errors without knowing the application code neither the programming language that has been implemented but only the number and type of bugs that have occurred since the day we started the study. The algorithms to be implemented are mechanical learning and are adapted to the dataset we have without any early knowledge. Also, reference is made to existing ways of solving this problem, comparing these with my trials methods and different ways of solving the same method. Finally, we compare the methods used (Poisson regression, Naive Bayes, Decision trees, Neural Networks with Relu Activation Function, Logistic Regression) by using metrics designed for binary classification. We then make a decision on the optimal approach to the logistic regression using Logical Regression, as well as the additional data that we should have to improve the performance of the approaches. en
heal.advisorName Φωτάκης, Δημήτριος el
heal.committeeMemberName Στάμου, Γιώργος el
heal.committeeMemberName Παγουρτζής, Αριστείδης el
heal.academicPublisher Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών el
heal.academicPublisherID ntua
heal.fullTextAvailability true


Αρχεία σε αυτό το τεκμήριο

Οι παρακάτω άδειες σχετίζονται με αυτό το τεκμήριο:

Αυτό το τεκμήριο εμφανίζεται στην ακόλουθη συλλογή(ές)

Εμφάνιση απλής εγγραφής

Αναφορά Δημιουργού-Μη Εμπορική Χρήση-Όχι Παράγωγα Έργα 3.0 Ελλάδα Εκτός από όπου ορίζεται κάτι διαφορετικό, αυτή η άδεια περιγράφεται ως Αναφορά Δημιουργού-Μη Εμπορική Χρήση-Όχι Παράγωγα Έργα 3.0 Ελλάδα