Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

TokyoWebmining

4,354 views

Published on

Published in: Technology, Business
  • Be the first to comment

TokyoWebmining

  1. 1. グラフ理論とレコメンデーション<br />@yanashi<br />
  2. 2. 自己紹介<br />本名:簗島 亮次(やなしま りょうじ)<br />職業:ゲームのディレクター(新卒×文系職)<br />履歴:<br />チームラボのレコメンデーションエンジンのコンテストで優勝<br />OSCTCという統計解析のコンテストで世界3位<br />脳の情報伝達経路の国際論文1報<br />などなどいろいろしてました。<br />
  3. 3. はじめに<br />そこまでグラフ理論関係ないです。<br />グラフ理論系のアルゴリズムを使ったレコメンデーションの話をする人が思いのほか少ないかなぁと。<br />いいわけですね。。。<br />
  4. 4. 目次<br />今回用いた解析環境について<br />利用するデータについて<br />グラフ理論のアルゴリズムを使うための前処理<br />グラフ理論のアルゴリズムの紹介<br />
  5. 5. 解析の環境<br />Python<br />NetworkX<br />ネットワーク解析用パッケージ<br />R<br />fastSVD<br />次元圧縮用のパッケージ<br />MCL<br />マルコフクラスタリングアルゴリズム用<br />
  6. 6. 利用するデータ<br />ECサイトを運営しているわけでもなく、会社のデータを使うわけにもいかないので、実例を出すことができない。<br />というわけで、誰でもアクセスできる商品購買データベースを利用!<br />
  7. 7. Yahoo オークションAPI<br />使い方<br />YAHOO ID所得<br />YAHOO APIキー取得<br />YAHOO APIキー取得大量取得<br />取得用スクリプト作成<br />
  8. 8. 購買情報の獲得<br />検索API<br />評価API<br />検索APIを用いて<br />情報を取得したい商品を販売したユーザーのIDを取得<br />(オークションストアのみ利用)<br />評価APIを使って、検索したユーザーIDから商品を買ったユーザーのIDを取得<br />(売却時の評価のみ利用)<br />評価API2<br />買ったユーザーがほかに買った商品の情報を取得<br />(落札時の評価のみ利用)<br />ユーザー・アイテムリストの作成<br />入札履歴API<br />カテゴリAPI<br />入札回数取得<br />商品のカテゴリ<br />情報取得<br />アイテムに対する重みを作成<br />
  9. 9. データをグラフにするための前処理<br />【購買履歴】<br />アイテムA<br />アイテムB<br />アイテムC<br />アイテムD<br />ユーザーA<br />アイテムA<br />アイテムB<br />ユーザーA<br />アイテムC<br />アイテムD<br />重み付け<br />
  10. 10. 今回の場合は<br />RMT(リアルマネートレード)と検索した場合<br />アイテムA<br />カテゴリ2<br />カテゴリ3<br />カテゴリ4<br />カテゴリ1<br />アイテムB<br />ユーザーA<br />カテゴリ2<br />カテゴリ3<br />カテゴリ4<br />カテゴリ1<br />アイテムC<br />カテゴリ2<br />カテゴリ3<br />カテゴリ4<br />カテゴリ1<br />
  11. 11. 出力結果1<br />
  12. 12. 出力結果2<br />
  13. 13. ここでやっと<br />ここで作成したグラフに対して分析用のアルゴリズムを用いてマイニングをします。<br />
  14. 14. グラフ系の分析アルゴリズム<br />時間の関係上二つだけ紹介<br />グラフラプラシアン行列を用いた手法<br />マルコフクラスタリングアルゴリズムを用いた手法<br />※マイニングをする時間が間に合わなかったので出力結果はこちらのみ。<br />
  15. 15. グラフラプラシアン行列の作り方1<br />次数分布の行列<br />E<br />B<br />D<br />A<br />隣接行列<br />C<br />
  16. 16. グラフラプラシアン行列の作り方2<br />次数分布の行列<br />上-下<br />隣接行列<br />今回の場合は重み付のグラフ<br />を使っているので、すべてに<br />重みをつけて標記<br />(グラフラプラシアン<br />じゃないのかも。。。)<br />
  17. 17. その後の処理は。。。<br />定番ですね。<br />行列<br />次元圧縮<br />クラスタリング<br />先ほどの<br />行列<br />Fast SVD<br />第一特異値の<br />ユーザーアイテム行列を作り、階層型クラスタリング<br />
  18. 18. マルコフクラスタリング<br />最短経路媒介中心性を使ってクラスタリングする手法<br />
  19. 19. 計算は省略して感覚で言うと<br />ここら辺<br />
  20. 20. 出力結果(明日埋める)<br />mcl –I 2.0 filename<br />
  21. 21. 駆け足にはなりましたが。<br />ご清聴ありがとうござました。<br />

×