A Machine Learning project that predicts house prices using regression techniques trained on the Ames Housing Dataset. The trained model is integrated into a Streamlit web application for real-time house price prediction.
This project covers the complete Machine Learning workflow, including:
- Data preprocessing
- Exploratory Data Analysis (EDA)
- Feature selection
- Regression model training
- Model evaluation and comparison
- Trained model saving using Joblib
- Streamlit application development
- Real-time house price prediction
- Real-time house price prediction
- Multiple Machine Learning regression models
- Exploratory Data Analysis
- Data preprocessing
- Trained Scikit-learn model
- Interactive Streamlit interface
- Saved model using Joblib
- Ready for Streamlit Cloud deployment
- No separate backend API required
The project explores the following regression techniques:
- Simple Linear Regression
- Multiple Linear Regression
- Polynomial Regression
After model comparison, the selected trained model is saved as:
final_model.pkl
The Streamlit application uses important house features such as:
| Feature | Description |
|---|---|
OverallQual |
Overall quality of the house |
GrLivArea |
Above-ground living area |
GarageCars |
Garage capacity |
GarageArea |
Garage area |
TotalBsmtSF |
Total basement area |
1stFlrSF |
First floor area |
FullBath |
Number of full bathrooms |
TotRmsAbvGrd |
Total rooms above ground |
YearBuilt |
Year the house was built |
YearRemodAdd |
Year of remodeling |
House-Price-Prediction-ML/
│
├── frontend/
│ ├── app.py
│ ├── final_model.pkl
│ └── requirements.txt
│
├── notebook/
│ └── House_Price_Prediction.ipynb
│
├── train.csv
├── train (1).csv
├── ML_Project.docx
└── README.md
- Python
- Pandas
- NumPy
- Matplotlib
- Seaborn
- Scikit-learn
- Joblib
- Streamlit
- Jupyter Notebook
The project uses the Ames Housing Dataset.
Main dataset:
train.csv
The dataset contains different property features that are used to train regression models for house price prediction.
Clone the repository:
git clone https://github.com/WardaAhad/House-Price-Prediction-ML.gitMove into the project directory:
cd House-Price-Prediction-MLInstall the required dependencies:
pip install -r frontend/requirements.txtRun the application using:
streamlit run frontend/app.pyThe application will open in your browser at:
http://localhost:8501
House Features
↓
User Input in Streamlit
↓
Data Processing
↓
Trained ML Model
↓
House Price Prediction
↓
Predicted Price Displayed
The user enters information such as:
- Overall house quality
- Living area
- Garage size
- Basement area
- Number of bathrooms
- Number of rooms
- Construction year
- Remodeling year
The trained Machine Learning model processes these features and returns the predicted house price.
The complete model development process is available in:
notebook/House_Price_Prediction.ipynb
The notebook includes data analysis, preprocessing, model training, evaluation, and model comparison.
The Streamlit application can be deployed using Streamlit Community Cloud.
- Hyperparameter tuning
- Improved feature engineering
- Advanced regression models
- Model performance optimization
- Enhanced Streamlit UI
- Cloud deployment improvements
- Additional house features
The goal of this project is to demonstrate an end-to-end Machine Learning workflow, from dataset analysis and regression modeling to building an interactive web application for real-time house price prediction.