Graph-Based Personalized E-commerce Recommendation Engine
Project Overview
This project focuses on building a Graph-based recommender system that recommends similar products to users of an e-commerce platform. It's a continuation of a previous project where we converted clickstream data into various types of graphs.
Business Objective
To create a recommendation system for our eCommerce platform by converting generated graphs into embeddings and using similarity search techniques.
Tech Stack
- Language: Python
- Packages: pandas, numpy, pecanpy, gensim, plotly, umap, faiss
- File Management: Parquet
Approach
- Understand the problem statement
- Deepwalk and Node2vec Model training
- Import necessary packages and libraries
- Read the selected graph
- Save the graph in .edg format
- Graph random walk generation
- Model Building with Word2Vec and Node2Vec
- Save the embeddings in parquet format
- Result analysis and Visualization
- Import necessary packages and libraries
- Read the data
- Define a function for generating levels of category
- Use UMAP for dimension reduction
- Visualize the clusters
- Embedding vector search
- Import necessary packages and libraries
- Use FAISS for generating recommendations
Key Achievements
- Successfully converted complex clickstream data into meaningful graph representations
- Implemented advanced embedding techniques like Deepwalk and Node2vec
- Utilized FAISS for efficient similarity search, enabling fast and accurate recommendations
- Created visualizations using UMAP to understand the clustering of products
Conclusion
This project demonstrates the power of graph-based approaches in building sophisticated recommendation systems. By leveraging techniques from graph theory, natural language processing, and efficient similarity search, we've created a system that can provide highly relevant product recommendations, potentially increasing user engagement and sales for the e-commerce platform.