Song Recommendation Engine Tianlai Karaoke App Gao Wa, Cui Xiaoting, Zheng Feng Advisor: Professor Li Yanhua Technical support: Xu Hengyu (Tianlai)
Tianlai Karaoke App What is Tianlai? ● Your own karaoke platform ● Record your singing, and post your songs on your channel to share with others ● Add friends and build your interest circle Tianlai is popular ● Award for the best creative app and most popular music app ● 35 million TV installation & 0.4 billion mobile installation
Problem Statement ● How to increase target users engagement with the App? - Build a good recommendation system ● Identify the factors that most affecting users song preference - Find users’ features that are most useful for song recommendation ● Whether user would sing along on recommended songs? - The accuracy of our recommended songs
Sample Data ● Total of 33,489,549 records of 95,109 users and 329,789 songs (2013-2018) ● 50 Features : User features + song features + singer features
Data
Data Preprocessing ● Missing Values ● Features selection ● Create new feature
Data Preprocessing Total 5000 records ● Combining records 4 types of 20 users 100 songs interactions
Methodology Engine Data Source Data Preparater Training Data Recommendation Prepared Data Algorithm 2 Algorithm 1 Algorithm 3 Model 2 Model 1 Model 3
Recommending Process
Algorithms 1. Predictive Model a. XGBoost b. Random Forest c. SVR 2. Collaborative Filtering a. User-user based b. Item-item based
Collaborative Filtering
Collaborative Filtering User- item matrix user id song id 1 2 3 1 14 19 23 2 36 89 49 User-feature matrix User id Singer - male Singer - female Song - type 1 1 14 19 23 2 36 89 49
Results Algorithm Root Mean Square Error Algorithm Root Mean Square Error Random Forest 51.46 User-user CF 26.85 XGBoost 49.93 Item-item CF 28.39 Support Vector Machine 51.68 User-user CF 29.29 (user-feature matrix)
Results Random Forest XGBoost
Future Work ● Optimize the accuracy of models ● Add new algorithms such as deep learning ● Deploy recommendation engine on Karaoke App We are looking for students to join our team! You are welcome to join through independent study or volunteering work!
Recommend
More recommend