SLIDE 1 Movie ¡Recommendation ¡using ¡ Random ¡Walks ¡over ¡the ¡ Contextual ¡Graph
Toine ¡Bogers Royal ¡School ¡of ¡Library ¡& ¡Information ¡Science Copenhagen, ¡Denmark
CARS ¡2010 ¡workshop October ¡26, ¡2010 Barcelona, ¡Spain
SLIDE 2
Contextual ¡recommendation
SLIDE 3 Contextual ¡recommendation
- Three ¡truths ¡about ¡context
Plays ¡an ¡important ¡role ¡in ¡the ¡relevance ¡of ¡a ¡recommendaIon Has ¡been ¡underrepresented ¡in ¡recommender ¡systems Is ¡needed ¡to ¡take ¡recommendaIons ¡to ¡the ¡next ¡level
SLIDE 4 Contextual ¡recommendation
- Three ¡truths ¡about ¡context
Plays ¡an ¡important ¡role ¡in ¡the ¡relevance ¡of ¡a ¡recommendaIon Has ¡been ¡underrepresented ¡in ¡recommender ¡systems Is ¡needed ¡to ¡take ¡recommendaIons ¡to ¡the ¡next ¡level
Pre-‑filtering ¡on ¡context Post-‑filtering ¡on ¡context Direct ¡integra+on ¡of ¡context ¡into ¡the ¡recommendaIon ¡algorithm
SLIDE 5
ContextWalk
SLIDE 6 ContextWalk
- Context-‑aware ¡recommenda+on ¡algorithm
SLIDE 7 ContextWalk
- Context-‑aware ¡recommenda+on ¡algorithm
Based ¡on ¡Markov ¡random ¡walks
SLIDE 8 ContextWalk
- Context-‑aware ¡recommenda+on ¡algorithm
Based ¡on ¡Markov ¡random ¡walks Models ¡user ¡browsing ¡behavior ¡on ¡movie ¡database ¡websites
- ‑ But ¡could ¡easily ¡be ¡adapted ¡to ¡other ¡domains
SLIDE 9 ContextWalk
- Context-‑aware ¡recommenda+on ¡algorithm
Based ¡on ¡Markov ¡random ¡walks Models ¡user ¡browsing ¡behavior ¡on ¡movie ¡database ¡websites
- ‑ But ¡could ¡easily ¡be ¡adapted ¡to ¡other ¡domains
Can ¡integrate ¡different ¡types ¡of ¡contextual ¡informaIon
SLIDE 10 ContextWalk
- Context-‑aware ¡recommenda+on ¡algorithm
Based ¡on ¡Markov ¡random ¡walks Models ¡user ¡browsing ¡behavior ¡on ¡movie ¡database ¡websites
- ‑ But ¡could ¡easily ¡be ¡adapted ¡to ¡other ¡domains
Can ¡integrate ¡different ¡types ¡of ¡contextual ¡informaIon Can ¡support ¡many ¡different ¡recommendaIon ¡tasks
SLIDE 11 ContextWalk
- Context-‑aware ¡recommenda+on ¡algorithm
Based ¡on ¡Markov ¡random ¡walks Models ¡user ¡browsing ¡behavior ¡on ¡movie ¡database ¡websites
- ‑ But ¡could ¡easily ¡be ¡adapted ¡to ¡other ¡domains
Can ¡integrate ¡different ¡types ¡of ¡contextual ¡informaIon Can ¡support ¡many ¡different ¡recommendaIon ¡tasks Strongly ¡inspired ¡by ¡
- ‑ Craswell ¡et ¡al. ¡(2007, ¡image ¡retrieval ¡based ¡on ¡clickstream ¡data)
- ‑ Clements ¡et ¡al. ¡(2008, ¡personalized ¡search ¡on ¡social ¡tagging ¡websites)
SLIDE 12
Browsing ¡a ¡movie ¡database ¡website
SLIDE 13
Browsing ¡a ¡movie ¡database ¡website
SLIDE 14
Browsing ¡a ¡movie ¡database ¡website
SLIDE 15
Browsing ¡a ¡movie ¡database ¡website
SLIDE 16
Browsing ¡a ¡movie ¡database ¡website
SLIDE 17
Browsing ¡a ¡movie ¡database ¡website
SLIDE 18 Contextual ¡graph
( ( ( ( (
%&"$ +*,-" '(! ( ()'*$ !"#$"
SLIDE 19 Contextual ¡graph
( ( ( ( (
%&"$ +*,-" '(! ( ()'*$ !"#$"
SLIDE 20
Modeling ¡browsing ¡behavior
SLIDE 21 Modeling ¡browsing ¡behavior
SLIDE 22 Modeling ¡browsing ¡behavior
User ¡starts ¡from ¡a ¡specific ¡node
- ‑ Movie, ¡genre, ¡actor/actress, ¡tag, ¡director, ¡etc.
SLIDE 23 Modeling ¡browsing ¡behavior
User ¡starts ¡from ¡a ¡specific ¡node
- ‑ Movie, ¡genre, ¡actor/actress, ¡tag, ¡director, ¡etc.
Keeps ¡randomly ¡following ¡links ¡to ¡pages ¡represenIng ¡other ¡nodes
- ‑ Of ¡course ¡this ¡is ¡not ¡really ¡random!
SLIDE 24 Modeling ¡browsing ¡behavior
User ¡starts ¡from ¡a ¡specific ¡node
- ‑ Movie, ¡genre, ¡actor/actress, ¡tag, ¡director, ¡etc.
Keeps ¡randomly ¡following ¡links ¡to ¡pages ¡represenIng ¡other ¡nodes
- ‑ Of ¡course ¡this ¡is ¡not ¡really ¡random!
UnIl ¡he ¡arrives ¡at ¡an ¡interesIng ¡node ¡and ¡stops ¡browsing
SLIDE 25
Modeling ¡browsing ¡behavior
SLIDE 26 Modeling ¡browsing ¡behavior
SLIDE 27 Modeling ¡browsing ¡behavior
User ¡has ¡limited ¡memory ¡(forgets ¡previous ¡posiIon)
SLIDE 28 Modeling ¡browsing ¡behavior
User ¡has ¡limited ¡memory ¡(forgets ¡previous ¡posiIon) Keep ¡the ¡user ¡in ¡the ¡vicinity ¡of ¡his ¡original ¡‘recommendaIon ¡need’
SLIDE 29 Modeling ¡browsing ¡behavior
User ¡has ¡limited ¡memory ¡(forgets ¡previous ¡posiIon) Keep ¡the ¡user ¡in ¡the ¡vicinity ¡of ¡his ¡original ¡‘recommendaIon ¡need’
- ‑ Random ¡walks ¡of ¡finite ¡length ¡
SLIDE 30 Modeling ¡browsing ¡behavior
User ¡has ¡limited ¡memory ¡(forgets ¡previous ¡posiIon) Keep ¡the ¡user ¡in ¡the ¡vicinity ¡of ¡his ¡original ¡‘recommendaIon ¡need’
- ‑ Random ¡walks ¡of ¡finite ¡length ¡
- ‑ Self-‑transiIons ¡where ¡the ¡walk ¡stays ¡in ¡place
SLIDE 31 Modeling ¡browsing ¡behavior
User ¡has ¡limited ¡memory ¡(forgets ¡previous ¡posiIon) Keep ¡the ¡user ¡in ¡the ¡vicinity ¡of ¡his ¡original ¡‘recommendaIon ¡need’
- ‑ Random ¡walks ¡of ¡finite ¡length ¡
- ‑ Self-‑transiIons ¡where ¡the ¡walk ¡stays ¡in ¡place
- TransiIon ¡probabiliIes ¡between ¡nodes
SLIDE 32 Modeling ¡browsing ¡behavior
User ¡has ¡limited ¡memory ¡(forgets ¡previous ¡posiIon) Keep ¡the ¡user ¡in ¡the ¡vicinity ¡of ¡his ¡original ¡‘recommendaIon ¡need’
- ‑ Random ¡walks ¡of ¡finite ¡length ¡
- ‑ Self-‑transiIons ¡where ¡the ¡walk ¡stays ¡in ¡place
- TransiIon ¡probabiliIes ¡between ¡nodes
Not ¡based ¡on ¡real ¡browsing/access ¡pa\erns
SLIDE 33 Modeling ¡browsing ¡behavior
User ¡has ¡limited ¡memory ¡(forgets ¡previous ¡posiIon) Keep ¡the ¡user ¡in ¡the ¡vicinity ¡of ¡his ¡original ¡‘recommendaIon ¡need’
- ‑ Random ¡walks ¡of ¡finite ¡length ¡
- ‑ Self-‑transiIons ¡where ¡the ¡walk ¡stays ¡in ¡place
- TransiIon ¡probabiliIes ¡between ¡nodes
Not ¡based ¡on ¡real ¡browsing/access ¡pa\erns
SLIDE 34 Modeling ¡browsing ¡behavior
User ¡has ¡limited ¡memory ¡(forgets ¡previous ¡posiIon) Keep ¡the ¡user ¡in ¡the ¡vicinity ¡of ¡his ¡original ¡‘recommendaIon ¡need’
- ‑ Random ¡walks ¡of ¡finite ¡length ¡
- ‑ Self-‑transiIons ¡where ¡the ¡walk ¡stays ¡in ¡place
- TransiIon ¡probabiliIes ¡between ¡nodes
Not ¡based ¡on ¡real ¡browsing/access ¡pa\erns
EsImated ¡using ¡raIngs ¡and ¡links ¡between ¡nodes
SLIDE 35 Modeling ¡browsing ¡behavior
User ¡has ¡limited ¡memory ¡(forgets ¡previous ¡posiIon) Keep ¡the ¡user ¡in ¡the ¡vicinity ¡of ¡his ¡original ¡‘recommendaIon ¡need’
- ‑ Random ¡walks ¡of ¡finite ¡length ¡
- ‑ Self-‑transiIons ¡where ¡the ¡walk ¡stays ¡in ¡place
- TransiIon ¡probabiliIes ¡between ¡nodes
Not ¡based ¡on ¡real ¡browsing/access ¡pa\erns
EsImated ¡using ¡raIngs ¡and ¡links ¡between ¡nodes
- ‑ E.g., ¡user ¡A ¡rated ¡movie ¡B ¡4 ¡stars, ¡actor ¡C ¡played ¡in ¡movie ¡D
SLIDE 36
Constructing ¡the ¡contextual ¡graph
SLIDE 37 Constructing ¡the ¡contextual ¡graph
UI
SLIDE 38 Constructing ¡the ¡contextual ¡graph
UI
I1 I2 I3 I4 U1 5 4 1 U2 3 2 3 U3 1 4 2
movies users
SLIDE 39 Constructing ¡the ¡contextual ¡graph
UU II UI
I1 I2 I3 I4 U1 5 4 1 U2 3 2 3 U3 1 4 2
movies users
self-‑transiIon ¡with ¡ probability ¡a
α
SLIDE 40 Constructing ¡the ¡contextual ¡graph
UU II UI
SLIDE 41 Constructing ¡the ¡contextual ¡graph
UU II UI
!"#"!! $"#"!"
! "
$"#"!" !"#"""
! "
%
"&"#
SLIDE 42 Constructing ¡the ¡contextual ¡graph
UU II UI
!"#"!! $"#"!"
! "
$"#"!" !"#"""
! "
%
"&"#
I1 I2 I3 I4 U1 0.5 0.4 0.1 U2 0.375 0.25 0.375 U3 0.143 0.571 0.286
movies users
SLIDE 43 Constructing ¡the ¡contextual ¡graph
UU II UI
!"#"!! $"#"!"
! "
$"#"!" !"#"""
! "
%
"&"#
I1 I2 I3 I4 U1 0.5 0.4 0.1 U2 0.375 0.25 0.375 U3 0.143 0.571 0.286
movies users
idenIty ¡matrix ¡ mulIplied ¡by ¡a
α
SLIDE 44 Constructing ¡the ¡contextual ¡graph
UU II UI
!"#"!! $"#"!"
! "
$"#"!" !"#"""
! "
%
"&"#
I1 I2 I3 I4 U1 0.5 0.4 0.1 U2 0.375 0.25 0.375 U3 0.143 0.571 0.286
movies users
idenIty ¡matrix ¡ mulIplied ¡by ¡a
α β = 1 − α
SLIDE 45 Constructing ¡the ¡contextual ¡graph
! ! ! !
SLIDE 46 Constructing ¡the ¡contextual ¡graph
! ! ! !
UU II UI AA IA UA
!
SLIDE 47 Constructing ¡the ¡contextual ¡graph
! ! ! !
UU II UI AA IA UA
!
actor ¡j ¡played ¡in ¡ movie ¡i ¡➝ ¡akskkdk
IAi,j = 1
SLIDE 48 Constructing ¡the ¡contextual ¡graph
UU II UI AA IA UA
!
SLIDE 49 Constructing ¡the ¡contextual ¡graph
UU II UI AA IA UA
!
!"#"!! $"#"!" $"#"!#
! " #
$"#"!" $"#"!# !"#""" $"#""# $"#""# !"#"##
! " #
% % %
"&"$
SLIDE 50 Constructing ¡the ¡contextual ¡graph
UU II UI AA IA UA
!
!"#"!! $"#"!" $"#"!#
! " #
$"#"!" $"#"!# !"#""" $"#""# $"#""# !"#"##
! " #
% % %
"&"$
β = 1 − α
SLIDE 51 ( ( ( ( (
Constructing ¡the ¡contextual ¡graph
!" ! !# !$ !% "$ "# #$ "% #% $% $$ %% ## "" !!
SLIDE 52 Constructing ¡the ¡contextual ¡graph
!" ! !# !$ !% "$ "# #$ "% #% $% $$ %% ## "" !!
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"&
SLIDE 53
Computing ¡the ¡random ¡walk
SLIDE 54 Computing ¡the ¡random ¡walk
SLIDE 55 Computing ¡the ¡random ¡walk
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"&
SLIDE 56 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"&
v0
SLIDE 57 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!#
v0
SLIDE 58 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
MulIply ¡ ¡ ¡ ¡ ¡ ¡with ¡transiIon
- probability ¡matrix ¡ ¡ ¡ ¡ ¡:
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!#
v0
X
v0
SLIDE 59 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
MulIply ¡ ¡ ¡ ¡ ¡ ¡with ¡transiIon
- probability ¡matrix ¡ ¡ ¡ ¡ ¡:
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!#
v0
X
vt+1 = vtX
v0
SLIDE 60 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
MulIply ¡ ¡ ¡ ¡ ¡ ¡with ¡transiIon
- probability ¡matrix ¡ ¡ ¡ ¡ ¡:
¡ ¡ ¡ ¡ ¡contains ¡the ¡probabiliIes ¡of ¡
- being ¡in ¡a ¡node ¡aber ¡1 ¡step
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!#
v0
X
vt+1 = vtX
v1 v0
SLIDE 61 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
MulIply ¡ ¡ ¡ ¡ ¡ ¡with ¡transiIon
- probability ¡matrix ¡ ¡ ¡ ¡ ¡:
¡ ¡ ¡ ¡ ¡contains ¡the ¡probabiliIes ¡of ¡
- being ¡in ¡a ¡node ¡aber ¡1 ¡step
¡ ¡ ¡ ¡ ¡aber ¡two ¡steps
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!#
v0
X
vt+1 = vtX
v1 v2 v0
SLIDE 62 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
MulIply ¡ ¡ ¡ ¡ ¡ ¡with ¡transiIon
- probability ¡matrix ¡ ¡ ¡ ¡ ¡:
¡ ¡ ¡ ¡ ¡contains ¡the ¡probabiliIes ¡of ¡
- being ¡in ¡a ¡node ¡aber ¡1 ¡step
¡ ¡ ¡ ¡ ¡aber ¡two ¡steps ¡ ¡ ¡ ¡ ¡aber ¡n ¡steps
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!# !"!#
v0
X
vt+1 = vtX
v1 v2 v0 vn
SLIDE 63 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
MulIply ¡ ¡ ¡ ¡ ¡ ¡with ¡transiIon
- probability ¡matrix ¡ ¡ ¡ ¡ ¡:
¡ ¡ ¡ ¡ ¡contains ¡the ¡probabiliIes ¡of ¡
- being ¡in ¡a ¡node ¡aber ¡1 ¡step
¡ ¡ ¡ ¡ ¡aber ¡two ¡steps ¡ ¡ ¡ ¡ ¡aber ¡n ¡steps
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!# !"!#
v0
X
vt+1 = vtX
v1 v2 v0 vn
item ¡state ¡ probabiliIes
SLIDE 64 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
MulIply ¡ ¡ ¡ ¡ ¡ ¡with ¡transiIon
- probability ¡matrix ¡ ¡ ¡ ¡ ¡:
¡ ¡ ¡ ¡ ¡contains ¡the ¡probabiliIes ¡of ¡
- being ¡in ¡a ¡node ¡aber ¡1 ¡step
¡ ¡ ¡ ¡ ¡aber ¡two ¡steps ¡ ¡ ¡ ¡ ¡aber ¡n ¡steps
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!# !"!#
v0
X
vt+1 = vtX
v1 v2 v0 vn
user ¡state ¡ probabiliIes
SLIDE 65 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
MulIply ¡ ¡ ¡ ¡ ¡ ¡with ¡transiIon
- probability ¡matrix ¡ ¡ ¡ ¡ ¡:
¡ ¡ ¡ ¡ ¡contains ¡the ¡probabiliIes ¡of ¡
- being ¡in ¡a ¡node ¡aber ¡1 ¡step
¡ ¡ ¡ ¡ ¡aber ¡two ¡steps ¡ ¡ ¡ ¡ ¡aber ¡n ¡steps
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!# !"!#
v0
X
vt+1 = vtX
v1 v2 v0 vn
tag ¡state ¡ probabiliIes
SLIDE 66 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
MulIply ¡ ¡ ¡ ¡ ¡ ¡with ¡transiIon
- probability ¡matrix ¡ ¡ ¡ ¡ ¡:
¡ ¡ ¡ ¡ ¡contains ¡the ¡probabiliIes ¡of ¡
- being ¡in ¡a ¡node ¡aber ¡1 ¡step
¡ ¡ ¡ ¡ ¡aber ¡two ¡steps ¡ ¡ ¡ ¡ ¡aber ¡n ¡steps
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!# !"!#
v0
X
vt+1 = vtX
v1 v2 v0 vn
genre ¡state ¡ probabiliIes
SLIDE 67 Computing ¡the ¡random ¡walk
Select ¡the ¡user ¡in ¡the ¡iniIal ¡
MulIply ¡ ¡ ¡ ¡ ¡ ¡with ¡transiIon
- probability ¡matrix ¡ ¡ ¡ ¡ ¡:
¡ ¡ ¡ ¡ ¡contains ¡the ¡probabiliIes ¡of ¡
- being ¡in ¡a ¡node ¡aber ¡1 ¡step
¡ ¡ ¡ ¡ ¡aber ¡two ¡steps ¡ ¡ ¡ ¡ ¡aber ¡n ¡steps
!"#"!! $"#"!" $"#"!# $"#"!$ $"#"!%
! " # $ %
$"#"!" $"#"!# $"#"!$ $"#"!% !"#""" $"#""# $"#""$ $"#""% $"#""# !"#"## $"#"#$ $"#"#% $"#""$ $"#"#$ !"#"$$ $"#"$% $"#""% $"#"#% $"#"$% !"#"%%
! " # $ %
% % % % % % % % % %
"&"& !"!# !"!#
v0
X
vt+1 = vtX
v1 v2 v0 vn
actor ¡state ¡ probabiliIes
SLIDE 68
Contextual ¡extensions
SLIDE 69 Contextual ¡extensions
Group ¡recommendaIon ¡by ¡selecIng ¡mulIple ¡users ¡
!"!#
SLIDE 70 Contextual ¡extensions
Group ¡recommendaIon ¡by ¡selecIng ¡mulIple ¡users ¡ RecommendaIon ¡based ¡on ¡favorite ¡actors
!"!# !"!#
SLIDE 71 Contextual ¡extensions
Group ¡recommendaIon ¡by ¡selecIng ¡mulIple ¡users ¡ RecommendaIon ¡based ¡on ¡favorite ¡actors Temporal ¡informaIon ¡to ¡deal ¡with ¡taste ¡drib
!"!# !"!# !"!#
SLIDE 72
Contextual ¡extensions
SLIDE 73 Contextual ¡extensions
Augment ¡self-‑transiIons
- ‑ Social ¡network ¡data ¡to ¡incorporate ¡friendship ¡relaIons ¡into ¡UU
- ‑ Item ¡similarity ¡based ¡on ¡(textual) ¡similarity
- ‑ Tag ¡similarity
SLIDE 74 Contextual ¡extensions
Augment ¡self-‑transiIons
- ‑ Social ¡network ¡data ¡to ¡incorporate ¡friendship ¡relaIons ¡into ¡UU
- ‑ Item ¡similarity ¡based ¡on ¡(textual) ¡similarity
- ‑ Tag ¡similarity
Screen ¡Ime ¡of ¡actors
SLIDE 75 Contextual ¡extensions
Augment ¡self-‑transiIons
- ‑ Social ¡network ¡data ¡to ¡incorporate ¡friendship ¡relaIons ¡into ¡UU
- ‑ Item ¡similarity ¡based ¡on ¡(textual) ¡similarity
- ‑ Tag ¡similarity
Screen ¡Ime ¡of ¡actors Mood
SLIDE 76
Conclusions ¡& ¡future ¡work
SLIDE 77 Conclusions ¡& ¡future ¡work
Based ¡on ¡Markov ¡random ¡walks Models ¡user ¡browsing ¡behavior ¡on ¡movie ¡database ¡websites Can ¡integrate ¡different ¡types ¡of ¡contextual ¡informaIon Can ¡support ¡many ¡different ¡recommendaIon ¡tasks
SLIDE 78 Conclusions ¡& ¡future ¡work
Based ¡on ¡Markov ¡random ¡walks Models ¡user ¡browsing ¡behavior ¡on ¡movie ¡database ¡websites Can ¡integrate ¡different ¡types ¡of ¡contextual ¡informaIon Can ¡support ¡many ¡different ¡recommendaIon ¡tasks
Run ¡extensive ¡experiments ¡and ¡opImize Implement ¡contextual ¡extensions Apply ¡to ¡other ¡domains, ¡such ¡as ¡scienIfic ¡papers ¡(CiteULike)
SLIDE 79
Questions?
SLIDE 80 What ¡is ¡context? ¡And ¡what ¡isn’t?
Metadata ¡(e.g., ¡genre, ¡Itle, ¡summary, ¡actors) Tags Mood/emoIon Demographic ¡informaIon ¡(age, ¡locaIon, ¡etc.) Social ¡network ¡informaIon ¡(users, ¡actors, ¡etc.) Company ¡(watching ¡alone ¡vs. ¡watching ¡with ¡friends) Temporal ¡informaIon ¡(taste ¡drib) Screen ¡Ime ¡(contribuIon ¡to ¡a ¡movie/document/etc.)