In recent years, the application of Machine Learning (ML) tools has extended beyond traditional domains like image classification and Natural Language Processing (NLP) to tackle a variety of classification, detection, and control problems. More notably, the adoption of ML in addressing networking issues has emerged as a significant area of interest. However, implementing ML solutions for networked systems presents unique challenges that go beyond merely adapting tools designed for other fields. It necessitates a more thorough investigation to create ML-based networked systems that are flexible, scalable, and generalizable.
This course aims to delve into recent research efforts that have been successful in developing new ML tools and techniques specifically tailored for networked systems. We will explore studies published in prestigious networking, security, and ML conferences, such as USENIX NSDI, ACM SIGCOMM, NeurIPS, and ICML. Through this, students will learn to identify problems within networking that are amenable to ML solutions, select the appropriate tools or algorithms, and engage in interdisciplinary research that spans networking, ML, and systems.
The curriculum will also concentrate on understanding the decision-making processes involved in networking. This includes how network protocols or operators make decisions across various levels (network, TCP, application, etc.) to ensure network safety and performance. The course will examine the current heuristic-based decision-making frameworks and discuss how they can be replaced with ML-driven models.
Additionally, we will address the specific challenges of applying ML to networking problems and outline strategies to overcome them. Students will gain insights into the various stages of the ML pipeline, including data collection, pre-processing, representation, feature extraction, model selection, training, evaluation, and analysis. Emphasis will be placed on modifying these stages to develop models that are not just high-performing but also reliable, incorporating qualities such as trustworthiness, explainability, and robustness.