Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Distributed Deep Newral Networks
Search
Livesense Inc.
PRO
April 11, 2017
Programming
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Distributed Deep Newral Networks
ニューラルネット x 分散コンピューティング ※社内LT資料
Livesense Inc.
PRO
April 11, 2017
More Decks by Livesense Inc.
See All by Livesense Inc.
Rubyはただの⾔語に⾮ず
livesense
PRO
0
520
28新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
120
27新卒_総合職採用_会社説明資料
livesense
PRO
0
7.1k
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
12k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
540
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
1
1.8k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
680
26新卒_総合職採用_会社説明資料
livesense
PRO
0
13k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
2
74k
Other Decks in Programming
See All in Programming
kubernetes コンポーネント開発入門 / 新卒N年目の勉強会&交流会!〜〇〇への誘い〜 #n_study
mazrean
0
230
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
56
38k
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
170
自分的「カンファレンスの楽しみ方」
syumai
0
200
【DroidKaigi 2026】「アクセシビリティを利用するとき、 アクセシビリティもまたこちらを利用している」 〜マルウェアによる攻撃と防衛について〜
halunoyo
0
460
LLMは4年分のCompose移行を再現できるのか?実プロダクト279件のXMLで探る自動化の境界線
makun
0
810
cdk deploy JawsSonic #MARATHONしながらAWSリソースをデプロイしてみよう
akihisaikeda
2
120
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
230
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
6.7k
個人開発基盤をまるごとCloudflareに引っ越して爆速で総合的体験を向上させた話
tinykitten
0
180
Jetpack Compose メカニズム
skydoves
0
360
[DroidKaigi 2026] Bring your own phones to Gradle Managed Devices
f2lk
0
120
Featured
See All Featured
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
700
New Earth Scene 8
popppiees
3
2.6k
Ethics towards AI in product and experience design
skipperchong
2
370
The Curse of the Amulet
leimatthew05
2
14k
Abbi's Birthday
coloredviolet
3
9.9k
Site-Speed That Sticks
csswizardry
13
1.5k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
720
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Navigating Team Friction
lara
192
16k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
Mind Mapping
helmedeiros
1
360
Transcript
Distributed Deep Newral Networks 0x64 物語 reboot 第01 夜 "Network"
@yubessy
今日の話 ニュー ラルネットワー ク x 分散コンピュー ティング
Why Distributed? デー タ量の増加 テキスト < 画像 < 動画 計算量の増加
いわゆるディー プラー ニング 単一マシンの処理能力の頭打ち -> 時代は分散コンピュー ティング
分散コンピュー ティングの歩き方 分散対象: 何を分けるか そもそも分割できるのか 負荷を均等化できるか アー キテクチャ: どうつなぐか クライアント・
サー バ型 / メッシュ型 / ... 同期 / 非同期 スルー プット / レイテンシ プロトコル
深層ニュー ラルネット (DNN) 多数のレイヤを接続した有向グラフ Back Propagation (BP) 入力値に対する、 モデルの出力値と正解値の 差分を求める
差分が小さくなるよう、 出力側から順に 各レイヤのパラメー タを調整 Stochastic Gradient Descent (SGD) デー タ点を1つずつ与えながらモデルを学習
深層ニュー ラルネット (DNN) From http://joelouismarino.github.io/blog_posts/blog_googlenet_keras.html
DNN と分散処理 DNN は分散処理に向いている モデル並列化 = 計算グラフを複数の部分に分割 デー タ並列化 =
デー タを分割しノー ド毎にSGD "Large Scale Distributed Deep Networks" Dean, et al. 2012. By Google DNN のモデル / デー タ並列化両方について解説
モデル並列化 分散対象 = DNN のグラフ グラフ全体を部分グラフに分割 各部分グラフを別々 のノー ドに割り当て アー
キテクチャ = メッシュ型 元のグラフで結合されていた部分が ノー ドをまたいで通信 ボトルネック 適切に分割しないと ノー ド間のトラフィックがえらいことに
モデル並列化 Dean, et al. [1] Figure 1
デー タ並列化 分散対象 = 学習デー タ デー タをチャンクに分割 各チャンクを別々 のノー
ドに処理させる アー キテクチャ = Parameter Server (PS) 方式 PS ノー ドが各レイヤのパラメー タを保持 ワー カー ノー ドは一定量の学習を終えるごとに 非同期通信によりパラメー タを更新 ボトルネック ワー カが増えるとPS ノー ドの負荷が高くなる
デー タ並列化 Dean, et al. [1] Figure 2
Distributed TensorFlow ここまで説明した分散処理機能が 実はすでに TensorFlow に組み込まれている Distributed TensorFlow ノー ド間はgRPC
で通信
雰囲気だけ紹介
クラスタ定義 cluster = tf.train.ClusterSpec({ # ワー カー ( デー タ分散)
"worker": [ "worker0.example.com:2222", "worker1.example.com:2222", "worker2.example.com:2222" ], # パラメー タサー バ ( モデル分散) "ps": [ "ps0.example.com:2222", "ps1.example.com:2222" ]})
モデル並列化 レイヤを複数のPS に分散 # 同じPS に乗せたいパラメー タ群を tf.device でくくる with
tf.device("/job:ps/task:0"): weights_1 = tf.Variable(...) biases_1 = tf.Variable(...) # タスクの番号に応じてラウンドロビンでPS が決まる with tf.device("/job:ps/task:1"): weights_2 = tf.Variable(...) biases_2 = tf.Variable(...)
デー タ並列化 各ワー カー に同じグラフを複製 # replica_device_setter で # 複数のワー
カに同じグラフを複製 with tf.device(tf.train.replica_device_setter( worker_device="/job:worker/task:%d" % task_index, cluster=cluster)): input, labels = ... layer_1 = tf.nn.relu( tf.matmul(input, weights_1) + biases_1) logits = tf.nn.relu( tf.matmul(layer_1, weights_2) + biases_2) train_op = ...
まとめ NN は分散コンピュー ティングと相性がよい モデル並列化 / デー タ並列化 TensorFlow 最強
参考 [1] Large Scale Distributed Deep Networks [2] Distributed TensorFlow
[3] Distributed TensorFlow を試してみる [4] Distributed TensorFlow の話