Back to portfolio

Machine Learning / Python

Traffic Classification Machine Learning Project

A classification workflow on anonymized traffic data that compared multiple models and communicated results clearly for a non-technical reader.

Role
Coursework project, Data Analytics
Timeline
2024 to 2025
Client
Texas State University

Tools

PythonPandasScikit-learnNumPyMatplotlib

Compared 4 classifiers with cross-validation

Engineered features that improved accuracy meaningfully

Produced confusion matrices and interpretation writeups

Visual

Dashboard preview

Sample output view from the workflow.

Visual

Model comparison

Confusion matrices and cross-validation scores across candidate models.

Overview

A graduate coursework project that applied a classification workflow to anonymized traffic data, focused on clean feature engineering, honest evaluation, and clear reporting.

Business problem

Given a labeled dataset, produce a defensible classifier along with a written explanation of choices, limitations, and results for a non-technical reader.

Responsibilities

  • Cleaned and profiled the dataset in Pandas
  • Engineered features and encoded categorical variables
  • Trained and compared multiple scikit-learn classifiers
  • Evaluated performance using cross-validation and confusion matrices
  • Wrote a plain-language interpretation for a general reader

Dataset

Publicly available anonymized traffic dataset used for classification coursework, with labeled outcomes and mixed numeric and categorical features.

Approach

Profiled the data, split into train and test with stratification, tried logistic regression, random forest, gradient boosting, and a simple neural baseline, then tuned the strongest candidates with cross-validation.

Solution

A notebook that runs the full pipeline, exports evaluation metrics and confusion matrices, and produces a short writeup summarizing what worked and why.

Results

The best model comfortably beat the baseline on accuracy and F1, and the writeup made the tradeoffs across models legible to a non-technical reader.

Challenges

Class imbalance and correlated features required careful preprocessing to avoid misleading metrics.

Limitations

Coursework dataset only; a production deployment would need broader data, drift monitoring, and clear operational thresholds.

Lessons learned

Reporting choices matter as much as modeling choices. A clear confusion matrix and a plain-language summary outperformed longer, denser writeups.

Future improvements

Add calibrated probability outputs, SHAP-based interpretation, and a small Streamlit demo for stakeholder review.

Next

Want to talk through a similar project?

Get in touch