SlideShare a Scribd company logo
1 of 58
Download to read offline
Improving Music Recommendation in
Session-Based Collaborative Filtering by using

Temporal Context
Ricardo Dias, Manuel J. Fonseca
University of Lisbon
Instituto Superior Tรฉcnico
ICTAI 2013
Amazon

17 Million Songs
iTunes

~18 Million Songs
Content information
User Feedback
Songs listened
Temporal Context
Context Filtering
Collaborative Filtering
Demographic Filtering
Content-Based Approaches
Hybrid Approaches
[Celma2010]
1. Few work to study the usage of temporal
context combined with CF algorithms
2. Some take advantage of the songs listened in
sessions (and implicit context they provide)

3. None of them used temporal features
extracted from the sessions
1. Few work to study the usage of temporal
context combined with CF algorithms
2. Some take advantage of the songs listened in
sessions (and implicit context they provide)

3. None of them used temporal features
extracted from the sessions
1. Few work to study the usage of temporal
context combined with CF algorithms
2. Some take advantage of the songs listened in
sessions (and implicit context they provide)

3. None of them used temporal features
extracted from the sessions
Listening to music is a repetitive
and continuous process

[Herrera2010]
Songs frequently preferred together in sessions
rather than isolated

[Hansen2009]
User 1
Session 1
Session 2
โ€ฆ

User 2 โ€ฆ

Artist 1, Song 1, Timestamp
Artist 2, Song 3, Timestamp
Artist 1, Song 2, Timestamp
Artist 3, Song 5, Timestamp
Artist 4, Song 4, Timestamp

Time
COLLABORATIVE FILTERING
APPROACHES
Takes into account the songs a user has listened
and rated
Song 1

Song 2

Song 3

Song 4

Song 5

Alice

5

3

4

4

?

User 1

3

1

2

3

3

User 2

4

3

4

3

5

User 3

3

3

1

5

4

User 4

1

5

5

2

1
Session profiles instead of User Profiles
Song 1

Song 2

Session 1

1

4

Session 2

1

Session 3

[Park2011]

Song 4

Song 5

4

?

2
1

Session 4
Session 5

Song 3

2

1
1

2

1

1

1
Song 1

Song 2

Session 1

1

4

Session 2

1

Session 3

Song 4

Song 5

4

?

2
1

Session 4
Session 5

Song 3

2

1
1

2

1

1

1
๐‘Ÿ ๐‘ ,๐‘– = ๐‘Ÿ๐‘  +

๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜

๐’”๐’Š๐’Ž ๐’”, ๐’— โˆ™ (๐‘Ÿ ๐‘ฃ,๐‘– โˆ’ ๐‘Ÿ ๐‘ฃ )

๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜

๐’”๐’Š๐’Ž(๐’”, ๐’—)

๐‘บ(๐’”) ๐’Œ represents the k session neighbors for the active sessions, ๐’“ ๐’” and ๐’“ ๐’— the average
rating for the sessions s and v under comparison
TEMPORAL CONTEXT AWARE
ALGORITHMS
Explicit

Implicit
๐‘Ÿ ๐‘ ,๐‘– = ๐‘Ÿ๐‘  +

๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜

๐’”๐’Š๐’Ž ๐’”, ๐’— โˆ™ (๐‘Ÿ ๐‘ฃ,๐‘– โˆ’ ๐‘Ÿ ๐‘ฃ )

๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜

๐’”๐’Š๐’Ž(๐’”, ๐’—)

๐‘บ(๐’”) ๐’Œ represents the k session neighbors for the active sessions, ๐’“ ๐’” and ๐’“ ๐’— the average
rating for the sessions s and v under comparison
๐‘Ÿ ๐‘ ,๐‘– = ๐‘Ÿ๐‘  +

๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜

๐’”๐’Š๐’Ž ๐’”, ๐’— โˆ™ (๐‘Ÿ ๐‘ฃ,๐‘– โˆ’ ๐‘Ÿ ๐‘ฃ )

๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜

๐’”๐’Š๐’Ž(๐’”, ๐’—)

