Skip to content

Repository files navigation

Supervised Learning Projects

Python Scikit-Learn Jupyter License

A collection of supervised machine learning projects built with Python and Jupyter notebooks. Each folder contains a self-contained project demonstrating a real ML workflow: data preparation, modeling, and evaluation.


📚 Projects Included

1. Employee Turnover Prediction

Folder: Employee_Turnover-LogesticRegression-Model/

  • Objective: Predict employee attrition for a company using logistic regression.
  • Approach: Baseline Logistic Regression plus L1 (Lasso) and L2 (Ridge) regularization.
  • Key features: job satisfaction, work-life balance, monthly income, years at company, performance rating, and more.
  • Output: Classification metrics such as accuracy, precision, recall, and F1-score.
  • Contents: employee_turnover_project.ipynb, employee_turnover.csv, README.md, requirements.txt

2. House Price Prediction

Folder: House_Price_Predictor/

  • Objective: Predict house sale prices using a regression model.
  • Approach: Linear regression with data cleaning, missing value handling, one-hot encoding, feature scaling, and evaluation.
  • Key features: property characteristics and sale price information from the CSV dataset.
  • Output: Regression metrics such as R² score, MAE, RMSE, and MAPE.
  • Contents: house_price_predictor.ipynb, HousePricePrediction.csv, README.md, requirements.txt, Supervised_ML_Assignment1.pdf

3. Iris Flower Classification

Folder: Iris_Flower_Classification/

  • Objective: Classify Iris species from flower measurements.
  • Approach: Compare multiple supervised models including KNN, Logistic Regression, and Naive Bayes.
  • Key features: sepal length, sepal width, petal length, petal width, and species label.
  • Output: Model comparison with classification metrics and a final recommendation.
  • Contents: iris_flower.ipynb, Iris.csv, README.md, requirements.txt

4. Scratch KNN Regressor

Folder: Scratch_implementation_kNN/

  • Objective: Build a KNN regressor from scratch using NumPy.
  • Approach: Implement Euclidean distance, neighbor selection, and prediction averaging without using scikit-learn.
  • Key features: a simple numeric dataset demonstrating model training and inference.
  • Output: Predicted values for test samples using the custom KNNRegressor class.
  • Contents: knn_regressor_scratch.ipynb, README.md, requirements.txt, Scratch Implementation_Assignment.pdf

🔧 How to Use This Repository

Each project folder is designed to run independently. For a given project:

  1. Open the folder.
  2. Install dependencies from requirements.txt.
  3. Run the Jupyter notebook.

Example:

cd House_Price_Predictor
pip install -r requirements.txt
jupyter notebook house_price_predictor.ipynb

Example for the scratch implementation:

cd Scratch_implementation_kNN
pip install -r requirements.txt
jupyter notebook knn_regressor_scratch.ipynb

👤 Author

Afzal
BTech — Computer Science
Supervised ML Project

📝 Notes

  • Use project-specific READMEs for detailed setup and implementation notes.
  • Keep each dataset and notebook in the same folder.
  • The included PDFs provide assignment context and additional documentation.

📄 License

This repository is shared under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages