Machine Learning as Code: A Year of Democratizing ML with Kubernetes and Kubeflow
David Aronchick - Co-founder, Kubeflow�@aronchick
Jason “Jay” Smith - Customer Engineer, Google�@thejaysmith
One Year Ago...
2
What is Machine Learning?
3
Machine Learning is a way of solving problems without explicitly knowing how to create the solution.
4
Google DC Ops
5
6
PUE == Power Usage Effectiveness
But ML is hard!
7
Containers & Kubernetes
8
Cloud Native Apps
Cloud Native ML?
Platform
11
Building a model
Platform
12
Building�a model
Data ingestion
Data analysis
Data transformation
Data validation
Data splitting
Trainer
Model�validation
Training�at scale
Logging
Roll-out
Serving
Monitoring
User Experience
13
Deploy�Kubeflow
Build Docker Image
Training�at scale
Operate
Build Model Server
Deploy�Model
Integrate Model into App
Experiment in Jupyter
14
Model
UX
Tooling
Framework
Storage
Runtime
Drivers
OS
Accelerator
HW
Experimentation
15
Experimentation
Multi-Cloud is the Reality
16
And Not Just One Cloud!
17
18
Experimentation
19
Training
Experimentation
20
Cloud
Training
Experimentation
Kubecon 2017
21
Make it Easy for Everyone
to Develop, Deploy and Manage Portable, Distributed ML�on Kubernetes
22
23
23
Cloud
Training
Experimentation
Cloud Native ML!
Momentum!
Community Contributions
NOT�GOOGLE
Kubernetes
Kubeflow
NOT�GOOGLE
Community Contribution Katib from NTT
27
Community Contribution TensorRT from NVidia
28
Community Contribution Argo from Intuit
29
Community Contribution
30
Kubebench
Spawner
Introducing Kubeflow 0.4
31
(almost) Introducing Kubeflow 0.4
32
What’s new in 0.4?
Click to Deploy
34
Click to Deploy
Demo
Kubeflow GitOps
37
GitOps
Demo
Kubeflow Pipelines
40
Pipelines
Demo
Auto-scaling
43
Today, IT Ops Has a Lot of Stuff To Do...
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Model works great! But I need six nodes.
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Model works great! But I need six nodes.
Sure thing, can I get to it after O(large number of things to do)?
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Rats. Ok, when you have the time.
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Whew… that took a while. Here you go!
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Thanks!
Whew… that took a while. Here you go!
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
(Lots of Work)
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
OK, I’m all done! Hope I’m not forgetting anything.
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Oh noes! We forgot to�turn it off!
Oh noes! We forgot to�turn it off!
Data Scientist
IT�Ops
Today, IT Ops Has a Lot of Stuff To Do...
Oh noes! We forgot to�turn it off!
Oh noes! We forgot to�turn it off!
$$$$$$$$$$$$$$$
Data Scientist
IT�Ops
Autoscaling Jobs
Let’s Give IT Ops the Day Off!
Model works great! But I need six nodes.
Data Scientist
IT�Ops
Let’s Give IT Ops the Day Off!
Data Scientist
IT�Ops
apiVersion: "kubeflow.org/v1alpha1"
kind: "TFJob"
spec:
replicaSpecs:
replicas: 6
CPU: 1
GPU: 1
containers: gcr.io/myco/myjob:1.0
Let’s Give IT Ops the Day Off!
Data Scientist
IT�Ops
GPU
GPU
GPU
GPU
GPU
GPU
Let’s Give IT Ops the Day Off!
Data Scientist
IT�Ops
Job’s Done!
Let’s Give IT Ops the Day Off!
Data Scientist
IT�Ops
Did you know that Youtube has 1 hour of cat videos uploaded every second?
Demo
Kubeflow Roadmap
65
We’re just getting started!
Our roadmap:
It’s a whole new world
Enabling ML EVERYWHERE
Let’s give the people not in this room* the tools to change the world!
, Historians
, Housing Advocates
, Social Workers
, Statisticians
, Professors
* Or watching this video
Nurses
, Civil Engineers
, Teachers,
, Politicians
Lawyers
, Environmental Researchers
, Scientists
, ...
Kubeflow is open!
Open comm-�unity
Open�design
Open�source
Open�to ideas
Come Help!
David Aronchick @aronchick (aronchick@gmail.com)
Jason “Jay” Smith (jaysmith@google.com)