Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Kaz Sato, Evangelist, Google at MLconf ATL 2016


Published on

Machine Intelligence at Google Scale: Tensor Flow and Cloud Machine Learning: The biggest challenge of Deep Learning technology is the scalability. As long as using single GPU server, you have to wait for hours or days to get the result of your work. This doesn’t scale for production service, so you need a Distributed Training on the cloud eventually. Google has been building infrastructure for training the large scale neural network on the cloud for years, and now started to share the technology with external developers. In this session, we will introduce new pre-trained ML services such as Cloud Vision API and Speech API that works without any training. Also, we will look how TensorFlow and Cloud Machine Learning will accelerate custom model training for 10x – 40x with Google’s distributed training infrastructure.

Published in: Technology
  • Be the first to comment

Kaz Sato, Evangelist, Google at MLconf ATL 2016

  1. 1. Machine Intelligence at Google Scale ML APIs, TensorFlow and Cloud ML
  2. 2. +Kazunori Sato @kazunori_279 Kaz Sato Staff Developer Advocate Tech Lead for Data & Analytics Cloud Platform, Google Inc.
  3. 3. What we’ll cover What is Neural Network and Deep Learning Machine Learning use cases at Google services Externalizing the power with ML APIs TensorFlow: the open source library for ML TensorFlow in the Wild Distributed training and prediction with Cloud ML
  4. 4. What is Neural Network and Deep Learning
  5. 5. Neural Network is a function that can learn
  6. 6. xn > b? w1 wn x2 x1 Inspired by the behavior of biological neurons
  7. 7. How do you classify them?
  8. 8. weights bias (threshold) Programmers need to specify the parameters
  9. 9. Let’s see how neural network solves the problem
  10. 10. The computer tries to find the best parameters A neuron classifies a data point into two kinds
  11. 11. Gradient Descent: adjusting the params gradually to reduce errors From: Andrew Ng
  12. 12. How do you classify them?
  13. 13. What we see What the computer “sees”
  14. 14. 28 x 28 gray scale image = 784 numbers
  15. 15. input vector (pixel data) output vector (probability)
  16. 16. How do you classify them?
  17. 17. More neurons = More features to extract
  18. 18. Hidden Layers: mapping inputs to a feature space, classifying with a hyperplane From: Neural Networks, Manifolds, and Topology, colah's blog
  19. 19. How about this?
  20. 20. More hidden layers = More hierarchies of features
  21. 21. How about this?
  22. 22. We need to go deeper neural network From: Convolutional Deep Belief Networks for Scalable Unsupervised Learning of Hierarchical Representations, Honglak Lee et al.
  23. 23. From: mNeuron: A Matlab Plugin to Visualize Neurons from Deep Models, Donglai Wei et. al.
  24. 24. Machine Learning use cases at Google services
  25. 25. 25 signal for Search ranking, out of hundreds improvement to ranking quality in 2+ years #3 #1 Search machine learning for search engines RankBrain: a deep neural network for search ranking
  26. 26. WaveNet by Google DeepMind
  27. 27. 28 [glacier] Google Photos 28
  28. 28. 29 Smart reply in Inbox by Gmail 10% of all responses sent on mobile
  29. 29.
  30. 30. Saved Data Center cooling energy for 40% Improved Power Usage Effectiveness (PUE) for 15%
  31. 31. 32 Android Apps Gmail Maps Photos Speech Search Translation YouTube and many others ... Used across products: 2012 2013 2014 2015 Deep Learning usage at Google
  32. 32. Externalizing the power with ML APIs
  33. 33. TensorFlow Cloud Machine Learning ML API Easy-to-Use, for non-ML engineers Customizable, for Data Scientists Machine Learning products from Google
  34. 34. Image analysis with pre-trained models No Machine Learning skill required REST API: receives an image and returns a JSON General Availability Cloud Vision API
  35. 35. Confidential & ProprietaryGoogle Cloud Platform 36 Faces Faces, facial landmarks, emotions OCR Read and extract text, with support for > 10 languages Label Detect entities from furniture to transportation Logos Identify product logos Landmarks & Image Properties Detect landmarks & dominant color of image Safe Search Detect explicit content - adult, violent, medical and spoof
  36. 36. 3737 Demo
  37. 37. Pre-trained models. No ML skill required REST API: receives audio and returns texts Supports 80+ languages Streaming or non-streaming Public Beta - Cloud Speech API
  38. 38. Confidential & ProprietaryGoogle Cloud Platform 39 Features Automatic Speech Recognition (ASR) powered by deep learning neural networking to power your applications like voice search or speech transcription. Recognizes over 80 languages and variants with an extensive vocabulary. Returns partial recognition results immediately, as they become available. Filter inappropriate content in text results. Audio input can be captured by an application’s microphone or sent from a pre-recorded audio file. Multiple audio file formats are supported, including FLAC, AMR, PCMU and linear-16. Handles noisy audio from many environments without requiring additional noise cancellation. Audio files can be uploaded in the request and, in future releases, integrated with Google Cloud Storage. Automatic Speech Recognition Global Vocabulary Inappropriate Content Filtering Streaming Recognition Real-time or Buffered Audio Support Noisy Audio Handling Integrated API
  39. 39. 4040 Demo
  40. 40. Pre-trained models. No ML skill required REST API: receives text and returns analysis results Supports English, Spanish and Japanese Public Beta - Cloud Natural Language API
  41. 41. Confidential & ProprietaryGoogle Cloud Platform 42 Features Extract sentence, identify parts of speech and create dependency parse trees for each sentence. Identify entities and label by types such as person, organization, location, events, products and media. Understand the overall sentiment of a block of text. Syntax Analysis Entity Recognition Sentiment Analysis
  42. 42. 4343 Demo
  43. 43. TensorFlow: An open source library for Machine Intelligence
  44. 44. Google's open source library for machine intelligence launched in Nov 2015 Used by many production ML projects What is TensorFlow?
  45. 45. Sharing our tools with researchers and developers around the world repository for “machine learning” category on GitHub #1 Released in Nov. 2015 From:
  46. 46. Before Hire Data Scientists ↓ Understand the math model ↓ Impl with programming code ↓ Train with single GPU ↓ Build a GPU cluster ↓ Train with the GPU cluster ↓ Build a prediction server or Impl mobile/IoT prediction After Easy network design and impl ↓ Train with single machine ↓ Train on the cloud ↓ Prediction on the cloud or mobile/IoT devices many people stuck here
  47. 47. # 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)
  48. 48. TensorBoard: visualization tool
  49. 49. Portable and Scalable Training on: Mac/Windows GPU server GPU cluster / Cloud Prediction on: Android and iOS RasPi and TPU
  50. 50. Distributed Training with TensorFlow
  51. 51. TensorFlow in the Wild (or democratization of deep learning)
  52. 52. TensorFlow powered Fried Chicken Nugget Server From:
  53. 53. TensorFlow powered Cucumber Sorter From:
  54. 54. Autonomous Driving of RasPi car with Inception 3 on TensorFlow From: nsorflow
  55. 55. TV popstar classifier with 95% accuracy From:
  56. 56. TensorFlow+ RasPi for sorting garbages From: garbage-automatically-at-the-techcrunch-disrupt-hacka thon/
  57. 57. TensorFlow + Drones for counting trucks From:
  58. 58. From: Generative Arts with TensorFlow
  59. 59. Distributed Training and Prediction with Cloud ML
  60. 60. From: Andrew Ng The Bigger, The Better
  61. 61. The Challenge: Computing Power DNN requires large training datasets Large models doesn't fit into a GPU Requires try-and-errors to find the best design, configs and params ↓ Need to spend a few days or weeks to finish a training
  62. 62. GPUs run at nanoseconds GPU cluster needs microsec network
  63. 63. Enterprise Google Cloud is The Datacenter as a Computer
  64. 64. Jupiter network 10 GbE x 100 K = 1 Pbps Consolidates servers with microsec latency
  65. 65. Borg No VMs, pure containers 10K - 20K nodes per Cell DC-scale job scheduling CPUs, mem, disks and IO
  66. 66. Distributed Training with TensorFlow by data parallelism split data, share model
  67. 67. ● CPU/GPU scheduling ● Communications ○ Local, RPC, RDMA ○ 32/16/8 bit quantization ● Cost-based optimization ● Fault tolerance Distributed Systems for Large Neural Network
  68. 68. 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
  69. 69. Fully managed distributed training and prediction Supports custom TensorFlow graphs Integrated with Cloud Dataflow and Cloud Datalab Limited Preview - Cloud Machine Learning (Cloud ML)
  70. 70. 7272 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 BetaGA Alpha GA GA
  71. 71. Tensor Processing Unit ASIC for TensorFlow Designed by Google 10x better perf / watt latency and efficiency bit quantization
  72. 72. TPU on Production RankBrain AlphaGo Google Photos Speech and more
  73. 73. Thank you!
  74. 74. Links & Resources Large Scale Distributed Systems for Training Neural Networks, Jeff Dean and Oriol Vinals Cloud Vision API: Cloud Speech API: TensorFlow: Cloud Machine Learning: Cloud Machine Learning: demo video