1/15 Kubeflow

In this module you will learn how to:

2/15 Kubeflow

build hybrid cloud machine learning models with Kubeflow

3/15 Kubeflow

and how to optimize TensorFlow graphs for mobile.

4/15 Kubeflow

To begin, let’s explore Kubeflow, an open-source machine learning platform designed to enable the use of machine learning pipelines to orchestrate complicated workflows running on Kubernetes.

Kubeflow helps build hybrid cloud machine learning models.

But why are we discussing hybrid in the first place?

Why would you need anything other than Google Cloud?

5/15 Kubeflow

We’ve focused on cloud-native environments, which involve prototyping and developing code using an AI Platform notebook.

Once that code is working on a small sample of data,

6/15 Kubeflow

the training job gets submitted to AI Platform to operate on the full dataset.

There are, however, scenarios when cloud-native, or conducting machine learning solely on Google Cloud, is not an option.

Let’s look at some of these scenarios now.

7/15 Kubeflow

Maybe you’re tied to on-premises infrastructure, or there are other constraints preventing the option to move your training data off an on-prem cluster or data center.

8/15 Kubeflow

Alternatively, perhaps you require a multi-cloud solution architecture, one that does not rely solely on Google Cloud.

This could be because you’re working with data that is being produced by a system that is running on a different cloud provider, or because model predictions need to be consumed from another cloud.

9/15 Kubeflow

Or maybe you are in an initial phase of an ML project running machine learning on the edge, where you’re working on a local developer workstation.

Training at scale typically happens in a cloud environment; however, inference and distributed training can happen at the edge.

The edge means that predictions happen on a smart device, which is common in internet-of-things.

10/15 Kubeflow

Using Kubernetes, it’s possible to orchestrate containers that run either on-premises or in the cloud.

And that can be any cloud.

Using Kubernetes allows for speed, the ability to minimize infrastructure management needs, all while being able to move or burst to Google Cloud.

11/15 Kubeflow

Kubeflow is the machine learning toolkit for Kubernetes, and it brings a number of benefits.

12/15 Kubeflow

It makes deploying machine learning workflows on Kubernetes simple, portable, and scalable.

13/15 Kubeflow

It also extends Kubernetes’ ability to run independent and configurable steps, with machine learning specific frameworks and libraries.

14/15 Kubeflow

And since Kubeflow is open source, it can run Google Kubernetes Engine, which is part of Google Cloud.

15/15 Kubeflow

However, Kubeflow can actually run on anything–whether it’s a phone, a laptop, or an on-premise cluster.

Regardless of where it’s run, the code remains the same.

Some of the configuration settings just change.