最先端のディープラーニング
研究開発を支えるGPU計算機基盤
「MN-1」のご紹介
Preferred Networks 土井裕介
doi@preferred.jp
2018-02-27
TOC
 今までの深層学習の研究内容のご紹介
それぞれどのような計算を行っているのか?
 MN-1のご紹介
 構成
 MN-1 ベンチマーク実験の紹介
 実際の社内での利用状況の紹介とまとめ
Preferred Networks, Inc. (PFN)
 設 立:2014年3月
 所在地:東京都千代田区大手町(日本)、カリフォルニア州バークレー(米国)
 取締役:西川 徹、岡野原 大輔、長谷川 順一
 出資者:
NTT、Fanuc、Toyota、博報堂DYHD、日立製作所、みずほ銀行、三井物産
 ミッション:
IoT時代に向けた新しいコンピュータを創造する
あらゆるモノに知能をもたせ、分散知能を実現する
 事業内容: IoT(Internet of Things) + 分散機械学習
 交通システム
 産業用ロボット
 バイオヘルスケア
3
Humanoid Robot
PFNの注力領域:Industrial IoT に向けたAIを進
める
Consumer Industrial
Cloud
Device
PhotoGameText
Speech
Infrastructure
Factory Robot
Automotive
Healthcare
Smart City
Industry4.0
Industrial IoT
自己紹介
 土井裕介 (doi@preferred.jp)
 2000/04-2016/07 大手電機会社 研究開発センター 主任研究員
 コンピュータネットワーク、分散処理、IoTシステム等
 2016/08-現在 株) Preferred Networks リサーチャー
 コンピュータネットワークシステムに関する研究開発
 社内情報システム・クラスタの維持管理運用
(情報システムチームリーダー)
6
http://chainer.org
自動運転デモ (強化学習) CES 2016
典型的な計算負荷
 入力 数十次元
 例: 障害物までの距離 (32方向LIDARを想定) と現在の速度
 出力
 各行動 (前進、後退、左右ターン、停止) のそれぞれの確率
 学習時間: 数時間 (1GPU)
カメラによる状況認識 (セグメンテーション)
13
典型的な計算負荷: U-Netの場合 [Ronneburger+2015]
NVIDIA TITAN で 10時間 (医療画像の2クラス分類)
https://lmb.informatik.uni-freiburg.de/people/ronneber/u-net/ より引用
自然言語によるロボット制御 [Hatori+2017]
現実世界への対処 複合的な計算負荷
 意図理解
 画像認識
 物体の区別
 把持点の検出
 行動決定
GAN(Generative Adversarial Net)敵対的生成モデル
[Goodfellow+14]
 二人のプレイヤーが競い合うことで学習する
 ニセモノを作る人(Generator)
 目標はDiscriminatorを騙すこと
 本物そっくりのお金を作るように学習されていく
 ニセモノを見破る人(Discriminator)
 目標はGeneratorの嘘を見破ること
 ほんのわずかな違いも見抜けるように学習されていく
Generator
本物のお金
Discriminator
本物かな ?偽物のお金
1/2でどちらか
選ばれる
Generatorによる画像生成例
 生成の種となる値(z)を固定したまま、クラス(y)
だけを変化
 概念を保ったまま、クラスだけを変化
 犬の頭とキノコの頭が対応している
 犬の頭と塔が対応している
画像生成のマルチタスク学習 [Miyato+2018]
 8GPU 1週間
(1試行あたり)
さらに先へ: 深層学習における教師なし学習
21
代表的な学習手法
 教師あり学習
 入力xから出力yへの写像 y=f(x)を獲得する
 学習データは正解のペア{(x, y)}
 強化学習
 環境において将来期待報酬を最大化する行動を獲得する
 学習データは自分がとった状態とその時の報酬{(x, ri)}
 教師なし学習
 学習データはデータの集合{(xi)}、教師シグナルはそれ以外無い
 観測情報はいくらでも得られる
[Doya 99]
大脳基底核
小脳
大脳皮質
予測学習
 次にどのようになるのかを予測する
 予測結果が正しいかどうかの結果は時間差でタダで得られる
 物体の属性、ダイナミクス、物理モデルなど多
くのことを知っていないと予測できない
?
教師なし学習/予測学習の情報量は
非常に大きい
 Yann Lecunの講演資料より
MN-1: Deep Learning Computing Cluster
MN-1
 構築・運用: NTT Communications / NTT PC Communications
MN-1
IBSwitch
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
構成
{ (GPUサーバ x 16 + IB SW x 2) x 2 } x 4 + IB SW x 2
IBSwitch
IBSwitch
IBSwitch
IBSwitch
IBSwitch
FDR (56Gbps)
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
GPUサーバ
グループ
ベンチマーク
 LINPACK Benchmark
 https://www.preferred-networks.jp/ja/news/pr20171114
