← all projects
WIP2026 · Solo engineer

NIDS

Supervised intrusion detection on the CICIDS 2017 flow dataset — Decision Tree and SVM classifiers built as documented sprints, where the reasoning is the deliverable. My on-ramp into AI security.

NIDS is where I started taking AI security seriously, not as a headline but as a build. It is a supervised machine-learning project on CICIDS 2017, a large, real, and deliberately messy set of labeled network flows, worked through as a series of self-paced sprints.

The build

The goal is to tell benign traffic apart from attacks using classic, well-understood models, a Decision Tree and a Support Vector Machine, and to do it honestly. That means the unglamorous parts done properly: cleaning roughly 2.8 million flows, holding out a stratified test split before touching a model, and refusing the shortcuts that leak the answer into the training data.

Why it is built this way

The deliverable that matters here is the documented reasoning, not just a score. Every decision, how the class imbalance is handled, why a baseline comes first, where leakage could sneak in, is written down with its rationale, so the project stays legible to someone else and to my future self.