ディープラーニング最新事情報ならびに その進化を支え...

86
エンタープライズ事業部 事業部長 井﨑 武士 ディープラーニング最新事情報ならびに その進化を支えるNVIDIAGPUと戦略

Transcript of ディープラーニング最新事情報ならびに その進化を支え...

Page 1: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

エンタープライズ事業部 事業部長井﨑 武士

ディープラーニング最新事情報ならびにその進化を支えるNVIDIAのGPUと戦略

Page 2: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

2

創業1993年

共同創立者兼CEO ジェンスン・フアン(Jen-Hsun Huang)

1999年 NASDAQに上場(NVDA)

1999年にGPUを発明その後の累計出荷台数は10億個以上

2018会計年度の売上高は97億ドル

社員は世界全体で12,000人

約7,300件の特許を保有

本社は米国カリフォルニア州サンタクララ

Page 3: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

2009 2010 2011 2012 2013 2014 2015 2016

ディープラーニングの目覚しい進化IMAGENET正答率

従来 CV 手法 ディープラーニング

DeepMindのAlphaGoが囲碁で世界チャンピオンを越える

FANUCがピッキングロボットで8時間の学習で90%の取得率を達成

X線画像読影診断で肺がんの検出率が読影診断医の1.5倍

みずほ証券が株価のトレードにDeep Learningを導入

量子化学を用いる手法で5年かかっていた新薬候補の選別を8分で実現

2017年5月 WannaCry の攻撃を顧客エンドポイントで

100%防御

Page 4: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

ディープラーニング現状と今後

Page 5: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

ディープラーニングの現状1. 一部の基本タスクにおける精度競争は落ち着きつつある

• 基本タスクの効率化などにシフト

• より難しいタスクでの精度競争は継続中

2. 応用的・組み合わせ的な方向への進化が加速• 画像+自然言語のような組み合わせ

• 生成系やより高度な処理への拡張

• HPCとの融合5

Page 6: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

認識系タスクの精度推移32

0

16

12

4

8

20

24

28

201216.4%

201311.7%

20146.7% 2015

3.6% 20163.0%

画像認識 音声認識

201116.0%

20155.8%

20165.3%

エラー率(%)

2011(non deep)26% 2010(non deep)

20 - 30%

Human:5%前後

6

20172.3%

Page 7: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

7

子供の成長問題AIが検知Detecting growth-related problems in children requires calculating their bone age. But it’s an antiquated process that requires radiologists to match X-rays with images in a 1950s textbook.

Massachusetts General Hospital, which conducts the largest hospital-based research program in the United States, developed an automated bone-age analyzer built on the NVIDIA DGX-1. The system is 99% accurate and delivers test results in seconds versus days

Page 8: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

8

電子機器製造における活用

産業電子機器製造

ユースケースアセンブリ、回路基板、実装技術(SMT)

問題品質検査マニュアルな作業作業者によるばらつき

Foxconn | NVIDIA

Page 9: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

9

電子機器製造における活用Foxconn | NVIDIA

参考データ正常品

コンポーネント欠落品データ1-2個のコンポーネントが未実装

不具合箇所特定

Page 10: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

10

半導体製造におけるAI活用

ゴール:イールド改善のためのOPC後の リソグラフィーにおけるホットスポット検出

Challenges:• 極小なサイズの特徴点 (<20 nm)• 複雑化するレイアウトパターン• データ不均衡 (希少なホットスポットデータ)

Approach: CNN-based Deep Learning

結果 vs. 最高水準現行技術:• 従来技術と比較して24%の平均遅延改善• ICCAD 2012を超えるパフォーマンス• 手作業不要な機能

リソグラフィーによる不良個所検出

Imbalance Aware Lithography Hotspot Detection: A Deep Learning Approach; H. Yang et al, CUHK & ASML Brion

Page 11: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

11

社会インフラ検査

Goal: 不具合検出と原因診断

Challenges:ほとんどラベルの無い膨大なデータスピードと精度が要求される既存技術は労働集約型機能を使用しており、特殊技能が要求される

Motivation:米国では橋の検査に毎年2兆円を超える投資が必要

不具合検出とメンテナンス

Deep Active Learning for Civil Infrastructure Defect Detection and Classification, C. Feng et al, Mitsubishi Electric Research Laboratories (MERL)

