Skip to content

Research-level implementation of unsupervised anomaly detection using KMeans, DBSCAN, Isolation Forest, and deep Autoencoders. Applied to IoT sensors, financial fraud, network intrusion, and time-series fault detection. Built for PhD-oriented ML portfolios.

Notifications You must be signed in to change notification settings

alizangeneh/unsupervised-anomaly-detection-ml

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Unsupervised Learning for Anomaly Detection Research-Oriented Machine Learning Project

Author: Ali Zangeneh

Email: engineer.zangeneh@gmail.com

GitHub: https://github.com/alizangeneh


Project Overview

This project presents a complete research-oriented implementation of unsupervised learning techniques for anomaly detection. The core objective is to model normal behavior from data without using labels and to identify abnormal patterns using multiple algorithmic perspectives.

The project is designed as a serious academic and applied machine learning portfolio, suitable for PhD applications in the fields of Artificial Intelligence, Machine Learning, Intelligent Systems, IoT, and Cybersecurity.


Implemented Models

  • KMeans for distance-based anomaly detection
  • DBSCAN for density-based outlier detection
  • Isolation Forest for tree-based anomaly scoring
  • Autoencoder neural network for deep unsupervised anomaly detection

Main Use Cases Covered

  1. Sensor Fault Detection in IoT Systems
  2. Financial Fraud Detection
  3. Network Intrusion Detection
  4. Time-Series Sensor Anomaly Detection

Each use case is implemented as a standalone pipeline with its own dataset and execution script.


Project Structure Overview

data/raw Contains raw synthetic datasets for:

  • Sensor data
  • Fraud transactions
  • Network traffic
  • Time-series sensor signals

data/processed Contains scaled and preprocessed datasets.

src Contains all core source codes:

  • Data loading
  • Feature scaling
  • Unsupervised models
  • Evaluation utilities
  • Visualization utilities

use_cases Contains full standalone pipelines:

  • fraud_detection_pipeline.py
  • network_intrusion_pipeline.py
  • sensor_timeseries_pipeline.py

notebooks Contains full research notebooks:

  • 01_exploration.ipynb
  • 02_autoencoder_anomaly.ipynb

tests Contains basic unit tests for model validation.

main.py Main entry point for sensor-based anomaly detection using multiple models.


How to Install

pip install -r requirements.txt


How to Run

Basic sensor anomaly detection:

python main.py

Run dedicated use cases:

python use_cases/fraud_detection_pipeline.py python use_cases/network_intrusion_pipeline.py python use_cases/sensor_timeseries_pipeline.py


Technical Stack

Python NumPy Pandas Scikit-learn Matplotlib PyTorch


Academic Purpose

This repository is built as a serious research portfolio demonstrating:

  • Strong understanding of unsupervised learning
  • Practical anomaly detection in real-world scenarios
  • Comparison of multiple algorithmic approaches
  • Integration of classical machine learning and deep learning
  • Proper project structuring for academic and industrial use

This project is specifically prepared to strengthen applications for fully funded PhD positions in machine learning, AI, intelligent systems, IoT, cybersecurity, and data science.


License

This project is open for academic and research use with proper attribution.

About

Research-level implementation of unsupervised anomaly detection using KMeans, DBSCAN, Isolation Forest, and deep Autoencoders. Applied to IoT sensors, financial fraud, network intrusion, and time-series fault detection. Built for PhD-oriented ML portfolios.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published