INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition...

52
1 Carlo Nardone, Sr. Solution Architect, EMEA February 2017 INTRO TO DEEP LEARNING HPC ADMINTECH 2017

Transcript of INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition...

Page 1: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

1

Carlo Nardone, Sr. Solution Architect, EMEA

February 2017

INTRO TO DEEP LEARNING

HPC ADMINTECH 2017

Page 2: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

2

Artificial Intelligence Computer Graphics GPU Computing

NVIDIA “THE AI COMPUTING COMPANY”

Page 3: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

3

Page 4: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

4

AI IS EVERYWHERE

“Find where I parked my car” “Find the bag I just saw in this magazine”

“What movie should I watch next?”

Page 5: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

5

FUELING ALL INDUSTRIES

Increasing public safety with smart video surveillance at airports & malls

Providing intelligent services in hotels, banks and stores

Separating weeds as it harvests, reduces chemical usage by 90%

Page 6: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

6

AI & DEEP LEARNING: THE HPC «KILLER APP»

Page 7: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY
Page 8: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY
Page 9: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY
Page 10: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY
Page 11: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY
Page 12: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY
Page 13: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY
Page 14: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY
Page 15: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY
Page 16: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

16

MACHINE LEARNING & DEEP LEARNING

Page 17: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

17

THE BIG BANG IN MACHINE LEARNING

DNN GPU BIG DATA

“The GPU is the workhorse of modern A.I.”

Page 18: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

18

MACHINE LEARNING IN A NUTSHELL

?

TRAINING DATA

LIVE DATA PREDICTION ANALYSIS

MACHINE LEARNING

Page 19: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

19

MACHINE LEARNING IN A NUTSHELL

?

TRAINING DATA

LIVE DATA PREDICTION ANALYSIS

MACHINE LEARNING

GPUs for

Classification

GPUs for Training

Page 20: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

20

MACHINE LEARNING & DEEP LEARNING

Machine Learning

Neural Networks

Deep

Learning

Page 21: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

22

TRADITIONAL MACHINE PERCEPTION Hand-tuned features

Speaker ID,

speech transcription, …

Topic

classification,

machine

translation,

sentiment

analysis…

Raw data Feature extraction Result Classifier/ detector

SVM,

neural net,

HMM, neural net,

Clustering, HMM,

LDA, LSA

Source: courtesy of Andrew Ng, Stanford U.

Page 22: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

23

NEURAL NETWORKS APPROACH

Testing:

Dog

Cat

Honey

badger

“Classifier” Dog

Cat

Raccoon

“Classifier” Dog

Training:

Parameters:

Model

Model (same structure)

Loss function output

“Classifier”

Source: courtesy of Andrew Ng, Stanford U.

Page 23: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

24

DEEP LEARNING — A NEW COMPUTING MODEL

“Software that writes software”

“little girl is eating

piece of cake"

LEARNING

ALGORITHM

“millions of trillions

of FLOPS”

(A lot of) Labeled Data

Page 24: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

25

DEEP NEURAL NETWORK

Input Result

Today’s Largest Networks ~10 layers 1B parameters 10M images ~30 Exaflops ~30 GPU days Human brain has trillions of parameters – 1,000 more.

Image source: “Unsupervised Learning of Hierarchical Representations with Convolutional Deep Belief Networks” ICML 2009 & Comm. ACM 2011. Honglak Lee, Roger Grosse, Rajesh Ranganath, and Andrew Ng.

Page 25: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

26

39%

45%

55%

62%

66%

72% 75%

79% 83%

86%

87.5%

30%

40%

50%

60%

70%

80%

90%

100%

72%

74%

84%

88%

93%

96%

65%

70%

75%

80%

85%

90%

95%

100%

2010 2011 2012 2013 2014 2015

ImageNet Accuracy

NVIDIA GPU

AMAZING RATE OF IMPROVEMENT Pedestrian Detection

CALTECH

65%

70%

75%

80%

85%

90%

95%

100%

11/2013 6/2014 12/2014 7/2015 1/2016

Accura

cy

CV-based DNN-based

Object Detection

KITTI

Image Recognition

IMAGENET

Top Score

NVIDIA DRIVENet

Page 26: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

DEEP NEURAL NETWORKS 101

Page 27: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

28

BIOLOGICALLY INSPIRED “NEURON”

Source: @karpathy U.Stanford course CS231n http://cs231n.github.io/

Page 28: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

29

ACTIVATION FUNCTION

Sigmoid – squashes to range [0,1] 𝜎 𝑥 = 1

1+𝑒−𝑥

Tanh - squashes to range [-1, 1].

ReLU – squashes to range [0,1] 𝑓 𝑥 = 𝑚𝑎𝑥 0, 𝑥

… many more in literature

Left: Sigmoid non-linearity squashes real numbers to range between

[0,1] Right: The tanh non-linearity squashes real numbers to range

between [-1,1].

Left: Rectified Linear Unit (ReLU) activation function, which is

zero when x < 0 and then linear with slope 1 when x > 0. Right: A

plot from Krizhevsky et al. (pdf) paper indicating the 6x

improvement in convergence with the ReLU unit compared to the

tanh unit.

Page 29: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

30

FEED-FORWARD NEURAL NETWORKS Multilayer architecture

Deep nets: with multiple hidden layers

Efficient training enabled with backpropagation, in 1974

Each neuron and each weight parameter is just a single floating point number

X1

X2

X3

X4

Z1,1

Z1,2

Z1,3

Z2,1

Z2,2

Z2,3

Y1

Y2

Page 30: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

31

Tre

e

