TasteEngine / plan /01-overview.md
Abdallah4z's picture
Initial implementation of TasteEngine: multi-approach recommender system with Flask web UI, evaluation suite, and explanation engine
133a630
|
Raw History Blame Contribute Delete
2.77 kB
# Project Overview
## Intelligent E-Commerce Recommendation System
A multi-approach recommender system for an e-commerce platform that generates personalized product recommendations using three different recommendation approaches, with comprehensive evaluation and comparison.
## Tech Stack
| Component | Technology |
|-----------|-----------|
| Backend | Python + Flask |
| Frontend | HTML / CSS / JS (glassmorphism + minimalist design) |
| Data | Synthetic dataset (NumPy + Pandas) |
| ML/Similarity | Scikit-learn, NumPy, Pandas |
| Visualization | Chart.js (in-browser charts) |
## Key Requirements
1. **Three approaches**: Collaborative Filtering, Content-Based, Knowledge-Based
2. **4+ CF methods**: User-Based, Item-Based, SVD, KNN
3. **4+ evaluation techniques**: RMSE, MAE, Precision@K, Recall@K, F1, Coverage
4. **Explainable recommendations**: Human-readable reasons for each suggestion
5. **Comparison & analysis**: Which method/approach performs best and why
## System Flow
```
User Input β†’ Select Approach β†’ Recommendation Engine β†’
β†’ Evaluation Module β†’ Comparisons β†’ UI Display
```
## Architecture
```
recommender-project/
β”œβ”€β”€ app.py # Flask entry point (routes)
β”œβ”€β”€ requirements.txt # Dependencies
β”œβ”€β”€ data/
β”‚ β”œβ”€β”€ generate_data.py # Synthetic dataset generator
β”‚ β”œβ”€β”€ products.csv # Product catalog (500 items)
β”‚ β”œβ”€β”€ users.csv # User profiles (200 users)
β”‚ β”œβ”€β”€ ratings.csv # User-item ratings (5000+)
β”‚ └── interactions.csv # Purchase history
β”œβ”€β”€ recommender/
β”‚ β”œβ”€β”€ __init__.py
β”‚ β”œβ”€β”€ collaborative.py # 4+ CF methods
β”‚ β”œβ”€β”€ content_based.py # Content-based methods
β”‚ β”œβ”€β”€ knowledge_based.py # Knowledge-based methods
β”‚ β”œβ”€β”€ evaluation.py # 4+ evaluation techniques
β”‚ └── explainer.py # Explanation generator
β”œβ”€β”€ utils/
β”‚ β”œβ”€β”€ similarity.py # Similarity metrics (cosine, pearson, etc.)
β”‚ └── helpers.py # Common utilities
β”œβ”€β”€ static/
β”‚ └── css/
β”‚ └── style.css # Professional UI styles
β”œβ”€β”€ templates/
β”‚ β”œβ”€β”€ index.html # Home page
β”‚ β”œβ”€β”€ recommend.html # Recommendation results
β”‚ └── evaluation.html # Evaluation & comparison dashboard
└── plan/
β”œβ”€β”€ 01-overview.md
β”œβ”€β”€ 02-dataset.md
β”œβ”€β”€ 03-collaborative-filtering.md
β”œβ”€β”€ 04-content-based.md
β”œβ”€β”€ 05-knowledge-based.md
β”œβ”€β”€ 06-evaluation.md
β”œβ”€β”€ 07-explanation.md
β”œβ”€β”€ 08-ui-ux.md
└── 09-implementation-phases.md
```