Page 12: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

12

OPTIX 5.0AI DenoisingとMotion BlurのSDKを提供

Page 13: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

13

Page 14: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

14

GPU ジョブ管理システム

AIカメラが素晴らしい写真を撮るガイドをしてくれる

写真のバックアップクラウドが瞬時に写真を取り出せる

NVIDIA DGX-1, TESLA GPU, JETSON TX-1 により加速するNTT DOCOMO のAI開発

AI コンシェルジュがあなたに合うファッションアイテムを見つけてくれる

タクシーの需要予測AIエンジンがドライバーにどこでお客さんが多く待っているかを

教えてくれる

Page 15: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

15

Deep Compression

15https://arxiv.org/pdf/1510.00149.pdf

Song Han PhD student, Stanford University

Page 16: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

16

DENSE NET

Dense Connectionを導入前層出力の再利用により省メモリ、

高速化を実現

https://arxiv.org/pdf/1608.06993.pdf

Gao Huang, Cornell University

Page 17: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

17

DENSENETとRESNETの比較

Page 18: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

18

PSP NET

ADE20Kでの結果 PASCAL VOC 2012での結果 https://arxiv.org/pdf/1612.01105.pdf

Hengshuang Zhao The Chinese Univeristy of Hong Kong

Page 19: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

LIP READING

WAS: Watch, Attend&SpellLAS: Listen, Attend & SpellWLAS: Watch, Listen, Attend & SpellCL: Curriculum LearningSS: Scheduled SamplingBS: Beam Search

19

Lip Reading

https://arxiv.org/pdf/1611.05358v1.pdf

Joon Son Chung et al, Department of Engineering Science, University of Oxford. Google DeepMind

Page 20: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

20

AI FACIAL ANIMATIONアニメーションの生成を 80% 高速に

ビデオ配信中:https://www.youtube.com/watch?v=lDzrfdpGqw4&feature=youtu.be

Audio-Driven Facial Animation by Joint End-to-End Learning of Pose and Emotion, TERO KARRAS et.al, NVIDIA

Page 21: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

21

Generative Adversarial Network

21https://arxiv.org/pdf/1406.2661.pdf

Page 22: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

STACKGAN

22

https://arxiv.org/pdf/1612.03242v1.pdf

Page 23: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

23

Page 24: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

PROGRESSIVE GROWING OF GANTero Karras, NVIDIA

http://research.nvidia.com/sites/default/files/publications/karras2017gan-paper-v2.pdf

Page 25: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

25

Progressive Growing of GAN

Page 26: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

26

AI と HPC の融合

PRINCETON & ITER: PARTICLE PHYSICS

90% Accuracy for Fusion SustainmentLIGO

Detection of Gravitational Waves

UIUC & NCSA: MULTI-MESSENGER ASTROPHYSICS

5,000X LIGO Signal Processing

Page 27: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

NVIDIAのGPU

Page 28: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

ディープラーニングを加速する3要因

アルゴリズム GPUビッグデータ

1分間に100 時間のビデオがアップロード

日々3.5億イメージがアップロード

1時間に2.5兆件の顧客データが発生

0.0

0.5

1.0

1.5

2.0

2.5

3.0

2008 2009 2010 2011 2012 2013 2014

NVIDIA GPU x86 CPU

TFLO

PS

TORCH

THEANO

CAFFE

MATCONVNET

PURINEMOCHA.JL

MINERVA MXNET*

Page 29: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

29

畳込み層と全結合層• 畳込み層で画像の特徴を学習、全域的な特徴は全結合層

目的物体認識、顔認識

トレーニングデータ1,000万~1億イメージ

ネットワークアーキテクチャAlexNet、10 層

ラーニングアルゴリズム30 エクサフロップスの計算量GPU を利用して30日

畳込み層 全結合層

2012年

Page 30: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

30

全結合層と畳み込み層

Page 31: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

31

全結合層(FULLY CONNECTED LAYER)行列ベクトル積

X[Nx] y[Ny]

w[Nx][Ny]

x =

w[Nx][Ny] x[Nx] y[Ny]

行列 ベクトル

計算量: 2 * output nodes (Ny)* input nodes (Nx)

入力 出力重み

Page 32: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

32

