Designing a scalable and reproducible machine learning workflow
Σχεδιασμός μιας επεκτάσιμης και αναπαραγώγιμης ροής εργασιών μηχανικής μάθησης
Μεταπτυχιακή διπλωματική εργασία
Author
Πολυχρόνου, Ιωάννα
Date
2024-03-06Advisor
Nikolaou, GrigorisKeywords
Artificial intelligence ; Machine learning ; Machine learning life cycle ; Machine learning operations ; Scalability ; Reproducibility ; Τεχνητή νοημοσύνη ; Μηχανική μάθησηAbstract
The advancement of machine learning (ML) applications necessitates the construction of end-to-end experimentation pipelines characterized by scalability, robustness, and reproducibility. This thesis aims to empower Data Scientists and ML Εngineers, enabling seamless pipeline execution, free from unexpected obstacles such as downtime, hardware unavailability, OS conflicts, or dependency issues. To realize these objectives, an ideal ML workflow should exhibit robust execution in a highly available environment, revisitable reproducibility, minimal manual intervention through automation, easy extendability, and scalable capabilities to handle larger tasks concurrently. Moreover, facilitating these attributes, a comprehensive toolkit is essential, encompassing Containerization/Virtualization for consistent environment management, Monitoring experiments for provisioning necessary training information, Data/Model Tracking to trace model and data versions throughout the workflow, Scalable Object Storage for secure data and model storage, and a Workflow Engine for workflow automation, scheduling, and monitoring. This thesis explores the challenges inherent in designing scalable and reproducible ML workflows, detailing the utilization of the aforementioned toolkit to overcome these challenges. Furthermore, industrial case studies are presented to underscore the practical benefits of a scalable and reproducible ML workflow.
Abstract
Η πρόοδος των εφαρμογών μηχανικής μάθησης (Machine Learning) απαιτεί την δημιουργία ολοκληρωμένων ροών εργασίας (pipelines) μηχανικής μάθησης για πειραματικούς σκοπούς. Οι ροές αυτές χαρακτηρίζονται από επεκτασιμότητα (scalability), σταθερότητα (robustness) και αναπαραγωγιμότητα (reproducibility). Αυτή η διπλωματική εργασία στοχεύει να ενισχύσει τους Επιστήμονες Δεδομένων και τους Μηχανικούς Μηχανικής Μάθησης, προσφέροντας πληροφορίες για την απρόσκοπτη εκτέλεση ροών εργασίας χωρίς απροσδόκητα εμπόδια όπως διακοπές λειτουργίας, μη διαθεσιμότητα υλικού, εξάρτηση υλοποίησης και λειτουργικού συστήματος. Για να επιτευχθούν αυτοί οι στόχοι, η ιδανική ροή εργασίας θα πρέπει να παρουσιάζει σταθερότητα και ομαλή εκτέλεση σε ένα εξαιρετικά διαθέσιμο περιβάλλον, επαναληψιμότητα, ελάχιστη χειροκίνητη παρέμβαση μέσω αυτοματισμού, εύκολη δυνατότητα επέκτασης για τη διαχείριση μεγαλύτερων εργασιών ταυτόχρονα. Για τη επίτευξη αυτών των χαρακτηριστικών, είναι απαραίτητη μια ολοκληρωμένη συλλογή εργαλείων, η οποία περιλαμβάνει Containerization/Virtualization για την συνεπή διαχείριση του περιβάλλοντος εκτέλεσης των εργασιών, παρακολούθηση πειραμάτων για την παροχή των απαραίτητων πληροφοριών, Data/Model Tracking για την παρακολούθηση των δεδομένων και τον μοντέλων μηχανικής μάθησης, Scalable Object Storage για ασφαλή αποθήκευση δεδομένων και μοντέλων και μια μηχανή ροής εργασίας για αυτοματισμό, προγραμματισμό και παρακολούθηση της ροής εργασιών. Αυτή η διατριβή διερευνά τις προκλήσεις που υπάρχουν στο σχεδιασμό επεκτάσιμων και αναπαραγώγιμων ροών εργασίας μηχανικής μάθησης, περιγράφοντας λεπτομερώς τη χρήση των προαναφερθέντων εργαλείων για την αντιμετώπιση αυτών των προκλήσεων. Επιπλέον, αναπτύσσεται μια πραγματική μελέτη όπου υλοποιούνται οι παραπάνω τεχνικές προκειμένου να υπογραμμιστούν τα πρακτικά οφέλη μιας επεκτάσιμης και αναπαραγώγιμης ροής εργασίας μηχανικής μάθησης.
Number of pages
78Faculty
Σχολή ΜηχανικώνAcademic Department
Τμήμα Ηλεκτρολόγων και Ηλεκτρονικών ΜηχανικώνΤμήμα Μηχανικών Βιομηχανικής Σχεδίασης και Παραγωγής