Jubatus Casual Talks #2 : 0.5.0の新機能(クラスタリング)の紹介

13,894 views

Published on

Jubatus Casual Talks #2(URL : http://connpass.com/event/3968/ )
の発表資料です。

質問があれば気軽にお問い合わせください。

Published in: Technology
  • Be the first to comment

Jubatus Casual Talks #2 : 0.5.0の新機能(クラスタリング)の紹介

  1. 1. 0.5.0の新機能(クラスタリング)の紹介 東京大学 1 村下瑛 Jubatus Casual Talks#2 発表資料 2013/12/13
  2. 2. 自己紹介 村下 瑛(むらした あきら) 東京大学 修士2年 専攻:機械学習 元PFIアルバイト(10月まで) Jubatusチームでクラスタリング機能を担当     2 Jubatus Casual Talks#2 発表資料 2013/12/13
  3. 3. 0.5.0リリース! クラスタリングがサポート k-Means/GMMによる分析を複数台のサーバで 並列して・リアルタイムに、省メモリで 行えます! 3 Jubatus Casual Talks#2 発表資料 2013/12/13
  4. 4. 発表内容 新機能の魅力を15分でできるだけお伝えします 目次: 1. クラスタリングとは? 2. Jubaclusteringの特徴と動作原理 3. 実験結果 4 Jubatus Casual Talks#2 発表資料 2013/12/13
  5. 5. クラスタリングとは データを性質のよく似たグループに整理する技術 出典:http://booktype-demo.sourcefabric.org/documentclustering_booktype/i-wen-shu-kurasutaringunogai-yao/ 5 Jubatus Casual Talks#2 発表資料 2013/12/13
  6. 6. ビジネスへの応用事例 アメリカ軍女性兵士の服装 ニーズに答えつつ、在庫を減らす目的で 兵士の身体的特徴クラスタリングにより分析 →「足が短く、ウエストが細く、胸が大きい女性用の 服」などが新たに作成された。 (慶応義塾大学、古河康一先生の講義スライドより引用) 6 Jubatus Casual Talks#2 発表資料 2013/12/13
  7. 7. ビジネスへの応用事例(2) Bank of Americaの優良顧客の発見 住宅担保融資を利用している顧客データを14個のクラ スタに分割して解析 →『起業家』という有益なクラスタを発見 (慶応義塾大学、古河康一先生の講義スライドより引用) 7 Jubatus Casual Talks#2 発表資料 2013/12/13
  8. 8. クラスタリングの動機 未知のデータの分析と理解 未知のデータをグループに分割して解析することで、   データを簡潔に理解できる データについて新しい知見を得ることができる 場合がある。 →良いグループ分けをデータから発見したい! 8 Jubatus Casual Talks#2 発表資料 2013/12/13
  9. 9. クラスタリング手法 良いグループ分けの定量化/最適化アルゴリズム 例:k-Means  K個の代表点を決め、一番近いものにグループ分け  一番近い代表点までの距離の和を最小化 2013/12/13 9 Jubatus Casual Talks#2 発表資料
  10. 10. クラスタリング手法 良いグループ分けの定量化/最適化アルゴリズム 例:Gaussian Mixture Model(GMM)  いくつかの正規分布でデータをフィッティング  クラスタ = もっとも寄与が大きい正規分布 2013/12/13 10 Jubatus Casual Talks#2 発表資料
  11. 11. Jubaclustering 大規模データをリアルタイムに・低コストで解析 … 逐次的にやってくる 大量のデータ 11 複数台のサーバで並 全データに対するk- 列に逐次処理&省メ Means/GMMの近似 モリで動作※ 結果を随時取得可能 Jubatus Casual Talks#2 発表資料 2013/12/13
  12. 12. Jubaclustering データ全体の概要を把握可能 Q. クラスター分析ではクラスタ内のデータも重要。 データを捨ててしまっては意味がないのでは? A. クラスタ中の過去の入力データ全体を、重み付きサ ンプルで近似して返すことが可能 ? (これはどんなクラスタに属しますか?) 15.1 3.5 2.9 … (大体これらが数字の数ずついるようなものです。) 12 Jubatus Casual Talks#2 発表資料 2013/12/13
  13. 13. ビジネスでの利用例 ユーザーのログデータの分析    系統的に整理し分析することが価値を生む リアルタイム&大量 全データを保存し、バッチ処理するのは計算量/メ モリの面でコスト大 Jubaclusteringなら…  低コストでリアルタイムに解析が行える  必要ならクラスタ内のデータを取り出して分析する こともできる 13 Jubatus Casual Talks#2 発表資料 2013/12/13
  14. 14. 鍵となる技術 コアセット:クラスタリングに特化したサンプリング手法 14 Jubatus Casual Talks#2 発表資料 2013/12/13
  15. 15. 鍵となる技術 コアセット:クラスタリングに特化したサンプリング手法 バイアスサンプリング: • 密な所:少数の重み大な点 • 疎な所:多数の重み小な点 を配置 理論的に良い性質: ・近似精度に対するサンプル数 ・分散/オンラインでの更新 15 Jubatus Casual Talks#2 発表資料 2013/12/13
  16. 16. 実装のアイデア 処理結果をコアセットとして保持 データが来た 16 データが来た! Jubatus Casual Talks#2 発表資料 2013/12/13
  17. 17. 実装のアイデア 処理結果をコアセットとして保持 データの概形はこんな 感じだ! 17 データの概形はこんな 感じだ! Jubatus Casual Talks#2 発表資料 2013/12/13
  18. 18. 実装のアイデア 他ノードとの同期時には単純に和集合を取る こんな感じのデータが 来たよ! 18 こんな感じのデータが 来たよ! Jubatus Casual Talks#2 発表資料 2013/12/13
  19. 19. 実装のアイデア 和集合に対して独立にバッチで解析を行う なるほど、全体として はこんな感じなのか! 19 なるほど、全体として はこんな感じなのか! Jubatus Casual Talks#2 発表資料 2013/12/13
  20. 20. 数値実験結果 正規分布のコアセット 20 Jubatus Casual Talks#2 発表資料 2013/12/13
  21. 21. 数値実験結果 疎密を持つデータに対するコアセット 中心の密なクラスタ(10000点)の周囲に 100個の疎なクラスタ(100点)を等間隔に配置 21 Jubatus Casual Talks#2 発表資料 2013/12/13
  22. 22. 数値実験結果 疎密を持つデータに対するコアセット 得られたサンプルに101個のクラスタがどの程度含ま れているかを比較 ※全点20000点から50点をサンプリング コアセット 22 ランダムサンプリング Jubatus Casual Talks#2 発表資料 2013/12/13
  23. 23. 数値実験結果 クラスタリング精度 圧縮に伴うクラスタリング性能の変化を 得られた中心で計算した元データの下でのk-Meansの 目的関数値で比較 ※時計盤データの全点20000点を200点に圧縮した場合 7.879 7.324 23 coreset 7.29 random batch Jubatus Casual Talks#2 発表資料 2013/12/13
  24. 24. Jubaclustering(まとめ) 大規模データをリアルタイムに・低コストで解析 … 逐次的にやってくる 大量のデータ 24 複数台のサーバで並 全データに対するk- 列に逐次処理&省メ Means/GMMの近似 モリで動作※ 結果を随時取得可能 Jubatus Casual Talks#2 発表資料 2013/12/13
  25. 25. ありがとうございました 25 Jubatus Casual Talks#2 発表資料 2013/12/13

×