image classification with digits - gpucomputing...
TRANSCRIPT
![Page 1: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/1.jpg)
1
Twin Karmakharm
Image Classification with DIGITS
Certified Instructor, NVIDIA Deep Learning InstituteNVIDIA Corporation
![Page 2: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/2.jpg)
2
DEEP LEARNING INSTITUTE
DLI Mission
Helping people solve challenging problems using AI and deep learning.
• Developers, data scientists and engineers
• Self-driving cars, healthcare and robotics
• Training, optimizing, and deploying deep neural networks
![Page 3: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/3.jpg)
3 3
TOPICS
• Lab Perspective
• What is Deep Learning
• Handwritten Digit Recognition
• Caffe
• DIGITS
• Lab
• Discussion / Overview
• Launching the Lab Environment
• Lab Review
![Page 4: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/4.jpg)
4
LAB PERSPECTIVE
![Page 5: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/5.jpg)
5
WHAT THIS LAB IS
• An introduction to: • Deep Learning• Workflow of training a network • Understanding the results
• Hands-on exercises using Caffe and DIGITS for computer vision and classification
![Page 6: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/6.jpg)
6
WHAT THIS LAB IS NOT
• Intro to machine learning from first principles
• Rigorous mathematical formalism of neural networks
• Survey of all the features and options of Caffe, DIGITS, or other tools
![Page 7: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/7.jpg)
7
ASSUMPTIONS
• No background in Deep Learning needed
• Understand how to:
• Navigate a web browser
• Download files
• Locate files in file managers
![Page 8: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/8.jpg)
8
TAKE AWAYS
• Understanding of the workflow of Deep Learning
• Ability to setup and train a convolutional neural network
• Enough info to be “dangerous”
• i.e., you can setup your own CNN and know where to go to learn more
![Page 9: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/9.jpg)
9
WHAT IS DEEP LEARNING?
![Page 10: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/10.jpg)
10
Machine Learning
Neural Networks
Deep Learning
![Page 11: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/11.jpg)
11 11
DEEP LEARNING EVERYWHERE
INTERNET & CLOUD
Image ClassificationSpeech Recognition
Language TranslationLanguage ProcessingSentiment AnalysisRecommendation
MEDIA & ENTERTAINMENT
Video CaptioningVideo Search
Real Time Translation
AUTONOMOUS MACHINES
Pedestrian DetectionLane Tracking
Recognize Traffic Sign
SECURITY & DEFENSE
Face DetectionVideo SurveillanceSatellite Imagery
MEDICINE & BIOLOGY
Cancer Cell DetectionDiabetic GradingDrug Discovery
![Page 12: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/12.jpg)
12 12
THE BIG BANG IN MACHINE LEARNING
“ Google’s AI engine also reflects how the world of computer hardware is changing. (It) depends on machines equipped with GPUs… And it depends on these chips more than the larger tech universe realizes.”
DNN GPUBIG DATA
![Page 13: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/13.jpg)
13
ARTIFICIAL NEURONS
From Stanford cs231n lecture notes
Biological neuron
w1 w2 w3
x1 x2 x3
y
y=F(w1x1+w2x2+w3x3)
Artificial neuron
Weights (Wn) = parameters
![Page 14: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/14.jpg)
14
ARTIFICIAL NEURAL NETWORKA collection of simple, trainable mathematical units that collectively
learn complex functions
Input layer Output layer
Hidden layers
Given sufficient training data an artificial neural network can approximate very complexfunctions mapping raw data to output decisions
![Page 15: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/15.jpg)
15
DEEP NEURAL NETWORK (DNN)
Input Result
Application components:
Task objectivee.g. Identify face
Training data10-100M images
Network architecture~10s-100s of layers1B parameters
Learning algorithm~30 Exaflops1-30 GPU days
Raw data Low-level features Mid-level features High-level features
![Page 16: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/16.jpg)
16 16
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 (a.k.a. filter) 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.
CONVOLUTION
![Page 17: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/17.jpg)
17
DEEP LEARNING APPROACH
Deploy:
Dog
Cat
Honey badger
Errors
DogCat
Raccoon
Dog
Train:
DNN
DNN
![Page 18: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/18.jpg)
18
DEEP LEARNING APPROACH - TRAINING
Input
Process• Forward propagation
yields an inferred label for each training image
• Loss function used to calculate difference between known label and predicted label for each image
• Weights are adjusted during backward propagation
• Repeat the process
Forward propagation
Backward propagation
![Page 19: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/19.jpg)
19
ADDITIONAL TERMINOLOGY• Hyperparameters – parameters specified before training begins
• Can influence the speed in which learning takes place• Can impact the accuracy of the model• Examples: Learning rate, decay rate, batch size
• Epoch – complete pass through the training dataset
• Activation functions – identifies active neurons• Examples: Sigmoid, Tanh, ReLU
• Pooling – Down-sampling technique• No parameters (weights) in pooling layer
![Page 20: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/20.jpg)
20
HANDWRITTEN DIGIT RECOGNITION
![Page 21: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/21.jpg)
21 21
HANDWRITTEN DIGIT RECOGNITION
• MNIST data set of handwritten digits from Yann Lecun’s website
• All images are 28x28 grayscale
• Pixel values from 0 to 255
• 60K training examples / 10K test examples
• Input vector of size 784
• 28 * 28 = 784
• Output value is integer from 0-9
HELLO WORLD of machine learning?
![Page 22: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/22.jpg)
22
CAFFE
![Page 23: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/23.jpg)
23
WHAT IS CAFFE?
• Pure C++/CUDA architecture
• Command line, Python, MATLAB interfaces
• Fast, well-tested code
• Pre-processing and deployment tools, reference models and examples
• Image data management
• Seamless GPU acceleration
• Large community of contributors to the open-source project
An open framework for deep learning developed by the Berkeley Vision and Learning Center (BVLC)
caffe.berkeleyvision.orghttp://github.com/BVLC/caffe
![Page 24: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/24.jpg)
24 24
CAFFE FEATURES
Protobuf model format
• Strongly typed format
• Human readable
• Auto-generates and checks Caffe code
• Developed by Google
• Used to define network architecture and training parameters
• No coding required!
name: “conv1”type: “Convolution”bottom: “data”top: “conv1”convolution_param {
num_output: 20kernel_size: 5stride: 1weight_filler {
type: “xavier”}
}
Deep Learning model definition
![Page 25: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/25.jpg)
25
NVIDIA’S DIGITS
![Page 26: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/26.jpg)
26
NVIDIA’S DIGITSInteractive Deep Learning GPU Training System
• Simplifies common deep learning tasks such as:
• Managing data
• Designing and training neural networks on multi-GPU systems
• Monitoring performance in real time with advanced visualizations
• Completely interactive so data scientists can focus on designing and training networks rather than programming and debugging
• Open source
![Page 27: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/27.jpg)
27
DIGITS - HOME
Clicking DIGITS will bring you to this Home screen
Clicking here will present different options for model and dataset creation
Click here to see a list of existing datasets or models
![Page 28: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/28.jpg)
28
DIGITS - DATASET
Different options will be presented based upon the task
![Page 29: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/29.jpg)
29
DIGITS - MODEL
Differences may exist between model tasks
Can anneal the learning rate
Define custom layers with Python
![Page 30: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/30.jpg)
30
DIGITS - TRAINING
Annealed learning rate
Loss function and accuracy during training
![Page 31: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/31.jpg)
31
DIGITS - VISUALIZATION
Once training is complete DIGITS provides an easy way to visualize what happened
![Page 32: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/32.jpg)
32
DIGITS – VISUALIZATION RESULTS
![Page 33: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/33.jpg)
33
LAB DISCUSSION / OVERVIEW
![Page 34: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/34.jpg)
34
LAB OVERVIEW• Learn about the workflow of Deep Learning
• Create dataset• Create model• Evaluate model results• Try different techniques to improve initial results
• Train your own Convolutional Neural Network using Caffe and DIGITS to identify handwritten characters
![Page 35: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/35.jpg)
35
CREATE DATASET IN DIGITS
• Dataset settings
• Image Type: Grayscale
• Image Size: 28 x 28
• Training Images: /home/ubuntu/data/train_small
• Select “Separate test images folder” checkbox
• Test Images: /home/ubuntu/data/test_small
• Dataset Name: MNIST Small
![Page 36: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/36.jpg)
36
CREATE MODEL
• Select the “MNIST small” dataset
• Set the number of “Training Epochs” to 10
• Set the framework to “Caffe”
• Set the model to “LeNet”
• Set the name of the model to “MNIST small”
• When training done, Classify One :
/home/ubuntu/data/test_small/2/img_4415.png
![Page 37: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/37.jpg)
37 37
Loss function(Validation)
Loss function(Training)
Accuracyobtained from
validation dataset
EVALUATE THE MODEL
![Page 38: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/38.jpg)
38
ADDITIONAL TECHNIQUES TO IMPROVE MODEL
• More training data
• Data augmentation
• Modify the network
![Page 39: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/39.jpg)
39
LAUNCHING THE LAB ENVIRONMENT
![Page 40: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/40.jpg)
40
NAVIGATING TO QWIKLABS
1. Navigate to: https://nvlabs.qwiklab.com
2. Login or create a new account
![Page 41: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/41.jpg)
41
ACCESSING LAB ENVIRONMENT
3. Select the event specific In-Session Class in the upper left
4. Click the “Image Classification with DIGITS” Class from the list
![Page 42: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/42.jpg)
42
LAUNCHING THE LAB ENVIRONMENT5. Click on the Select
button to launch the lab environment
• After a short wait, lab Connection information will be shown
• Please ask Lab Assistants for help!
![Page 43: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/43.jpg)
43
LAUNCHING THE LAB ENVIRONMENT
6. Click on the Start Lab button
You should see that the lab environment is “launching” towards the upper-right corner
![Page 44: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/44.jpg)
44
CONNECTING TO THE LAB ENVIRONMENT
7. Click on “here” to access your lab environment / Jupyter notebook
![Page 45: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/45.jpg)
45
CONNECTING TO THE LAB ENVIRONMENT
You should see your “Getting Started With Deep Learning” Jupyter notebook
![Page 46: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/46.jpg)
46
JUPYTER NOTEBOOK
1. Place your cursor in the code
2. Click the “run cell” button
3. Confirm you receive the same result
![Page 47: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/47.jpg)
47
STARTING DIGITS
Instruction in Jupyter notebook will link you to DIGITS
![Page 48: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/48.jpg)
48
ACCESSING DIGITS
• Will be prompted to enter a username to access DIGITS
• Can enter any username
• Use lower case letters
![Page 49: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/49.jpg)
49
LAB REVIEW
![Page 50: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/50.jpg)
50
FIRST RESULTSSmall dataset ( 10 epochs )
• 96% of accuracy achieved
• Training is done within one minute
SMALL DATASET
1 : 99.90 %
2 : 69.03 %
8 : 71.37 %
8 : 85.07 %
0 : 99.00 %
8 : 99.69 %
8 : 54.75 %
![Page 51: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/51.jpg)
51
FULL DATASET6x larger dataset
• Dataset
• Training Images: /home/ubuntu/data/train_full
• Test Image: /home/ubuntu/data/test_full
• Dataset Name: MNIST full
• Model
• Clone “MNIST small”.
• Give a new name “MNIST full” to push the create button
![Page 52: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/52.jpg)
52
SMALL DATASET FULL DATASET
1 : 99.90 % 0 : 93.11 %
2 : 69.03 % 2 : 87.23 %
8 : 71.37 % 8 : 71.60 %
8 : 85.07 % 8 : 79.72 %
0 : 99.00 % 0 : 95.82 %
8 : 99.69 % 8 : 100.0 %
8 : 54.75 % 2 : 70.57 %
SECOND RESULTSFull dataset ( 10 epochs )
• 99% of accuracy achieved
• No improvements in recognizing real-world images
![Page 53: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/53.jpg)
53
DATA AUGMENTATIONAdding Inverted Images
• Pixel(Inverted) = 255 – Pixel(original)
• White letter with black background
• Black letter with white background
• Training Images:/home/ubuntu/data/train_invert
• Test Image:/home/ubuntu/data/test_invert
• Dataset Name: MNIST invert
![Page 54: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/54.jpg)
54
SMALL DATASET FULL DATASET +INVERTED
1 : 99.90 % 0 : 93.11 % 1 : 90.84 %
2 : 69.03 % 2 : 87.23 % 2 : 89.44 %
8 : 71.37 % 8 : 71.60 % 3 : 100.0 %
8 : 85.07 % 8 : 79.72 % 4 : 100.0 %
0 : 99.00 % 0 : 95.82 % 7 : 82.84 %
8 : 99.69 % 8 : 100.0 % 8 : 100.0 %
8 : 54.75 % 2 : 70.57 % 2 : 96.27 %
DATA AUGMENTATIONAdding inverted images ( 10 epochs )
![Page 55: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/55.jpg)
55
MODIFY THE NETWORKAdding filters and ReLU layer
layer { name: "pool1“type: "Pooling“…
}
layer {name: "reluP1"type: "ReLU"bottom: "pool1"top: "pool1"
}
layer {name: "reluP1“
layer { name: "conv1" type: "Convolution"
...convolution_param {num_output: 75...
layer {name: "conv2"type: "Convolution"...convolution_param {num_output: 100...
![Page 56: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/56.jpg)
56
MODIFY THE NETWORKAdding ReLU Layer
![Page 57: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/57.jpg)
57
SMALL DATASET FULL DATASET +INVERTED ADDING LAYER
1 : 99.90 % 0 : 93.11 % 1 : 90.84 % 1 : 59.18 %
2 : 69.03 % 2 : 87.23 % 2 : 89.44 % 2 : 93.39 %
8 : 71.37 % 8 : 71.60 % 3 : 100.0 % 3 : 100.0 %
8 : 85.07 % 8 : 79.72 % 4 : 100.0 % 4 : 100.0 %
0 : 99.00 % 0 : 95.82 % 7 : 82.84 % 2 : 62.52 %
8 : 99.69 % 8 : 100.0 % 8 : 100.0 % 8 : 100.0 %
8 : 54.75 % 2 : 70.57 % 2 : 96.27 % 8 : 70.83 %
MODIFIED NETWORKAdding filters and ReLU layer ( 10 epochs )
![Page 58: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/58.jpg)
58
WHAT’S NEXT
• Use / practice what you learned
• Discuss with peers practical applications of DNN
• Reach out to NVIDIA and the Deep Learning Institute
![Page 59: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/59.jpg)
59 59
WHAT’S NEXT
…for the chance to win an NVIDIA SHIELD TV.
Check your email for a link.
TAKE SURVEYCheck your email for details to access more DLI training online.
ACCESS ONLINE LABS
Visit www.nvidia.com/dli for workshops in your area.
ATTEND WORKSHOPVisit https://developer.nvidia.com/join for more.
JOIN DEVELOPER PROGRAM
![Page 60: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/60.jpg)
60 60
![Page 61: Image Classification with DIGITS - GPUComputing Sheffieldgpucomputing.shef.ac.uk/static/slides/2018-01-29...23 WHAT IS CAFFE? • Pure C++/CUDA architecture • Command line, Python,](https://reader034.vdocument.in/reader034/viewer/2022042214/5ebacdf86ce216204429e11c/html5/thumbnails/61.jpg)
61
www.nvidia.com/dli
Instructor: Charles Killam, LP.D.