auralist: introducing serendipity into music recommendation

51
Auralist: Introducing Serendipity into Music Recommendation @danielequercia

Upload: daniele-quercia

Post on 21-Jun-2015

1.041 views

Category:

Technology


2 download

DESCRIPTION

Recommendation systems exist to help users discover content in a large body of items. An ideal recommendation system should mimic the actions of a trusted friend or expert, producing a personalised collection of recommendations that balance between the desired goals of accuracy, diversity, novelty and serendipity. We introduce the Auralist recommendation framework, a system that - in contrast to previous work - attempts to balance and improve all four factors simultaneously. Using a collection of novel algorithms inspired by principles of ‘serendipitous discovery’, we demonstrate a method of successfully injecting serendipity, novelty and diversity into recommendations whilst limiting the impact on accuracy. We evaluate Auralist quantitatively over a broad set of metrics and, with a user study on music recommendation, show that Auralist’s emphasis on serendipity indeed improves user satisfaction.

TRANSCRIPT

Auralist:Introducing Serendipity into Music Recommendation

@danielequercia

<who am i>

daniele quercia

offline & online

Introducing serendipity in recommendations

Introducing serendipity in recommendations

Filter bubble (chilling idea … for some)

Your content limited by your past& self-propagating interests

Goal: how to produce recommendations that are

1.Accurate2.Diverse3.Novel4.Serendipitous

Auralist: framework broadening musical horizons ;)

1.Basic2.Community-Aware3.Bubble-Aware4.Full

1. Basic

Employs Latent Dirichlet Allocation (LDA)

LDA

create virtual bins (latent topics)assign words to a bin (@ random)for each bin: select pair of words if co-occur more than chance: keep them in the bin else: put them into another bin (@ random)

Facebook Twitter

LDA

create virtual bins (latent topics)assign words to a bin (@ random)for each bin: select pair of words if co-occur more than chance: keep them in the bin else: put them into another bin (@ random)

Facebook Twitter

social

econometrics

LDA

create virtual bins (latent topics)assign words to a bin (@ random)for each bin: select pair of words if co-occur more than chance: keep them in the bin else: put them into another bin (@ random)

Facebook Twitter

social

econometrics

LDA

create virtual bins (latent topics)assign words to a bin (@ random)for each bin: select pair of words if co-occur more than chance: keep them in the bin else: put them into another bin (@ random)

For each doc:

LDA

create virtual bins (latent topics)assign words to a bin (@ random)for each bin: select pair of words if co-occur more than chance: keep them in the bin else: put them into another bin (@ random)

For each doc:

users

user1, user2, … (who belong to a given community)

artist

LDA

create virtual bins (latent topics)assign words to a bin (@ random)for each bin: select pair of words if co-occur more than chance: keep them in the bin else: put them into another bin (@ random)

The Beatles HolyBlood

LDA

create virtual bins (latent topics)assign words to a bin (@ random)for each bin: select pair of words if co-occur more than chance: keep them in the bin else: put them into another bin (@ random)

The Beatles HolyBlood

diversity() diversity()

similarity()

1. Basic Auralist

match(user’s history, artist)

2. Community-Aware

balance * match(user’s history, artist) * diversity(artist)

2. Community-Aware

balance * match(user’s history, artist) * diversity(artist)

favors artists with

broader fan bases

e.g., The Beatles ov

er HolyBlood

2. Community-Aware

balance * match(user’s history, artist) * diversity(artist)

favors artists with

broader fan bases

e.g., The Beatles ov

er HolyBlood

… but discounting for popularity

3. Bubble-Aware

The Beatles

HolyBlood

The Rolling Stones

balance * match(user’s history, artist) * bubbleness(artist)

3. Bubble-Aware

balance * match(user’s history, artist) * bubbleness(artist)

favors cluster

-avoiding artis

ts by

pushing the bo

undaries of a

user’s taste

4. Full Auralist

Rank interpolation of 1. 2. and 3.

do they work?

++ - - -

+- -+

+

Both improve novelty, diversity and serendipity but with accuracy loss OK news!

Good news: accuracy loss can be minimised

good

bad

Good news: accuracy loss can be minimised

good

bad

User Study: Basic Auralist vs. Full Auralist

Serendipity

Enjoyment

User Study: Basic Auralist vs. Full Auralist

Some: accept accuracy loss for serendipityMajority: favours of greater accuracy

* serendipity IS a user-specific parameter

So what?

Future (well, current & you could help)

1. Nudging

Now: AuralistNext: ‘Nudge’ people for serendipity

social media language personality

social media

2. Personality

language personality

social media

2. Personality

@ CSCW

3. Why’s

2 personality

1 nudging

2 why’s

2 personality

1 nudging

2 why’s

@danielequercia