Product Recommendation Engine
An e-commerce recommendation engine combining a from-scratch ALS implementation (NumPy/SciPy) with content-based scikit-learn filtering.

Problem
Generic "best-sellers" recommendations don't reflect what an individual shopper actually wants, which hurts conversion.
Solution
A from-scratch ALS collaborative-filtering implementation (NumPy/SciPy) combined with content-based scikit-learn filtering, personalizing recommendations to each shopper.
Overview
“Best sellers” is not a recommendation — it’s the same list for every visitor. Real personalization requires understanding what this shopper specifically tends to want.
How it works
Two approaches are combined: a collaborative-filtering engine built from scratch with NumPy/SciPy (implementing Alternating Least Squares rather than importing a black-box library, to genuinely understand the mechanics), and a content-based scikit-learn filter that uses product attributes to recommend similar items even for shoppers with little purchase history.
Result
Recommendations that adapt to individual behavior instead of showing every visitor the same generic list.
Further reading
See Why Most Data Portfolios Get Rejected for more on why hand-built algorithms matter for a portfolio.
More projects
Support Ticket Triage Platform
A support-ticket triage platform with a Gradio UI and MLflow experiment tracking for model iteration.
Retail Analytics Warehouse
A dbt + DuckDB ELT pipeline over synthetic retail data, with 35 automated data-quality tests and a Streamlit dashboard.
Visual Quality Inspection
Automated visual quality control for manufacturing, using OpenCV/scikit-image feature extraction with scikit-learn classification.