Cat

Dog

Machine Learning Software

“turtle”

Forward Propagation

Compute weight update to nudge

from “turtle” towards “dog”

Backward Propagation

Page 31: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

32

Tre

e

Cat

Dog

Machine Learning Software

“turtle”

Forward Propagation

Compute weight update to nudge

from “turtle” towards “dog”

Backward Propagation

Trained Model

Repeat

Training

Page 32: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

33

Tre

e

Cat

Dog

Machine Learning Software

“turtle”

Forward Propagation

Compute weight update to nudge

from “turtle” towards “dog”

Backward Propagation

Trained Model

“cat”

Repeat

Training

Inference

Page 33: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

34

TRAINING VS INFERENCE

Page 34: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

35

CONVOLUTIONAL NEURAL NETWORKS Local receptive field + weight sharing

Introduced by Yann LeCun et al in 1998

MNIST: 0.7% error rate

Page 35: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

36

CONVOLUTION

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

4

0

0

0

0

0

0

0

-4

1

0

-8

Source

Pixel

Convolution

kernel

New pixel value

(destination

pixel)

Center element of the kernel is

placed over the source pixel.

The source pixel is then

replaced with a weighted sum

of itself and nearby pixels.

Page 36: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

37

POOLING LAYER (SUBSAMPLING)

Source: @karpathy U.Stanford course CS231n http://cs231n.github.io/

Page 37: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

38

RECURRENT NEURAL NETWORKS Time-Dependent or Sequence-Based Data

Source: courtesy of Alex Graves, TUM

Page 38: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

39

RECURRENT NEURAL NETWORKS Time-Dependent or Sequence-Based Data

RNN Backpropagation: Rumelhart, Hinton, Williams, 1996

Source: courtesy of Alex Graves, TUM and Boris Ginzburg, NVIDIA

Page 39: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

40

RECURRENT NEURAL NETWORKS Time-Dependent or Sequence-Based Data

RNN Backpropagation: Rumelhart, Hinton, Williams, 1996

LSTM Cell: Hochreiter and Schmidhuber, 1997

Source: courtesy of Alex Graves, TUM and Boris Ginzburg, NVIDIA

Page 41: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

42

GOOGLE DEEPMIND ALPHAGO CHALLENGE

Page 42: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

ACTIVE LEARNING

Data Scientist Vehicle

Drive PX: Deploy

Model Classification

Detection

Segmentation DGX-1: Train

Network

Solver

Dashboard

Page 43: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

GPU DEEP LEARNING

Page 44: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

45

TESLA REVOLUTIONIZES DEEP LEARNING

GOOGLE BRAIN APPLICATION

BEFORE TESLA AFTER TESLA

Cost $5,000K $200K

Servers 1,000 Servers 16 Tesla Servers

Energy 600 KW 4 KW

Performance 1x 6x

Page 45: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

46

GPUs deliver -- - same or better prediction accuracy - faster results - smaller footprint - lower power

NEURAL NETWORKS

GPUS

Inherently

Parallel ✓ ✓

Matrix

Operations ✓ ✓

FLOPS ✓ ✓

Bandwidth ✓ ✓

GPUS AND DEEP LEARNING

Page 46: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

47

POWERING THE DEEP LEARNING ECOSYSTEM NVIDIA SDK accelerates every major framework

COMPUTER VISION

OBJECT DETECTION IMAGE CLASSIFICATION

SPEECH & AUDIO

VOICE RECOGNITION LANGUAGE TRANSLATION

NATURAL LANGUAGE PROCESSING

RECOMMENDATION ENGINES SENTIMENT ANALYSIS

DEEP LEARNING FRAMEWORKS

Mocha.jl

NVIDIA DEEP LEARNING SDK

developer.nvidia.com/deep-learning-software

Page 47: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

48

EVERY DEEP LEARNING

FRAMEWORK IS

GPU-ACCELERATED

TORCH

THEANO

CAFFE

MATCONVNET

PURINEMOCHA.JL

MINERVA MXNET*

BIG SUR TENSORFLOW

WATSON CNTK

Page 48: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

49

cuDNN Deep Learning Primitives

IGNITING ARTIFICIAL

INTELLIGENCE

▪ GPU-accelerated Deep Learning

subroutines

▪ High performance neural network

training

▪ Accelerates Major Deep Learning

frameworks: Caffe, Theano, Torch

▪ Up to 3.5x faster AlexNet training

in Caffe than baseline GPU

Millions of Images Trained Per Day

Tiled FFT up to 2x faster than FFT

developer.nvidia.com/cudnn

Page 49: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

50

NVIDIA DIGITS Interactive Deep Learning GPU Training System

developer.nvidia.com/digits

Interactive deep neural network development environment for image classification and object detection

Schedule, monitor, and manage neural network training jobs

Analyze accuracy and loss in real time

Track datasets, results, and trained neural networks

Scale training jobs across multiple GPUs automatically

Page 50: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

51

A COMPLETE DEEP LEARNING PLATFORM

MANAGE TRAIN DEPLOY

DIGITS

DATA CENTER AUTOMOTIVE

TRAIN TEST

MANAGE / AUGMENT EMBEDDED

TENSOR RT (GIE)

Page 51: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

52

DEEP LEARNING EVERYWHERE

Page 52: INTRO TO DEEP LEARNING - SIE€¦ · cy CV-based DNN-based Object Detection KITTI Image Recognition IMAGENET Top Score NVIDIA DRIVENet . DEEP NEURAL NETWORKS 101 . 28 BIOLOGICALLY

53

THANK YOU! [email protected]

developer.nvidia.com/deep-learning