Skip to content

Dominionai/IrisClassifier-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

16 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŒธ Iris Classifier โ€” AI-Powered Data Classification App

Production-ready Machine Learning App built with KNN, deployed on Streamlit

๐Ÿš€ Real-time Predictions โ€ข ๐Ÿ“Š Model Insights โ€ข โš™๏ธ Interactive Tuning

๐Ÿ”— Live Demo โ€ข โš™๏ธ Setup โ€ข ๐Ÿ“Š Performance


๐Ÿš€ Project Highlights

โœ… End-to-end ML pipeline (Data โ†’ Model โ†’ Deployment) โœ… Clean IPO Architecture (Input โ†’ Process โ†’ Output) โœ… Real-time predictions with probability confidence โœ… Proper evaluation using F1 Score (not just accuracy) โœ… Interactive UI for model tuning (K selection) โœ… Deployed and accessible globally


๐Ÿ“ธ Demo Preview

Demo


๐ŸŒ Live Demo

๐Ÿ‘‰ https://irisclassifier-project.streamlit.app/

โœ” No installation required โœ” Works on mobile & desktop


๐Ÿ” Overview

This project demonstrates how to build a production-ready machine learning application from scratch.

๐Ÿ“Š Dataset

  • 150 samples
  • 3 classes
  • 4 numerical features
Species Setosa Versicolor Virginica
Emoji ๐ŸŒท ๐ŸŒผ ๐ŸŒบ

๐Ÿš€ Features

๐Ÿ”ฎ Smart Prediction Engine

  • Input flower measurements

  • Get:

    • ๐ŸŽฏ Predicted class
    • ๐Ÿ“Š Probability distribution
    • ๐Ÿ”ฅ Confidence score

๐Ÿ“Š Model Insights Dashboard

  • Confusion Matrix
  • F1 Score (per class)
  • Classification report

โš™๏ธ Interactive Model Tuning

  • Adjust K (1โ€“20)
  • Visualize performance curves
K Range Behavior
1โ€“2 โš ๏ธ Overfitting
5 โœ… Optimal
15+ โš ๏ธ Underfitting

๐Ÿ“š Dataset Explorer

  • Raw data view
  • Feature distributions
  • Scatter plots

๐Ÿ“Š Model Performance

๐Ÿ”ฅ Test Results

Metric Score
Accuracy ~96%
F1 Score (Macro) ~96%

๐Ÿ“‰ Confusion Matrix

[[10 0 0]
 [ 0 10 0]
 [ 0  1 9]]

๐Ÿง  Architecture (IPO Framework)

INPUT
- Load dataset
- Train/test split (80/20)
- Feature scaling (StandardScaler)

PROCESS
- KNN (K=5)
- Euclidean distance
- Majority voting

OUTPUT
- Predictions
- Metrics (Accuracy, F1)
- Confusion Matrix

๐Ÿ›  Tech Stack

Category Tools
Frontend Streamlit
ML Scikit-learn
Data Pandas, NumPy
Visualization Matplotlib, Seaborn
Deployment Streamlit Cloud

๐Ÿ“ฆ Installation (Local)

git clone https://github.com/yourusername/iris-classifier.git
cd iris-classifier

python -m venv venv
source venv/bin/activate      # Mac/Linux
# venv\Scripts\activate       # Windows

pip install -r requirements.txt
streamlit run app.py

๐Ÿ–ฅ CLI Mode

python classifier.py

๐Ÿ“‚ Project Structure

iris-classifier/
โ”œโ”€โ”€ app.py
โ”œโ”€โ”€ classifier.py
โ”œโ”€โ”€ requirements.txt
โ””โ”€โ”€ .streamlit/

๐Ÿงช ML Concepts Demonstrated

  • Data preprocessing & scaling
  • KNN (distance-based learning)
  • Model evaluation (F1 Score)
  • Confusion matrix interpretation
  • Hyperparameter tuning (K selection)
  • Probability-based predictions

๐ŸŒ Deployment

Deployed on Streamlit Cloud

Steps:

  1. Push to GitHub
  2. Go to https://share.streamlit.io
  3. Select repo
  4. Deploy

โœ… Auto redeploy on push


๐Ÿ‘จโ€๐Ÿ’ป Author

Egwuatu Chibuike Dominion AI Engineer


๐Ÿ“ง Contact

๐Ÿ“ฉ chibuikedominion7@gmail.com


๐Ÿ Final Note

๐Ÿ’ก This project reflects my ability to build real-world AI applications โ€” not just models, but complete user-facing systems.


โญ Star this repo if you found it valuable!

About

๐ŸŒธ A production-ready Machine Learning web app that classifies Iris flower species using K-Nearest Neighbors (KNN). Built with Streamlit, Scikit-learn, and deployed for real-time predictions with interactive model tuning and evaluation metrics.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages