introduction to web-based machine learning with …...2018/01/17  · machine learning i march 8th...

23
Introduction to Web-Based Machine Learning with DIGITS 1

Upload: others

Post on 11-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Introduction to Web-Based Machine Learning with DIGITS

1

Page 2: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Machine Learning on Images

2

Given examples, can we train a computer to do:

Source - http://cs231n.github.io/

Page 3: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Machine Learning on Images

3 Source - http://cs231n.github.io/

Page 4: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Artificial Neural Networks

4

• Signal goes in, via input layer

• Weighted links transfer input values to neurons in hidden layers

• Signals are summed at hidden neurons and passed through transfer/activation function

• Processed signal arrives at output layer

• Decisions made using output signal(s)

Page 5: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

What’s in an (Artificial) Neuron?

5 Source - http://cs231n.github.io/

Page 6: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Where’s the Knowledge?

6

Weights encapsulate the knowledge of a network

Network learns using an algorithm that optimize weights given examples

Back propagation is commonly used – learn weights from examples usingsome linear algebra

Page 7: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Classification Example – MNIST

7

Which digit is it?

Page 8: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Why Deep Learning?

8

Type Classifier Distortion Preprocessing Error rate (%)

Linear classifier Pairwise linear classifier None Deskewing 7.6[9]

K-Nearest NeighborsK-NN with non-linear deformation (P2DHMDM)

None Shiftable edges 0.52[18]

Boosted StumpsProduct of stumps on Haar features

None Haar features 0.87[19]

Non-linear classifier 40 PCA + quadratic classifier None None 3.3[9]

Support vector machineVirtual SVM, deg-9 poly, 2-pixel jittered

None Deskewing 0.56[20]

Neural network 2-layer 784-800-10 None None 1.6[21]

Neural network 2-layer 784-800-10 elastic distortions None 0.7[21]

Deep neural network6-layer 784-2500-2000-1500-1000-500-10

elastic distortions None 0.35[22]

Convolutional neural network6-layer 784-40-80-500-1000-2000-10

None Expansion of the training data 0.31[15]

Convolutional neural network6-layer 784-50-100-500-1000-10-10

None Expansion of the training data 0.27[16]

Convolutional neural networkCommittee of 35 CNNs, 1-20-P-40-P-150-10

elastic distortions Width normalizations 0.23[8]

Convolutional neural networkCommittee of 5 CNNs, 6-layer 784-50-100-500-1000-10-10

None Expansion of the training data 0.21[17]

https://en.wikipedia.org/wiki/MNIST_database

Different Classifiers on the MNIST Database

Page 9: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Why Deep Learning?

9

More layers can encapsulate more knowledge

More weights to train – need more data, need more computation

Page 10: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Convolutional Neural Networks

10

Complex architectures, many layers – really good for image recognition tasks

Lots of computing power needed to do the training mathematics!

Page 11: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

GPUs to the Rescue!

11

GPU cards are exceptionally well suited to Neural Network Mathematics

Orders of magnitude faster than CPU-based training

Page 12: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

How to Create and Train a Neural Network?

12

The bad old days – (try to)write low-level performant, complex, numerical code

Source: http://www.cs.bham.ac.uk/~jxb/NN/nn.html

Page 13: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

How to Create and Train a Neural Network?

13

Now many great frameworks – easier, but coding still needed (often Python)

Page 14: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

NVIDIA DIGITS

14

• Web Based Platform

• Uses Popular Frameworks

• Define, Train, Test Networks

• Interact with Images

• Uses GPU Cards

DIGITS is a great platform if you want to work interactively, with no/minimal coding

Page 15: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Launch via the portal – BioHPC OnDemand

15

Start a WebDIGITS session, and then connect using link provided in your browser

Page 16: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Using DIGITS

16

1. Create a Dataset

2. Create and Train a Model

3. Run Predictions

Page 17: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Demo 1 – MNIST Classification

17

• Handwritten digits

• 52,500 Images for training

• We will use the LeNet modelA Pioneering Convolutional Neural Network

Follow tutorial at:

https://github.com/NVIDIA/DIGITS/blob/master/docs/GettingStarted.md

Page 18: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Segmentation Example – Sunnybrook Cardiac Data

18

Radau P, Lu Y, Connelly K, Paul G, Dick AJ, Wright GA. "Evaluation Framework for

Algorithms Segmenting Short Axis Cardiac MRI." The MIDAS Journal -Cardiac MR Left Ventricle Segmentation Challenge, http://hdl.handle.net/10380/3070

MRI images in DICOM format. Find the left ventricle

Page 19: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Segmentation Example – Sunnybrook Cardiac Data

19

Radau P, Lu Y, Connelly K, Paul G, Dick AJ, Wright GA. "Evaluation Framework for

Algorithms Segmenting Short Axis Cardiac MRI." The MIDAS Journal -Cardiac MR Left Ventricle Segmentation Challenge, http://hdl.handle.net/10380/3070

MRI images in DICOM format. Find the left ventricle

There it is – or so an expert tells us!

Page 20: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Segmentation Example – Sunnybrook Cardiac Data

20

Radau P, Lu Y, Connelly K, Paul G, Dick AJ, Wright GA. "Evaluation Framework for

Algorithms Segmenting Short Axis Cardiac MRI." The MIDAS Journal -Cardiac MR Left Ventricle Segmentation Challenge, http://hdl.handle.net/10380/3070

MRI images in DICOM format. Find the left ventricle

Page 21: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Demo 2 – Sunnybrook Cardiac Data

21

Bit more complicated than Demo 1

• Need to use a plugin that reads DICOM and the expert ventricle contours

• Need to use a DICE loss functionUnbalanced classes

• Will fine tune a pre-trained FCN-8s networkFully Convolutional Networks for Semantic SegmentationLong et. al. 2015

Refer to:

https://github.com/NVIDIA/DIGITS/blob/master/examples/medical-imaging/README.md

Page 22: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Web Resources

22

Machine/Deep learning – Stanford CS231n: Convolutional Neural Networks for Visual Recognition.

http://cs231n.github.io/

DIGITS Documentationhttps://github.com/NVIDIA/DIGITS/blob/master/docs/GettingStarted.md

Berkeley FCN Segmentation Modelshttp://fcn.berkeleyvision.org/

Page 23: Introduction to Web-Based Machine Learning with …...2018/01/17  · Machine Learning I March 8th & 9th, 2018 Are you interested in machine learning? This course is an introductory

Nano Courses

23

Machine Learning / Deep Learning is a big topicBICF Nano Courses will run in 2018

Machine Learning IMarch 8th & 9th, 2018

Are you interested in machine learning? This course is an introductory course for students to learn the basics. Programming experience in Python is mandatory.

Course Size: 15 studentsAcademic Credit: 1 credit hour special topics

https://bicf.pages.biohpc.swmed.edu/bicf_nanocourses/#machine-learning-i