๐‘บ(๐’”) ๐’Œ represents the k session neighbors for the active sessions, ๐’“ ๐’” and ๐’“ ๐’— the average
rating for the sessions s and v under comparison
Explicit
Features
Time (Period of Day)

Temporal
Context

Weekday
Day of Month
Month
Session Diversity

Session
Diversity
Clustering performed to group sessions that
have similar features
Expectation Maximization (EM)

[Dempster1977]
Cluster
Membership

S1 and S2 more similar than S1 and S3 or S2 and
S3
1
0,8
0,6

Session 1

0,4
0,2

Session 2

0

Session 3
1

2

3

Clusters

4

sim(s1, s2) = 0.163
sim(s1, s3) = 1.139
sim(s2, s3) = 0.871
๐‘Ÿ ๐‘ ,๐‘– = ๐‘Ÿ๐‘  +

๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜

๐’”๐’Š๐’Ž ๐’”, ๐’— โˆ™ (๐‘Ÿ ๐‘ฃ,๐‘– โˆ’ ๐‘Ÿ ๐‘ฃ )

๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜

๐’”๐’Š๐’Ž(๐’”, ๐’—)

๐’”๐’Š๐’Ž ๐’”, ๐’— = ๐‘ฒ๐’–๐’๐’๐’ƒ๐’‚๐’„๐’Œ(๐’”, ๐’—)
Implicit
Documents are collections of words
Each document is represented as a mixture of
latent topics, and each topic has probabilities of
generating various words
Uses Session Data Model with LDA
โ€“ Documents: sessions
โ€“ Words: songs

Sessions (Documents) are treated as Bag-ofSongs (Words)
Topic
Distribution

S1 and S2 more similar than S1 and S3 or S2 and
S3
1
0,8
0,6
0,4

Session 1

0,2

Session 2
Session 3

0
1

2

3

Topics

4

sim(s1, s2) = 0.163
sim(s1, s3) = 1.139
sim(s2, s3) = 0.871
๐‘Ÿ ๐‘ ,๐‘– = ๐‘Ÿ๐‘  +

๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜

๐’”๐’Š๐’Ž ๐’”, ๐’— โˆ™ (๐‘Ÿ ๐‘ฃ,๐‘– โˆ’ ๐‘Ÿ ๐‘ฃ )

๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜

๐’”๐’Š๐’Ž(๐’”, ๐’—)

๐’”๐’Š๐’Ž ๐’”, ๐’— = ๐‘ฒ๐’–๐’๐’๐’ƒ๐’‚๐’„๐’Œ(๐’”, ๐’—)
EVALUATION SETUP
Determine the next song to be played in active
session
Song E
Song A

Song B

Song C

Active Session

Song D

Song F
Listening History of 992 users

> 19

Million records
Session 1

Song 1

Song 2

Session 2

Song 3

Song 4
Time gap

[Pabarskaite2007]

Song 6

Song 3
Temporal Context Aware
SSCF [Park2011]

TSSCF
Session LDA
#c = 8
#t = 8
๐‘˜ โˆˆ 30, 50, โ€ฆ , 2000
[Park2011]
th = 20
HR@n ๏ƒ  Hit Ratio at N
(top-n recommendations)
MRR ๏ƒ  Mean Reciprocal Rank
Dataset โ€“ Session split
Training: all the songs in sessions, except the last
one
Test: the last song in the session
Queries ๏ƒ  1000 Sessions randomly
chosen
For i = 1
to i = 20

For each query obtained the top-100,
and recorded the presence and rank
given by the algorithms
RESULTS
SSCF
Hit Ratio

MRR

LDA
Hit Ratio

H(2) = 1560.115; P < 0.01

MRR

H(2) = 1064.659; P < 0.01
Hit Ratio

MRR
Hit Ratio

MRR
K = 30
Hit Ratio

MRR

LDA

LDA
Hit Ratio

H(2) = 52.52; P < 0.01

MRR

H(2) = 2.294; P > 0.318
CONCLUSIONS AND FUTURE
WORK
Temporal Context improves recommendation
accuracy in Session-based CF
โ€“ LDA based algorithm with best results

