Παράκαμψη προς το κυρίως περιεχόμενο

Τίτλος μαθήματος

Συστήματα για Μηχανική Μάθηση Μεγάλης Κλίμακας

Κωδικός μαθήματος

CSE 522

Τύπος μαθήματος

Υποχρεωτικό

Επίπεδο

Μεταπτυχιακό

Έτος / Εξάμηνο

Πρώτο Έτος / Α Εξάμηνο

Όνομα διδάσκοντα

Μιχαήλ Σιριβιανός

ECTS

8

    

Σκοπός και στόχοι μαθήματος

Το μάθημα εμβαθύνει στις αρχές σχεδιασμού και υλοποίησης κατανεμημένων και δικτυωμένων λειτουργικών συστημάτων για Μηχανική Μάθηση. Δίνεται έμφαση σε κλασσικές αρχές σχεδιασμού λειτουργικών συστημάτων και στην περιγραφή της υλοποίησης σύγχρονων συστημάτων που αποτελούν τη βάση της υποδομής επεξεργασίας και αποθήκευσης μεγάλων δεδομένων στο υπολογιστικό νέφος.

Η ύλη του μαθήματος περιλαμβάνει τα ακόλουθα. Virtual Memory, Process Management και Inter-process Communication. Το λειτουργικό σύστημα Unix. Log-structured συστήματα αρχείων. Κατανεμημένα συστήματα αρχείων. Virtual Machines. Θέματα που αφορούν τον κύκλο ζωής της ανάλυσης δεδομένων για Μηχανική Μάθηση (ML), περιλαμβανομένων των data sourcing and preparation για ML, προγραμματιστικά μοντέλα ML, συστήματα για κλιμακώσιμη δημιουργία μοντέλων ML, και αναδυόμενα θέματα όπως διακυβέρνηση ML συστημάτων, επεξηγησιμότητα, και ηθική (fairness, transparency, etc.) της Μηχανικής Μάθησης.

Μαθησιακά αποτελέσματα

Στο τέλος του μαθήματος οι διδασκόμενοι θα είναι εις θέση να:

1.      περιγράψουν τις σημαντικότερες αρχές σχεδιασμού κατανεμημένων συστημάτων.

2.      περιγράψουν και χρησιμοποιήσουν βασικές τεχνικές υλοποίησης κατανεμημένων συστημάτων μεγάλης κλίμακας.

3.      κατανοήσουν τις  αρχές λειτουργίας της υποδομής υπολογιστικού νέφους και Μηχανικής Μάθησης της Google, Amazon, Facebook και άλλων γιγαντιαίων διαδικτυακών υπηρεσιών.

4.      διαβάζουν και να κατανοούν ερευνητικές αναφορές της μηχανικής υπολογιστικών συστημάτων.

5.      κατανοούν την υλοποίηση ενός περίπλοκου και μεγάλης κλίμακας κατανεμημένου συστήματος για Μηχανική Μάθηση ώστε να μπορούν να το τροποποιήσουν και να αξιολογήσουν την απόδοση του.

Προαπαιτούμενα

Προπτυχιακά μαθήματα στους τομείς των Λειτουργικών Συστημάτων, των Υπολογιστικών Δικτύων και της Μηχανικής Μάθησης

  

Περιεχόμενο μαθήματος

Εβδομάδα 1: Process Management. The Unix Time Sharing System

Εβδομάδα 2: Memory Management

Εβδομάδα 3: File Systems. Virtual Machines: LFS, Xen

Εβδομάδα 4: Infrastructures for Big Data (Google): Google Filesystem, Google BigTable, Google Borg

Εβδομάδα 5: ML Lifecycle Overview

Εβδομάδα 6: Classical ML Training at Scale: Parameter Server, XGBoost

Εβδομάδες 7-8: Deep Learning Systems: TensorFlow, TVM

Εβδομάδες 9-10: System-assisted Feature Engineering and Model Selection: Cerebro, MSMS

Εβδομάδα 11: Data Sourcing and Preparation: TFDV, Snorkel

Εβδομάδες 12-13: ML Deployment; Clipper Online Prediction Serving System, Federated Learning

Μεθοδολογία διδασκαλίας

