Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Spotifyのレコメンドを理解する / Recommender Systems using Collaborative Filtering - Spotify

Spotifyのレコメンドを理解する / Recommender Systems using Collaborative Filtering - Spotify

yukinagae

June 11, 2019
Tweet

More Decks by yukinagae

Other Decks in Technology

Transcript

  1. Spotifyのレコメンドを理解する
    Yuki Nagae

    View Slide

  2. Table of Contents
    1. はじめに
    2. Spotifyについて
    3. レコメンデーション手法: 協調フィルタリング
    4. 良いところ・悪いところ
    5. まとめ
    2

    View Slide

  3. レコメンデーションとは?
    レコメンデーションとは、
    ユーザに商品をおすすめする
    こと
    によりユーザが何の商品を買うか、何の
    音楽を聴くかなどを手伝うこと(意訳)
    (Ricci, Rokach & Shapira 2011)
    3

    View Slide

  4. なぜ今レコメンデーションが重要?
    ユーザにとって
    ● 大量の情報(Webサイト)から適切な商品を見つける
    企業にとって
    ● 販売アイテム数を増やす
    ● より多様なアイテムを販売する
    ● ユーザー満足度を高める
    ● ユーザーの忠実度を高める
    ● ユーザーのニーズを理解する
    4

    View Slide

  5. レコメンデーションはどう動く?
    5

    View Slide

  6. レコメンデーションの手法一覧
    ● コンテンツベース
    ● 協調フィルタリング <= 今日はこれをやる!
    ● ユーザの属性ベース
    ● 知識ベース
    ● コミュニティベース
    ● 上記の組合せ(ハイブリッド)
    etc
    6

    View Slide

  7. レコメンデーションに必要な情報
    ● アイテム (ex. 曲, 映画, ニュース記事 etc)
    ● ユーザ
    ● トランザクション (ユーザのアイテムに対してのフィードバック)
    ○ 明示的なフィードバック (ex. 評価・レーティング, like etc)
    ○ 暗黙的なフィードバック (ex. クリック, 閲覧 etc)
    7

    View Slide

  8. Spotifyについて
    ● ユーザ数: 24 million アクティブユーザ / 6 million 有料ユーザ
    ● 曲数: 20 million
    ● プレイリスト: 1 billion のユーザが生成したプレイリストがある
    8

    View Slide

  9. 9

    View Slide

  10. Spotifyはどこでレコメンデーションして
    る?
    協調フィルタリング
    ● Discovery Week Playlist
    ● Spotify Radio
    10

    View Slide

  11. 協調フィルタリングとは?
    似た趣味を持ったユーザが過去に好きなアイテム
    をおすすめする
    11

    View Slide

  12. 協調フィルタリングの仕組み?
    データ
    ● ユーザ
    ● アーティスト
    ● 視聴回数
    アルゴリズム
    ● Matrix Factorization(行列分解)
    12

    View Slide

  13. 協調フィルタリングの仕組み?
    データ
    ユーザID アーティスト 視聴回数
    00000c289a1829a808ac09c00daf10bc3c4e223b The Beatles 2137
    00001411dc427966b17297bf4d69e7e193135d89 Red Hot Chili Peppers 691
    00004d2ac9316e22dc007ab2243d6fcb239e707d Bob dylan 1384
    … たくさん!!! ... ...
    13

    View Slide

  14. Matrix Factorization
    a
    14

    View Slide

  15. Matrix Factorization (例)
    The Beatles Coldplay Maroon 5 Linkin Park
    ユーザ 1 5 3 ? 1
    ユーザ 2 4 ? ? 1
    ユーザ 3 1 1 ? 5
    ユーザ 4 1 ? ? 4
    ユーザ 5 ? 1 5 4
    15

    View Slide

  16. Matrix Factorization (例)
    ● ユーザ 1 と ユーザ 2 は趣味が似てる!
    The Beatles Coldplay Maroon 5 Linkin Park
    ユーザ 1 5 3 2.18 1
    ユーザ 2 4 2.40 1.97 1
    ユーザ 3 1 1 5.32 5
    ユーザ 4 1 0.85 4.59 4
    ユーザ 5 1.36 1 5 4
    16

    View Slide

  17. 良いところ・悪いところ
    良い
    ● 予測の精度が良い!
    ● 実装が簡単
    ● 新しいデータも簡単に追加できる
    悪い
    ● Cold Start 問題
    ○ 新しいアイテムを新しいユーザにおすすめできない(似ているユーザがわからない) !
    ● スケールが難しい
    ● Harry Potter 効果
    ○ みんな Harry Potter が好き, だからと言ってみんなに Harry Potter をおすすめする?
    17

    View Slide

  18. まとめ
    ● Spotifyは協調フィルタリングでユーザに曲のレコメンドをしている
    ● 協調フィルタリングは [アイテム] x [ユーザ] を元にレコメンドしている
    ● 良いところ: 精度がいい(らしい)!
    ● 悪いところ: 大量のデータが必要! (Cold Start 問題)
    18

    View Slide

  19. 参考文献
    Balabanović, M. & Shoham, Y. 1997, 'Fab: content-based, collaborative recommendation', Communications of the
    ACM, vol. 40, no. 3, pp. 66-72.
    Bickson, D. 2012, 'Harry Potter Effect on Recommendations', weblog, viewed 15 September 2016,
    .
    Ricci, F., Rokach, L. & Shapira, B. 2011, Introduction to recommender systems handbook, Springer.
    Johnson, C. 2014, 'Algorithmic Music Recommendations at Spotify', SlideShare, viewed 15 September 2016,
    .
    Johnson, C. 2015, 'Interactive Recommender Systems with Netflix and Spotify', SlideShare, viewed 15 September 2016,
    .
    Murali, V. 2015, 'DataEngConf: Building a Music Recommender System from Scratch with Spotify Data Team',
    SlideShare, viewed 15 September 2016,
    data-team>.
    Thorat, P.B., Goudar, R. & Barve, S. 2015, 'Survey on collaborative filtering, content-based filtering and hybrid
    recommendation system', International Journal of Computer Applications, vol. 110, no. 4.
    19

    View Slide