Recommender Lecture
Recommender Lecture
Customization
Customization is one of the more attractive features of electronic commerce.
Creating a different product for every user, suited to his/her tastes.
Cross-sales
Customers who have bought a product are suggested related products.
Encourages Loyalty
Amazon is interested in becoming an e-commerce portal. This means that they would like to respond to all your online purchasing needs.
Examples
Amazon
Featured Recommendations: tailored to past views/purchases. People who bought this: compares customers Alerts- sends you email when stuff you like is on sale. Customer reviews ListMania
Allows users to add their own reviews of products. Customers can find other reviews by a given user.
Examples
Netflix
You rate movies and others are suggested based on these ratings. You are compared to other users.
Reel.com
Movie Matches you enter a movie, and it suggests similar movies. Compares movies to movies.
Examples
Citeseer
Recommends papers based on citations, similar text, cited by.
Launch
Lets you customize your own radio station.
You get a customized mp3 stream
Types of recommendations
Population-based
For example, the most popular news articles, or searches, or downloads. Useful for sites that frequently add content. No user tracking needed.
Types of recommendations
Item-to-item
Content-based One item is recommended based on the users indication that they like another item.
If you like Lord of the Rings, youll like Legend.
Types of Recommendations
Challenges with item-to-item:
Getting users to tell you what they like
Both financial and time reasons not to.
Types of recommendations
Item-to-item
Most effective when you have metadata that lets you automatically relate items. Genre, actors, director, etc.
Types of recommendations
User-based
Users who bought X like Y. Each user is represented by a vector indicating his ratings for each product. Users with a small distance between each other are similar. Find a similar user and recommend things they like that you havent rated.
Types of recommendations
User-based
Advantages:
Users dont need to rate much. No info about products needed. Easy to implement
Disadvantages
Pushes users toward the middle products with more ratings carry more weight. How to deal with new products? Many products and few users -> lots of things dont get recommended.
Types of Recommendations
Manual/free-form
Users write reviews for a product, which are attached to the product.
Advantages:
Natural language, explanations for pros/cons, users get to participate.
Disadvantages:
Few neutral recommendations, difficult to automate.
Potential Applications
Placing a product in space
The product youre looking at is like
Configuring display
Choosing what to show or emphasize based on preferences.
Personalized discounts/coupons
Grocery stores do this.
Clustering users
Determining the tastes of your consumers.
How RS work
A common model-learner is a nave Bayes classifier. An item is represented as a feature vector.
Web pages: list/bag of possible words Movies: list of possible actors, directors, etc.
This vector is large, so common features are filtered out. (the, an, etc) Useful for unstructured data such as text
Probability that an item j belongs to class i, given a set of attribitutes: P(Ci | A1=v1 & A2=v2 An=vn) If all As independent, we can use: P(Ci) = P P(A = Vj | Ci)
(this is easy to compute)
Example
Two classes (yes, no) Three documents, each of which have four words. D1: {cat, dog, fly, cow} -> yes D2: {crow, straw, fly, zebra} -> no D3: {cat, dog, zoom, flex} -> yes Number of unique words in yes: 6 Number of unique words in no: 4 Total # of words: 9
Example
P(cat | yes): 2/6 P(cat | no): 0/6 P(yes | {cat, zoom, fly, dog}) = 2/6 * 1/6 * 1/6 * 2/6 = 0.003 P(no | {cat, zoom, fly, dog}) = e * e * 1/4 * e ~ 0.00025 (epsilon helps us deal with sparse data)
Rule-learning algorithms
If data is structured, rules can be learned for classification
Director=kubrick && star=mcdowell -> like Title=police academy* -> not like
Decision Trees
Title=Police Academy yes Not like no Director=kubrick
yes
Star=mcdowell yes no
no
like
Neural Net
Learns a nonlinear function mapping features to classes. More powerful, but results can be hard to interpret.
Nearest-neighbor classification
We create a feature vector for each user containing an element for each ratable item. To compare two users, we compute the Euclidean distance between the filled-in elements of their feature vectors. Sqrt(Si(|uji uki)2) To recommend, find a similar user, then find things that user rated highly.
Example
Say our domain consists of four movies:
Police Academy Clockwork Orange Lord of the Rings Titanic
Example
We currently have three users in the system
u1: <10, 3, 9, -> u2: <-, 9, 6, 2> u3: <1, 7, -, 3>
Most similar to u1, so we would recommend they see Lord of the Rings and avoid Clockwork Orange
Summary
Recommender systems allow online retailers to customize their sites to meet consumer tastes.
Aid browsing, suggest related items.
Personaliztion is one of e-commerces advantages compared to brick-and-mortar stores. Challenges: obtaining and mining data, making intelligent and novel recommendations, ethics. Can perform comparisons across users or across items.
Trade off data needed versus detail of recommendation.