applying subsequence matching to collaborative filtering
play

Applying Subsequence Matching to Collaborative Filtering Alejandro - PowerPoint PPT Presentation

Applying Subsequence Matching to Collaborative Filtering Alejandro Bellog n Pablo S anchez Universidad Aut onoma de Madrid Escuela Polit ecnica Superior Departamento de Ingenier a Inform atica V Congreso Espa nol de


  1. Applying Subsequence Matching to Collaborative Filtering Alejandro Bellog´ ın Pablo S´ anchez Universidad Aut´ onoma de Madrid Escuela Polit´ ecnica Superior Departamento de Ingenier´ ıa Inform´ atica V Congreso Espa˜ nol de Recuperaci´ on de Informaci´ on (CERI 2018) 1 / 59

  2. Outline Recommender Systems 1 Sequential similarities 2 Experiments 3 Conclusions and future work 4 2 / 59

  3. Outline Recommender Systems 1 Sequential similarities 2 Experiments 3 Conclusions and future work 4 3 / 59

  4. Recommender Systems ... ... ... ... Suggest new items to users based on their tastes and needs 4 / 59

  5. Recommender Systems ... ... ... ... Suggest new items to users based on their tastes and needs Different methods to make recommendations (content-based, collaborative filtering, hybrids) 5 / 59

  6. Recommender Systems ... ... ... ... Suggest new items to users based on their tastes and needs Different methods to make recommendations (content-based, collaborative filtering, hybrids) We will focus on neighborhood based collaborative filtering algorithms 6 / 59

  7. Collaborative filtering · · · i 1 i 2 i 3 i 4 - - 5 3 · · · u 1 u 2 4 - 4 - · · · u 3 5 5 - - · · · u 4 - 2 1 - · · · u 5 2 - - 5 · · · u 6 - 1 - 1 · · · · · · · · · · · · · · · · · · · · · 7 / 59

  8. Collaborative filtering · · · i 1 i 2 i 3 i 4 - - 5 3 · · · u 1 u 2 4 - 4 - · · · u 3 5 5 - - · · · u 4 - 2 1 - · · · u 5 2 - - 5 · · · u 6 - 1 - 1 · · · · · · · · · · · · · · · · · · · · · Normally the User × Item matrix is very sparse (90%-99% of empty values) 8 / 59

  9. Collaborative filtering · · · i 1 i 2 i 3 i 4 - - 5 3 · · · u 1 u 2 4 - 4 - · · · u 3 5 5 - - · · · u 4 - 2 1 - · · · u 5 2 - - 5 · · · u 6 - 1 - 1 · · · · · · · · · · · · · · · · · · · · · Normally the User × Item matrix is very sparse (90%-99% of empty values) Collaborative filtering try to fill the matrix either with latent factor models or neighborhood approaches 9 / 59

  10. Collaborative filtering Matrix factorization techniques i p u ) 2 + λ ( || q i || 2 + || p u || 2 ) � ( r ui − q T min (1) p ∗ , q ∗ u , i ∈ R q i and p u are the latent vectors of the user u and the item i R denotes all the training samples λ is the regularization parameter 10 / 59

  11. Collaborative filtering Matrix factorization techniques i p u ) 2 + λ ( || q i || 2 + || p u || 2 ) � ( r ui − q T min (1) p ∗ , q ∗ u , i ∈ R q i and p u are the latent vectors of the user u and the item i R denotes all the training samples λ is the regularization parameter Neighborhood approaches � s u , i ∝ w uv r vi (2) v ∈ N i ( u ) r vi is the rating of the neighbour v w uv is the similarity between user u and v 11 / 59

  12. Collaborative filtering Matrix factorization techniques i p u ) 2 + λ ( || q i || 2 + || p u || 2 ) � ( r ui − q T min (1) p ∗ , q ∗ u , i ∈ R q i and p u are the latent vectors of the user u and the item i R denotes all the training samples λ is the regularization parameter Neighborhood approaches � s u , i ∝ w uv r vi (2) v ∈ N i ( u ) r vi is the rating of the neighbour v w uv is the similarity between user u and v 12 / 59

  13. Classic similarities Pearson correlation � i ∈I uv ( r ui − r u )( r vi − r v ) PC( u , v ) = (3) �� i ∈I uv ( r ui − r u ) 2 � i ∈I uv ( r vi − r v ) 2 Cosine similarity � i ∈I uv r ui r vi cos( u , v ) = (4) �� i ∈I u r 2 j ∈I v r 2 � ui vj Jaccard index Jaccard(u,v) = | I u ∩ I v | (5) | I u ∪ I u | 13 / 59

  14. Outline Recommender Systems 1 Sequential similarities 2 Experiments 3 Conclusions and future work 4 14 / 59

  15. Longest Common Subsequence (LCS) Find the longest common subsequence (list of elements not necessary consecutive but maintaining the order) between 2 strings X and Y Used in DNA sequencing and file comparison Can be resolved applying dynamic programming filling a matrix of size ( | X | + 1) × ( | Y | + 1) 15 / 59

  16. Longest Common Subsequence (LCS) Find the longest common subsequence (list of elements not necessary consecutive but maintaining the order) between 2 strings X and Y Used in DNA sequencing and file comparison Can be resolved applying dynamic programming filling a matrix of size ( | X | + 1) × ( | Y | + 1) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (6)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  The last position in the matrix contains the length of the longest common subsequence 16 / 59

  17. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ G C G T G C 17 / 59

  18. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ 0 0 0 0 0 0 0 G C G T G C 18 / 59

  19. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ 0 0 0 0 0 0 0 G 0 0 1 1 1 1 1 C G T G C 19 / 59

  20. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ 0 0 0 0 0 0 0 G 0 0 1 1 1 1 1 C 0 0 1 1 1 1 2 G T G C 20 / 59

  21. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ 0 0 0 0 0 0 0 G 0 0 1 1 1 1 1 C 0 0 1 1 1 1 2 G 0 0 1 2 2 2 2 T G C 21 / 59

  22. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ 0 0 0 0 0 0 0 G 0 0 1 1 1 1 1 C 0 0 1 1 1 1 2 G 0 0 1 2 2 2 2 T 0 0 1 2 3 3 3 G C 22 / 59

  23. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ 0 0 0 0 0 0 0 G 0 0 1 1 1 1 1 C 0 0 1 1 1 1 2 G 0 0 1 2 2 2 2 T 0 0 1 2 3 3 3 G 0 0 1 2 3 3 3 C 23 / 59

  24. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ 0 0 0 0 0 0 0 G 0 0 1 1 1 1 1 C 0 0 1 1 1 1 2 G 0 0 1 2 2 2 2 T 0 0 1 2 3 3 3 G 0 0 1 2 3 3 3 C 0 0 1 2 3 3 4 24 / 59

  25. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ 0 0 0 0 0 0 0 G 0 0 1 1 1 1 1 C 0 0 1 1 1 1 2 G 0 0 1 2 2 2 2 T 0 0 1 2 3 3 3 G 0 0 1 2 3 3 3 C 0 0 1 2 3 3 4 25 / 59

  26. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ 0 0 0 0 0 0 0 G 0 0 1 1 1 1 1 C 0 0 1 1 1 1 2 G 0 0 1 2 2 2 2 T 0 0 1 2 3 3 3 G 0 0 1 2 3 3 3 C 0 0 1 2 3 3 4 26 / 59

  27. Longest Common Subsequence (LCS) Longest Common Subsequence  0 if i=0 or j=0   L [ i , j ] = L [ i − 1 , j − 1] + 1 if i , j > 0 and X i = Y j (7)  max( L [ i , j − 1] , L [ i − 1 , j ]) if i , j > 0 and X i � = Y j  ∅ A G G T A C ∅ 0 0 0 0 0 0 0 G 0 0 1 1 1 1 1 C 0 0 1 1 1 1 2 G 0 0 1 2 2 2 2 T 0 0 1 2 3 3 3 G 0 0 1 2 3 3 3 C 0 0 1 2 3 3 4 27 / 59

Recommend


More recommend