Music Recommendation System
Team Name: APT
강한이, 이민희, 이서일
Contents
2
Why Music?
Music recommendation system is on high demand for music streaming services.
3
Why Music?
Music consumption does not necessarily guarantee a correlation with user preference.
4
Why Music?
Personalization is not always the best approach in music recommendations.
5
Project Goal
KKBox's Music Recommendation Challenge1
6
[1] [Deleted User], Howard, A., Chiu, A., McDonald, M., msla, Kan, W., & Yianchen. (2017). WSDM - KKBox's Music Recommendation Challenge. Kaggle. https://kaggle.com/competitions/kkbox-music-recommendation-challenge
Dataset
Use the dataset provided by the challenge.
The train/test split is provided:
7
Dataset
Play information for each song per user is provided.
8
* msno: user_id
Dataset
Additional information about users and songs is provided.
9
Evaluation Metric & Our Goal
10
Methodology:
Model Based
Recommendation System
11
LightGBM
12
LightGBM
Node Functionality:
13
LightGBM
e.g.
14
Sample | Feature 1 | Feature 2 | Label (y) |
1 | 0.5 | 1.2 | 1 |
2 | 0.7 | 0.8 | 0 |
3 | 1.5 | 2.1 | 1 |
4 | 0.9 | 1.5 | 0 |
LightGBM
e.g.
15
Sample | Feature 1 | Feature 2 | Label (y) | Predicted |
1 | 0.5 | 1.2 | 1 | |
2 | 0.7 | 0.8 | 0 | |
3 | 1.5 | 2.1 | 1 | |
4 | 0.9 | 1.5 | 0 | |
Feature 1 <= 0.8
Feature 2 <= 1.0
0.5
1
-0.3
Tree 1
Leaf node values represent adjustments to the log-odds of the prediction.
LightGBM
e.g.
16
Feature 1 <= 0.8
Feature 2 <= 1.0
-0.3
0.5
1
Sample | Feature 1 | Feature 2 | Label (y) | Leaf |
1 | 0.5 | 1.2 | 1 | 0.5 |
2 | 0.7 | 0.8 | 0 | |
3 | 1.5 | 2.1 | 1 | |
4 | 0.9 | 1.5 | 0 | |
Leaf node values represent adjustments to the log-odds of the prediction.
Tree 1
LightGBM
e.g.
17
Feature 1 <= 0.8
Feature 2 <= 1.0
-0.3
0.5
1
Sample | Feature 1 | Feature 2 | Label (y) | Leaf |
1 | 0.5 | 1.2 | 1 | 0.5 |
2 | 0.7 | 0.8 | 0 | |
3 | 1.5 | 2.1 | 1 | 1 |
4 | 0.9 | 1.5 | 0 | |
Leaf node values represent adjustments to the log-odds of the prediction.
Tree 1
LightGBM
e.g.
18
Sample | Feature 1 | Feature 2 | Label (y) | Leaf |
1 | 0.5 | 1.2 | 1 | 0.5 |
2 | 0.7 | 0.8 | 0 | -0.3 |
3 | 1.5 | 2.1 | 1 | 1 |
4 | 0.9 | 1.5 | 0 | 1 |
Feature 1 <= 0.8
Feature 2 <= 1.0
0.5
1
-0.3
Leaf node values represent adjustments to the log-odds of the prediction.
Tree 1
LightGBM
19
In each boosting round, LightGBM grows a tree by recursively splitting nodes
based on feature thresholds to maximize information gain,
assigning leaf values as adjustments to predictions.
Feature 1 <= 0.8
Feature 2 <= 1.0
0.5
1
-0.3
Tree 1
LightGBM
20
Tree 1
Tree k
…
Trains multiple trees iteratively, with each tree learning to correct the residual errors
from the ensemble of all previously trained trees
to minimize the overall loss.
Why LightGBM?
21
Features to Use
22
Features to Use
23
24
25
26
2. Collaborative Filtering Score
From User-Song Matrix
* For Similarity: Cosine similarity or NN-based similarity
27
3. Song Audio Embedding (not used)
Get audio embedding by a pretrained model
How to obtain audio
Pre-trained Model: MusicFM-MSD2
28
[2] M. Won, Y.-N. Hung, and D. Le, “A foundation model for music informatics,” in Proc. IEEE Int. Conf. Acoust., Speech, Signal Process. (ICASSP), 2024.
3. Song Audio Embedding (not used)
29
Project Plans
30
Project Timeline
11/13 ~ 11/19: Data Preprocessing & Studying Reference
11/20 ~ 11/26: Training the Model
11/27 ~ 12/3: Evaluating & Modifying the Model
12/4 ~ 12/11: A Preliminary Period
12/11: Final Presentation
31
Each Member’s roles
All Members: Data Processing, Making the Model, Studying Reference
강한이: Explore LightGBM applications
이민희: Tune LightGBM Hyperparameters
이서일: Set the Dataset
32
Q & A
Additional Approach:
Neural Network Based
Recommendation System
34
Motivation
Unlike other types of contents, music consumption does not necessarily guarantee a correlation with preference.
Content-based item (song) embeddings might give more reliable result.
35
Proposed Method
36
| Item 1 | Item 2 | Item 3 | Item 4 | … |
User 1 | 1 | 0 | 1 | 1 | |
User 2 | 1 | 1 | 0 | 0 | |
… | | | | | |
Proposed Method
37
| Item 1 | Item 2 | Item 3 | Item 4 | … |
User 1 | 1 | 0 | 1 | 1 | |
User 2 | 1 | 1 | 0 | 0 | |
… | | | | | |
Pretrained
Model
Item 1 embeddings
Item 3 embeddings
User 1 embeddings
Item 4 embeddings
Average
Proposed Method
38
| Item 1 | Item 2 | Item 3 | Item 4 | … |
User 1 | U1 ᐧ Ia | U1 ᐧ Ib | U1 ᐧ Ic | U1 ᐧ Id | |
User 2 | U2 ᐧ Ia | U2ᐧ Ib | U2 ᐧ Ic | U2 ᐧ Id | |
… | | | | | |
Ia
Ib
Ic
Id
U1
U1
Calculate the probability of being chosen by computing the cosine similarity between user and item embeddings.
Proposed Method
39
Details
How to Obtain Audio
40
Details
Pre-trained Model: MusicFM-MSD2
41
[2] M. Won, Y.-N. Hung, and D. Le, “A foundation model for music informatics,” in Proc. IEEE Int. Conf. Acoust., Speech, Signal Process. (ICASSP), 2024.
Is it Possible?
42
GBM 모델 설명 (내용 덤프)
43
GBM
44
LightGBM + FeatureEngineering
45