0% found this document useful (0 votes)
28 views63 pages

Other Techiniques

This document discusses different types of recommender systems including content-based, knowledge-based, and hybrid recommender systems. It provides examples of how content-based systems work using bag-of-words representations and TF-IDF to determine similarity between items and user profiles. Knowledge-based systems are described as using constraints and cases to make recommendations when there is insufficient data for collaborative filtering. Critiquing interfaces are presented as a way to gather user preferences in a conversational manner for knowledge-based systems.

Uploaded by

Sarvottam Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views63 pages

Other Techiniques

This document discusses different types of recommender systems including content-based, knowledge-based, and hybrid recommender systems. It provides examples of how content-based systems work using bag-of-words representations and TF-IDF to determine similarity between items and user profiles. Knowledge-based systems are described as using constraints and cases to make recommendations when there is insufficient data for collaborative filtering. Critiquing interfaces are presented as a way to gather user preferences in a conversational manner for knowledge-based systems.

Uploaded by

Sarvottam Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 63

Recommender Systems: Content-based,

Knowledge-based, Hybrid

Radek Pelánek
Today

lecture, basic principles:


content-based
knowledge-based
hybrid, choice of approach, . . .
critiquing, explanations, . . .
illustrative examples from various domains: videos,
recipes, products, finance, restaurants, ...
discussion – projects
brief presentation of your projects
application of covered notions to projects
⇒ make notes during lecture
Content-based vs Collaborative Filtering

collaborative filtering: “recommend items that similar


users liked”
content based: “recommend items that are similar to
those the user liked in the past”
Content-based Recommendations

we need explicit (cf latent factors in CF):


information about items (e.g., genre, author)
user profile (preferences)

Recommender Systems: An Introduction (slides)


Architecture of a Content-Based Recommender

Handbook of Recommender Systems


Content

Recommender Systems: An Introduction (slides)


Content: Multimedia

manual anotation
songs, hundreds of features
Pandora, Music Genome Project
experts, 20-30 minutes per song
automatic techniques – signal processing
User Profile

explicitly specified by user


automatically learned
easier than in CF – features of items are now available
Similarity: Keywords

general similarity approach based on keywords


two sets of keywords A, B (description of two items or
description of item and user)
how to measure similarity of A and B?
Similarity: Keywords Example

user preferences: sport, funny, comedy, learning, tricks,


skateboard

video 1: machine learning, education, visualization, math


video 2: late night, comedy, politics
video 3: footbal, goal, funny, Messi, trick, fail
Similarity: Keywords

sets of keywords A, B
2·|A∩B|
Dice coefficient: |A|+|B|

Jaccard coefficient: |A∩B|


|A∪B|

many other coefficients available, see e.g. “A Survey of Binary


Similarity and Distance Metrics”
Recommendations by Nearest Neighbors

k-nearest neighbors (kNN)


predicting rating for not-yet-seen item i:
find k most similar items, already rated
predict rating based on these
good for modeling short-term interest, “follow-up” stories
Similarity: Text Descriptions

Example: similarity of recipes based on the text of instructions

Melt the butter and heat the oil in a skillet over medium-high
heat. Season chicken with salt and pepper, and place in the
skillet. Brown on both sides. Reduce heat to medium, cover,
and continue cooking 15 minutes, or until chicken juices run
clear. Set aside and keep warm. Stir cream into the pan,
scraping up brown bits. Mix in mustard and tarragon. Cook
and stir 5 minutes, or until thickened. Return chicken to skillet
to coat with sauce. Drizzle chicken with remaining sauce to
serve.
Similarity: Text Descriptions

Examples: product description, recipe instructions, movie plot

basic approach: bag-of-words representation (words + counts


of occurrences)

limitations?
Simple Bag-of-words
7 and
4 the
4 chicken
4 to
3 heat
3 in
3 skillet
3 with
2 brown
2 minutes
2 or
2 until
2 stir
2 sauce
1 melt
1 butter
Term Frequency – Inverse Document Frequency

disadvantages of simple counts:


importance of words (“course” vs “recommender”)
length of documents
TF-IDF – standard technique in information retrieval
Term Frequency – how often term appears in a
particular document (normalized)
Inverse Document Frequency – how often term appears
in all documents
Term Frequency – Inverse Document Frequency

keyword (term) t, document d


TF (t, d) = frequency of t in d / maximal frequency of a
term in d
IDF (t) = log(N/nt )
N – number of all documents
nt – number of documents containing t
TFIDF (t, d) = TF (t, d) · IDF (t)
Similarity

similarity between user and item profiles (or two item profiles):
vector of keywords and their TF-IDF values
cosine similarity – angle between vectors
~a·~b
sim(~a, ~b) =
|~a||~b|
(adjusted) cosine similarity
normalization by subtracting average values
closely related to Pearson correlation coefficient
Improvements

all words – long, sparse vectors


common words, stop words (e.g., “a”, “the”, “on”)
lemmatization, stemming (e.g., “went” → “go”,
“university” → “univers”)
cut-offs (e.g., n most informative words)
phrases (e.g., “United Nations”, “New York”)

wider context: natural language processing techniques


Limitations of Bag-of-words

semantic meaning unknown


example – use of words in negative context

steakhouse description: “there is nothing on the menu that a


vegetarian would like...” ⇒ keyword “vegetarian” ⇒ recommended
to vegetarians
Incorporating Domain Knowledge

user preferences: sport, funny, comedy, learning, tricks,


skateboard

video 1: machine learning, education, visualization, math


video 2: late night, comedy, politics
video 3: footbal, goal, funny, Messi, trick, fail
Ontologies, Taxonomies, Folkosomies

ontology – formal definition of entities and their relations