全結合層(FULLY CONNECTED LAYER)ミニバッチで行列積に

X[Nb][Nx] Y[Nb][Ny]

W[Nx][Ny]

x =

W[Nx][Ny] X[Nb][Nx] Y[Nb][Ny]

行列 行列

計算量: 2 * output nodes (Ny)* input nodes (Nx)* batch size (Nb)

入力 出力重み

Page 33: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

33

0

0

0

0

0

0

0

0

1

1

1

0

0

0

0

1

2

2

1

1

1

0

1

2

2

2

1

1

0

1

2

2

2

1

1

0

0

1

1

1

1

1

0

0

0

0

0

0

0

入力

コンボリューションカーネル

出力

コンボリューションカーネルの係数と、入力ピクセルを掛け、足し合わせた値を出力とする。

畳込み層(CONVOLUTIONAL LAYER)

4

0

0

0

0

0

0

0

-4-8

計算量: 2 * output width * output height* kernel width* kernel height

重み

Page 34: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

34

0

0

0

0

0

0

0

0

1

1

1

0

0

0

0

1

2

2

1

1

1

0

1

2

2

2

1

1

0

1

2

2

2

1

1

0

0

1

1

1

1

1

0

0

0

0

0

0

0

入力

出力

畳込み層(CONVOLUTIONAL LAYER)

4

0

0

0

0

0

0

0

-4-8

計算量: 2 * output width * output height* kernel width* kernel height* input channels* output channels* batch size

重み

Page 35: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

35

なぜGPUが使われるのか

• 学習で時間のかかるのは、畳込み層と全結合層• どちらも、積和演算の塊とみなすことができる(行列乗算)

• D = A * B + C

• これを高速に実行できるチップが、学習に適切

• 今、最もこれに適切なのはGPU

cuBLAS

Page 36: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

36

NVIDIA CUDNN

• CNN, RNNで良く使われる処理をライブラリとして提供• 主要DLフレームワークが採用: TensorFlow, MXNet, PyTorch, …

• 様々な条件向けに性能チューニング• 例: Convolution層: 複数アルゴリズムから適切なものを選択

• GEMM• IMPLICIT_GEMM• DIRECT• FFT• WINOGRAD

developer.nvidia.com/cudnn

Page 37: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

37

トレーニングの加速

Page 38: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

38

複雑化・巨大化するモデル

2016 - Baidu Deep Speech 22015 - Microsoft ResNet 2017 - Google NMT

105 ExaFLOPS8.7 Billionパラーメタ

20 ExaFLOPS300 Millionパラメータ

7 ExaFLOPS60 Millionパラメータ

Page 39: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

39

複雑化・巨大化するモデル

2016 - Baidu Deep Speech 22015 - Microsoft ResNet 2017 - Google NMT

105 ExaFLOPS1GPUで1年以上

20 ExaFLOPS1GPUで2.5ヶ月7 ExaFLOPS

1GPUで1ヶ月弱

計算パワーは、もっと必要

Page 40: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

40

Tesla V100AI と HPC のための大きな飛躍Tensor コアを搭載した Volta アーキテクチャ

210 億トランジスタ | TSMC 12nm FFN | 815mm2

5120 CUDA コア

7.8 FP64 TFLOPS | 15.7 FP32 TFLOPS

125 Tensor TFLOPS

総レジスタファイル 20MB | 16MB キャッシュ

900 GB/s の 16GB HBM2

300 GB/s NVLink

Page 41: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

41

新開発 Tensor コアCUDA Tensor 演算命令 及び データフォーマット

4x4 行列処理配列

D[FP32] = A[FP16] * B[FP16] + C[FP32]

ディープラーニングに最適化

アクティベーション入力 重み入力 出力結果

Page 42: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

42

Tesla V100 搭載 NVIDIA DGX-1AI 研究に必須の道具

960 Tensor TFLOPS | Tesla V100 8基 | NVLink ハイブリッドキューブTITAN X で 8 日かかる計算が 8 時間にCPU サーバー 400台分の性能がワンボックスに

Page 43: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

43

NVIDIA DGX ステーションパーソナル DGX

480 Tensor TFLOPS | Tesla V100 4基

NVLink 全結合 | 3つの DisplayPort

1500W | 水冷

Page 44: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

44

NVIDIA GPU CLOUD