HR increased >200%
Combine temporal properties with other
context features
โ€“ Example: locations, activities, user behavior
(skips), etc.

Conduct a user study by applying the algorithm
in a real world application
Improving Music Recommendation in Session-Based Collaborative Filtering by using Temporal Context

More Related Content

Similar to Improving Music Recommendation in Session-Based Collaborative Filtering by using Temporal Context

้Ÿณๆฅฝใฎ้žๅฐ‚้–€ๅฎถใŒๆผ”ๅฅใƒปๅ‰ตไฝœใ‚’้€šใ˜ใฆ้Ÿณๆฅฝใ‚’ๆฅฝใ—ใ‚ใ‚‹ไธ–็•Œใ‚’็›ฎๆŒ‡ใ—ใฆ
้Ÿณๆฅฝใฎ้žๅฐ‚้–€ๅฎถใŒๆผ”ๅฅใƒปๅ‰ตไฝœใ‚’้€šใ˜ใฆ้Ÿณๆฅฝใ‚’ๆฅฝใ—ใ‚ใ‚‹ไธ–็•Œใ‚’็›ฎๆŒ‡ใ—ใฆ้Ÿณๆฅฝใฎ้žๅฐ‚้–€ๅฎถใŒๆผ”ๅฅใƒปๅ‰ตไฝœใ‚’้€šใ˜ใฆ้Ÿณๆฅฝใ‚’ๆฅฝใ—ใ‚ใ‚‹ไธ–็•Œใ‚’็›ฎๆŒ‡ใ—ใฆ
้Ÿณๆฅฝใฎ้žๅฐ‚้–€ๅฎถใŒๆผ”ๅฅใƒปๅ‰ตไฝœใ‚’้€šใ˜ใฆ้Ÿณๆฅฝใ‚’ๆฅฝใ—ใ‚ใ‚‹ไธ–็•Œใ‚’็›ฎๆŒ‡ใ—ใฆkthrlab
ย 
saito22research_talk_at_NUS
saito22research_talk_at_NUSsaito22research_talk_at_NUS
saito22research_talk_at_NUSYuki Saito
ย 
Poster vega north
Poster vega northPoster vega north
Poster vega northAcxelVega
ย 
Application of Fisher Linear Discriminant Analysis to Speech/Music Classifica...
Application of Fisher Linear Discriminant Analysis to Speech/Music Classifica...Application of Fisher Linear Discriminant Analysis to Speech/Music Classifica...
Application of Fisher Linear Discriminant Analysis to Speech/Music Classifica...Lushanthan Sivaneasharajah
ย 
๏ฟผSound Events and Emotions: Investigating the Relation of Rhythmic Characteri...
๏ฟผSound Events and Emotions: Investigating the Relation of Rhythmic Characteri...๏ฟผSound Events and Emotions: Investigating the Relation of Rhythmic Characteri...
๏ฟผSound Events and Emotions: Investigating the Relation of Rhythmic Characteri...Andreas Floros
ย 
"TiMerS: Time-Based Music Recommender System"
"TiMerS: Time-Based Music Recommender System""TiMerS: Time-Based Music Recommender System"
"TiMerS: Time-Based Music Recommender System"Gobinda Karmakar โ˜
ย 
Deep learning for music classification, 2016-05-24
Deep learning for music classification, 2016-05-24Deep learning for music classification, 2016-05-24
Deep learning for music classification, 2016-05-24Keunwoo Choi
ย 
Case-based Sequential Ordering of Songs for Playlist Recommendation
Case-based Sequential Ordering of Songs for Playlist RecommendationCase-based Sequential Ordering of Songs for Playlist Recommendation
Case-based Sequential Ordering of Songs for Playlist RecommendationUri Levanon
ย 
Identifying Successful Melodic Similarity Algorithms for use in Music
Identifying Successful Melodic Similarity Algorithms for use in MusicIdentifying Successful Melodic Similarity Algorithms for use in Music
Identifying Successful Melodic Similarity Algorithms for use in Musicinscit2006
ย 
Une18apsipa
Une18apsipaUne18apsipa
Une18apsipaYuki Saito
ย 
Audio descriptive analysis of singer and musical instrument identification in...
Audio descriptive analysis of singer and musical instrument identification in...Audio descriptive analysis of singer and musical instrument identification in...
Audio descriptive analysis of singer and musical instrument identification in...eSAT Journals
ย 
Nithin Xavier research_proposal
Nithin Xavier research_proposalNithin Xavier research_proposal
Nithin Xavier research_proposalNithin Xavier
ย 
Bz33462466
Bz33462466Bz33462466
Bz33462466IJERA Editor
ย 
Bz33462466
Bz33462466Bz33462466
Bz33462466IJERA Editor
ย 
How Can The Essen Associative Code Be Used
How Can The Essen Associative Code Be UsedHow Can The Essen Associative Code Be Used
How Can The Essen Associative Code Be Usedlahtrumpet
ย 
How Can The Essen Associative Code Be Used
How Can The Essen Associative Code Be UsedHow Can The Essen Associative Code Be Used
How Can The Essen Associative Code Be Usedlahtrumpet
ย 
Interval Hashing Based Ranking
Interval Hashing Based RankingInterval Hashing Based Ranking
Interval Hashing Based RankingAndrea Gazzarini
ย 
Musical Information Retrieval Take 2: Interval Hashing Based Ranking
Musical Information Retrieval Take 2: Interval Hashing Based RankingMusical Information Retrieval Take 2: Interval Hashing Based Ranking
Musical Information Retrieval Take 2: Interval Hashing Based RankingSease
ย 

