Back
Machine learning · 2023

Network Anomaly Detection

Trained a deep autoencoder on 19,528 network traffic samples to flag unusual traffic.

Context

Intro to Artificial Intelligence (ECS 170), UC Davis, 2023

Tools

Python, TensorFlow, Keras, pandas, NumPy

Code

View on GitHub

The question

Can a model learn what normal network traffic looks like well enough to flag traffic that doesn't fit? An autoencoder learns to rebuild normal traffic, so traffic it rebuilds badly is likely unusual.

Approach

  1. Organize the data. Loaded a 19,528-sample dataset, grouped it into traffic classes, and split it into training and test sets.
  2. Scale features. Applied Min-Max scaling so every feature sat on the same range.
  3. Build the model. Trained a deep autoencoder in TensorFlow and Keras as part of a team, keeping the project on its milestones.
Data preparationFeature scalingNeural networksTeamwork
Back to all projects