Learning to Question: Leveraging User Preferences for
Shopping Advice
Date : 2013/12/11
Author : Mahashweta Das, Aristides Gionis,
Gianmarco De Francisci Morales,
and Ingmar Weber
Source : KDD’13
Advisor : Jia-ling Koh
Speaker : Yi-hsuan Yeh
2
Outline Introduction Method Experiments Conclusion
3
Introduction Motivation• Customers shop online, from their homes, without
any human interaction involved.
• Catalogs of online shops are so big and with so many continuous updates that no human, however expert, can effectively comprehend the space of available products.
Use a flowchart asks the shopper a question, and the sequence of answers leads the shopper to the suggested shopping option.
4
Introduction SHOPPINGADVISOR is a novel recommender
system that helps users in shopping for technical products.
car
5
Introduction SHOPPINGADVISOR generates a tree-shaped
flowchart, in which the internal nodes of the tree contain questions involve only attributes from the user space. non-expert users can understand easily.
6
Introduction1. How to learn the structure of the tree, i.e., which
questions to ask at each node. Find the best user attribute to ask at each
node.
* This paper focus on identifying the attribute of interest, and not on the task of formulating the question in a human interpretable way.
2. How to produce a suitable ranking at each node. Learning-to-rank approach
7
Outline Introduction Method
– LEARNSATREE algorithm Experiments Conclusion
8
LEARNSATREE algorithm1. Table U (user)
2. Table P (product) 3. Table R (review)
attributes
users
9
* User attributes1. Car (from Yahoo! Autos)
Ex : fuel economy, comfortable interior, stylish exterior
2. Camera (form Flickr) Photo’s tag topic
Ex : food topic (tags : fruit, market)
10
Problem definition
1. Build tree 2. Rank products
node
A user attribute
Top-k list of product recommendations
11
① Learning product rankings RANKSVM
Goal : Learn a weight vector for the technical attributes of the products
A > BB > C
B > D
.
.
.
RANKSVMmodel
ABDC
.
.
.
features
Product’s technical attributes
12
a1 a2 a3 a4 a5
Product A 1 0 1 1 1
Product B 1 0 0 1 0
𝑤={0.2 ,0.1 ,0.5 ,0.1 ,0.1 }
rank(A)
rank(B)3
13
② Learning the tree structure Goal : determine the best user attribute “” to
split at node
𝑠𝑢𝑚
14
eval(rank) eval(rank)
(), (), () (), (), ()
Example : Correctly-rank :
System result
System result
15
node
user
userattribut
e
split
𝑈𝑞
𝑈𝑞 (𝛼 )
𝑈𝑞 (𝛼 )
Review table
16
product
RANKSVM
RANKSVM
Count payoff
ABDC...
FBEA...
Rank list
Consider all possible user attributes , and choose as splitter the one that maximizes the pay-off.
17
③ Stopping criterion1) Grow the tree to its “entirety”2) Post-pruning
If a node’s child node is split by the “near-synonomous” tag trim the child node
Example: travel
vacation Employ pruning
rules on the validation set.
18
Outline Introduction Method Experiments Conclusion
19
Datasets1. Car datasets
• Yahoo! Autos• 606 cars, 60 attributes• 2180 reviews• 2180 user, 15 tags (as attributes)
Ex : fuel economy, comfortable interior, stylish exterior
2. Camera datasets• Flickr tags• 645 cameras (CNET)• 11468 reviews• 5647 user, 25 topic tags (as attributes)
Ex : food topic (tags : fruit, market)
3. Synthetic datasets• 200 products, 4000 comments, 1000 users
20
Experiment setup1. SHOPPINGADVISOR
Author’s method
2. RANKSVM The ranked list returned by SHOPPINGADVISOR at the
root
3. k-NN k-nearest neighbors algorithm
4. SA.k-NN Features are selected from SHOPPINGADVISOR
21
Quality evaluation
average MRR A
BD
.
.
.
System result ranking list
25 topics
12 topics
If user prefer “B”
22
Performance evaluation
23
Outline Introduction Method Experiments Conclusion
24
Conclusion Proposed a novel recommender system,
SHOPPINGADVISOR, that helps users to shop for technical products.
SHOPPINGADVISOR leverages both user preferences and technical product attributes in order to generate its suggestions.
At each node, SHOPPINGADVISOR suggests a ranking of products matching the preferences of the user.
Compared with a baseline, and demonstrated the effectiveness of the approach.
Top Related