Skip to content

About

A portfolio of machine learning projects demonstrating skills in Python, Scikit-learn, and data science, with a focus on expanding into deep learning with TensorFlow and PyTorch.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

14 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Machine Learning & Deep Learning Portfolio

Welcome to my portfolio of machine learning projects! This repository contains a collection of notebooks where I explore various datasets, apply different machine learning algorithms, and practice the end-to-end data science workflow.

My goal is to continuously add new projects, tackling different challenges and exploring a wide range of techniques, from foundational models to advanced deep learning architectures.


About Me

I am a passionate and aspiring Machine Learning Engineer with a strong foundation in Python and a keen interest in turning data into actionable insights. I enjoy the process of diving deep into data, uncovering patterns, and building models that solve real-world problems.


Skills & Technologies

Here are some of the key skills and technologies I've demonstrated in my projects or am actively developing.

  • Languages: Python
  • Core Libraries: Pandas, NumPy, Scikit-learn, Matplotlib, Seaborn
  • Machine Learning: Supervised Learning (Classification, Regression), Exploratory Data Analysis (EDA), Feature Engineering & Selection, Hyperparameter Tuning (Cross-Validation, GridSearchCV), Model Evaluation (Accuracy, Confusion Matrix, Precision-Recall Trade-off)
  • Future Learning & Development:
    • Deep Learning Frameworks: TensorFlow, Keras, PyTorch
    • Advanced Topics: Neural Networks, Computer Vision (CNNs), Natural Language Processing (NLP)
  • Tools: Jupyter Notebook, Git & GitHub

Projects

Below is a summary of the projects included in this repository. Each project includes a detailed notebook with code, visualizations, and explanations.

1. Breast Cancer Classification: A Study in Model Responsibility

  • Notebook: breast-cancer-classification-project/breast_cancer_prediction.ipynb
  • Objective: To build a model that can accurately and, more importantly, safely classify breast tumors as malignant or benign.
  • Models Used: K-Nearest Neighbors (KNN), Logistic Regression
  • Key Steps & Findings:
    • Problem Framing: Identified that for this medical diagnosis task, minimizing False Negatives (failing to detect a malignant tumor) is far more critical than overall accuracy.
    • Baseline Modeling: A tuned KNN model achieved 95.6% accuracy but produced 3 dangerous False Negatives.
    • Iterative Improvement: A baseline Logistic Regression model immediately improved results, reducing False Negatives to 1.
    • Goal-Oriented Tuning: Used GridSearchCV to optimize the Logistic Regression model, but with a crucial change: the scoring metric was set to 'recall' instead of 'accuracy'. This explicitly instructed the model to prioritize finding all malignant cases.
  • Result: The final, tuned model achieved 100% recall for the malignant class, successfully eliminating all False Negatives. This demonstrated a practical understanding of the Precision-Recall trade-off, accepting a few manageable False Positives in exchange for maximum patient safety.

2. Iris Species Classification

  • Notebook: iris-classification-project/iris_prediction.ipynb
  • Objective: To build a model that can accurately classify the species of an iris flower (setosa, versicolor, or virginica) based on its sepal and petal measurements.
  • Model Used: K-Nearest Neighbors (KNN)
  • Key Steps & Findings:
    • EDA & Visualization: Investigated feature distributions and relationships, identifying petal dimensions as highly predictive.
    • Robust Evaluation: Demonstrated the weakness of a single train-test split by showing how "lucky splits" can give misleading accuracy scores.
    • Hyperparameter Tuning with Cross-Validation: Used 10-fold cross-validation to find the optimal k (n_neighbors), resulting in a more reliable and generalizable model.
  • Result: The final model, tuned with robust methods, achieved an average cross-validated accuracy of 96.0%.

3. House Sales Price Prediction: Advanced Regression & Feature Engineering

  • Notebook: house-sales-price-prediction/house-sales-price-prediction.ipynb
  • Status: Completed
  • Objective: Predict house sale prices in Ames, Iowa using advanced regression, feature engineering, and rigorous data cleaning.
  • Key Steps & Findings:
    • Data Cleaning & Imputation: Addressed missing values in 19 columns, including intelligent imputation of LotFrontage using neighborhood medians and careful handling of categorical/numerical inconsistencies.
    • Feature Engineering: Created impactful features such as TotalSF (total square footage), HouseAge, and TotalBathrooms, which proved highly predictive.
    • EDA & Visualization: Explored distributions, relationships, and handled skewness in the target variable with log transformation.
    • Modeling:
      • Random Forest Regressor: Established a strong baseline (RMSE: 0.1448, log scale). Hyperparameter tuning did not yield further improvement.
      • XGBoost Regressor: Outperformed Random Forest immediately (baseline RMSE: 0.1422, log scale). Further hyperparameter tuning reduced RMSE to 0.1259 (log scale).
    • Interpretation: Converted predictions back to dollar values for stakeholder-friendly reporting. Final RMSE in dollars: $26,363.22.
  • Result: The final model (tuned XGBoost) predicts house prices within ~$26,000 of actual sale prices on average, demonstrating a robust, production-ready regression pipeline and best practices for real-world tabular data science.

(More projects, including deep learning applications, will be added here as they are completed...)

About

A portfolio of machine learning projects demonstrating skills in Python, Scikit-learn, and data science, with a focus on expanding into deep learning with TensorFlow and PyTorch.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages