ニコニコ動画で協調フィルタリング やってみた
発表の予定 <ul><li>ニコニコ動画 </li></ul><ul><li>協調フィルタリング </li></ul><ul><li>仕組み </li></ul><ul><li>デモ </li></ul><ul><li>まとめ </li></ul>
ニコニコ動画 <ul><li>動画共有サイト </li></ul><ul><li>http:// www.nicovideo.jp </li></ul><ul><li>会員数 :  約350万人  </li></ul><ul><li>動画数 :...
協調フィルタリング <ul><li>Collaborative Filtering </li></ul><ul><li>多くのユーザーの嗜好情報を蓄積し、その情報をもとに任意のユーザーに対して、アルゴリズムに基づいてその人が好みそうな情報・選択...
協調フィルタリング :: 例 <ul><li>Amazon </li></ul><ul><li>(買い物 )‏ </li></ul><ul><li>Pandora,Last.fm </li></ul><ul><li>( 音楽 )‏ </li><...
今回の試み <ul><li>各ユーザーの好きな動画のリスト(マイリスト)の情報を収集しその情報から、ユーザーの嗜好を推測して、好きだろうと思われる動画を勧める。 </li></ul>
マイリスト <ul><li>注意 : これはイメージです。 </li></ul>
マイリスト :: テーブル表現 1 or 0 : マイリストに登録されているか否か 1 1 1 1 mylist   E 0 0 0 0 mylist   D 1 1 0 0 mylist   C 0 0 1 1 mylist   B 0 0 ...
ピアソン相関係数 係数が1に近いほど X と Y が似ており -1に近いほど X と Y は正反対である。 係数が0のとき X と Y に相関はない。
ピアソン相関係数 :: 例 初音ミクにオリジナル曲を歌ってもらいました「 for my dear 」 初音ミクによるオリジナル曲「初音の世界」  ver2.0 0.9
ピアソン相関係数 :: 例 0.3 改造コードでコント  SFC マリオカート「がんばれルイージ」 「嫁のメシがまずい」  ACE COMBAT ZERO OP
類似度 :: テーブル表現 1.0 0.0 0.3 video 4 0.0 1.0 0.7 0.0 video 3 0.7 1.0 0.2 video 2 0.3 0.0 0.2 1.0 video 1 video   4 video   3 ...
推薦度の計算
動画の推薦 <ul><li>推薦度の計算結果に基づきおすすめ動画を決定する。 </li></ul><ul><li>その際、当該ユーザーのマイリストにすでに入っている動画は除外する。 </li></ul>
Demo
Demo http://miyaga50.homelinux.org/lab/nicovideo/
実装する際の問題 <ul><li>今回はおよそ3万 × 3万の行列の行列なので 1件あたり0.01秒とすると100日以上かかる </li></ul><ul><li>行列を計算するうえでの工夫が必要! </li></ul>
類似度行列の計算 この動画に対しては詳細なおすすめ動画を計算できる だけど、この動画に対しては おすすめ動画の計算が 全くできない\ (^o^) /  video 4 0.7 0.0 video 3 0.3 0.7 1.0 0.2 video ...
類似度行列の計算 <ul><li>そのような理由によって今回は計算する箇所を </li></ul><ul><li>ある程度ランダムに選んで、手抜きしています。 </li></ul>
おすすめ動画の感想 <ul><li>個人的な感想としては </li></ul><ul><li>「それなりに自分の好きそうな動画がでてくるので </li></ul><ul><li>及第点をあげてもいいかなあという感じ」 </li></ul><ul...
改善するところ <ul><li>類似度行列の計算法の改良 </li></ul><ul><li>類似度行列に基づく推薦度の計算の計算法の改善 </li></ul><ul><li>ウェブサイトのレスポンスの向上 </li></ul>
参考文献 <ul><li>Toby Segaran  </li></ul><ul><li>『 Programming Collective Intelligence 』   O’Reilly </li></ul>
Upcoming SlideShare
Loading in …5
×

協調フィルタリング

5,945 views
5,847 views

Published on

ニコニコ動画で協調フィルタリング

Published in: Technology, Business
0 Comments
11 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
5,945
On SlideShare
0
From Embeds
0
Number of Embeds
145
Actions
Shares
0
Downloads
0
Comments
0
Likes
11
Embeds 0
No embeds

No notes for slide

協調フィルタリング

  1. 1. ニコニコ動画で協調フィルタリング やってみた
  2. 2. 発表の予定 <ul><li>ニコニコ動画 </li></ul><ul><li>協調フィルタリング </li></ul><ul><li>仕組み </li></ul><ul><li>デモ </li></ul><ul><li>まとめ </li></ul>
  3. 3. ニコニコ動画 <ul><li>動画共有サイト </li></ul><ul><li>http:// www.nicovideo.jp </li></ul><ul><li>会員数 : 約350万人 </li></ul><ul><li>動画数 : 約76万件 </li></ul><ul><li>一日の平均利用状況 </li></ul><ul><li>PV 数 : 約 5500 万 PV </li></ul><ul><li>訪問者数 : 120 万人(ユニーク) </li></ul><ul><li>平均滞在時間 : 約 1 時間 </li></ul>
  4. 4. 協調フィルタリング <ul><li>Collaborative Filtering </li></ul><ul><li>多くのユーザーの嗜好情報を蓄積し、その情報をもとに任意のユーザーに対して、アルゴリズムに基づいてその人が好みそうな情報・選択肢を推測しそのユーザーを支援するシステム。 </li></ul>
  5. 5. 協調フィルタリング :: 例 <ul><li>Amazon </li></ul><ul><li>(買い物 )‏ </li></ul><ul><li>Pandora,Last.fm </li></ul><ul><li>( 音楽 )‏ </li></ul><ul><li>Netflix </li></ul><ul><li>(映画) </li></ul><ul><li>eHarmony </li></ul><ul><li>(出会い) </li></ul>
  6. 6. 今回の試み <ul><li>各ユーザーの好きな動画のリスト(マイリスト)の情報を収集しその情報から、ユーザーの嗜好を推測して、好きだろうと思われる動画を勧める。 </li></ul>
  7. 7. マイリスト <ul><li>注意 : これはイメージです。 </li></ul>
  8. 8. マイリスト :: テーブル表現 1 or 0 : マイリストに登録されているか否か 1 1 1 1 mylist   E 0 0 0 0 mylist   D 1 1 0 0 mylist   C 0 0 1 1 mylist   B 0 0 0 1 mylist   A video   4 video   3 video   2 video   1
  9. 9. ピアソン相関係数 係数が1に近いほど X と Y が似ており -1に近いほど X と Y は正反対である。 係数が0のとき X と Y に相関はない。
  10. 10. ピアソン相関係数 :: 例 初音ミクにオリジナル曲を歌ってもらいました「 for my dear 」 初音ミクによるオリジナル曲「初音の世界」  ver2.0 0.9
  11. 11. ピアソン相関係数 :: 例 0.3 改造コードでコント  SFC マリオカート「がんばれルイージ」 「嫁のメシがまずい」 ACE COMBAT ZERO OP
  12. 12. 類似度 :: テーブル表現 1.0 0.0 0.3 video 4 0.0 1.0 0.7 0.0 video 3 0.7 1.0 0.2 video 2 0.3 0.0 0.2 1.0 video 1 video   4 video   3 video   2 video   1
  13. 13. 推薦度の計算
  14. 14. 動画の推薦 <ul><li>推薦度の計算結果に基づきおすすめ動画を決定する。 </li></ul><ul><li>その際、当該ユーザーのマイリストにすでに入っている動画は除外する。 </li></ul>
  15. 15. Demo
  16. 16. Demo http://miyaga50.homelinux.org/lab/nicovideo/
  17. 17. 実装する際の問題 <ul><li>今回はおよそ3万 × 3万の行列の行列なので 1件あたり0.01秒とすると100日以上かかる </li></ul><ul><li>行列を計算するうえでの工夫が必要! </li></ul>
  18. 18. 類似度行列の計算 この動画に対しては詳細なおすすめ動画を計算できる だけど、この動画に対しては おすすめ動画の計算が 全くできない\ (^o^) / video 4 0.7 0.0 video 3 0.3 0.7 1.0 0.2 video 2 0.3 0.0 0.2 1.0 video 1 video   4 video   3 video   2 video   1
  19. 19. 類似度行列の計算 <ul><li>そのような理由によって今回は計算する箇所を </li></ul><ul><li>ある程度ランダムに選んで、手抜きしています。 </li></ul>
  20. 20. おすすめ動画の感想 <ul><li>個人的な感想としては </li></ul><ul><li>「それなりに自分の好きそうな動画がでてくるので </li></ul><ul><li>及第点をあげてもいいかなあという感じ」 </li></ul><ul><li>某友人によると </li></ul><ul><li>「確かにそれっぽい動画はでてくるんだけど、 </li></ul><ul><li>いいとか悪いとか評価するのが難しいよね」 </li></ul><ul><li>とのこと </li></ul>
  21. 21. 改善するところ <ul><li>類似度行列の計算法の改良 </li></ul><ul><li>類似度行列に基づく推薦度の計算の計算法の改善 </li></ul><ul><li>ウェブサイトのレスポンスの向上 </li></ul>
  22. 22. 参考文献 <ul><li>Toby Segaran </li></ul><ul><li>『 Programming Collective Intelligence 』 O’Reilly </li></ul>

×