Copyright(c)2011   NTT   CORPORATION.   All   Rights                     Reserved.分散処理の仕組み   NTT 情報流通プラットフォーム研究所          ...
いろいろ• Pythonクライアント refined by repeatedly• https://github.com/jubatus/jubatus-python-client• Google Groupsつくりました• http://gr...
ありがとうございます• Rubyクライアント• https://github.com/pfi/jubatus-ruby-client• PHPクライアント by @oxycaster• https://github.com/oxalis-gps...
プロセス構成と通信                           RPC               JubaClassifier    クライアント    JubaKeeper                              ...
学習・推論時のクライアントのシーケンス                                          JubaClassifier    クライアント   JubaKeeper5                       ...
それぞれの計算の擬似コードtypedef String Labeltrain:: Model-> {Label, Datum} -> Modelclassify :: Model-> Datum -> [{Label, Double}]mix ...
MIX                                                JubaClassifier    クライアント   JubaKeeper                                  ...
Mixのシーケンス(今のところ)                                        get_diff    ZK lock          みっくす                                 ...
将来の話: Streaming もしたいストリーム処理のロジック抽象化と物理リソースの分離(したい)→状況に応じて最適化集計、フィルタなど機械学習以外の処理も追加できる(ようにしたい)Applicativeをコンビネータでつなぐ、とか…    ...
将来のはなし • Distributed RPC • Horizontal Scalability • Complex Event Processing DSL10                                © 2011 N...
Thank you11        © 2011 NTT Information Sharing Platform Laboratories
Upcoming SlideShare
Loading in …5
×

Jubatus workshop - 分散処理の仕組み

3,872 views
3,767 views

Published on

0 Comments
11 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,872
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
11
Embeds 0
No embeds

No notes for slide

Jubatus workshop - 分散処理の仕組み

  1. 1. Copyright(c)2011 NTT CORPORATION. All Rights Reserved.分散処理の仕組み NTT 情報流通プラットフォーム研究所 上西康太 2011/11/7 © 2011 NTT Information Sharing Platform Laboratories
  2. 2. いろいろ• Pythonクライアント refined by repeatedly• https://github.com/jubatus/jubatus-python-client• Google Groupsつくりました• http://groups.google.com/group/jubatus2 © 2011 NTT Information Sharing Platform Laboratories
  3. 3. ありがとうございます• Rubyクライアント• https://github.com/pfi/jubatus-ruby-client• PHPクライアント by @oxycaster• https://github.com/oxalis-gps/jubatus-php-client• MacPorts (!)• http://d.hatena.ne.jp/hjym_u/20111107/132064755 73 © 2011 NTT Information Sharing Platform Laboratories
  4. 4. プロセス構成と通信 RPC JubaClassifier クライアント JubaKeeper mix RPC 死活監視4 © 2011 NTT Information Sharing Platform Laboratories
  5. 5. 学習・推論時のクライアントのシーケンス JubaClassifier クライアント JubaKeeper5 © 2011 NTT Information Sharing Platform Laboratories
  6. 6. それぞれの計算の擬似コードtypedef String Labeltrain:: Model-> {Label, Datum} -> Modelclassify :: Model-> Datum -> [{Label, Double}]mix :: [Model] -> [Model]mix models = let mixees = map (fun Model ->Mixee) models let mixee = fold_left(lambda Mixee->Mixee->Mixee) 0 mixees let apply = (lambda Mixee-> Model-> Model) mixee map apply models6 © 2011 NTT Information Sharing Platform Laboratories
  7. 7. MIX JubaClassifier クライアント JubaKeeper 1.学習がたまるor 一定時間経過 2.ZooKeeperで ロックをとる 3.全員から get_diff 4.XXを計算 5.全員にput_diff7 © 2011 NTT Information Sharing Platform Laboratories
  8. 8. Mixのシーケンス(今のところ) get_diff ZK lock みっくす put_diff ZK unlock8 © 2011 NTT Information Sharing Platform Laboratories
  9. 9. 将来の話: Streaming もしたいストリーム処理のロジック抽象化と物理リソースの分離(したい)→状況に応じて最適化集計、フィルタなど機械学習以外の処理も追加できる(ようにしたい)Applicativeをコンビネータでつなぐ、とか… fv_convert train/classify fv_convert train/classify fv_convert train/classify fv_convert train/classifyclient client client client client aggregate fv_convert train/classify fv_convert train/classify fv_convert train/classify FilterX train/classify9 © 2011 NTT Information Sharing Platform Laboratories
  10. 10. 将来のはなし • Distributed RPC • Horizontal Scalability • Complex Event Processing DSL10 © 2011 NTT Information Sharing Platform Laboratories
  11. 11. Thank you11 © 2011 NTT Information Sharing Platform Laboratories

×