This project implements a product recommendation system for an e-commerce platform. The system utilizes collaborative filtering, content-based filtering and hybird approach techniques to provide personalized product recommendations to users based on their purchase history.
- Collaborative Filtering: Recommends products based on the purchase behavior of similar users.
- Content-Based Filtering: Recommends products based on the attributes of the products the user has previously purchased.
- Hybrid Approach: Recommends products by combining Collaborative and Content-Based Filtering.
- User-Friendly Interface: A web application built with Flask for easy interaction and recommendations.
- Python: For backend logic and data processing.
- Flask: Web framework for creating the web application.
- Pandas: For data manipulation and analysis.
- HTML/CSS: For frontend design.
- Python 3.x
- Flask
- Pandas
-
Clone the repository:
git clone <repository-url>
-
Navigate to the project directory:
cd er
-
Install the required packages:
pip install flask pandas
- Start the Flask server:
python app.py
- Open your web browser and navigate to http://127.0.0.1:5000.
users.csv
: Contains user information.products.csv
: Contains product details such as name, category, description, price, and rating.purchases.csv
: Contains user purchase history.browsing_history
: Contains user browsing history.
- Enter a user ID and select a recommendation method (collaborative, content-based or hybrid approach).
- Click on "Get Recommendations" to view the recommended products.
If you would like to contribute to this project, please fork the repository and submit a pull request.
-
More Data: I plan to add more file to enhance the model aspect of our recommendation system.
-
Clean UI: Improving the user interface (UI) for my e-commerce product recommendation system can significantly enhance user experience and engagement.
-
Feedback Mechanism: Implement a way for users to provide feedback on the recommendations, which can help me refine the system.
-
Explainability: Work on explaining the reasoning behind recommendations, which can enhance user trust and satisfaction.