Machine Learning for Computer Systems
Applications of machine learning to computer systems with focus on networking
Course Overview
This course covers applications of machine learning to computer systems, with a particular focus on security, performance analysis, and prediction problems in networking. Topics include data preparation, feature selection, model evaluation, fairness, interpretability, and ML testing/debugging.
Primary Focus: Networking applications, though principles apply broadly across systems.
Course Resources
- Course Website: noise-lab.net/ml-systems
- GitHub Repository: github.com/noise-lab/ml-systems
- Board Notes (PDF): Dropbox
- ML Readings: noise-lab.net/ml-systems/ml.html
Lecture Topics (22 Lectures)
Use Cases (Lectures 1-4)
- Introduction with Packet Capture basics
- Security applications (scanning)
- Performance analysis (QoE inference)
- Resource optimization
Data & Pipeline (Lectures 5-8)
- Data acquisition and feature extraction
- Data preparation and representation
- Model training and evaluation
Supervised Learning (Lectures 9-14)
- Naive Bayes
- Linear and polynomial regression
- Logistic regression and SVMs
- Trees and ensembles
- Deep learning
- Traffic representation learning (nPrint)
Unsupervised Learning (Lectures 15-17)
- Dimensionality reduction
- Clustering
- Autoencoders
Generative Models (Lectures 18-19)
- Transformers and large language models
- Diffusion and state-space models
Bonus Topics (Lectures 20-22)
- Timeseries analysis
- Reinforcement learning
- Model performance and maintenance
Course Materials
Jupyter Notebooks
Interactive lectures available on GitHub covering each topic with hands-on examples.
Reading Materials
- Textbook chapters (Ch. 1-8)
- Research papers
- Additional resources in ML readings list
Assignments
Programming assignments and projects focused on applying ML to networking problems.
Format
The course uses a combination of:
- Lecture presentations
- Interactive Jupyter notebooks
- Hands-on programming assignments
- Reading materials from textbooks and research papers