開発者の時間を節約複雑なDLとHPCのソフトウェア環境構築から開発者を開放

様々なプラットフォームに対応オンプレのDGXシステムからクラウドサービスが提供するGPUインスタンスに至るまですべての環境でコンテナを利用可能

最新の環境性能確認をNVIDIAが行い、月次でアップデート

AIとHPCのあらゆる環境とすべての開発者へ

NVIDIA GPU Cloud はGPUで最適化されたディープラーニングのフレームワーク、HPCアプリケーション、ランタイムライブラリ、CUDAをコンテナ化し、すぐに動作可能な状態で無償提供

Page 45: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

45

本当に、計算パワーは、もっと必要なのか?

• アプリケーションに依存• 深層学習の用途、IT分野からミッションクリティカル分野に拡大

• ミッションクリティカル分野では、より高い精度が必要• 例:自動運転、99%の正解率で十分?

Page 46: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

46

自動運転に必要なもの

SemanticSegmentation

ObjectDetection

Localization

Planning

Page 47: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

47

本当に、計算パワーは、もっと必要なのか?

• アプリケーションに依存• 深層学習の用途、IT分野からミッションクリティカル分野に拡大

• ミッションクリティカル分野では、より高い精度が必要• 例:自動運転、99%の正解率で十分?

• もっとモデル精度向上の必要なアプリがある• Question: もっと精度を上げるにはどうすればよいのか

Page 48: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

48

モデル精度向上には、教師データ増が有効

• 深層学習の成功の要因(画像処理系)• 大規模な教師データ

• NNモデルの多層化・大容量化

• 計算パワーの増大

• Q: 教師データをもっと増やしたら何が起きるのか• ImageNet: 120万枚の画像

• JFT-300M: 3億枚の画像 (ラベルはnoisy)

Chen Sun et al., “Revisiting Unreasonable Effectiveness of Data in Deep Learning Era”, 2017

Page 49: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

49

モデル精度向上には、教師データ増が有効Chen Sun et al., “Revisiting Unreasonable Effectiveness of Data in

Deep Learning Era”, 2017教師データサイズと認識精度の関係

Object detection (ResNet-101)左:COCO, 右:PASCAL VOC 2007

モデルサイズと認識精度の関係Object detection (COCO)

ResNet-50/101/152

教師データサイズの指数に比例して精度向上 モデルサイズ増で精度向上ただし大量の教師データ必要

Bette

r

Bette

r

Page 50: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

50

どれぐらいの教師データが必要なのか

シナリオ1 シナリオ2

データ収集車 100 125

データ収取期間 1年(250日)8時間/日

1.5年(375日)10時間/日

データ量 (1台) 1 TB /時間 1.5 TB /時間総データ量 200 PB 733 PB

利用率・圧縮率 0.05% 0.1%

教師データ量 100 TB 733 TB

自動運転向けのデータ収集状況から推測

Page 51: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

51

WAYMO’S FLEET REACHES 4 MILLION SELF-DRIVEN MILES

4 million miles(Waymo’s fleet)

2.5 billion miles(Simulation)

(*) Google社より引用

Page 52: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

52

推定トレーニング時間

DGX-1(8x P100)

シナリオ1 シナリオ2

教師データ量 100 TB 733 TB

エポック数 30 50

トレーニング時間 (*)

AlexNet 1200 MB/s 1.0 ヶ月 1.0 年ResNet50 224 MB/s 5.2 ヶ月 5.3 年

Inception V3 152 MB/s 7.6 ヶ月 7.7 年

自動運転向けのデータ収集状況から推測

(*) DGX-1 (P100 8GPU) 使用時の推定値

計算パワーはもっと必要

Page 53: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

53

40 PetaFLOPS Peak FP64 Performance | 660 PetaFLOPS DL FP16 Performance | 660 NVIDIA DGX-1 Server Nodes

ANNOUNCING NVIDIA SATURNV WITH VOLTANVIDIA SATURNV WITH VOLTA

Page 54: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

54

どうやってトレーニング時間を短縮するか

• 単体(1ノード, 1GPU)のスピードを上げる• 現在の主流は、単精度(FP32)によるトレーニング

• より精度の低い演算器を使う(半精度、FP16)

• 多数のノード/GPUを使う• 大量のノードを使って、一つのトレーニング時間を短縮する

