A machine learning operations (MLOps) project demonstrating MLflow integration for experiment tracking and model management using the Iris dataset.
ml-ops-playground/
├── .dockerignore
├── .gitignore
├── Dockerfile.mlflow
├── Dockerfile.training
├── README.md
├── compose.yml
├── requirements.txt
└── training.py
- Docker and Docker Compose
- Python 3.9+
- MLflow
- scikit-learn
- Clone the repository:
git clone https://github.com/yourusername/ml-ops-playground.git
cd ml-ops-playground
- Start the MLflow server and training service:
docker compose up --build
The services will:
- Start MLflow server on http://localhost:8080
- Execute the training script automatically
- Tracks experiments and metrics
- Stores model artifacts
- Accessible via web UI at http://localhost:8080
- Uses scikit-learn's Iris dataset
- Implements Logistic Regression model
- Logs metrics, parameters, and model artifacts to MLflow
- Algorithm: Logistic Regression
- Dataset: Iris Classification
- Metrics: Accuracy
- Parameters:
- solver: lbfgs
- max_iter: 1000
- multi_class: auto
- random_state: 8888
MLFLOW_TRACKING_URI
: URI for MLflow tracking server (default: http://mlflow:8080)
To modify the training pipeline:
- Update
training.py
- Rebuild and run containers:
docker compose up -d --build
[Your License Here]
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a new Pull Request