「Preferred Networksのプライベート・スーパーコンピュータが
Top 500リストのIndustry領域で国内1位に認定」
 ImageNet in 15 min.
 https://www.preferred-networks.jp/ja/news/pr20171110
「深層学習の学習速度において世界最速を実現」
機械学習による
LINPACKベンチマークの改善
 LINPACK(HPL)
 大規模行列計算(連立方程式の解を求める)
 性能におおきな影響がある多数のパラメータ
 計算の規模 (N) 計算の配置 (P, Q)
 ブロードキャストアルゴリズムやさまざまなスレッショルド
 パラメータの「勘と経験による調整」を自動化
 Hyperopt[Bergstra+2011]
 機械学習によるパラメータチューニングライブラリ
 今回のLINPACKの最適化に適用
 とはいえ、小規模から徐々に規模を増やしつつ探索範囲を狭めて
いかないと組み合わせ爆発+実行時間の拡大で大変なことになる
 それなりのノウハウは依然必要
PFN鈴木
グループ内は早いがグループを出ると遅い
 グループ内 : 56Gbps x 2, full bisection b/w
 要はIBスイッチ1つ
 グループをまたぐリンクは56Gbps x 2 のみ
 最悪のケースでは、56Gbps x 16 x 2 が 56Gbps x 2に殺到する
HPL: High-Performance LINPACK Benchmark
実行効率改善への長い道程
 2017-09-13
 1 GPU: 83%
 8 GPUs: 68%
 2017-10-04
 1 GPU: 83%
 8 GPUs: 72%
 8 nodes (in a group): 57%
 8 nodes (across two groups): 51%
 52 nodes in 4 groups: 23%
チューニングの効果
 52 nodes in 4 groups: 23%
 仮に8グループ128ノード (RPeak 4.92PF = 5000
兆flops弱) で10%まで効率が落ちたとすると
0.49 PF → Top500(’17/11)圏外
 23%を維持したとしても1.13PF → 127位と128位
の間
 最終的には28%, 1.39PFを達成して91位 (100位
以内!) にランクイン
PFNにおけるGPUクラスタの活用
ChainerMN: 並列深層学習ライブラリ
 1024GPUをフル活用した場合の ImageNet (画像分類タスクのデー
タセット) 1000クラス分類の学習をベンチマークとして実施
 90エポックの学習を15分で達成 2018年2月時点で、同条件で世界
最短時間での学習
T.Akiba
K.Fukuda
S.Suzuki
K.Uenishi
8GPUによる学習時間を
1(ベースライン)とした
速度比 → 100倍以上
Sharp Minima [Keskar et.al, 2016]
バッチサイズ→大
分散→小
 1024GPU
 (仮に) 32サンプル/(GPU)バッチ
 32kサンプル/(システム)バッチ
 初期値近場の「谷」にまっしぐら
 学習が安定しない
Accurate, Large Minibatch SGD: Training
ImageNet in 1 Hour [Goyal et.al 2017]
With these simple techniques, our Caffe2-based system trains ResNet- 50
with a minibatch size of 8192 on 256 GPUs in one hour, while matching
small minibatch accuracy. Using commodity hardware, our
implementation achieves ∼90% scaling efficiency when moving from 8
to 256 GPUs.
ImageNet in 15min. ポイント [Akiba et.al 2017]
 NVIDIA製NCCL2を利用
 ノードをまたぐ集団通信アルゴリズムもオーバーヘッドが少ない
 学習率の変更やチューニング
 Goyalとほぼ同じ方式
 Optimizerを学習初期の
RMSPropからスムーズに
SGDに入れ替える
 通信だけfp16 計算はfp32
 32k sample/バッチ
 1024GPUでも
比較的順当にスケール
Ring Allreduce
 古典的な? Allreduce手法
 今時の有線ネットワークは全二重・バックプ
レーンは十分
→ スタートポロジ上にリングを構築可能
GTC Japan Jensen氏講演でも言及
初期の経験からの学び
 同じハードウェアを用いた計算であっても、や
り方の善し悪しによって性能は大幅にかわる
 性能が出るようなハードウェア構成、性能を出
すためのソフトウェア構成およびチューニング、
両方大切
まとめと今後の計画
 深層学習手法の進化と計算力への要求増大
 敵対的学習や教師なし学習など、くり返しモデルを更新する計算
力が必要な学習方式が有望
 さらに、動画からの学習なども検討すると、計算力の必要性は増
加する一方
 自社利用向け計算力強化は継続的な課題
 計算力は遠からず不足
 一方、チューニングにより実効計算力はおおきく変化しうる
 ボトルネック分析や利用効率の向上手法の研究・ノウハウ
 高電力を消費する計算基盤の設置方法等も含めた検討も必要
 OPEX/CAPEXの低減

20180227_最先端のディープラーニング 研究開発を支えるGPU計算機基盤 「MN-1」のご紹介