Page 55: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

55

16ビット演算でトレーニング高速化

Page 56: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

56

GPUのFP16演算ユニットVolta Tensor Core

Tensor Core

P100 V100

FP16 20 TFLOPS 120 TFLOPS

FP32 10 TFLOPS 15 TFLOPS

FP16

FP16× + FP32

FP32

FP16 FP32

Page 57: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

57

FP16でモデル精度は維持できるのか?

• FP16の問題

• ダイナミックレンジが狭い (2-14 から 215)

• 勾配が消失する• ウェイトが更新されない

1-bit 5-bit 10-bit

Page 58: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

58

FP16で精度を維持する方法

• 2つのテクニック• ウェイトの管理・更新にFP16とFP32の両方を使う

• Forward, Backward中はFP16を使用

• UpdateはFP32を使用

• 更新処理の時間比率はわずか

• ロス・スケーリング• ロス値をスケールアップし、勾配消失を緩和

• ウェイト更新直前に、勾配値をスケールダウン

Mixed Precision Trainingdocs.nvidia.com/deeplearning/sdk/mixed-precision-training/index.html

Page 59: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

59

FP32ウェイト更新とロス・スケーリング

勾配勾配勾配勾配勾配勾配勾配

損失関数 誤差

Backward

Forward

Upd

ate

Updateのときに、FP32ウェイトを更新し、更新後にFP16ウェイトを作成する

Backward直前に誤差をスケールアップし(例:10倍)、Update直前に勾配をスケールダウンする(例:1/10倍)

Page 60: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

60

FP16で精度を維持する方法

• FP16でもFP32モデルとほぼ同じ精度

• 主要なDLフレームワークで利用可能• NVCaffe, Caffe2• MXNet, PyTorch• TensorFlow, Theano• Microsoft Cognitive Toolkit• Chainer

Mixed Precision Trainingdocs.nvidia.com/deeplearning/sdk/mixed-precision-training/index.html

Better

Page 61: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

61

Tensor Coreによる性能向上P100 FP32, V100 FP32 vs. V100 Tensor Core

Resnet50

(*) Chainer 3.0.0rc1+ と CuPy 2.0.0rc1+ を使用

Conv

, 1x

1, 6

4

Conv

, 3x

3, 6

4

Conv

, 1x

1, 2

56

BN ReLU BN ReLU BN +x

ReLU

Page 62: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

62

Tensor Coreによる性能向上P100 FP32, V100 FP32 vs. V100 Tensor Core

0 100 200 300 400 500 600

Conv BN Relu Cupy_* Misc.

570 ms

360 ms

197 ms

ImageNet, Resnet50, Batch:128 Time per iteration [ms]

約3倍

P100 FP32

V100 FP32

V100Tensor Core

(*) Chainer 3.0.0rc1+ と CuPy 2.0.0rc1+ を使用

Page 63: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

63

マルチノードでトレーニング高速化

Page 64: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

64

マルチノード・トレーニング (分散学習)

• 多数の演算ノード、GPUを使って学習を加速

• モデル精度を下げずに、学習時間を短縮するテクニックの研究開発、ホットトピック

• Facebook, Google, Microsoft, Baidu, PFN, …

(*) Priya Goyal, et al., Facebook, “Accurate, Large Minibatch SGD: Training ImageNet in 1 Hour”

Bette

r

Page 65: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

65

マルチノード・トレーニング (分散学習)

• 多数の演算ノード、GPUを使って学習を加速

• モデル精度を下げずに、学習時間を短縮するテクニックの研究開発、ホットトピック

• Facebook, Google, Microsoft, Baidu, PFN, …

(*) www.preferred-networks.jp/ja/news/pr20171110

P100(1024)

P100(8)

P100(256)

KNL(720)

Xeon(1600)

Bette

r

Page 66: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

66

GPU

2

データ並列とモデル並列

GPU

1

GPU

1G

PU2

データ並列 モデル並列

• データセットを分割する• 各GPUは、分割後の別サブデータセットを担当• GPU間のデータ交換量少ない

• モデルを分割する• 各GPUは、分割後の別サブモデルを担当• GPU間のデータ交換量多い

Page 67: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

67

データ並列: 同期更新と非同期更新

同期更新 非同期更新

