Machine Intelligence at Google Scale: Vision/Speech API, TensorFlow - - PowerPoint PPT Presentation

machine intelligence at google scale vision speech api
SMART_READER_LITE
LIVE PREVIEW

Machine Intelligence at Google Scale: Vision/Speech API, TensorFlow - - PowerPoint PPT Presentation

Machine Intelligence at Google Scale: Vision/Speech API, TensorFlow and Cloud ML Kaz Sato Staff Developer Advocate +Kazunori Sato Tech Lead for Data & Analytics @kazunori_279 Cloud Platform, Google Inc. What well cover Deep learning


slide-1
SLIDE 1

Machine Intelligence at Google Scale: Vision/Speech API, TensorFlow and Cloud ML

slide-2
SLIDE 2

+Kazunori Sato @kazunori_279

Kaz Sato

Staff Developer Advocate Tech Lead for Data & Analytics Cloud Platform, Google Inc.

slide-3
SLIDE 3

What we’ll cover

Deep learning and distributed training Large scale neural network on Google Cloud Cloud Vision API and Speech API TensorFlow and Cloud Machine Learning

slide-4
SLIDE 4

Deep Learning and Distributed Training

slide-5
SLIDE 5
slide-6
SLIDE 6

From: Andrew Ng

slide-7
SLIDE 7

DNN = a large matrix ops a few GPUs >> CPU (but it still takes days to train) a supercomputer >> a few GPUs (but you don't have a supercomputer) You need Distributed Training on the cloud

slide-8
SLIDE 8

Google Brain. Large scale neural network on Google Cloud

slide-9
SLIDE 9
slide-10
SLIDE 10

Enterprise

Google Cloud is

The Datacenter as a Computer

slide-11
SLIDE 11

Jupiter network

10 GbE x 100 K = 1 Pbps Consolidates servers with microsec latency

slide-12
SLIDE 12

Borg

No VMs, pure containers 10K - 20K nodes per Cell DC-scale job scheduling CPUs, mem, disks and IO

slide-13
SLIDE 13

13

Google Cloud + Neural Network = Google Brain

slide-14
SLIDE 14

The Inception model (GoogLeNet, 2015)

slide-15
SLIDE 15

What's the scalability of Google Brain?

"Large Scale Distributed Systems for Training Neural Networks", NIPS 2015 ○ Inception / ImageNet: 40x with 50 GPUs ○ RankBrain: 300x with 500 nodes

slide-16
SLIDE 16

Large-scale neural network for everyone

slide-17
SLIDE 17
slide-18
SLIDE 18
slide-19
SLIDE 19
slide-20
SLIDE 20

Pre-trained models. No ML skill required REST API: receives images and returns a JSON $2.5 or $5 / 1,000 units (free to try) Public Beta - cloud.google.com/vision

Cloud Vision API

slide-21
SLIDE 21
slide-22
SLIDE 22

22 22

Demo

slide-23
SLIDE 23

Pre-trained models. No ML skill required REST API: receives audio and returns texts Supports 80+ languages Streaming or non-streaming Limited Preview - cloud.google.com/speech

Cloud Speech API

slide-24
SLIDE 24

24 24

Demo Video

slide-25
SLIDE 25

TensorFlow

slide-26
SLIDE 26

The Machine Learning Spectrum

TensorFlow Cloud Machine Learning Machine Learning APIs

Industry / applications Academic / research

slide-27
SLIDE 27

Google's open source library for machine intelligence tensorflow.org launched in Nov 2015 The second generation Used by many production ML projects

What is TensorFlow?

slide-28
SLIDE 28

What is TensorFlow?

Tensor: N-dimensional array Flow: data flow computation framework (like MapReduce) For Machine Learning and Deep Learning Or any HPC (High Performance Computing) applications

slide-29
SLIDE 29

# define the network import tensorflow as tf x = tf.placeholder(tf.float32, [None, 784]) W = tf.Variable(tf.zeros([784, 10])) b = tf.Variable(tf.zeros([10])) y = tf.nn.softmax(tf.matmul(x, W) + b) # define a training step y_ = tf.placeholder(tf.float32, [None, 10]) xent = -tf.reduce_sum(y_*tf.log(y)) step = tf.train.GradientDescentOptimizer(0.01).minimize (xent)

slide-30
SLIDE 30

# initialize session init = tf.initialize_all_variables() sess = tf.Session() sess.run(init) # training for i in range(1000): batch_xs, batch_ys = mnist.train.next_batch(100) sess.run(step, feed_dict={x: batch_xs, y_: batch_ys})

slide-31
SLIDE 31
slide-32
SLIDE 32

Portable

  • Training on:

○ Data Center ○ CPUs, GPUs and etc

  • Running on:

○ Mobile phones ○ IoT devices

slide-33
SLIDE 33

TensorBoard: visualization tool

slide-34
SLIDE 34

Cloud Machine Learning

slide-35
SLIDE 35

Fully managed, distributed training and prediction for custom TensorFlow graph Supports Regression and Classification initially Integrated with Cloud Dataflow and Cloud Datalab Limited Preview - cloud.google.com/ml

Cloud Machine Learning (Cloud ML)

slide-36
SLIDE 36
slide-37
SLIDE 37

Distributed Training with TensorFlow

slide-38
SLIDE 38
  • CPU/GPU scheduling
  • Communications

○ Local, RPC, RDMA ○ 32/16/8 bit quantization

  • Cost-based optimization
  • Fault tolerance

Distributed Training with TensorFlow

slide-39
SLIDE 39

Data Parallelism

= split data, share model (but ordinary network is 1,000x slower than GPU and doesn't scale)

slide-40
SLIDE 40

Cloud ML demo video

slide-41
SLIDE 41

Jeff Dean's keynote: YouTube video Define a custom TensorFlow graph Training at local: 8.3 hours w/ 1 node Training at cloud: 32 min w/ 20 nodes (15x faster) Prediction at cloud at 300 reqs / sec

Cloud ML demo

slide-42
SLIDE 42

Summary

slide-43
SLIDE 43

Ready to use Machine Learning models Use your own data to train models

Cloud Vision API Cloud Speech API Cloud Translate API Cloud Machine Learning

Develop - Model - Test

Google BigQuery Stay Tuned…. Cloud Storage Cloud Datalab

NEW Alpha GA Beta GA Alpha Beta GA

slide-44
SLIDE 44

Links & Resources

Large Scale Distributed Systems for Training Neural Networks, Jeff Dean and Oriol Vinals Cloud Vision API: cloud.google.com/vision Cloud Speech API: cloud.google.com/speech TensorFlow: tensorflow.org Cloud Machine Learning: cloud.google.com/ml Cloud Machine Learning: demo video

slide-45
SLIDE 45

Thank you!