Book Image

Hands-On Machine Learning on Google Cloud Platform

By : Giuseppe Ciaburro, V Kishore Ayyadevara, Alexis Perrier
Book Image

Hands-On Machine Learning on Google Cloud Platform

By: Giuseppe Ciaburro, V Kishore Ayyadevara, Alexis Perrier

Overview of this book

Google Cloud Machine Learning Engine combines the services of Google Cloud Platform with the power and flexibility of TensorFlow. With this book, you will not only learn to build and train different complexities of machine learning models at scale but also host them in the cloud to make predictions. This book is focused on making the most of the Google Machine Learning Platform for large datasets and complex problems. You will learn from scratch how to create powerful machine learning based applications for a wide variety of problems by leveraging different data services from the Google Cloud Platform. Applications include NLP, Speech to text, Reinforcement learning, Time series, recommender systems, image classification, video content inference and many other. We will implement a wide variety of deep learning use cases and also make extensive use of data related services comprising the Google Cloud Platform ecosystem such as Firebase, Storage APIs, Datalab and so forth. This will enable you to integrate Machine Learning and data processing features into your web and mobile applications. By the end of this book, you will know the main difficulties that you may encounter and get appropriate strategies to overcome these difficulties and build efficient systems.
Table of Contents (18 chapters)
8
Creating ML Applications with Firebase

Vision API

The Vision API lets us build quite a few applications related to vision:

  • Detecting labels in an image
  • Detecting the text in an image
  • Face detection
  • Emotion detection
  • Logo detection
  • Landmark detection

Before we dive into building applications using the preceding, let's get a quick understanding of how they might be built, using face emotion detection as an example.

The process of detecting emotions involves:

  1. Collecting a huge set of images
  2. Hand-labeling images with the emotion that is likely represented in the image
  3. Training a convolutional neural network (CNN) (to be discussed in future chapters) to classify the emotion, based on an image as input

While the preceding steps are heavily resource intensive (as we would need a lot of humans to collect and hand-label images), there are multiple other ways to obtain face emotion detection. We are not sure how Google...