GPU

1

GPU

1

GPU

2

GPU

2

GPU

3

GPU

3

Forward Backward Update

Forward Backward Update

Forward Backward UpdateGra

dien

ts E

xcha

nge Forward Backward

Forward Backward

Forward Backward

パラー

メータ

サー

Page 68: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

68

非同期更新 同期更新

• 非同期更新の問題: Staleness

• 過去モデルで計算した勾配で、最新モデルを更新

Jianmin Chen at el., “Revisiting Distributed Synchronous SGD”, 2017

• ワーカー数を冗長に設定: N + b

• N ワーカーから勾配が届いたら、残りの b ワーカーを待たずに、モデル更新

• 外乱の少ないHomogeneousな環境であれば、b = 0でも問題ない?

Bette

r

Better

Page 69: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

69

データ並列+同期更新の課題

• スケーラビリティ

• 精度: モデル精度が低下する• ノード数増 ≒ バッチサイズ増

• Facebook: 8Kバッチ(256GPU)まで維持

• PFN: 32Kバッチ(1024GPU)まで維持

• 性能: 勾配交換の時間が増加する• 1024GPU: 2割以上が通信時間

ImageNet, ResNet50, 32バッチ/GPU

(*) Priya Goyal, et al., Facebook, “Accurate, Large Minibatch SGD: Training ImageNet in 1 Hour”

Better

Page 70: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

70

データ並列+同期更新の課題

• スケーラビリティ

• 精度: モデル精度が低下する• ノード数増 ≒ バッチサイズ増• Facebook: 8Kバッチ(256GPU)まで維持• PFN: 32Kバッチ(1024GPU)まで維持

• 性能: 勾配交換の時間が増加する• 1024GPU: 2割以上が通信時間

(*) www.preferred-networks.jp/docs/imagenet_in_15min.pdf

ImageNet, ResNet50, 32バッチ/GPU

Better

Page 71: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

71

モデル精度を維持しつつ、バッチサイズを増やす

• ラーニングレートの低下と、バッチサイズの増加は、SGD的に等価

• Noise scale:

• ε:ラーニングレート• B:バッチサイズ

• 数十epoch経過したら、ラーニングレートを下げる代わりに、バッチサイズを増やせば良い

Samuel L. Smith, et al., “Don’t’ Decay the Learning Rate, Increase the Batch Size”, 2017

Bette

r

Page 72: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

72

勾配交換の通信量を減らす

• 99%以上の勾配は、交換しなくても問題ない?

“Deep Gradient Compression: Reducing the Communication Bandwidth for Distributed Training”, 2017?

Page 73: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

73

NVIDIA NCCL

• マルチGPU、マルチノード対応、深層学習用通信ライブラリ

• ノード内• PCIe, NVLINK

• ノード間• TPC/IP, InfiniBand

Multi-GPU and Multi-node Collective Communication Primitives

• All-gather

• All-reduce

• Broadcast

• Reduce

• Reduce-scatter

Page 74: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

74

NVIDIA NCCLMulti-GPU and Multi-node Collective Communication Primitives

Bette

r

Bette

r

Page 75: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

最後に

Page 76: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

日本ディープラーニング協会

76

本協会は、ディープラーニングを中心とする革新的な技術による日本の産業競争力の向上を目指す。

そのため、ディープラーニングを事業の核とする企業および有識者が中心となり、人材育成、資格試験、産業活用促進、公的機関や産業への提言、国際連携、社会との対話 など、産業の健全な発展のために必要な活動を行う。

Page 77: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

77

アカデミックサポートプログラム

Page 78: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

78

GPU Hardware Grant Program

研究促進のための GPU無償提供プログラム

提供対象:Titan XP, Jetson TX2, Quadro P5000

ディープラーニング、ロボティクス、CAEなどの学術研究支援として、下記のGPUを無償で提供しています。

<申請方法>以下のページから申込みしてください。https://developer.nvidia.com/academic_gpu_seeding

※ 申請は英語です。※ GPUを利用する研究テーマ、どのようにGPUを利用するかを明記してください。申請者の論文リスト、CVも頂戴しています。※ 申請は、高等教育機関の教員および研究員に限ります。(企業の方、学生の方はお申込みいただけません)※ 申請者あたり、1枚/年です