Similar to Improving Music Recommendation in Session-Based Collaborative Filtering by using Temporal Context (20)

้Ÿณๆฅฝใฎ้žๅฐ‚้–€ๅฎถใŒๆผ”ๅฅใƒปๅ‰ตไฝœใ‚’้€šใ˜ใฆ้Ÿณๆฅฝใ‚’ๆฅฝใ—ใ‚ใ‚‹ไธ–็•Œใ‚’็›ฎๆŒ‡ใ—ใฆ
้Ÿณๆฅฝใฎ้žๅฐ‚้–€ๅฎถใŒๆผ”ๅฅใƒปๅ‰ตไฝœใ‚’้€šใ˜ใฆ้Ÿณๆฅฝใ‚’ๆฅฝใ—ใ‚ใ‚‹ไธ–็•Œใ‚’็›ฎๆŒ‡ใ—ใฆ้Ÿณๆฅฝใฎ้žๅฐ‚้–€ๅฎถใŒๆผ”ๅฅใƒปๅ‰ตไฝœใ‚’้€šใ˜ใฆ้Ÿณๆฅฝใ‚’ๆฅฝใ—ใ‚ใ‚‹ไธ–็•Œใ‚’็›ฎๆŒ‡ใ—ใฆ
้Ÿณๆฅฝใฎ้žๅฐ‚้–€ๅฎถใŒๆผ”ๅฅใƒปๅ‰ตไฝœใ‚’้€šใ˜ใฆ้Ÿณๆฅฝใ‚’ๆฅฝใ—ใ‚ใ‚‹ไธ–็•Œใ‚’็›ฎๆŒ‡ใ—ใฆ
ย 
saito22research_talk_at_NUS
saito22research_talk_at_NUSsaito22research_talk_at_NUS
saito22research_talk_at_NUS
ย 
BACH
BACHBACH
BACH
ย 
Poster vega north
Poster vega northPoster vega north
Poster vega north
ย 
Application of Fisher Linear Discriminant Analysis to Speech/Music Classifica...
Application of Fisher Linear Discriminant Analysis to Speech/Music Classifica...Application of Fisher Linear Discriminant Analysis to Speech/Music Classifica...
Application of Fisher Linear Discriminant Analysis to Speech/Music Classifica...
ย 
๏ฟผSound Events and Emotions: Investigating the Relation of Rhythmic Characteri...
๏ฟผSound Events and Emotions: Investigating the Relation of Rhythmic Characteri...๏ฟผSound Events and Emotions: Investigating the Relation of Rhythmic Characteri...
๏ฟผSound Events and Emotions: Investigating the Relation of Rhythmic Characteri...
ย 
"TiMerS: Time-Based Music Recommender System"
"TiMerS: Time-Based Music Recommender System""TiMerS: Time-Based Music Recommender System"
"TiMerS: Time-Based Music Recommender System"
ย 
Deep learning for music classification, 2016-05-24
Deep learning for music classification, 2016-05-24Deep learning for music classification, 2016-05-24
Deep learning for music classification, 2016-05-24
ย 
Case-based Sequential Ordering of Songs for Playlist Recommendation
Case-based Sequential Ordering of Songs for Playlist RecommendationCase-based Sequential Ordering of Songs for Playlist Recommendation
Case-based Sequential Ordering of Songs for Playlist Recommendation
ย 
Identifying Successful Melodic Similarity Algorithms for use in Music
Identifying Successful Melodic Similarity Algorithms for use in MusicIdentifying Successful Melodic Similarity Algorithms for use in Music
Identifying Successful Melodic Similarity Algorithms for use in Music
ย 
Une18apsipa
Une18apsipaUne18apsipa
Une18apsipa
ย 
Audio mining
Audio miningAudio mining
Audio mining
ย 
Audio descriptive analysis of singer and musical instrument identification in...
Audio descriptive analysis of singer and musical instrument identification in...Audio descriptive analysis of singer and musical instrument identification in...
Audio descriptive analysis of singer and musical instrument identification in...
ย 
Nithin Xavier research_proposal
Nithin Xavier research_proposalNithin Xavier research_proposal
Nithin Xavier research_proposal
ย 
Bz33462466
Bz33462466Bz33462466
Bz33462466
ย 
Bz33462466
Bz33462466Bz33462466
Bz33462466
ย 
How Can The Essen Associative Code Be Used
How Can The Essen Associative Code Be UsedHow Can The Essen Associative Code Be Used
How Can The Essen Associative Code Be Used
ย 
How Can The Essen Associative Code Be Used
How Can The Essen Associative Code Be UsedHow Can The Essen Associative Code Be Used
How Can The Essen Associative Code Be Used
ย 
Interval Hashing Based Ranking
Interval Hashing Based RankingInterval Hashing Based Ranking
Interval Hashing Based Ranking
ย 
Musical Information Retrieval Take 2: Interval Hashing Based Ranking
Musical Information Retrieval Take 2: Interval Hashing Based RankingMusical Information Retrieval Take 2: Interval Hashing Based Ranking
Musical Information Retrieval Take 2: Interval Hashing Based Ranking
ย 