taxonomy – tree, hierarchy (example: news, sport, soccer,
soccer world cup)
folksonomy (folk + taxonomy) – collaborative tagging,
tag clouds
Recommendation as Classification

classification problem: features → like/dislike (rating)


use of general machine learning techniques
probabilistic methods – Naive Bayes
linear classifiers
decision trees
neural networks
...
wider context: machine learning techniques
Content-Based Recommendations: Advantages

user independence – does not depend on other users


new items can be easily incorporated (no cold start)
transparency – explanations, understandable
Content-Based Recommendations: Limitations

limited content analysis


content may not be automatically extractable
(multimedia)
missing domain knowledge
keywords may not be sufficient
overspecialization – “more of the same”, too similar items
new user – ratings or information about user has to be
collected
Content-Based vs Collaborative Filtering

paper “Recommending new movies: even a few ratings


are more valuable than metadata” (context: Netflix)
our experience in educational domain – difficulty rating
(Sokoban, countries)
Knowledge-based Recommendations

application domains:
expensive items, not frequently purchased, few ratings
(car, house)
time span important (technological products)
explicit requirements of user (vacation)

collaborative filtering unusable – not enought data


content based – “similarity” not sufficient
Knowledge-based Recommendations

constraint-based
explicitly defined conditions
case-based
similarity to specified requirements

“conversational” recommendations
Constraint-Based Recommmendations – Example

Recommender Systems: An Introduction (slides)


Constraint Satisfaction Problem

V is a set of variables
D is a set of finite domains of these variables
C is a set of constraints

Typical problems: logic puzzles (Sudoku, N-queen), scheduling


CSP: N-queens

problem: place N queens on an N × N chess-board, no two


queens threaten each other
V – N variables (locations of queens)
D – each domain is {1, . . . , N}
C – threatening
CSP Algorithms

basic algorithm – backtracking


heuristics
preference for some branches
pruning
... many others
CSP Example: N-queens Problem
Recommender Knowledge Base

customer properties VC
product properties VPROD
constraints CR (on customer properties)
filter conditions CF – relationship between customer and
product
products CPROD – possible instantiations
Recommender Systems Handbook; Developing Constraint-based Recommenders
Recommender Systems Handbook; Developing Constraint-based Recommenders
Development of Knowledge Bases

difficult, expensive
specilized graphical tools
methodology (rapid prototyping, detection of faulty
constraints, ...)
Unsatisfied Requirements

no solution to provided constraints


we want to provide user at least something
constraint relaxation
proposing “repairs”
minimal set of requirements to be changed
User Guidance

requirements elicitation process


session independent user profile
static fill-out forms
conversational dialogs
User Guidance

Recommender Systems Handbook; Developing Constraint-based Recommenders


User Guidance

Recommender Systems Handbook; Developing Constraint-based Recommenders


Critiquing

Recommender Systems: An Introduction (slides)


Critiquing

Recommender Systems: An Introduction (slides)


Critiquing: Example

A Visual Interface for Critiquing-based Recommender Systems


Critiquing: Example

Critiquing-based recommenders: survey and emerging trends


Critiquing: Example
Limitations

cost of knowledge acquisition (consider your project


proposals)
accuracy of models
independence assumption for preferences
Hybrid Methods

collaborative filtering: “what is popular among my peers”


content-based: “more of the same”
knowledge-based: “what fits my needs”

each has advantages and disadvantages


hybridization – combine more techniques, avoid some
shortcomings
simple example: CF with content-based (or simple
“popularity recommendation”) to overcome “cold start
problem”
Hybridization Designs

monolitic desing, combining different features


parallel use of several systems, weighting/voting
pipelined invocation of different systems
Types of Recommender Systems

non-personalized
demographic
collaborative filtering
content based
knowledge-based
hybrid

what to apply when?


Taxonomy of Knowledge Sources

Matching Recommendation Technologies and Domains


Knowledge Sources and Recommendation Types

Matching Recommendation Technologies and Domains


Sample Domains for Recommendation

Matching Recommendation Technologies and Domains


Explanations of Recommendations

recommendations: selection (ranked list) of items


explanations: (some) reasons for the choice
Goals of Providing Explanations

Why explanations?
Goals of Providing Explanations

Why explanations?
transparency, trustworthiness, validity, satisfaction (users
are more likely to use the system)
persuasiveness (users are more likely to follow
recommendations)
effectiveness, efficiency (users can make better/faster
decisions)
education (users understand better the behaviour of the
system, may use it in better ways)
Examples of Explanations
knowledge-based recommenders
“Because you, as a customer, told us that simple
handling of car is important to you, we included a
special sensor system in our offer that will help you park
your car easily.”
algorithms based on CSP representation
Examples of Explanations
knowledge-based recommenders
“Because you, as a customer, told us that simple
handling of car is important to you, we included a
special sensor system in our offer that will help you park
your car easily.”
algorithms based on CSP representation
recommendations based on item-similarity
“Because you watched X we recommend Y”
Explanations – Collaborative Filtering

Explaining Collaborative Filtering Recommendations, Herlocker, Konstan, Riedl


Explanations – Collaborative Filtering

Explaining Collaborative Filtering Recommendations, Herlocker, Konstan, Riedl


Explanations – Comparison
Moment of Recommendation

front page, dashboard


follow-up
sidebar
on demand
Your Projects: Questions

What is the purpose / use case? What is the “business


model”?
What will you recommend? In what situation?
A new system or extention of an existing one?
Where/how will you obtain data?
items
user preferences; explicit/implicit ratings?
Which techniques are relevant/suitable for you project?
Collaborative filtering? Content-based?
Knowledge-based? Combination?
Are the following notions relevant: taxonomy, critiquing,
explanations?

You might also like