Ταυτοποίηση γουνοφόρων ζώων με χρήση συνελικτικού νευρωνικού δικτύου βαθιάς μάθησης
Identification of fur animals using a deep convolutional neural network
Keywords
Μηχανική μάθηση ; Βαθιά μάθηση ; Συνελικτικά νευρωνικά δίκτυα ; Ταυτοποίηση ; Μάθηση μεταφοράςAbstract
Η βαθιά μάθηση αποτελεί υποκατηγορία της μηχανικής μάθησης και μέρος της
είναι η εκπαίδευση και χρήση συνελικτικών νευρωνικών δικτύων (CNN) για την
αναγνώριση και ταυτοποίηση εικόνων. Αναγνωρίζουν μοτίβα και χαρακτηριστικά σε
εικόνες με την εφαρμογή πολλαπλών στρωμάτων φίλτρων μεταβιβάζοντας κάθε φορά
της πληροφορίες στο επόμενο επίπεδο.
Ο στόχος της παρούσας διπλωματικής εργασίας είναι η δημιουργία ενός
μοντέλου που θα αναγνωρίζει μοτίβα γουνοφόρων ζώων σύμφωνα με τα δεδομένα που
του δώσαμε για την εκπαίδευση. Συγκεκριμένα έχουμε 30 κλάσεις γουνοφόρων και το
μοντέλο θα πρέπει να αναγνωρίζει ζώα που ανήκουν μέσα σε αυτές τις 30 κλάσεις.
Ένα δίκτυο βαθιάς μάθησης έχει την ικανότητα να λαμβάνει αποφάσεις με
βάση τα δεδομένα στα οπαία εκπαιδεύεται. Γι’ αυτό λοιπόν η συλλογή και ομοιόμορφη
κατανομή των δεδομένων αποτελεί ένα απο τα πιο σημαντικά κομμάτια της όλης
διαδικασίας. Κάθε κλάση χωρίζεται σε 3 πεδία train, validation και test set με 800, 100
και 100 εικόνες κατά αντιστοιχία.
Για να καταλήξουμε στο τελικό μοντέλο έγιναν πολλοί πειραματισμοί.
Δημιουργήθηκαν διάφορα CNN μοντέλα ποικίλων επιπέδων τα οποία χτίστηκαν απο
το μηδέν χωρίς όμως να δίνουν τα επιθυμητά αποτελέσματα. Χάρις σε αυτό όμως έγινε
καλύτερη κατανόηση του προβλήματος οδηγώντας στην εφαρμογή μια τεχνικής που
ονομάζεται μάθηση μεταφοράς που αξιοποιεί τις αρχιτεκτονικές και χαρακτηριστικά
που έχουν εξαχθεί από άλλα μοντέλα. Στην προκειμένου περίπτωση έγινε χρήση του
VGG16 που μας έδωσε ικανοποιητικά αποτελέσματα.
Abstract
Deep learning is a subset of machine learning and part of it is the training and use of
convolutional neural networks (CNNs) for image recognition and identification. They
recognize patterns and features in images by applying multiple layers of filters, each
time passing the information to the next layer.
The objective of this thesis is to create a model that recognizes furbearing
animal patterns according to the data we provided for training. Specifically, we have
30 classes of furbearers and the model should recognize animals that belong within
these 30 classes.
A deep learning network has the ability to make decisions based on the data it
is trained on. Therefore, the collection and uniform distribution of data is one of the
most important parts of the whole process. Each class is divided into 3 fields of train,
validation and test sets with 800, 100 and 100 images respectively.
To arrive at the final model many experiments were done. Several CNN models
of varying levels were created which were built from scratch without giving the desired
results. Thanks to this, however, a better understanding of the problem was gained,
leading to the application of a technique called transfer learning that exploits
architectures and features extracted from other models. In this case we used VGG16
which gave us satisfactory results.