recommendation movie - computer scienceark/654/team/5/presentation3.pdf · introduction...

22
Movie Recommendation Team Valak Manpreet Kaur Hao Su

Upload: others

Post on 09-Oct-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Movie Recommendation

Team Valak

Manpreet Kaur

Hao Su

Page 2: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Overview

● Introduction● Movie Recommender Phases

○ Locality Sensitive Hashing○ Intra Similarity○ Inter Similarity

● Sequential Algorithm● Parallel Algorithm● Demo● References

Page 3: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

IntroductionRecommendation System: A technique which predicts what the user may like based on his history of interaction with the system. They are applied in fields like:

● Online Shopping● Browsing Portals● Streaming Portals

Techniques used to implement a recommendation system are:

● Content Based○ Only contents in the same categories will be recommended

● Collaborative Filtering○ Based on past behavior

Page 4: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Collaborative FilteringBased on the similarity in preferences, tastes and choices of users to analyses how similar users are and makes recommendation.

● Memory Based○ User - Item: users who are similar to you also liked …○ Item - Item: users who liked this also liked …

Page 5: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Movie Recommender

● Phase 1: Item Partitioning- Elements in the groups will be divided using minHash technique.

● Phase 2: Intra Similarity Phase - Compute the item similarity for every pair of items ti and t j belonging to the same group.

● Phase 3: Inter Similarity Phase - Compute the item similarity for every pair of items ti and t j belonging to the different group if these two items have received rating from same user.

● Phase 4: Find Recommendation - Find the similar items for the top rated items rated by the target user using similarity matrix constructed in above phases.

Page 6: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Phase1 :Locality Sensitive Hashing

1. Build an m×n matrix where every shingle that appears in a set is marked with a 1 otherwise 0.

2. Permute the rows of the matrix from step 2 and build a new p×n signature matrix where the number of the row of the first shingle to appear for a set is recorded for the permutation of the signature matrix.

3. Repeat permuting the rows of the input matrix MAX_PERMUTATIONS times and complete filling in the p×n signature matrix.

4. Choose a band size b for the number of rows for each item and compute hash value for each band.

Page 7: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Phase1: Locality Sensitive Hashing

Page 8: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Phase1: Locality Sensitive Hashing

Page 9: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Phase1: Locality Sensitive Hashing

Page 10: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Phase1: Locality Sensitive Hashing

Page 11: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Phase1: Locality Sensitive Hashing

Page 12: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Collaborative FilteringSimilarity matrix

- Metrics that measure similarity between two items.

- Pearson correlation

Page 13: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Sequential Algorithm

● Phase 1: Run Partitioning phase to divide the N items into K buckets.

● Phase 2: compute the similarity of every pair of items belonging to the same

bucket.

● Phase 3: Finally, we calculate the similarity of related item pair included in

different groups.

● Phase 4: Select the closest K neighbors for the top ratings given by the target

user.

● Recommend the top V movies by prediction.

Page 14: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Sequential Algorithm

Page 15: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Parallel Algorithm

● Phase 1: Run Partitioning phase to divide the N items into K buckets. Signature

matri will be computed in parallel.

● Phase 2: compute the similarity of every pair of items belonging to the same

bucket. Each bucket will be handled by separate threads.

● Phase 3: Finally, we calculate the similarity of related item pair included in

different groups. Each thread will handle different related pairs.

● Phase 4: Select the closest K neighbors for the top ratings given by the target

user. Each top rating of user will be handled by separate threads.

● Recommend the top V movies by prediction.

Page 16: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Phase1: Partitioning changes

Page 17: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Phase 2: Intra Similarity Phase Changes

Similarity Matrix

Page 18: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Phase3: Inter Similarity Computation Changes

Page 19: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Parallel Algorithm

Page 20: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Demo

Page 21: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

References

- A Collaborative Filtering Recommendation Algorithm Based on User Clustering and Item Clustering By SongJie Gong

- Seunghee Kim, Hongyeon Kim and Jun-Ki Min, “An efficient parallel similarity matrix construction on MapReduce for collaborative filtering”, The Journal of Supercomputing, 06 February 2018, 1-19.

- https://medium.com/@james_aka_yale/the-4-recommendation-engines-that-can-predict-your-movie-tastes-bbec857b8223

- https://towardsdatascience.com/various-implementations-of-collaborative-filtering-100385c6dfe0

- https://www.learndatasci.com/tutorials/building-recommendation-engine-locality-sensitive-hashing-lsh-python/

-

Page 22: Recommendation Movie - Computer Scienceark/654/team/5/presentation3.pdf · Introduction Recommendation System: A technique which predicts what the user may like based ... Streaming

Any Question?