Εβδομαδιαίες διαλέξεις με παρουσιάσεις ερευνητικών άρθρων, συνοδευόμενες από διαφάνειες και σημειώσεις που διανέμονται από τον διδάσκοντα. Προφορικές ερωτήσεις επί των άρθρων και απαντήσεις των φοιτητών στην τάξη. Συζητήσεις που ενισχύουν την κριτική σκέψη, αφού ανατεθούν στους φοιτητές εργασίες περίληψης άρθρων σε δύο σελίδες.

Βιβλιογραφία

Κύρια βιβλιογραφία του μαθήματος:

Ερευνητικά άρθρα που θα γίνονται διαθέσιμα στο Moodle.

Προαιρετικά:

Operating Systems Concepts (book) by Silberschatz, Galvin, and Gagne

Book slides at http://codex.cs.yale.edu/avi/os-book/OS9/slide-dir/

Οι διαλέξεις Data Systems for Machine Learning του Arun Kumar

  https://cseweb.ucsd.edu/classes/wi24/cse234-a/schedule.html

Αξιολόγηση

 

Τρόπος Αξιολόγησης

Βαθμολόγηση

Περιλήψεις Ερευνητικών Άρθρων

40%

Παρουσιάσεις Ερευνητικών Άρθρων

20%

Τελική Εξέταση

40%

 

 

 

 

 

 

Περιλήψεις Ερευνητικών Άρθρων: Πριν από κάθε μάθημα οι φοιτητές/τριες θα πρέπει να παραδίδουν περίληψη του άρθρου προς συζήτηση. Κάθε φοιτητής/τρια θα πρέπει να παραδίδει τη δική του/της περίληψη. Οι περιλήψεις θα βαθμολογούνται με 1-5 βάσει του κατά πόσο ικανοποιούν τις οδηγίες που περιγράφονται στο Moodle.

Παρουσιάσεις Ερευνητικών Άρθρων: Σε μερικές διαλέξεις, ομάδες 2 φοιτητών θα ετοιμάσουν μια μονόωρη παρουσίαση για το άρθρο που συζητείται. Η παρουσίαση θα βαθμολογείται ανά ομάδα. Η παρουσίαση θα πρέπει να είναι ενδελεχής (30-40 διαφάνειες) και θα πρέπει να αφήνει περιθώρια για πολλές ερωτήσεις και απαντήσεις από διδάσκοντα και συμφοιτητές. Όλοι οι φοιτητές, συμπεριλαμβανόμενων και αυτών που παρουσιάζουν το άρθρο, θα πρέπει να υποβάλλουν περίληψή του και θα πρέπει να συμμετέχουν κανονικά στη συζήτηση καθώς θα βαθμολογηθούν ως αναφέρεται πιο πάνω.

Τελική Εξέταση: Θα γίνει με κλειστά βιβλία και σημειώσεις. Θα περιλαμβάνει ερωτήσεις πάνω σε ερευνητικά άρθρα και σημειώσεις που συμπεριλαμβάνονται στην ύλη του μαθήματος. Η εξέταση θα γίνει με πρόσβαση στο διαδίκτυο αλλά μόνο για να κατεβάσετε τα ερευνητικά άρθρα και τις σημειώσεις. Απαγορεύεται η χρήση Generative AI σε οποιαδήποτε μορφή (περιλαμβανόμενων εργαλείων  εξυπνότερης αναζήτησης όπως το Perplexity).

Σημείωση: Μεταπτυχιακοί φοιτητές που έχουν διδαχθεί την προπτυχιακή εκδοχή του μαθήματος θα κάνουν παρουσίαση δύο ερευνητικών ερευνητικών άρθρων σε ομάδες των δύο. Κάθε παρουσίαση θα αντιστοιχεί στο 20% του συνολικού βαθμού. Επίσης θα πρέπει να παραδώσουν και να παρουσιάσουν με 10 διαφάνειες μία εξαμηνιαία εργασία χρήσης ή τροποποίησης και μέτρησης ενός υπολογιστικού εργαλείου μεγάλης κλίμακας εξ αυτών που διδάσκονται στο μάθημα. Η εξαμηνιαία εργασία θα αποτελεί το 60% του συνολικού βαθμού.