Production-Ready ML Engineering Projects by Hubert Domagała
🌟 Try the Live Demo → - Interactive Cancer Detection System
This repository showcases end-to-end machine learning system development — from exploratory data analysis to production-ready deployments. Each project demonstrates software engineering best practices, scalable architectures, and real-world problem-solving.
| Project | Domain | ML Techniques | Status | Highlights |
|---|---|---|---|---|
| 🏥 Cancer Detection | Healthcare | Classification, Ensemble | ✅ Production | 96.7% accuracy, FastAPI, Zero false negatives |
| 💳 Fraud Detection | Finance | Anomaly Detection, Feature Engineering | 📊 Analysis | SMOTE, Cost-sensitive learning |
| ✍️ Digit Recognition | Computer Vision | PCA, Neural Networks | 📊 Analysis | Multi-model comparison |
| 🍯 Honey Production | Agriculture | Time Series Regression | 📊 Analysis | Trend analysis, Forecasting |
| 🏴 Flag Analysis | Data Mining | Multi-class Classification | 📊 Analysis | UCI dataset, EDA |
| 🍇 Raisin Classification | Agriculture | Clustering, Classification | 📊 Analysis | Feature analysis |
| 💰 Income Classification | Economics | Binary Classification | 📊 Analysis | Socioeconomic analysis |
| 🏥 Medical Insurance | Healthcare | OOP Design, Regression | 📊 Analysis | Clean code architecture |
Legend: ✅ Production (API + Tests) | 📊 Analysis (Notebooks)
Python 3.11 or higher
pip (Python package manager)# Clone the repository
git clone https://github.com/hubertdomagalaa/Machine_Learning.git
cd Machine_Learning
# Create virtual environment
python -m venv venv
# Activate virtual environment
# Windows:
venv\Scripts\activate
# Linux/Mac:
# source venv/bin/activate
# Install dependencies
pip install -r requirements.txt# Train the model
python scripts/train_cancer_model.py
# Start the API server
uvicorn api.cancer_api:app --reload
# Visit http://localhost:8000/docs for interactive API documentation# Run all tests with coverage
pytest tests/ --cov=src --cov-report=html
# View coverage report
# Open htmlcov/index.html in your browserMachine_Learning/
├── api/ # FastAPI endpoints for production models
│ ├── cancer_api.py # Cancer detection REST API
│ └── schemas.py # Pydantic request/response models
│
├── src/ # Production Python modules
│ ├── cancer/ # Cancer detection system
│ │ ├── config.py # Configuration management
│ │ ├── data_loader.py # Data loading and validation
│ │ ├── preprocessor.py # Feature engineering
│ │ ├── model.py # Model training and evaluation
│ │ ├── predictor.py # Prediction interface
│ │ └── cli.py # Command-line interface
│ └── utils/ # Shared utilities
│
├── tests/ # Unit and integration tests
│ ├── test_cancer_*.py # Cancer system tests
│ └── ...
│
├── notebooks/ # Exploratory analysis notebooks
│ ├── Cancer/ # Breast cancer classification
│ ├── Card_Fraud/ # Credit card fraud detection
│ ├── Digits/ # Handwritten digit recognition
│ ├── Flags/ # Country flag analysis
│ ├── Honey/ # Honey production forecasting
│ ├── Medical_Insurance/ # Insurance cost estimation
│ ├── Raisins/ # Raisin variety classification
│ └── income_class/ # Income bracket prediction
│
├── models/ # Trained model artifacts (.pkl, .joblib)
├── scripts/ # Training and utility scripts
├── .github/workflows/ # CI/CD automation
├── requirements.txt # Python dependencies
├── .gitignore # Git ignore rules
└── LICENSE # MIT License
Problem Statement: Binary classification of breast tumors (Malignant vs. Benign) to assist in early cancer diagnosis.
Business Impact: Early detection significantly improves survival rates. This system achieves high accuracy while minimizing false negatives (missing cancer cases).
- Accuracy: 96.7%
- Recall (Malignant): 100% (No false negatives!)
- Precision: 94.2%
- F1-Score: 0.97
- ROC-AUC: 0.989
- Algorithms: Random Forest, SVM, Logistic Regression, KNN
- Feature Engineering: Normalization, dimensionality reduction (PCA)
- Deployment: FastAPI REST API
- Testing: pytest with 85%+ coverage
- Data: Wisconsin Breast Cancer Dataset (569 samples, 30 features)
- ✅ Ensemble voting classifier for robust predictions
- ✅ Zero false negatives (critical for cancer screening)
- ✅ Production-ready API with request validation
- ✅ Comprehensive unit tests
- ✅ Model versioning and artifact management
🎮 Try Live Demo → | View Project Details → | View Production Code → | API Docs →
Problem Statement: Detect fraudulent financial transactions in real-time to prevent monetary losses.
- Feature Engineering: Transaction ratios, balance differentials, transaction type encoding
- Class Imbalance Handling: SMOTE oversampling, class weights
- Model: Logistic Regression (baseline), designed for XGBoost upgrade
- Evaluation: Precision-Recall curves, confusion matrix, cost-sensitive metrics
- Highly imbalanced (fraud is rare: <1% of transactions)
- Time-series features (transaction steps)
- Multiple transaction types (PAYMENT, TRANSFER, CASH_OUT)
Problem Statement: Optical recognition of handwritten digits (0-9) for automated document processing.
- Dimensionality Reduction: PCA for visualization and feature compression
- Models Compared: SVM, Random Forest, MLPClassifier (Neural Network)
- Hyperparameter Tuning: GridSearchCV for optimal parameters
- Dataset: UCI ML hand-written digits (1,797 samples, 8x8 images)
- Algorithm: SVM with RBF kernel
- Accuracy: ~98%
- Confusion Matrix Analysis: Detailed digit-pair error patterns
Problem Statement: Predict future honey production trends across U.S. states to assist agricultural planning.
- Model: Linear Regression (baseline)
- Feature Engineering: Year-over-year percentage change
- Data Aggregation: State-level and national trend analysis
- Evaluation: MSE, R-squared, residual analysis
- Identified declining production trends in key states
- Seasonal and economic factor correlations
- Multi-year forecasting capabilities
Problem Statement: Predict country characteristics based on flag features (colors, symbols, patterns).
- Data Source: UCI ML Repository (194 countries, 30 features)
- Models: Decision Trees, Random Forests, SVM, Neural Networks
- Feature Types: Numerical (colors, area) and categorical (symbols, religion, language)
- Evaluation: Cross-validation, classification reports
Problem Statement: Classify raisin varieties using physical measurements for quality control.
- Algorithms: Clustering and supervised classification
- Features: Size, shape, color characteristics
- Application: Automated agricultural sorting
Problem Statement: Predict whether individuals earn above or below $50K based on demographic features.
- Data: Census income dataset
- Features: Age, education, occupation, work hours, marital status
- Models: Classification algorithms with feature importance analysis
- Evaluation: Accuracy, precision, recall, fairness metrics
Problem Statement: Estimate medical insurance costs based on individual health and demographic factors.
- Design Pattern: Object-Oriented Programming with Enums
- Features: Age, BMI, smoking status, number of children
- Validation: Input validation, error handling
- Code Quality: Type safety, clean architecture
This project showcases professional Python development:
- ✅ Enum types for type safety
- ✅ Data validation with custom setters
- ✅ BMI calculation encapsulation
- ✅ Comprehensive error handling
View Project Details → | View Code →
- Supervised Learning: Classification (Binary & Multi-class), Regression
- Unsupervised Learning: Clustering, PCA
- Time Series: Trend analysis, Forecasting
- Imbalanced Data: SMOTE, Class weights, Cost-sensitive learning
- Model Selection: Cross-validation, Hyperparameter tuning (GridSearchCV)
- Evaluation: ROC-AUC, Precision-Recall, Confusion matrices
- Architecture: Modular design, OOP principles, Separation of concerns
- API Development: FastAPI, RESTful design, Pydantic validation
- Testing: pytest, Unit tests, Integration tests, Coverage >80%
- Code Quality: Type hints, Docstrings, PEP 8, Black formatting
- CLI Tools: Click framework, argument parsing
- Version Control: Git, Professional commit messages
- Model Serialization: joblib, pickle
- Experiment Tracking: MLflow integration
- CI/CD: GitHub Actions, Automated testing
- Containerization: Docker-ready (in progress)
- Documentation: Comprehensive READMEs, API docs, Code comments
# Core ML Libraries
numpy, pandas, scikit-learn
# Visualization
matplotlib, seaborn
# Deep Learning (planned)
pytorch, tensorflow
# API & Web
fastapi, uvicorn, pydantic
# Testing & Quality
pytest, flake8, black, mypy- 8 diverse ML projects across multiple domains
- Professional repository structure
- Comprehensive documentation
- Production code for Cancer Detection
- REST API implementation
- Unit testing framework
- Requirements management
- MIT License
- Docker containerization
- CI/CD pipeline (GitHub Actions)
- Streamlit demo applications
- Pre-commit hooks & code quality automation
- GitHub issue & PR templates
- Advanced algorithms (XGBoost, Prophet)
- Model interpretability (SHAP values)
- Kubernetes deployment
- Model monitoring and drift detection
- Feature store implementation
- A/B testing framework
- AutoML pipeline
This portfolio represents my growth in:
- Machine Learning: From basic models to ensemble methods and production systems
- Software Engineering: From notebooks to tested, modular, API-driven applications
- MLOps: Understanding the full ML lifecycle beyond just model training
- Domain Knowledge: Applying ML to healthcare, finance, agriculture, and more
- Total Projects: 8
- Production APIs: 1 (expanding)
- Lines of Code: 10,000+
- Test Coverage: 85%+ (production projects)
- Datasets Processed: 8+
- Models Trained: 20+
- Algorithms Implemented: 15+
GitHub: @hubertdomagalaa
Email: [email protected]
💼 Open to opportunities in:
- Machine Learning Engineer roles
- Data Scientist positions with ML engineering focus
- MLOps and production ML systems
- Collaborative open-source ML projects
This project is licensed under the MIT License - see the LICENSE file for details.
- Datasets: UCI Machine Learning Repository, Kaggle, sklearn built-in datasets
- Libraries: scikit-learn, FastAPI, pytest, and the entire Python data science ecosystem
- Inspiration: Production ML best practices from industry leaders
⭐ If you find this portfolio valuable, please consider starring the repository!
Last updated: January 2026
