Spotifyのレコメンデーションエンジンの機械学習アルゴリズムについて解説します
Spotifyが機械学習のエンジニアにスタート年俸10万ドル!というオファーで人材募集をしています。 その募集ページの中にありましたが(現在は表記がないかもしれませんが、、、) Right ads to the right users to the right time 正しい広告を正しいユーザーに正しい時間に届ける まさにそのために活用されるのが機械学習であり、力を入れていきたいとSpoifyは明言しています。それゆえもっとも求められる人材が機械学習エンジニアという事なのでしょう。 機械学習活用の中心領域となるであろうレコメンデーションエンジン。Spotifyのレコメンデーションエンジンの機械学習活用にについて調べていたところ、面白い記事を見つけたので日本語にして解説します。 Spotifyでは現在、レコメンデーションエンジンのために3つのアルゴリズムを組み合わせて使用している様です。 ・協調フィルタリング・自然言語処理 ・オーディオモデル解析 協調フィルタリング すでに多くのECサイトなどで活用されているのでお馴染みかもしれません。同じ消費や嗜好の傾向を持つユーザーのデータをもとに他の同傾向のユーザーへのレコメンドを行うというアルゴリズムです。非常に簡単に説明すると、「同じ好みのAが所持している商品のうち、Bが所持していないものは、Bも欲しいと思うはずなのでレコメンドする」と言う様な事が行われるのだと思っていただいて良いでしょう。 Spotifyでも同様で、相関性の高いリスナーが聞いている相関性の高い楽曲をレコメンデーションします。実際は複雑なモデルとなっているはずですが、ここでは非常に簡単な図で基本的な概念を説明してみましょう。 ○は聞いた楽曲ーはレコメンドされたけれども聞かなかった楽曲空欄はレコメンドもされていない未聴の楽曲 Aに楽曲のレコメンドをする場合、Aのリスニングデータを元に相関性のあるリスナーを探します。聞いた楽曲と聴かなかった楽曲の共通割合から相関性を求めます。図でいうと0.5以上の相関性、つまりCとDを相関性のあるリスナーとしましょう。Aが聞いていない未聴の楽曲で、CとDが聞いている楽曲のうち、C、D共に聞いているSong7は相関性1.0とする。Song7はAが気に入る可能性は高い。と言う事でAにレコメンドされる。この様な流れとなります。 自
Spotifyのレコメンデーションエンジンの機械学習アルゴリズムについて解説します Read Post »