This document discusses using semantic patterns and linked open data for web personalization. It describes Lora Aroyo's work using semantic relationships between concepts from vocabularies like ULAN, AAT, and TGN to generate artwork recommendations, presentations, and explanations for museum visitors. These patterns are also applied to semantic enrichment of television program metadata from sources like DBPedia, Freebase, and BBC to provide personalized program recommendations. Challenges include the size and noise within linked open data.
1. Semantic
Patterns
for
Web
Personalization
Lora
Aroyo
l.m.aroyo@cs.vu.nl
Web
&
Media
Group
Faculty
of
Computer
Science
VU
University
Amsterdam,
The
Netherlands
http://www.cs.vu.nl/~laroyo twitter: @laroyo
2. the
personalization
challenge
• discover
useful
linked
(open)
data
pa4erns
– domain-‐specific
– representa8on-‐specific
– alignment-‐based
• combine
seman8cs
with
user
context
• determine
user
relevance
and
ranking
• generate
meaningful
explana8ons
• select
suitable
presenta8on
http://www.cs.vu.nl/~laroyo twitter: @laroyo
4. what’s
interesting
for
me
in
the
museum?
Artwork
Recommendations
&
Personalized
museum
guide
http://chip-‐project.org
http://www.cs.vu.nl/~laroyo twitter: @laroyo
14. 11
semantic
relationships
• Wang,
et
al
(2009a,
2009b)
• link
two
art
concepts
within
one
vocabulary
or
across
two
different
vocabularies,
e.g.
– Rembrandt
(ULAN)
–studentOf-‐>
Pieter
Lastman
(ULAN)
– Rembrandt
(ULAN)
–hasStyle-‐>
Baroque
(AAT)
– Rembrandt
(ULAN)
–deathPlace-‐>
Amsterdam
(TGN)
http://www.cs.vu.nl/~laroyo twitter: @laroyo
16. 4
artwork
features
• link
an
artwork
&
its
associated
concepts
– The
Jewish
Bride
(Artwork)
–creator-‐>
Rembrandt
(ULAN)
– The
Jewish
Bride
(Artwork)
–crea3onSite-‐>
Amsterdam
(TGN)
http://www.cs.vu.nl/~laroyo twitter: @laroyo
17. results
…
• vra:creator
&
link:hasStyle
&
aat:broader/narrower
– most
accurate
recommenda8ons
&
most
interes8ng
to
users
• ulan:birth/deathPlace
&
tgn:
broader/narrower
– have
the
least
values
for
accuracy
and
interes8ngness
• vra:subject
&
(subject)
skos:broader/narrower
– highest
recall
for
recommended
concepts
&
resulted
in
most
user
ra8ngs
– accuracy
and
interes8ngness,
they
score
average
http://www.cs.vu.nl/~laroyo twitter: @laroyo
22. first
we
…
• select
media-‐related
Linked
Data
• semantically
enrich
TV
program
metadata
• define
similarity
measures
for
TV
programs
• semantic
content-‐based
recommendations
23.
24. TV-‐related
linked
data
• DBPedia,
Freebase,
WordNet(s)
• TV
genre
typologies,
IMDB,
TV
Anytime,
BBC
Programme
ontology,
(constantly
growing
list)
• Expose
TV
metadata
as
Semantic
Web
data
• Use
LOD
concepts
for
TV
metadata
enrichment
• Publish
NoTube
additions
as
extension
to
LOD
• Combine
and
align
Web
&
TV
standards
(public
broadcasters)
http://www.cs.vu.nl/~laroyo twitter: @laroyo
25. enrichment
of
TV
metadata
http://www.cs.vu.nl/~laroyo twitter: @laroyo
26. semantics
&
linked
data
@
BBC
• BBC
Programs
and
BBC
Music
ensure
ONE
page
per
programme
(ar8st)
with
RDF
representa8on
• BBC
Program
Ontology
• BBC
Wildlife
Finder
provides
a
URI
for
every
species,
habitat
and
adap8on
• The
BBC’s
World
Cup
site
uses
RDF
and
Linked
Data
for
a
site
of
700
aggrega8on
pages
http://www.cs.vu.nl/~laroyo twitter: @laroyo
27. LOD
is
BIG
&
MESSY
many
interesting
facts
but
also
much
straight
forward
knowledge,
e.g.
“Peter
Jackson
is
a
human
being”
is
necessary,
but
a
trivial
fact
from
a
user’s
perspective
28. source
for
noise
in
LOD
…
• Multiple
(large)
vocabularies
with
various
semantics
• Multiple
alignments
between
vocabularies
Content-‐based
recommendations
with
a
wide
range
of
concepts
• Not
all
semantically
related
concepts
are
interesting
for
end
users
http://www.cs.vu.nl/~laroyo twitter: @laroyo
29. to
filter
out
the
noise
in
LOD
…
we
look
for
patterns
in
LOD
to
improve
performance
of
semantic
search
http://www.cs.vu.nl/~laroyo twitter: @laroyo
30. how
did
we
do
it
…
• select
the
appropriate
LOD
sources
– detect
representative
knowledge
patterns
– Identify
pattern
types
–
higher
recall/similar
precision
• generic
patterns,
i.e.
hierarchical
&
associative
• specific
patterns
-‐
less
applicable,
but
rendering
better
performance
than
generic
patterns
– enrich
the
data
according
to
those
patterns
• extract
all
possible
pathway
patterns
http://www.cs.vu.nl/~laroyo twitter: @laroyo
31. method
• List
of
all
Properties
(P)
as
defined
in
their
vocabulary
(with
domain
and
range)
• P
Statistics
-‐
#
triples
that
use
it,
universes
and
%
of
use
of
subject
&
object
types
• Align
P
to
top-‐level
P
in
general
Content
ODPs
– mappings
-‐
owl:equivalentProperty,
rdfs:subPropertyOf
• Align
P
universes
to
top-‐level
classes
in
ODPs
• Identify
paths
http://www.cs.vu.nl/~laroyo twitter: @laroyo
32. paths
• ordered
list
of
properties
from
triple
sequences
that
instantiate
the
path
– a
length
(min
2)
=
#
properties
that
compose
it
– a
number
of
occurrences
=
#
of
its
instances
in
dataset
• Property
has
position
in
path,
subject
and
object
types
– linkedmdb:cinematographer,
linkedmdb:performance,
linkedmdb:film_character!
http://www.cs.vu.nl/~laroyo twitter: @laroyo
33. where
do
we
use
all
this
…
for
recommendations
of
content
http://www.cs.vu.nl/~laroyo twitter: @laroyo
34. recommendations
with
patterns
• reduce
the
burden
of
too
much
choice
– filter
out
irrelevant
items
– push
relevant
background
items
– surface
programs
of
interest
in
the
‘long
tail’
• support
– (interesting)
content
discovery
– serendipity
– knowledge
building
http://www.cs.vu.nl/~laroyo twitter: @laroyo
35. finding
interesting
relations
• deep
links
• related
info
• granularity
of
content
– for
discussion
– for
user
feedback
http://www.cs.vu.nl/~laroyo twitter: @laroyo
38. generating
explanations
• Help
users
to:
– learn
the
recommendation
mechanisms
– understand
why
something
is
recommended
– quicker
share
recommended
content
– give
better
feedback
to
the
recommender
engine
http://www.cs.vu.nl/~laroyo twitter: @laroyo
40. next
we
…
• select
only
the
LOD
pa4erns
that
match
relevance
for
a
given
user
e.g.
using
the
user
profile
&
context
• find
rela8ons
between
a
user
and
program
– interes8ngness
factor
– serendipity
factor
– context
factor,
e.g.
8me,
loca8on,
device
41. FOAF
(Friend-‐of-‐a-‐Friend)
User
Profile
schema:
capture
user
context
&
temporal
changes
User
Modelling:
(Social)
Web
user
activity
&
user
preference
data
http://www.cs.vu.nl/~laroyo twitter: @laroyo
42. user
profiling
-‐
activity
streams
http://www.cs.vu.nl/~laroyo twitter: @laroyo
44. patterns
in
social
media
• Twitter
TV
trends
in
people
I
follow
– what
my
friends
are
watching
– what's
most
popular
on
Twitter
right
now
– what
my
celebrities
are
liking
on
FB
• Hunch.com
links
between
content
&
people
stereotypes
http://www.cs.vu.nl/~laroyo twitter: @laroyo
47. NoTube
Demonstrator
II:
Personalized
EPG
&
Ads
OnlineTV
Guide
SeAop
Box
EPG
Mobile
Iden3ty
•
Synchroniza3on
with
STB
• My
TV
Night
• ID
Anywhere
•
Seman3c
Search
• What’s
on
for
me
• No3fica3ons
• Related
Programs
http://ifanzy.nl
http://www.cs.vu.nl/~laroyo twitter: @laroyo
48. NoTube
Demonstrator
III:
Social
TV
&
Web
• http://vimeo.com/10553773
• http://vimeo.com/11232681
http://www.cs.vu.nl/~laroyo twitter: @laroyo
49. Acknowledgements
&
Image
Credits
• Libby
Miller,
BBC
• http://pidgintech.com
• Vicky
Buser,
BBC
• Stoneroos
team
• Dan
Brickley,
VUA
• RAI
team
• Guus
Schreiber,
VUA
• Natalia
Stash,
TUe
• Yiwen
Wang,
TUe
• Peter
Gorgels,
RMA
http://www.cs.vu.nl/~laroyo twitter: @laroyo
Editor's Notes
Next to semantics we also deal with user data
3 more examples of interactive apps taking user profiles and context into account
3 more examples of interactive apps taking user profiles and context into account
3 more examples of interactive apps taking user profiles and context into account
3 more examples of interactive apps taking user profiles and context into account
3 more examples of interactive apps taking user profiles and context into account
Interesting related problem Relatioships
3 more examples of interactive apps taking user profiles and context into account
3 more examples of interactive apps taking user profiles and context into account
3 more examples of interactive apps taking user profiles and context into account
One step back If in general we do something with users and semantics Have to overlay the users with semantics - contextualizing (context can be very difficult – place, time activity) Granularity of data - number of types of formats - multiple applcations
3 more examples of interactive apps taking user profiles and context into account
Delicious-> social bookmarking Last.fm->music Identi.ca-> microblogging FOAF Social Graph QDOS-> profile on the web Oauth: securi API