Personalization of Supermarket Product Recommendations
Download
Report
Transcript Personalization of Supermarket Product Recommendations
Personalization of
Supermarket Product
Recommendations
IBM Research Report (2000)
R.D. Lawrence et al.
Julian Keenaghan
1
Introduction
Personalized recommender system
designed to suggest new products to
supermarket shoppers
Based upon their previous purchase
behaviour and expected product appeal
Shoppers use PDA’s
Alternative source of new ideas
Julian Keenaghan
2
Introduction continued
Content-based filtering
based
on what person has liked in the past
measure of distance between vectors representing:
Personal preferences
Products
overspecialization
Collaborative filtering
items that similar people have liked
Associations mining (product domain)
Clustering (customer domain)
Julian Keenaghan
3
Product Taxonomy
Classes
(99)
Subclasses
(2302)
Soft Drinks
Dried
Cat
Food
…..
Dried
Dog
Food
Petfoods
Julian Keenaghan
Fresh
Beef
Beef
Joints
Canned
Cat
Food
Products
(~30000)
…..
Friskies
Liver
(250g)
4
Overview
Normalized
customer
vectors
Customer
Purchase
Database
Data Mining
Clustering
Product
Database
Cluster
assignments
Products eligible
for recommendation
Cluster-specific
Product lists
Product list
for target customer’s
Data Mining
Associations
cluster
Product
affinities
Matching
Algorithm
Julian Keenaghan
Personalized
Recommendation
List
5
Customer Model
Customer profile
C(m)s, for each customer
At subclass level => 2303 dim space
Normalized fractional spending
Vector,
quantifies customer’s interest in subclass relative
to entire customer database
value of 1 implies average level of interest in a
subclass
Julian Keenaghan
6
Clustering Analysis
To identify groups of shoppers with similar spending
histories
Cluster-specific list of popular products used as input to
recommender
Clustered at 99-dim product-class level
Neural, demographic clustering algorithms
Clusters evaluated in terms of dominant attributes:
products which most distinguish members of the cluster
Cluster 1 – Wines/Beers/Spirits
Cluster 2 – Frozen foods
Cluster 3 - Baby products, household items etc..
Julian Keenaghan
7
Associations Mining
Determine relationships among product
classes or subclasses
Used IBM’s “Intelligent Miner for Data”
Apriori
algorithm
Support, Confidence, Lift factors
Rule: Fresh Beef => Pork/Lamb
Support
Confidence
Lift
0.016
0.33
4.9
Rule: Baby:Disposable Nappies => Baby:Wipes
Julian Keenaghan
8
Product Model
Each product, n, represented by a 2303-dim vector P(n)
Individual entries Ps(n) reflect the “affinity” the product has
to subclass s.
Ps(n) =
1.0
if s = S(n)
(same subclass)
1.0
if S(n) s
(associated subclass)
0.5
if C(s) = C(n)
(same class)
0.25 if C(n) C(s)
0
(associated class)
otherwise
Julian Keenaghan
9
Matching Algorithm
Score each product for a specific customer
and select the best matches.
Cosine coefficient metric used
C is the customer vector
P is the product vector
σ mn is the score between customer m and product n
σmn = ρn C(m). P(n) / ||C(m)|| ||P(n)||
Julian Keenaghan
10
Matching Algorithm ctd.
Limit recommendations for each customer
to 1 per product subclass, and 2 per class.
10 to 20 products returned to PDA
Previously bought products excluded
Data from 20,000 customers
Recommendations for 200
Julian Keenaghan
11
Results
Recommendations generated weekly
8 months, 200 customers from one store
“Respectable” 1.8% boost in revenue from
purchases from the list of recommended
products.
Accepted Recommendations from product
classes new to the customer
Certain products more amenable to
recommendations. Wine vs. household care.
“interesting” recommendations
Julian Keenaghan
12
Summary
Product recommendation system for
grocery shopping
Content and Collaborative filtering
Purchasing
history
Associations Mining
Clustering
Revenue boosts ~2%
Julian Keenaghan
13