In recent years, we have witnessed the widespread usage of ML tools for various classification, detection, and control problems. More recently, we have witnessed the use of ML for various networking problems as well. However, operationalizing ML solutions for networked systems is more nuanced than simply calibrating existing tools, developed for other domains (image classification, NLP, etc.). More in-depth exploration to develop flexible, scalable, and generalizable ML-based networked systems.
In this course, we will cover recent research, published at top networked systems (USENIX NSDI, ACM SIGCOMM) and ML conferences (NeurIPS, ICML, etc.), that developed new ML tools/techniques for networked systems. In the process, we will learn how to identify problems that can (or cannot) benefit from ML, decide which tool/algorithm to use, and how to do interdisciplinary research covering networking, ML, and systems.
There are no official prerequisites; however, a basic familiarity with networking, ML, and distributed systems concepts will be very helpful. The course will be structured around paper readings, class discussions, high-quality paper review writing, quizzes, and a term-long individual (or group) research project. The class will cover approximately 10-12 research papers. Students are expected to read papers before the class, write reviews, and participate in discussions during the class.