Page 79: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

79

GPU Educators Kit教員のための講義ツール・演習環境提供

深層学習、ロボティクス、コンピュータサイエンスの授業用マテリアル(スライド、実習、サンプルコード)を無償で提供。NVIDIAと下記の大学の共同で作成。● ディープラーニング (ニューヨーク大学 Yann LeCun教授)● ロボティクス (カリフォルニア工科大学John Seng教授)● Accelerated computing(イリノイ大学 Wen-Mei Hwu教授)

<取得方法>https://developer.nvidia.com/teaching-kitsRequest Teaching Kitをクリック→Join nowをクリック →申込フォームに記入→承認通知後、ダウンロード

Page 80: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

8080

ニューヨーク大学 Yann LeCun教授による、機械学習及びディープラーニングの理論、及び Torch, PyTorchベースの演習を目的としたの教育用マテリアル。

<内容>• 授業用スライド(次頁シラバス参照)• テスト• 演習

ニューヨーク大学 Yann LeCun教授による機械学習、ディープラーニング理論 および Torch, PyTorchベースの演習を行うことができる教育者用マテリアル (英語)

NVIDIAのディープラーニング演習コース(DLI)、AWS Educateの無償クレジットも提供。

<内容>授業用スライド(.ppt)・・・シラバス 次頁参照実習用サンプルコード(Bitbucket上に公開)理解度確認テスト(.pdf)

<GPU提供>1.NVIDIAが提供するディープラーニング セルフ演習コース(DLI) 受講用チケットを提供(上限あり)

DLIセルフ受講コース https://developer.nvidia.com/dli/onlinelabs

2.AWS Educateのクレジットを提供教育者向け $200、学生向け $125(100人まで)AWS Educate https://aws.amazon.com/jp/education/awseducate/

https://developer.nvidia.com/teaching-kits

Page 81: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

8181

入手方法

1.右記のサイトにアクセス https://developer.nvidia.com/educators

2.「Join Now」をクリック

3.必要情報を入力

4.数日以内に Accept メール、Bitbucketのアカウント登録メールが届く

5.右記のサイトにサイドアクセス https://developer.nvidia.com/educators

6.ログイン

7.Member areaをクリック

8.ダウンロードページからダウンロードできます

4の登録完了後にログインすると、Join now から Member areaに表示がかわります。

ログイン

Page 82: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

8282

Teaching Kit 利用条件

Teaching kitの登録、ダウンロード、利用は、教育関係者に限ります。

本Teaching Kitのコンテンツを、教育以外の商用目的で利用することはできません。

Page 83: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

83

Deep Learning Institute(DLI)ディープラーニングを演習を通して学ぶためのトレーニングプラットフォーム

基礎編応用分野ごとの応用編

講師付ハンズオン セルフトレーニング

エヌビディアが有償で提供しているディープラーニングのハンズオンセミナー“Deep Learning Institute(DLI) ”は、これまでに世界中で10万人以上が受講している演習プログラムです。

この“DLI”を、学生の皆さんに無償で受けていただけけるプログラムが始まりました。海外ではすでに、オックスフォード大学、カリフォルニア大学ロサンゼルス校、香港工科大学、アリゾナ州立大学などで導入され、DLIが開講されています。

DLI Ambassador 募集学生の皆さんにDLIを無償で受講いただくためには、学内等で講師をしていただく先生方に「アンバサダー」となっていただく必要があります。学内でディープラーニングの授業・演習を広げたいとお考えの教育機関関係者の方は、お気軽にお問い合わせください。

Page 84: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

84

演習プログラムの特長

Page 85: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術:

85

ハンスオントレーニング難易度 タイトル 日本語 フレームワーク 必要知識 学習/推論 概要難易度1 (はじめての方向け)☆ Image Classification with DIGITS あり DIGITS,nv-

caffe google protobuf 学習/推論 DLを用いた画像分類。ニューラルネットワークの最適化のワークフローを学べる。初心者お勧め。DIGITS(UIあり)ベースでコマンドラインからの操作なし。

☆ Applications of Deep Learning with Caffe, Theano and Torch あり Caffe,Torch,T

heano python,Lua 学習/推論Caffe,Torch,Theanoの大まかな使い方。ディープラーニング初心者向けの簡単な説明が主だが、一部ソースコードを確認しながら進める。50分ショートコース。座学とセットで2時間セッションにすることも可能。

