RECOMMENDER SYSTEMS
UNDERSTANDING THE CUSTOMER
In the digital age, the internet connects billions of people to countless products around the world, providing consumers with more choices than ever before. In 2016, 185,000 sellers carried over 353 million products in the Amazon Marketplace alone. While savvy choosers may find exactly what they want, many consumers can be paralyzed by the decision-making process.
The Jam Experiment, published by Sheena Sethi Iyengar and Mark Lepper in 2001, studied how choice influences consumer behavior. An assortment of 24 jams attracted more customers (60%) than six jams (40%). But only 3% of shoppers purchased from the large set, while 30% bought from the small one. Shoppers felt confident in choosing the best jam when offered fewer options.
Recommender systems assist consumers in the search and discovery of new products and services, selectively reducing the option set presented to them. Demonstrating their business value, Netflix attributes $1 billion in annual cost savings to its AI recommender system. These systems filter options through several approaches involving varying levels of personalization.
Personalized recommender systems suffer from the “cold start” problem, in which they require some initial data about customer preferences to make targeted recommendations. To address this issue, demographic data mining approaches can pre-populate assumptions about a new consumer, while ensemble techniques can aggregate multiple recommender systems.
But perhaps we can leverage simple unpersonalized recommender systems to follow the touch points of the consumer journey. We can tackle the cold start problem by recommending popular products to new customers and then progressively switching to more personalized recommendations. So let’s try to implement a touch-driven recommender engine for an e-commerce platform.
Continue reading the full story curated by Towards Data Science, a Medium publication...
ADTECH | DIGITAL MARKETING | BRAND MANAGEMENT | CONSUMER JOURNEYS | RECOMMENDER SYSTEMS
-
Touch-Driven Recommender Engine
A system that records the touch points for each customer and their responses to adaptive recommendations. -
Live Checkpoint for Inventory Stockout
A check that each recommended product is in-stock, querying the status of the product webpage or database. -
Non-Repeating Rolling Recommendations
A check that each product recommended to the customer is novel based on the recommendation history. -
Synchronization with NoSQL Database
Database feedback of the customer response for each recommendation prior to issuing the next recommendation.
WEB SCRAPING | SELENIUM | REQUESTS | BEAUTIFULSOUP | HTML | DOCUMENT STORE
Farfetch is an online luxury retail platform and marketplace, connecting consumers in over 190 countries to more than 3,000 brands. With each brand selling a wide variety of products, Farfetch can be considered a long tail marketplace. The value of the platform is driven by numerous differentiated products that appeal to varied consumers, rather than mass market mega-hits.
- Date
- Rating
- Pieces Bought
- Product URLs
- Ordered From
- Reviewed By
- Review
- Product URL
- In-Stock / Sold Out
- Original Price
- Discount %
- Sale Price
- Designer
- Product
- Gender
- Category
- Subcategory
- Style
- Color
- Made In
- 100,000 Customer Reviews
- 21,641 Product Ratings
- 16,105 In-Stock Product Ratings
- 9,667 Unique Customers
- 13,518 Unique Products
- 3 Genders (Women, Men, Kids)
- 5 Made In Locations
- 16 Discount Levels
- 1,184 Designers
- 29 Categories
- 374 Subcategories
- 7,788 Colors
- 12,596 Styles
PYTHON | MONGODB | NOSQL | JSON | PICKLE | PANDAS | NUMPY | SURPRISE | SINGULAR VALUE DECOMPOSITION
- Initialization of NoSQL MongoDB document-oriented database
- Data gathering and cleaning of customer reviews and product information
- Feature engineering of content-based product similarity
- Adaptor wrapping of Recommender class
- Live demonstration of Touch-Driven Recommender Engine
- Initialization of customer recommendation history
- 3 Unpersonalized recommenders (most-rated individual products and subcategories)
- 1 Content-Based recommender
- 1 Collaborative Filtering recommender
Content-Based Product Similarity
- Calculate the content-based product similarity matrix
- Drop multicollinear columns and columns not considered for similarity
- Select continuous and categorical features for correlation
- Encode categorical variables with dummy variables
- Calculate Pearson correlation matrix
- Request a content-based recommendation
- Sort all product correlations related to top-rated user product
- Drop auto-correlation of top-rated user product
- Return the product with the highest correlation
- The Most-Rated Individual Products
- The “Best One” Most-Rated Subcategory
- The “Best Nine” Most-Rated Subcategories
- Content-Based Product Similarity via Pearson Correlation
- User-to-User Collaborative Filtering via Singular Value Decomposition
SEABORN / MATPLOTLIB
- Instantiate Farfetch object
- Load product similarity matrix
- Start live demo
- Create new user, display recommended product webpages and collect customer ratings
- End live demo
Unpersonalized Recommender
- The Most-Rated Individual Products
- 3 recommendations
Unpersonalized Recommender
- The "Best One" Most-Rated Subcategory: Adidas Shoes
- 3 recommendations
Unpersonalized Recommender
- The "Best Nine" Most-Rated Subcategories
- Top Designers: Adidas, Dolce & Gabbana, Gucci
- Top Categories: Shoes, Clothing, Bags
- 9 recommendations
Content-Based Filtering Recommender
- Product Similarity via Pearson Correlation
- 3 recommendations
User-to-User Collaborative Filtering Recommender
- Matrix Factorization via Singular Value Decomposition
- Unlimited recommendations
- 99.988% Customer-Product Matrix Sparsity
Contact
Acknowledgements
- Photos by Farfetch
License