Music Recommendation
Music Recommendation
Music Recommendation
Bibliography
Music Recommendation and Discovery: The Long Tail, Long Fail, and Long Play
scar Celma, Springer 2010, Ch-1-3,5
Recommender Systems
Prem Melville, Vikas Sindhwani Encyclopedia of Machine Learning, 2010
Restaurants
Food
Books
And Music!
Time
Music Recommendation
Digital Era - Portability
Up to ~20 tracks
Up to ~40.000 tracks
Time
Music Recommendation
Digital Era Online Services
Music Recommendation
Digital Era Online Services
Amazon
17 Million Songs
Music Recommendation
Before Digital Era
Music Recommendation
Digital Era
Music Characteristics
Different from other types of media
Tracking users preferences can be implicit Items can be consumed several times (even repeatedly and continuously) Instant feedback Music consumption depends on context (morning, work, afternoon, etc.)
Formalization
Recommendation Problem
Prediction problem estimation of the items likeliness for a given user Recommend a list of N items assuming that the system can predict likeliness for yet unrated items
Prediction Problem
= , , , the set of Users = , , , items that can be recommend list of items a user j expressed his interests
Function ,j predicted likeness of item , for the active user , where
Usually represented by a rating < , , >
Recommendation Problem
Find a list of N items that the user will like the most
The ones with higher , The resultant list should not contain items from the users interests
=
Use Cases
Common usages of a recommender system:
1. 2. 3. 4. 5. 6. 7. Find good items Find all good items Recommend sequence (e.g. playlist generation) Just browsing Find credible recommender Express self Influence others
General Model
Users and Items Two types of recommendations:
Top-N predicted items Top-N predicted neighbors
Implicit Feedback
Monitoring users actions (e.g., tracking play, pause, skip and stop buttons in the media player, etc.) Problem? Advantage over Explicit feedback approaches?
Recommendation Methods
Standard classification of recommender systems:
1. 2. 3. 4. 5. Demographic Filtering Collaborative Filtering Content-based Filtering Context-based Filtering Hybrid Approaches
Demographic Filtering
Used to identify the kind of users that like a certain item Classifies user profiles in clusters based on:
Personal data (age, gender, marital status, etc.) Geographic data (city, country) Psycographic data (interests, lifestyle, etc.)
Advantages/Limitations
The simplest recommendation method But
Recommendations are too general Requires effort from the user to generate the profile
Collaborative Filtering
Predict user preferences for items by learning past user-item relationships CF methods work by build a matrix M with n items and m users, that contains the interaction (e.g. ratings, plays, etc.) of the users with the items.
Collaborative Filtering
The value , represents the rating of the user for the item
Item-Based Neighborhood
Only users that rated the items and , are taken into account in the process
Item-Based Neighborhood
Only users that rated the items and , are taken into account in the process
Item-Based Neighborhood
1. Compute the similarity between two items, i and j
1. Example: Adjusted cosine similarity
User-Based Neighborhood
Compute the predicted rating value of item i, for the active user u, taking into account those users that are similar to u
- average rating for user u ()- set of k neighbors for user u (the similar ones)
Matrix Factorization
Useful when the M user-item matrix is sparse
Reduce dimensionality of the original matrix, generating matrices U and V that approximate the original one Example: SVD Singular Value Decomposition
Computes matrices and , for a given number k, such as: diagonal matrix containing the singular values of M
Matrix Factorization
After matrix reduction we can calculate the predicted rating value for item i for a user u
Limitations
Data sparsity and high dimensionality Gray sheep problem* Cold-start problem (early-rater problem) Does not take into account items descriptions Popularity Bias Feedback Loop
Content-based Filtering
Uses information describing the items Process of characterizing item data set can be:
Manual (annotations by domain experts) Automatic (extracting features by analyzing the content)
Content-based Filtering
Similarity Functions
1. Euclidean
2. Manhattan
3. Chebychev 4. Mahalanobis
Limitations
Cold-start problem (only to user) Gray-sheep problem Novelty (?) Limitation of extracted automatic features Subjective (personal opinions) not taken into account
Context-based Filtering
Uses context information to describe and characterize the items
Context Information any information that can be used to characterize a situation or an entity Context != Content
Web Mining
3 different web mining categories:
Web content mining
text, hypertext, markup, and multimedia mining
Social Tagging
Aims at annotating web content using tags Tags are freely chosen keywords, not constrained to a predefined vocabulary Recommender systems can derive social tagging data to derive item (or user) similarity
Social Tagging
When users tag items, we get tuples of :
< , , >
Social Tagging
Two approaches to compute item (and user) similarity:
1. Unfold the 3-order tensor in three bidimensional matrices (user- tag, item-tag and user-item matrices) 2. Directly use the 3-order tensor
Limitations
Coverage Problems with tags:
Polysemy Synonymy Usefulness of personal tags Sparsity
Attacks / Vandalism
Hybrid Approaches
Goal
Achieve better recommendations by combining some of the previous approaches
Methods:
Weighted Switching Mixed Cascade
MUSIC RECOMMENDATION
Use Cases
Main task of a music recommendation system:
Propose interesting music, consisting of a mix of known and unknown artists, as well as the available tracks, given a user profile
Use Cases
Artist Recommendation Playlist Generation
Shuffle, Random Playlists Personalized Playlists
Neighbor Recommendation
Useful to:
Improve music recommendation Share with others your preferences
Type of Listeners
Each type of listener needs different type of recommendations
Editorial Metadata
Cultural Metadata
Acoustic Metadata
Collaborative Filtering
CF makes use of the editorial and cultural information
Explicit feedback based on ratings about songs / artists Implicit feedback tracking user listening habits
Recommendations usually performed at artist level, but listening habits are recorded at song level Aggregation
Content-Based Filtering
Uses content extracted from music to provide recommendations
Compute similarity among songs, in order to recommend music to the user
But
Annotations can be more accurate than automatic
Example: Pandora
Analysts annotate 400 parameters per song, using a ten point scale per attribute ~ 15.000 songs analyzed per month
Hybrid Methods
Allows a system to minimize the issues that a solely method can have
How cascade approach works:
One technique is applied first, obtaining a ranked list of items. Then, a second technique refines or re-rank the results obtained in the first step
Hybrid Method
Example:
Tiemann et al. investigate ensemble learning methods for hybrid music recommender algorithms. Their approach combines social and content-based methods, where each one produces a weak learner. Then using a combination rule, it unifies the output of the weak learners.
EVALUATION
Evaluation
Three different strategies
System-centric Network-centric User-centric
System-centric Evaluation
Evaluation measures how accurate the system can predict the actual values that user have previously assigned
System-centric Evaluation
Most approaches based on the leave-n-out method
Similar to the classic n-fold cross validation
System-centric Evaluation
Metrics:
Predictive accuracy
Mean Absolute Error, Root Mean Square Error
Decision based
Mean Average Precision, Recall, F-measure, Accuracy, ROC
Rank based
Spearmans , Kandall , Half-life Utility, Discounted Cumulative Gain
Network-centric Evaluation
Evaluation aims at measuring the topology of the item (or user) similarity network
Network-centric Evaluation
The similarity network is the basis to provide the recommendations
Important to analyze and understand the underlying topology of the similarity network
Measures:
Coverage Diversity of recommendations
Network-centric Evaluation
In terms of:
Navigation
Average Shortest Path, Giant Component
Connectivity
Degree Distribution, Degree-Degree Correlation, Mixing Patterns
Clustering
Local/Global Clustering Coefficient
Centrality
Degree, Closeness, Betweeness
Network-centric Evaluation
Limitations:
Accuracy of the recommendations cannot be measured Transparency (explainability) and trustworthiness (confidence) of the recommendations cannot be measured The perceived quality (i.e. usefulness and effectiveness) of the recommendations cannot be measured
User-centric Evaluation
Evaluation focuses on the users perceived quality and usefulness of the recommendations
User-centric Evaluation
Copes with the limitations of both:
System- and Network-centric approaches
Evaluates:
Novelty Perceived Quality
User-centric Evaluation
Gathering Feedback (Explicit, Implicit)
Perceived Quality Novelty A/B Testing
Perceived Quality
Easiest way to measure?
Explicitly ask the users User needs information about:
Item (e.g. metadata, preview, etc.) Reasons why the item was recommended
Then can rate the quality of each recommended item (or the whole list)
Novelty
Ask users if they recognize the predicted items or not Combining novelty and perceived quality we can infer if:
User likes to receive and discover unknown items Prefers more conservative and familiar recommendations
A/B Testing
Present two different versions of an algorithm (or two algorithms)
Evaluate which one performs the best
Performance measured by the impact the new algorithm has on the visitors behavior, compared to the baseline algorithm
User-centric Evaluation
Limitations:
Need of user intervention in the evaluation process
Gathering feedback from the user can be tedious for some users Time-consuming
Evaluation summary
Combining the three methods we can cover all the facets of a recommender algorithm
Evaluation summary
System-centric
Evaluates performance accuracy of the algorithm
Network-centric
Analyses the structure of the similarity network
User-centric
Measure satisfaction about recommendations they receive
Statistics:
~108,000 Artists with MusicBrainz ID ~70.000 Artists without MusicBrainz ID
Statistics:
~190.000 Artists with MusicBrainz ID ~107.000 Artists without MusicBrainz ID
NEXTONE PLAYER
NEXTONE PLAYER: A Music Recommendation System Based on User Behavior
Yajie Hu and Mitsunori Ogihara
ISMIR 2011
The End
Thank you!