Suche senden
Hochladen
数式を使わないJubatus入門 分散処理編
•
12 gefällt mir
•
19,278 views
Kenji Aiko
Folgen
Technologie
Melden
Teilen
Melden
Teilen
1 von 23
Empfohlen
アセンブラ短歌 On web
アセンブラ短歌 On web
Kenji Aiko
コメントから動画の種類を推測できるか
コメントから動画の種類を推測できるか
Kenji Aiko
Main
Main
Kenji Aiko
Kbouncer
Kbouncer
Kenji Aiko
CTF for ビギナーズ バイナリ講習資料
CTF for ビギナーズ バイナリ講習資料
SECCON Beginners
CTFはとんでもないものを 盗んでいきました。私の時間です…
CTFはとんでもないものを 盗んでいきました。私の時間です…
Hiromu Yakura
愛甲健二
愛甲健二
NetAgent Co.,Ltd.
text analyzing
text analyzing
Kenji Aiko
Empfohlen
アセンブラ短歌 On web
アセンブラ短歌 On web
Kenji Aiko
コメントから動画の種類を推測できるか
コメントから動画の種類を推測できるか
Kenji Aiko
Main
Main
Kenji Aiko
Kbouncer
Kbouncer
Kenji Aiko
CTF for ビギナーズ バイナリ講習資料
CTF for ビギナーズ バイナリ講習資料
SECCON Beginners
CTFはとんでもないものを 盗んでいきました。私の時間です…
CTFはとんでもないものを 盗んでいきました。私の時間です…
Hiromu Yakura
愛甲健二
愛甲健二
NetAgent Co.,Ltd.
text analyzing
text analyzing
Kenji Aiko
Automation tech casual_talks_1_20120717
Automation tech casual_talks_1_20120717
Makoto Haruyama
Devとopsをつなぐpuppet
Devとopsをつなぐpuppet
yuzorock
これからのマルウェアの話をしよう
これからのマルウェアの話をしよう
Kenji Aiko
20120927 findjob4 dev_ops
20120927 findjob4 dev_ops
ume3_
グラフを奇麗に描画するアルゴリズム
グラフを奇麗に描画するアルゴリズム
mfumi
katagaitaictf7_hw_ysk
katagaitaictf7_hw_ysk
ysk256
ぼくがかんがえたさいきょうの☆きっくすたーと☆
ぼくがかんがえたさいきょうの☆きっくすたーと☆
Naoya Nakazawa
TMUX Rocks!
TMUX Rocks!
Kent Chen
目grep入門
目grep入門
murachue
[CB16] マイクロソフトウィンドウズカーネルのデスノート by Peter Hlavaty & Jin Long
[CB16] マイクロソフトウィンドウズカーネルのデスノート by Peter Hlavaty & Jin Long
CODE BLUE
バイナリアンを目指して For a binaryen
バイナリアンを目指して For a binaryen
Eyes, JAPAN
CTF(Capture the Flag)って何?
CTF(Capture the Flag)って何?
Kenji Aiko
新しいライブ映像再生システムを研究してみた
新しいライブ映像再生システムを研究してみた
Hiromu Yakura
CTF, What's in it for me?
CTF, What's in it for me?
Hiromu Yakura
SEAndroid -AndroidのアーキテクチャとSE化について-
SEAndroid -AndroidのアーキテクチャとSE化について-
Hiromu Yakura
Why don't you learn programming?
Why don't you learn programming?
Hiromu Yakura
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
Weitere ähnliche Inhalte
Andere mochten auch
Automation tech casual_talks_1_20120717
Automation tech casual_talks_1_20120717
Makoto Haruyama
Devとopsをつなぐpuppet
Devとopsをつなぐpuppet
yuzorock
これからのマルウェアの話をしよう
これからのマルウェアの話をしよう
Kenji Aiko
20120927 findjob4 dev_ops
20120927 findjob4 dev_ops
ume3_
グラフを奇麗に描画するアルゴリズム
グラフを奇麗に描画するアルゴリズム
mfumi
katagaitaictf7_hw_ysk
katagaitaictf7_hw_ysk
ysk256
ぼくがかんがえたさいきょうの☆きっくすたーと☆
ぼくがかんがえたさいきょうの☆きっくすたーと☆
Naoya Nakazawa
TMUX Rocks!
TMUX Rocks!
Kent Chen
目grep入門
目grep入門
murachue
[CB16] マイクロソフトウィンドウズカーネルのデスノート by Peter Hlavaty & Jin Long
[CB16] マイクロソフトウィンドウズカーネルのデスノート by Peter Hlavaty & Jin Long
CODE BLUE
バイナリアンを目指して For a binaryen
バイナリアンを目指して For a binaryen
Eyes, JAPAN
CTF(Capture the Flag)って何?
CTF(Capture the Flag)って何?
Kenji Aiko
新しいライブ映像再生システムを研究してみた
新しいライブ映像再生システムを研究してみた
Hiromu Yakura
CTF, What's in it for me?
CTF, What's in it for me?
Hiromu Yakura
SEAndroid -AndroidのアーキテクチャとSE化について-
SEAndroid -AndroidのアーキテクチャとSE化について-
Hiromu Yakura
Why don't you learn programming?
Why don't you learn programming?
Hiromu Yakura
Andere mochten auch
(16)
Automation tech casual_talks_1_20120717
Automation tech casual_talks_1_20120717
Devとopsをつなぐpuppet
Devとopsをつなぐpuppet
これからのマルウェアの話をしよう
これからのマルウェアの話をしよう
20120927 findjob4 dev_ops
20120927 findjob4 dev_ops
グラフを奇麗に描画するアルゴリズム
グラフを奇麗に描画するアルゴリズム
katagaitaictf7_hw_ysk
katagaitaictf7_hw_ysk
ぼくがかんがえたさいきょうの☆きっくすたーと☆
ぼくがかんがえたさいきょうの☆きっくすたーと☆
TMUX Rocks!
TMUX Rocks!
目grep入門
目grep入門
[CB16] マイクロソフトウィンドウズカーネルのデスノート by Peter Hlavaty & Jin Long
[CB16] マイクロソフトウィンドウズカーネルのデスノート by Peter Hlavaty & Jin Long
バイナリアンを目指して For a binaryen
バイナリアンを目指して For a binaryen
CTF(Capture the Flag)って何?
CTF(Capture the Flag)って何?
新しいライブ映像再生システムを研究してみた
新しいライブ映像再生システムを研究してみた
CTF, What's in it for me?
CTF, What's in it for me?
SEAndroid -AndroidのアーキテクチャとSE化について-
SEAndroid -AndroidのアーキテクチャとSE化について-
Why don't you learn programming?
Why don't you learn programming?
Kürzlich hochgeladen
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
Kürzlich hochgeladen
(9)
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
数式を使わないJubatus入門 分散処理編
1.
数式を使わないJubatus入門 ~分散処理編~ 愛甲健二 Twitter: @07c00 kenjiaiko@gmail.com 1
2.
はじめに 本資料は「数式を使わないJubatus入門」の続編です 数式を使わないJubatus入門 http://www.slideshare.net/KenjiAiko/jubatus-22389573 まずは上記の資料から読むことをお勧めします また主にJubatusでの分散処理のやり方について書いてますが 分散処理やJubatusについてシロウトなので いろいろと間違ってるかもしれないこと予めご了承くださいま せ 2
3.
前回までの話 3
4.
ざっくりとしたJubatus概要 (1/5) Jubatus Server Jubatus Client 4
5.
ざっくりとしたJubatus概要 (2/5) Jubatus Server Jubatus Client 学習しといて ~ おk 5
6.
ざっくりとしたJubatus概要 (3/5) Jubatus Server Jubatus Client 学習中… 6
7.
ざっくりとしたJubatus概要 (4/5) Jubatus Server Jubatus Client これどこ? クラスAに分類 されますね~ 7
8.
ざっくりとしたJubatus概要 (5/5) Jubatus Server Jubatus Client •
用意するもの – データセット(学習 and テストデータ) – サーバ(設定ファイルのみ → .json に記述) – クライアント(One of Python, C++, Ruby or Java) 8
9.
今回は… 9
10.
ざっくりとしたJubatus概要 (5/5) Jubatus Server Jubatus Client 10 ここを分散化する話
11.
ざっくりとした分散処理の概要 (1/4) 11 Jubatusの Zookeeper(Manager) Server Proxy Server Client Proxy
12.
ざっくりとした分散処理の概要 (2/4) 12 Zookeeper(Manager) Server Proxy Server Client Proxy 新しくZookeeper(1台以上)というマネー ジャが追加される(全マシンの管理、設定 ファイルの適用などを受け持つ)
13.
ざっくりとした分散処理の概要 (3/4) 13 Zookeeper(Manager) Server Proxy Server Client Proxy プロキシはデータを受け取ったら ランダムにサーバを選択し、問い合わ せる
14.
ざっくりとした分散処理の概要 (4/4) 14 Zookeeper(Manager) Server Proxy Server Client Proxy 学習… 学習… 学習はそれぞれが行い 結果は定期的に共有(MIX) する
15.
設定(.json)の適用 15 Zookeeper(Manager) IP: 172.31.7.70 $ sudo
/usr/share/zookeeper/bin/zkServer.sh start $ jubaconfig -c write -f ja_test.json -t classifier -n nico -z 172.31.7.70:2181 1. Zookeeper起動(zkServer.sh) • http://zookeeper.apache.org/ • http://jubat.us/ja/tutorial_distributed.html 2. 設定(.json)の適用 • -t オプションにサーバの種類(classifier) • -n オプションに識別文字列(nico) • -z オプションにManagerのIPアドレス →ja_test.jsonについては「数式を使わないJubatus入門」を参 照 http://www.slideshare.net/KenjiAiko/jubatus-22389573
16.
プロキシ&サーバ起動 16 $ jubaclassifier --zookeeper
172.31.7.70:2181 -n nico Server $ jubaclassifier_proxy --zookeeper 172.31.7.70:2181 $ jubactl -z 172.31.7.70:2181 -s classifier -t classifier -c status -n nico active jubaproxy members: 172.31.7.68_9199 172.31.7.72_9199 active jubavisor members: active nico members: 172.31.7.69_9199 172.31.7.71_9199 on Zookeeper(Manager) IP: 172.31.7.70 ←プロキシとして二台起動していることを確認 ←サーバとして二台起動していることを確認 (※)--interval_secオプションでMIXする間隔を秒単位で指 定可 Proxy
17.
サーバログ 17 ... secs, 8 bytes
(serialized data) has been put. I0913 19:47:31.217651 2370 linear_mixer.cpp:213] .... 23th mix done. I0913 19:48:03.240432 2370 linear_mixer.cpp:207] starting mix: I0913 19:48:03.244204 2370 linear_mixer.cpp:264] mixed with 2 servers in 0.003718 secs, 8 bytes (serialized data) has been put. I0913 19:48:03.244361 2370 linear_mixer.cpp:213] .... 24th mix done. I0913 19:48:19.254685 2370 linear_mixer.cpp:207] starting mix: I0913 19:48:19.258323 2370 linear_mixer.cpp:264] mixed with 2 servers in 0.003466 secs, 8 bytes (serialized data) has been put. I0913 19:48:19.258445 2370 linear_mixer.cpp:213] .... 25th mix done. I0913 19:48:35.267849 2370 linear_mixer.cpp:207] starting mix: I0913 19:48:35.276492 2370 linear_mixer.cpp:264] mixed with 2 servers in 0.008466 secs, 8 bytes (serialized data) has been put. I0913 19:48:35.276619 2370 linear_mixer.cpp:213] .... 26th mix done. I0913 19:49:07.294831 2370 linear_mixer.cpp:207] starting mix: I0913 19:49:07.302772 2370 linear_mixer.cpp:264] mixed with 2 servers in 0.007763 secs, 8 bytes (serialized data) has been put. I0913 19:49:07.302896 2370 linear_mixer.cpp:213] .... 27th mix done. こんな感じで表示されたらOK!
18.
学習&評価の流れ(1/4) 18 Zookeeper(Manager) Server Proxy Server Client Proxy 学習はランダムに選択された サーバで行われる
19.
OK 学習&評価の流れ(2/4) 19 Zookeeper(Manager) Server Proxy Server Client Proxy評価もランダムに選択された サーバで行われるため 実行毎に評価結果が異なる
20.
OK 学習&評価の流れ(3/4) 20 Zookeeper(Manager) Server Proxy Server Client Proxy一定間隔で行われるMIX後 学習結果が計算され 評価結果も同じになる
21.
21 $ python ja_test.py
samplelog/m2 ('', 0) $ python ja_test.py samplelog/m2 ('Mayoi', 0.07325346022844315) $ python ja_test.py samplelog/m2 ('Mayoi', 0.07325346022844315) $ python ja_test.py samplelog/m2 ('', 0) $ python ja_test.py samplelog/m2 ('Mayoi', 0.03662673011422157) $ python ja_test.py samplelog/m2 ('Mayoi', 0.03662673011422157) $ python ja_test.py samplelog/m2 ('Mayoi', 0.03662673011422157) $ python ja_test.py samplelog/m2 ('Mayoi', 0.03662673011422157) 学習&評価の流れ(4/4) ここでMIXが行われた アクセスするサーバ(2台) により 評価毎に結果が異なる 評価結果が同じになる (平均がとられた?) (※)--interval_secオプションでMIXする間隔を秒単位で指 定可 MIX前後の評価プログラム実行ログ
22.
まとめ 22 • 基本的にZookeeperから全体を管理 • プログラムや設定ファイル(.json)に変更 なし •
MIXのタイミング、動作には注意 ■用意するもの データセット .jsonファイル(tutorialからコピー可) クライアントプログラム(tutorialからコ ピー可) Zookeeperマシン プロキシ×N台、サーバ×N台 これだけで(機械学習の)分散処理ができ る!
23.
Jubatus: オンライン機械学習向け分散処理フレームワーク http://jubat.us/ja/ http://jubat.us/ja/tutorial.html http://jubat.us/ja/tutorial_distributed.html 国立情報学研究所(ニコニコデータセット) http://www.nii.ac.jp/cscenter/idr/nico/nico.html ありがとうございました! 23