Recently uploaded

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervรฉ Boutemy
ย 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
ย 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
ย 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
ย 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
ย 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
ย 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
ย 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
ย 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
ย 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
ย 
Advanced Computer Architecture โ€“ An Introduction
Advanced Computer Architecture โ€“ An IntroductionAdvanced Computer Architecture โ€“ An Introduction
Advanced Computer Architecture โ€“ An IntroductionDilum Bandara
ย 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
ย 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
ย 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo Garcรญa Lavilla
ย 
"Subclassing and Composition โ€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition โ€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition โ€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition โ€“ A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
ย 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDubai Multi Commodity Centre
ย 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
ย 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
ย 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
ย 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
ย 

Recently uploaded (20)

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
ย 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
ย 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
ย 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
ย 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
ย 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
ย 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
ย 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
ย 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
ย 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
ย 
Advanced Computer Architecture โ€“ An Introduction
Advanced Computer Architecture โ€“ An IntroductionAdvanced Computer Architecture โ€“ An Introduction
Advanced Computer Architecture โ€“ An Introduction
ย 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
ย 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
ย 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
ย 
"Subclassing and Composition โ€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition โ€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition โ€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition โ€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack
ย 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
ย 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
ย 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
ย 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
ย 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
ย 

Improving Music Recommendation in Session-Based Collaborative Filtering by using Temporal Context

  • 1. Improving Music Recommendation in Session-Based Collaborative Filtering by using Temporal Context Ricardo Dias, Manuel J. Fonseca University of Lisbon Instituto Superior Tรฉcnico ICTAI 2013
  • 2.
  • 4.
  • 5.
  • 6. Content information User Feedback Songs listened Temporal Context
  • 7. Context Filtering Collaborative Filtering Demographic Filtering Content-Based Approaches Hybrid Approaches [Celma2010]
  • 8. 1. Few work to study the usage of temporal context combined with CF algorithms 2. Some take advantage of the songs listened in sessions (and implicit context they provide) 3. None of them used temporal features extracted from the sessions
  • 9. 1. Few work to study the usage of temporal context combined with CF algorithms 2. Some take advantage of the songs listened in sessions (and implicit context they provide) 3. None of them used temporal features extracted from the sessions
  • 10. 1. Few work to study the usage of temporal context combined with CF algorithms 2. Some take advantage of the songs listened in sessions (and implicit context they provide) 3. None of them used temporal features extracted from the sessions
  • 11.
  • 12. Listening to music is a repetitive and continuous process [Herrera2010]
  • 13. Songs frequently preferred together in sessions rather than isolated [Hansen2009]
  • 14. User 1 Session 1 Session 2 โ€ฆ User 2 โ€ฆ Artist 1, Song 1, Timestamp Artist 2, Song 3, Timestamp Artist 1, Song 2, Timestamp Artist 3, Song 5, Timestamp Artist 4, Song 4, Timestamp Time
  • 16. Takes into account the songs a user has listened and rated Song 1 Song 2 Song 3 Song 4 Song 5 Alice 5 3 4 4 ? User 1 3 1 2 3 3 User 2 4 3 4 3 5 User 3 3 3 1 5 4 User 4 1 5 5 2 1
  • 17.
  • 18. Session profiles instead of User Profiles Song 1 Song 2 Session 1 1 4 Session 2 1 Session 3 [Park2011] Song 4 Song 5 4 ? 2 1 Session 4 Session 5 Song 3 2 1 1 2 1 1 1
  • 19. Song 1 Song 2 Session 1 1 4 Session 2 1 Session 3 Song 4 Song 5 4 ? 2 1 Session 4 Session 5 Song 3 2 1 1 2 1 1 1
  • 20. ๐‘Ÿ ๐‘ ,๐‘– = ๐‘Ÿ๐‘  + ๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜ ๐’”๐’Š๐’Ž ๐’”, ๐’— โˆ™ (๐‘Ÿ ๐‘ฃ,๐‘– โˆ’ ๐‘Ÿ ๐‘ฃ ) ๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜ ๐’”๐’Š๐’Ž(๐’”, ๐’—) ๐‘บ(๐’”) ๐’Œ represents the k session neighbors for the active sessions, ๐’“ ๐’” and ๐’“ ๐’— the average rating for the sessions s and v under comparison
  • 23. ๐‘Ÿ ๐‘ ,๐‘– = ๐‘Ÿ๐‘  + ๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜ ๐’”๐’Š๐’Ž ๐’”, ๐’— โˆ™ (๐‘Ÿ ๐‘ฃ,๐‘– โˆ’ ๐‘Ÿ ๐‘ฃ ) ๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜ ๐’”๐’Š๐’Ž(๐’”, ๐’—) ๐‘บ(๐’”) ๐’Œ represents the k session neighbors for the active sessions, ๐’“ ๐’” and ๐’“ ๐’— the average rating for the sessions s and v under comparison
  • 24. ๐‘Ÿ ๐‘ ,๐‘– = ๐‘Ÿ๐‘  + ๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜ ๐’”๐’Š๐’Ž ๐’”, ๐’— โˆ™ (๐‘Ÿ ๐‘ฃ,๐‘– โˆ’ ๐‘Ÿ ๐‘ฃ ) ๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜ ๐’”๐’Š๐’Ž(๐’”, ๐’—) ๐‘บ(๐’”) ๐’Œ represents the k session neighbors for the active sessions, ๐’“ ๐’” and ๐’“ ๐’— the average rating for the sessions s and v under comparison
  • 26. Features Time (Period of Day) Temporal Context Weekday Day of Month Month Session Diversity Session Diversity
  • 27. Clustering performed to group sessions that have similar features Expectation Maximization (EM) [Dempster1977]
  • 28. Cluster Membership S1 and S2 more similar than S1 and S3 or S2 and S3 1 0,8 0,6 Session 1 0,4 0,2 Session 2 0 Session 3 1 2 3 Clusters 4 sim(s1, s2) = 0.163 sim(s1, s3) = 1.139 sim(s2, s3) = 0.871
  • 29. ๐‘Ÿ ๐‘ ,๐‘– = ๐‘Ÿ๐‘  + ๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜ ๐’”๐’Š๐’Ž ๐’”, ๐’— โˆ™ (๐‘Ÿ ๐‘ฃ,๐‘– โˆ’ ๐‘Ÿ ๐‘ฃ ) ๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜ ๐’”๐’Š๐’Ž(๐’”, ๐’—) ๐’”๐’Š๐’Ž ๐’”, ๐’— = ๐‘ฒ๐’–๐’๐’๐’ƒ๐’‚๐’„๐’Œ(๐’”, ๐’—)
  • 31. Documents are collections of words Each document is represented as a mixture of latent topics, and each topic has probabilities of generating various words
  • 32. Uses Session Data Model with LDA โ€“ Documents: sessions โ€“ Words: songs Sessions (Documents) are treated as Bag-ofSongs (Words)
  • 33. Topic Distribution S1 and S2 more similar than S1 and S3 or S2 and S3 1 0,8 0,6 0,4 Session 1 0,2 Session 2 Session 3 0 1 2 3 Topics 4 sim(s1, s2) = 0.163 sim(s1, s3) = 1.139 sim(s2, s3) = 0.871
  • 34. ๐‘Ÿ ๐‘ ,๐‘– = ๐‘Ÿ๐‘  + ๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜ ๐’”๐’Š๐’Ž ๐’”, ๐’— โˆ™ (๐‘Ÿ ๐‘ฃ,๐‘– โˆ’ ๐‘Ÿ ๐‘ฃ ) ๐‘ฃ โˆˆ ๐‘†(๐‘ ) ๐‘˜ ๐’”๐’Š๐’Ž(๐’”, ๐’—) ๐’”๐’Š๐’Ž ๐’”, ๐’— = ๐‘ฒ๐’–๐’๐’๐’ƒ๐’‚๐’„๐’Œ(๐’”, ๐’—)
  • 36. Determine the next song to be played in active session Song E Song A Song B Song C Active Session Song D Song F
  • 37. Listening History of 992 users > 19 Million records
  • 38. Session 1 Song 1 Song 2 Session 2 Song 3 Song 4 Time gap [Pabarskaite2007] Song 6 Song 3
  • 39. Temporal Context Aware SSCF [Park2011] TSSCF Session LDA
  • 42. ๐‘˜ โˆˆ 30, 50, โ€ฆ , 2000 [Park2011]
  • 44. HR@n ๏ƒ  Hit Ratio at N (top-n recommendations) MRR ๏ƒ  Mean Reciprocal Rank
  • 45. Dataset โ€“ Session split Training: all the songs in sessions, except the last one Test: the last song in the session
  • 46. Queries ๏ƒ  1000 Sessions randomly chosen For i = 1 to i = 20 For each query obtained the top-100, and recorded the presence and rank given by the algorithms
  • 49. Hit Ratio H(2) = 1560.115; P < 0.01 MRR H(2) = 1064.659; P < 0.01
  • 54. Hit Ratio H(2) = 52.52; P < 0.01 MRR H(2) = 2.294; P > 0.318
  • 56. Temporal Context improves recommendation accuracy in Session-based CF โ€“ LDA based algorithm with best results HR increased >200%
  • 57. Combine temporal properties with other context features โ€“ Example: locations, activities, user behavior (skips), etc. Conduct a user study by applying the algorithm in a real world application