Show simple item record

Υλοποίηση μιας περιορισμένης μηχανής Boltzmann με την τεχνική FPGA-in-the-Loop

dc.contributor.advisorΨαράκης, Μιχαήλ
dc.contributor.authorΠασχάλης, Δημήτριος Π.
dc.description.abstractΈνας εκ των τομέων της πληροφορικής που γνωρίζει μεγάλη άνθηση τα τελευταία χρόνια είναι αυτός της Μηχανικής Μάθησης (Machine Learning). Ο τομέας αυτός αναπτύσσεται ραγδαία και ενισχύεται με καινούργιες τεχνικές και τεχνολογίες. Με την ανάπτυξη καλύτερων αλγορίθμων ξεπερνιούνται παλιότερες δυσκολίες και πλέον καθίσταται δυνατή η επίλυση πολύπλοκων προβλημάτων που στο παρελθόν φαίνονταν αδύνατα. Ένας τέτοιος αλγόριθμος είναι αυτός των Περιορισμένων Μηχανών Boltzmann (Restricted Boltzmann Machines),τα οποία είναι ένα είδος Τεχνητού Νευρωνικού Δικτύου. Τα δίκτυα αυτά χρησιμοποιούνται σε ακόμα μεγαλύτερα νευρωνικά δίκτυα σχηματίζοντας τα λεγόμενα Δίκτυα Βαθιάς Πεποιθήσεως (Deep Belief Networks) που αποτελούν την καλύτερη τεχνική για επίλυση δύσκολων προβλημάτων Μηχανικής Μάθησης. Ο κύριος τρόπος υλοποίησης τους είναι το περιβάλλον Matlab και άλλα τέτοιου τύπου λογισμικά περιβάλλοντα. Αυτού του είδους τα δίκτυα όμως είναι απαιτητικά σε πόρους και χρειάζεται συνήθως μεγάλος χρόνος για να εκπαιδευτούν σωστά, κάτι που απαγορεύει την άμεση χρησιμοποίησή τους σε εμπορικές ή βιομηχανικές εφαρμογές. Για αυτό πλέον στο πεδίο έχουν εισέλθει και ερευνητές από το πεδίο της Ψηφιακής Σχεδίασης και Αρχιτεκτονικής Η/Υ,όπου σε συνεργασία με ερευνητές από το πεδίο των Τεχνητών Νευρωνικών Δικτύων, προσπαθούν να σχεδιάσουν υλικό που να εκτελεί τέτοιου είδους υπολογισμών προσπαθώντας να επιτύχουν καλύτερη απόδοση σε καλύτερους χρόνους. Έτσι έχουμε πλέον σχεδιάσεις σε FPGAs και GPUs που, με τους όποιους περιορισμούς, σημειώνουν αξιόλογη πρόοδο ανοίγοντας το δρόμο για επιπλέον ερευνητές που ακολουθούν. Τα FPGAs (Field Programmable Gate Arrays) είναι ολοκληρωμένα κυκλώματα γενικής χρήσης ικανά για προγραμματισμό. Έχουν έμφυτη την έννοια της παραλληλίας και συχνά χρησιμοποιούνται ως μέσο επιτάχυνσης εφαρμογών. Κομμάτι υπολογισμών, και ειδικότερα παράλληλων, μπορεί να μεταφερθεί σε επίπεδο υλικού προσφέροντας καλύτερους χρόνους εκτέλεσης (επιτάχυνση υλικού). Έτσι έχουμε την δημιουργία εφαρμογών που μοιράζουν τους υπολογισμούς μεταξύ γενικού σκοπού επεξεργαστών (Software) και FPGA (Hardware) με σκοπό την μέγιστη απόδοση. Μια τεχνική για την επίτευξη τέτοιου είδους εφαρμογών αποτελεί και η τεχνική FPGA In the Loop. Σκοπός της παρούσης εργασίας είναι μια εναλλακτική πρόταση για την εκτέλεση λειτουργιών μιας Restricted Boltzmann Machine με χρησιμοποίηση Matlab Simulink και της τεχνικής FPGA In the Loop για επίτευξη Software - Hardware Co-Simulation. Στοχεύουμε στην δημιουργία ενός πλαισίου, με χρήση σχεδιαστικών τεχνικών, που θα καθιστά δυνατή την μεταφορά υπολογισμών σε επίπεδο υλικού, και που θα μπορεί να χρησιμοποιείται με διαφορετικές παραμέτρους ανάλογα με την εκάστοτε σχεδίαση ενός Restricted Boltzmann Machine.el
dc.publisherΠανεπιστήμιο Πειραιώςel
dc.rightsAttribution-NonCommercial-NoDerivatives 4.0 Διεθνές*
dc.titleΥλοποίηση μιας περιορισμένης μηχανής Boltzmann με την τεχνική FPGA-in-the-Loopel
dc.title.alternativeImplementation of a restricted Boltzmann machine using FPGA-in-the-Loop techniqueel
dc.typeMaster Thesisel
dc.contributor.departmentΣχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών. Τμήμα Πληροφορικήςel
dc.description.abstractENOne of the fields of computer science that flourishes these last years is that of Machine Learning. The field grows rapidly and is enhanced with new techniques and technologies. By developing stronger algorithms, past difficulties are overcome and is now possible to solve complicated problems that previously seemed impossible. One such algorithm is that of Restricted Boltzmann Machines, which are a type of Artificial Neural Network. Such networks are used to build even greater neural networks, the so called Deep Belief Networks, which provide the best technique for solving difficult Machine Learning problems. They are mainly developed in Matlab environment and other such kinds of software. These kinds of networks, though, are highly demanding in resources and usually require a great amount of time for proper training. That is the main reason that prohibits their use for immediate commercial or industrial applications. As a result the field has been enriched with researchers from the fields of Digital Design and Computer Architecture that cooperate with researchers from the field of Artificial Neural Networks trying to design hardware, capable of executing such calculations and achieve better efficiency as well as reducing the execution time. Furthermore FPGA and GPU designs have been proposed that, despite of some restrictions, have made noteworthy progress paving the way for more researchers to follow. FPGAs (Field Programmable Gate Arrays) are generall purpose integrated circuits capable of programming. Parallelism in FPGAs is inherent and they are oftenly used as a means to speed up applications. Part of computations, specifically of parallel nature, can be transferred to hardware level providing better execution time (hardware acceleration). This leads to applications that share computations between general purpose processors (Software) and FPGA (Hardware) for maximum efficiency. On such technique for this kind of applications is FPGA In the Loop. The purpose of this project is to propose an alternative way for executing the functions of a Restricted Boltzmann Machine, by using Matlab Simulink and FPGA In the Loop technique and achieve Hardware Software Co-Simulation. We aim to create a framework, by the use of design techniques, which makes the transfer of the calculations to the hardware level possible and can be used with different parameters according to each specific Restricted Boltzmann Machine design.el
dc.contributor.masterΠροηγμένα Συστήματα Πληροφορικήςel
dc.subject.keywordΜηχανική μάθησηel
dc.subject.keywordΤεχνητά νευρωνικά δίκτυαel
dc.subject.keywordRestricted Boltzmann Machinesel
dc.subject.keywordField Programmable Gate Arraysel

Files in this item


This item appears in the following Collection(s)

Show simple item record

Attribution-NonCommercial-NoDerivatives 4.0 Διεθνές
Except where otherwise noted, this item's license is described as
Attribution-NonCommercial-NoDerivatives 4.0 Διεθνές

Βιβλιοθήκη Πανεπιστημίου Πειραιώς
Contact Us
Send Feedback
Created by ELiDOC
Η δημιουργία κι ο εμπλουτισμός του Ιδρυματικού Αποθετηρίου "Διώνη", έγιναν στο πλαίσιο του Έργου «Υπηρεσία Ιδρυματικού Αποθετηρίου και Ψηφιακής Βιβλιοθήκης» της πράξης «Ψηφιακές υπηρεσίες ανοιχτής πρόσβασης της βιβλιοθήκης του Πανεπιστημίου Πειραιώς»