• Like

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

KLR Music Recommender

  • 247 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
247
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
2
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. KLR Music Recommender Casey K irkruff Joanne L ee Miguel R odriguez
  • 2. Roadmap
    • Introduction
    • Database
    • Recommendation Algorithm
    • Web Front-End Implementation
  • 3. Introduction
    • Our Project - A web-based music recommendation system.
    • Goal – Help with discovering new music. Make it easier for you.
    • Why – Encourage networking among music fans.
  • 4. Database Design
    • MySQL
    • 3 tables: Song, User, Rates
  • 5. Database details
    • Data collection: automated (scripts)‏
    • Data consistency: manual 
    • Data must conform to ID3v1
    • Need a lot of data to be useful (more is better)‏
  • 6. Recommendation Algorithm
    • Recommendation system based on users’ ratings.
    • Use songs that similar people have rated as recommendations.
    • Calculate Euclidean distance between pair of ratings to find the most similar user.
  • 7. Extract Ratings from DB Songs Rated Use these song IDs Song Ratings 1 =  0 = N/A -1 =  16 16 … 15 10 9 6 3 2 User B … 15 11 9 8 6 1 User A 16 15 11 9 8 6 1 song_id -1 -1 0 1 0 1 0 User B -1 1 -1 1 1 -1 1 User A
  • 8. Calculate Euclidean Distance
    • Let A = ( a 1 , a 2 , …, a n ) and B = ( b 1 , b 2 , …, b n )
    • Euclidean distance
  • 9. Recommend Song
    • Compute Euclidean distance between each pair of users.
    • Find recommendations for User A:
      • Find User B with smallest Euclidean distance.
      • Choose song from User B’s list that User A doesn’t have.
  • 10. Implementation - Ruby on Rails
    • Object-Oriented
    • Similar to CGI Python
    • Just plain nice
    Image credit to: http://www.eclips3media.com
  • 11. Implementing - Rails + MySQL
    • Simple
    • Ruby-based operations
    • Easily changed
  • 12. Maintainable and Upgradeable
    • Ruby is easy to read
    • Database queries are abstracted
    • Everything is object-oriented
    • Queries and recommendation algorithm are scalable
  • 13. Conclusion
    • Our Project: A web-based music recommendation system.
    • Database: MySQL – 3 Tables. Collect our own data.
    • Algorithm: Choose songs from similar users. Find similar users using Euclidean distance.
    • Implementation: Ruby on Rails + MySQL
      • Simple, object-oriented, scalable.
  • 14. KLR Music Recommender
    • We are:
      • Casey Kirkruff (ckirkruf@cs.ucr.edu)‏
      • Joanne Lee (ljoanne@cs.ucr.edu)‏
      • Miguel Rodriguez (miguelr@cs.ucr.edu)‏