☆ Signal Processing using DIGITS DIGITS,nv-caffe google protobuf 学習/推論 DLによる画像分類を応用して、信号処理をしてみる。スペクトグラム画像(信号から画像を生成)し、そ

れを用いて学習。「Image Classification using DIGITS」を先に受講することを推奨。難易度2 (初心者向け/DLのHello worldとpythonの基礎が分かる方),CNNとは何であるかを理解している方☆☆ Object Detection with DIGITS あり DIGITS,nv-

caffe google protobuf 学習/推論 FCNを用いた物体検出のワークフローや学習時の注意点を学ぶ。GUIあり。ImageSegmentationより前に受講することを推奨。

☆☆ Exploring TensorFlow on GPUs TensorFlow python(numpy) 学習/推論線形回帰などの基礎的な部分からニューラルネットワークまでTFでの組み方を学ぶ。マルチGPU学習コードの書き方も説明あり。

☆☆ Neural Network Deployment with DIGITS and TensorRT

caffe,tensorRT C++/python 推論 推論特化ハンズオン。DIGITS、caffe(python interface)、TensorRTを用いた推論の実現手段を学ぶ。

☆☆Image Classification with TensorFlow: Radiomics - 1p19q Chromosome Status Classification

Keras,TensorFlow python 学習/推論 Kerasの使い方(バックエンドはTensorFlow)。CNNの基礎。Kerasを用いたCNNネットワークの定義方

法と学習。

☆☆Deep Learning for Genomics using DragoNN with Keras and Theano

Keras,Theano python(matplot) 学習/推論 Kerasの使い方(バックエンドはTheano)。画像分類の応用として、Kerasのライブラリである

DragonNNを使い、ディープラーニングを用いたゲノミクス(遺伝子学)解析にチャレンジする。難易度3 (中級者向け/DLの基礎が分かり、アプリケーション応用など具体的な体験を希望される方)

☆☆☆ Image Segmentation with TensorFlow あり TensorFlow python(numpy) 学習/推論

医療画像をテーマにFCN(Full Convolutional NeuralNetwork)による領域分割方法およびチューニング方法を学ぶ。TensorFlowの使い方についてもハンズオンあり。ObjectDetectionのあとに受講することを推奨。

☆☆☆ Medical Image Segmentation Using DIGITS あり DIGITS,nv-

caffepython,google

protobuf 学習/推論内容は「Image Segmentation with TensorFlow」とほぼ同様で、転移学習の効果を確認する内容が追加されている。caffeのpython layer機能の説明あり。

☆☆☆Modeling Time Series Data with Recurrent Neural Networks in Keras

あり Keras,Theano python(pandas) 学習/推論 EHR(電子健康記録)データとディープラーニング(RNN) を用いて、患者の重症度を予測する。RNNとLSTMの基礎知識があると良い。「Introduction to RNNs」の後に受講するとを推奨。

☆☆☆ Introduction to RNNs あり Torch Lua&python(numpy) 学習/推論時系列データを扱う為のRNNの特性を学ぶ。2進数の加算と言語処理をテーマとして扱う。Luaと

python(numpy)の理解が必須。CNN系のラボの後に受講することを推奨。

☆☆☆Image creation using Generative Adversarial Networks in Tensorflow and DIGITS

あり DIGITS, TensorFlow

python, TensorFlow 学習/推論

敵対的生成ネットワーク(GAN)を用いた、画像生成を体験する。はじめにMNISTデータセットで、GANの学習と画像生成を試す。その後、CelebAデータセットで学習済みのモデルを用いて、顔画像の生成や属性編集などにトライする。

番外編

☆Deep Learning Workflows with TensorFlow, MXNet and NVIDIA-Docker

あり - docker -dockerおよびnvidia-dockerの基礎。Linuxのターミナル操作が出来る事が前提。DLの環境構築でデファクトとなりつつあるdocker上でGPUを効率よく活用する方法および、docker上でのDLワークフローを体験する。

Page 86: ディープラーニング最新事情報ならびに その進化を支え …prmu/jpn/ieice/2018/dt_01_002s.pdf · Approach: CNN -based Deep Learning 結果vs. 最高水準現行技術: