This repository is a read-only archive from an original fork of a program we developed from AI4All. It is no longer being maintained and eventually will be deleted. Please see the latest version.
This repository contains exercises, resources, and information for learning machine learning concepts and applying them to networking.
- Networking videos will provide networking background.
- Videos on machine learning topics will also be posted.
A general structure for a short course on this material is as follows. Each lecture has (1) a set of slides explaining concepts, (2) an accompanying Jupyter Notebook with example applications from networking to make the concepts more concrete and further expand on networking concepts, (3) some basic background reading on the topic.
Lecture | Topic | Lab | Preparation |
---|---|---|---|
1 | Machine Learning/Python Basics | Python Basics | |
2 | Network Measurement | Traffic Analysis | Videos: 1-9, 26, 85-94 |
3 | Linear Regression | IoT: Energy Prediction | |
4 | Logistic Regression | DNS Query Detection | |
5 | Naive Bayes | Spam Filtering | |
6 | Nearest Neighbor/Trees/Ensemble | Activity Recognition | |
7 | Unsupervised Learning | Traffic Clustering | |
8 | Deep Learning | DDoS Detection |
Please come to class having done the reading.
Each week will also have a short homework assignment and a short accompanying quiz to track your knowledge of the material.
The repository has the following organization:
- pcaps/ - example packet captures used in notebooks
- data/ - other data used in notebooks (non-pcap)
- lectures/ - slides for each lecture
- notebooks/ - notebooks for each lecture