Iris Flower Prediction App Using Streamlit and Machine Learning
Machine learning can empower even simple apps to demonstrate powerful predictive capabilities. My Iris Detection project is a user-friendly web app built with Streamlit, allowing anyone to predict iris flower species from measurements using classic machine learning models.
Project Purpose
The Iris Detection project enables users to enter the main features of an iris flower—sepal length, sepal width, petal length, and petal width—to receive predictions of the flower type: Setosa, Versicolor, or Virginica. With an intuitive interface, anyone interested in machine learning can experiment interactively.
How it Works
- User Input: The sidebar in the app lets users adjust feature values with sliders.
- Model Selection: Users choose one of three machine learning models—Random Forest, Support Vector Machine (SVM), or Logistic Regression.
- Prediction & Probabilities: After input and model selection, the chosen algorithm is trained on the classic Iris dataset and predicts the species for the given feature values. The app displays both the most likely class and the probability estimates for each class.
Key Features & Workflow
- Uses the Streamlit framework for rapid interface prototyping.
- Loads the famous iris dataset via scikit-learn.
- Provides a choice of popular algorithms for experimentation:
- Random Forest
- SVM (with probability estimates)
- Logistic Regression
- Shows the detailed input parameters and prediction probabilities, so users see not only the classification result but also its confidence.
- All core dependencies (pandas, scikit-learn, streamlit) are specified for easy reproducibility.
Technologies Used
- Python (backend logic)
- Streamlit (for building the web UI)
- Pandas (data management)
- scikit-learn (machine learning models and dataset)
How to Run
Just install the requirements and execute the script with Streamlit:
bashpip install -r requirements.txt
streamlit run iris_detection.py
The app will launch locally in your browser, ready for interactive predictions.
Links
- GitHub Source Code: https://github.com/sandeepkarmacharya/iris_detection
- Live Website/Demo: https://github.com/sandeepkarmacharya/iris_detection