SlideShare une entreprise Scribd logo
1  sur  38
Télécharger pour lire hors ligne
What’s Next for in 2019
Matei Zaharia, Corey Zumar, Sid Murching
February 12, 2019
Outline
MLflow overview
Feedback so far
Databricks’ development themes for 2019
Demos of upcoming features
Outline
MLflow overview
Feedback so far
Databricks’ development themes for 2019
Demos of upcoming features
ML Development is Harder than
Traditional Software Development
5
Traditional Software Machine Learning
Goal: optimize a metric (e.g. accuracy)Goal: meet a functional specification
6
Traditional Software Machine Learning
Goal: optimize a metric (e.g. accuracy)
Quality depends on data, code & tuning
→ Must regularly update with fresh data
Goal: meet a functional specification
Quality depends only on code
7
Traditional Software Machine Learning
Goal: optimize a metric (e.g. accuracy)
Quality depends on data, code & tuning
→ Must regularly update with fresh data
Constantly experiment w/ new libraries +
models (and must productionize them!)
Goal: meet a functional specification
Quality depends only on code
Typically one software stack
What is ?
Open source platform to manage ML development
• Lightweight APIs & abstractions that work with any ML library
• Designed to be useful for 1 user or 1000+ person orgs
• Runs the same way anywhere (e.g. any cloud)
Key principle: “open interface” APIs that work with any
existing ML library, app, deployment tool, etc
MLflow Components
9
Tracking
Record and query
experiments: code,
params, results, etc
Projects
Code packaging for
reproducible runs
on any platform
Models
Model packaging and
deployment to diverse
environments
Learning
pip install mlflow to get started in Python
(APIs also available in Java and R)
Docs and tutorials at mlflow.org
• Hyperparameter tuning, REST serving, batch scoring, etc
Outline
MLflow overview
Feedback so far
Databricks’ development themes for 2019
Demos of upcoming features
Running a user survey at mlflow.org (fill it in if you haven’t!)
Users are using all components (but Tracking most popular)
What users want to see next
Outline
MLflow overview
Feedback so far
Databricks’ development themes for 2019
Demos of upcoming features
High-Level Themes
1) Update existing components based on feedback
2) Stabilize the APIs and dev process (MLflow 1.0)
3) Add new features for more of the ML lifecycle
Rough Development Timeline
MLflow 0.9, 0.10, etc: in the next few months
MLflow 1.0 and API stabilization: end of April
(stabilize core APIs and mark others as experimental)
After 1.0: continue releasing regularly to get features out
Updating Existing Components
MLflow Tracking
• SQL database backend for scaling the tracking server (0.9)
•UI scalability improvements (0.8, 0.9, etc)
•X-coordinate logging for metrics & batched logging (1.0)
•Fluent API for Java and Scala (1.0)
Updating Existing Components
MLflow Projects
•Docker-based project environment specification (0.9)
•X-coordinate logging for metrics & batched logging (1.0)
•Packaging projects with build steps (1.0+)
Updating Existing Components
MLflow Models
•Custom model logging in Python, R and Java (0.8, 0.9, 1.0)
•Better environment isolation when loading models (1.0)
•Logging schema of models (1.0+)
New Components in Discussion
Model registry
•A way to name and manage models, track deployments, etc
•Could be new abstraction or tags on existing runs (need feedback!)
Multi-step workflow GUI
•UI to view or even edit multi-step workflows (do you want this?)
MLflow telemetry component
•Standard API for deployed models to log metrics wherever they run
•Data collection and analytics tools downstream (need feedback!)
Outline
MLflow overview
Feedback so far
Databricks’ development themes for 2019
Demos of upcoming features
Demo: Model Customization
Motivating example: MLflow flower classification
f(petal_attribs) -> classification
f(petal_attribs) -> probabilities
23
Demo: Model Customization
Motivation: ML teams want to capture
mathematical models and business logic in a single
MLflow model.
24
mlflow.sklearn.save_model,
mlflow.pytorch.log_model,
….
Demo: Model Customization
MLflow 0.9: Users can easily customize models,
introducing inference logic and data dependencies
25
class PythonModel:
def load_context(self, context):
# The context object contains paths to
# files (artifacts) that can be loaded here
def predict(self, context, input_df):
# Inference logic goes here
26
class ToyModel(mlflow.pyfunc.PythonModel):
def __init__(self, return_value):
self.return_value = return_value
def predict(self, context, input_df):
return self.return_value
mlflow.pyfunc.save_model(
python_model=ToyModel(pd.DataFrame([42])),
dst_path="toy_model")
27
class ProbaModel(mlflow.pyfunc.PythonModel):
def predict(self, context, input_df):
sk_model = mlflow.sklearn.load_model(
context.artifacts["sk_model"])
return sk_model.predict_proba(input_df)
mlflow.pyfunc.save_model(
dst_path="proba_model",
python_model=ProbaModel(),
artifacts={"sk_model": "s3://model/path"})
28
Demo: Model Customization
We will fit a model that identifies iris flowers based
on their petals, emitting a probability distribution
f(pwidth, plength) -> probabilities
29
across 3 flower types
Demo
3030
Project Spec
Code DataConfig
Local Execution
Remote Execution
MLflow Projects
mlflow run git://...
Demo: Docker-based Projects
MLflow 0.9: run projects in docker containers
(@marcusrehm)
Package code with arbitrary dependencies (Java etc)
Run, share, track code with same MLflow APIs
32
Demo: Docker-based Projects
Docker handles the dependencies
docker_env:
image: continuumio/anaconda
MLflow provides unified interface for running code
$ mlflow run git://<my_project>
33
Project Structure
34
my_project/
├── MLproject
│
│
│
│
│
├── train.py
└── utils.py
...
docker_env:
image: continuumio/anaconda
entry_points:
main:
parameters:
training_data: path
lambda: {type: float, default: 0.1}
command: python train.py {training_data} {lambda}
$ mlflow run git://<my_project>
Demo: Docker-based Projects
See example project at
github.com/mlflow/mlflow/tree/master/examples/docker
35
Demo
3636
What’s next: Docker-based Projects
Remote execution (Kubernetes, Databricks) for
horizontal, vertical scaleout
Ease-of-use improvements add custom Docker
build steps, log to remote artifact stores
37
Thank You!
Get started with MLflow at mlflow.org
• Fill out our survey and join our Slack!
Spark AI Summit 15% discount: MLflowMeetup

Contenu connexe

Tendances

Tendances (20)

Simplifying Model Management with MLflow
Simplifying Model Management with MLflowSimplifying Model Management with MLflow
Simplifying Model Management with MLflow
 
The A-Z of Data: Introduction to MLOps
The A-Z of Data: Introduction to MLOpsThe A-Z of Data: Introduction to MLOps
The A-Z of Data: Introduction to MLOps
 
Productionalizing Models through CI/CD Design with MLflow
Productionalizing Models through CI/CD Design with MLflowProductionalizing Models through CI/CD Design with MLflow
Productionalizing Models through CI/CD Design with MLflow
 
Apache Liminal (Incubating)—Orchestrate the Machine Learning Pipeline
Apache Liminal (Incubating)—Orchestrate the Machine Learning PipelineApache Liminal (Incubating)—Orchestrate the Machine Learning Pipeline
Apache Liminal (Incubating)—Orchestrate the Machine Learning Pipeline
 
MLflow and Azure Machine Learning—The Power Couple for ML Lifecycle Management
MLflow and Azure Machine Learning—The Power Couple for ML Lifecycle ManagementMLflow and Azure Machine Learning—The Power Couple for ML Lifecycle Management
MLflow and Azure Machine Learning—The Power Couple for ML Lifecycle Management
 
databricks ml flow demonstration using automatic features engineering
databricks ml flow demonstration using automatic features engineeringdatabricks ml flow demonstration using automatic features engineering
databricks ml flow demonstration using automatic features engineering
 
Nasscom ml ops webinar
Nasscom ml ops webinarNasscom ml ops webinar
Nasscom ml ops webinar
 
Productionzing ML Model Using MLflow Model Serving
Productionzing ML Model Using MLflow Model ServingProductionzing ML Model Using MLflow Model Serving
Productionzing ML Model Using MLflow Model Serving
 
MLflow at Company Scale
MLflow at Company ScaleMLflow at Company Scale
MLflow at Company Scale
 
MLOps Virtual Event | Building Machine Learning Platforms for the Full Lifecycle
MLOps Virtual Event | Building Machine Learning Platforms for the Full LifecycleMLOps Virtual Event | Building Machine Learning Platforms for the Full Lifecycle
MLOps Virtual Event | Building Machine Learning Platforms for the Full Lifecycle
 
Introduction to MLflow
Introduction to MLflowIntroduction to MLflow
Introduction to MLflow
 
MLflow with R
MLflow with RMLflow with R
MLflow with R
 
Ml ops intro session
Ml ops   intro sessionMl ops   intro session
Ml ops intro session
 
"Managing the Complete Machine Learning Lifecycle with MLflow"
"Managing the Complete Machine Learning Lifecycle with MLflow""Managing the Complete Machine Learning Lifecycle with MLflow"
"Managing the Complete Machine Learning Lifecycle with MLflow"
 
Scaling up Machine Learning Development
Scaling up Machine Learning DevelopmentScaling up Machine Learning Development
Scaling up Machine Learning Development
 
Whats new in_mlflow
Whats new in_mlflowWhats new in_mlflow
Whats new in_mlflow
 
Mlflow with databricks
Mlflow with databricksMlflow with databricks
Mlflow with databricks
 
DAIS Europe Nov. 2020 presentation on MLflow Model Serving
DAIS Europe Nov. 2020 presentation on MLflow Model ServingDAIS Europe Nov. 2020 presentation on MLflow Model Serving
DAIS Europe Nov. 2020 presentation on MLflow Model Serving
 
Reproducible AI using MLflow and PyTorch
Reproducible AI using MLflow and PyTorchReproducible AI using MLflow and PyTorch
Reproducible AI using MLflow and PyTorch
 
MLOps and Data Quality: Deploying Reliable ML Models in Production
MLOps and Data Quality: Deploying Reliable ML Models in ProductionMLOps and Data Quality: Deploying Reliable ML Models in Production
MLOps and Data Quality: Deploying Reliable ML Models in Production
 

Similaire à What's Next for MLflow in 2019

MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
 MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ... MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
Databricks
 
Machine Learning Pipelines - Joseph Bradley - Databricks
Machine Learning Pipelines - Joseph Bradley - DatabricksMachine Learning Pipelines - Joseph Bradley - Databricks
Machine Learning Pipelines - Joseph Bradley - Databricks
Spark Summit
 
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
cNguyn506241
 
Apache Spark MLlib's Past Trajectory and New Directions with Joseph Bradley
Apache Spark MLlib's Past Trajectory and New Directions with Joseph BradleyApache Spark MLlib's Past Trajectory and New Directions with Joseph Bradley
Apache Spark MLlib's Past Trajectory and New Directions with Joseph Bradley
Databricks
 
Apache Spark's MLlib's Past Trajectory and new Directions
Apache Spark's MLlib's Past Trajectory and new DirectionsApache Spark's MLlib's Past Trajectory and new Directions
Apache Spark's MLlib's Past Trajectory and new Directions
Databricks
 

Similaire à What's Next for MLflow in 2019 (20)

MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
 MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ... MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
MLflow: Infrastructure for a Complete Machine Learning Life Cycle with Mani ...
 
MLflow: Infrastructure for a Complete Machine Learning Life Cycle
MLflow: Infrastructure for a Complete Machine Learning Life CycleMLflow: Infrastructure for a Complete Machine Learning Life Cycle
MLflow: Infrastructure for a Complete Machine Learning Life Cycle
 
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
 
Utilisation de MLflow pour le cycle de vie des projet Machine learning
Utilisation de MLflow pour le cycle de vie des projet Machine learningUtilisation de MLflow pour le cycle de vie des projet Machine learning
Utilisation de MLflow pour le cycle de vie des projet Machine learning
 
Machine Learning Pipelines - Joseph Bradley - Databricks
Machine Learning Pipelines - Joseph Bradley - DatabricksMachine Learning Pipelines - Joseph Bradley - Databricks
Machine Learning Pipelines - Joseph Bradley - Databricks
 
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdf
 
Apache® Spark™ MLlib 2.x: migrating ML workloads to DataFrames
Apache® Spark™ MLlib 2.x: migrating ML workloads to DataFramesApache® Spark™ MLlib 2.x: migrating ML workloads to DataFrames
Apache® Spark™ MLlib 2.x: migrating ML workloads to DataFrames
 
DotNet Conf Madrid 2019 - Whats New in ML.NET
DotNet Conf Madrid 2019 - Whats New in ML.NETDotNet Conf Madrid 2019 - Whats New in ML.NET
DotNet Conf Madrid 2019 - Whats New in ML.NET
 
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
GDG Cloud Southlake #16: Priyanka Vergadia: Scalable Data Analytics in Google...
 
MLOps for Compositional AI
MLOps for Compositional AIMLOps for Compositional AI
MLOps for Compositional AI
 
Apache Spark MLlib's Past Trajectory and New Directions with Joseph Bradley
Apache Spark MLlib's Past Trajectory and New Directions with Joseph BradleyApache Spark MLlib's Past Trajectory and New Directions with Joseph Bradley
Apache Spark MLlib's Past Trajectory and New Directions with Joseph Bradley
 
Apache Spark's MLlib's Past Trajectory and new Directions
Apache Spark's MLlib's Past Trajectory and new DirectionsApache Spark's MLlib's Past Trajectory and new Directions
Apache Spark's MLlib's Past Trajectory and new Directions
 
What are the Unique Challenges and Opportunities in Systems for ML?
What are the Unique Challenges and Opportunities in Systems for ML?What are the Unique Challenges and Opportunities in Systems for ML?
What are the Unique Challenges and Opportunities in Systems for ML?
 
Pitfalls of machine learning in production
Pitfalls of machine learning in productionPitfalls of machine learning in production
Pitfalls of machine learning in production
 
Machine Learning para devs com ML.NET
Machine Learning para devs com ML.NETMachine Learning para devs com ML.NET
Machine Learning para devs com ML.NET
 
Studying Software Engineering Patterns for Designing Machine Learning Systems
Studying Software Engineering Patterns for Designing Machine Learning SystemsStudying Software Engineering Patterns for Designing Machine Learning Systems
Studying Software Engineering Patterns for Designing Machine Learning Systems
 
MLFlow 1.0 Meetup
MLFlow 1.0 Meetup MLFlow 1.0 Meetup
MLFlow 1.0 Meetup
 
Advanced MLflow: Multi-Step Workflows, Hyperparameter Tuning and Integrating ...
Advanced MLflow: Multi-Step Workflows, Hyperparameter Tuning and Integrating ...Advanced MLflow: Multi-Step Workflows, Hyperparameter Tuning and Integrating ...
Advanced MLflow: Multi-Step Workflows, Hyperparameter Tuning and Integrating ...
 
From Data Science to MLOps
From Data Science to MLOpsFrom Data Science to MLOps
From Data Science to MLOps
 
Ml infra at an early stage
Ml infra at an early stageMl infra at an early stage
Ml infra at an early stage
 

Plus de Anyscale

Plus de Anyscale (11)

ACM Sunnyvale Meetup.pdf
ACM Sunnyvale Meetup.pdfACM Sunnyvale Meetup.pdf
ACM Sunnyvale Meetup.pdf
 
Putting AI to Work on Apache Spark
Putting AI to Work on Apache SparkPutting AI to Work on Apache Spark
Putting AI to Work on Apache Spark
 
Project Hydrogen, HorovodRunner, and Pandas UDF: Distributed Deep Learning Tr...
Project Hydrogen, HorovodRunner, and Pandas UDF: Distributed Deep Learning Tr...Project Hydrogen, HorovodRunner, and Pandas UDF: Distributed Deep Learning Tr...
Project Hydrogen, HorovodRunner, and Pandas UDF: Distributed Deep Learning Tr...
 
Jump Start on Apache Spark 2.2 with Databricks
Jump Start on Apache Spark 2.2 with DatabricksJump Start on Apache Spark 2.2 with Databricks
Jump Start on Apache Spark 2.2 with Databricks
 
Monitoring Error Logs at Databricks
Monitoring Error Logs at DatabricksMonitoring Error Logs at Databricks
Monitoring Error Logs at Databricks
 
Monitoring Large-Scale Apache Spark Clusters at Databricks
Monitoring Large-Scale Apache Spark Clusters at DatabricksMonitoring Large-Scale Apache Spark Clusters at Databricks
Monitoring Large-Scale Apache Spark Clusters at Databricks
 
Easy, scalable, fault tolerant stream processing with structured streaming - ...
Easy, scalable, fault tolerant stream processing with structured streaming - ...Easy, scalable, fault tolerant stream processing with structured streaming - ...
Easy, scalable, fault tolerant stream processing with structured streaming - ...
 
Apache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning Models
Apache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning ModelsApache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning Models
Apache ® Spark™ MLlib 2.x: How to Productionize your Machine Learning Models
 
A Deep Dive into Structured Streaming in Apache Spark
A Deep Dive into Structured Streaming in Apache Spark A Deep Dive into Structured Streaming in Apache Spark
A Deep Dive into Structured Streaming in Apache Spark
 
Jump Start with Apache Spark 2.0 on Databricks
Jump Start with Apache Spark 2.0 on DatabricksJump Start with Apache Spark 2.0 on Databricks
Jump Start with Apache Spark 2.0 on Databricks
 
Continuous Application with Structured Streaming 2.0
Continuous Application with Structured Streaming 2.0Continuous Application with Structured Streaming 2.0
Continuous Application with Structured Streaming 2.0
 

Dernier

introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Dernier (20)

The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 

What's Next for MLflow in 2019

  • 1. What’s Next for in 2019 Matei Zaharia, Corey Zumar, Sid Murching February 12, 2019
  • 2. Outline MLflow overview Feedback so far Databricks’ development themes for 2019 Demos of upcoming features
  • 3. Outline MLflow overview Feedback so far Databricks’ development themes for 2019 Demos of upcoming features
  • 4. ML Development is Harder than Traditional Software Development
  • 5. 5 Traditional Software Machine Learning Goal: optimize a metric (e.g. accuracy)Goal: meet a functional specification
  • 6. 6 Traditional Software Machine Learning Goal: optimize a metric (e.g. accuracy) Quality depends on data, code & tuning → Must regularly update with fresh data Goal: meet a functional specification Quality depends only on code
  • 7. 7 Traditional Software Machine Learning Goal: optimize a metric (e.g. accuracy) Quality depends on data, code & tuning → Must regularly update with fresh data Constantly experiment w/ new libraries + models (and must productionize them!) Goal: meet a functional specification Quality depends only on code Typically one software stack
  • 8. What is ? Open source platform to manage ML development • Lightweight APIs & abstractions that work with any ML library • Designed to be useful for 1 user or 1000+ person orgs • Runs the same way anywhere (e.g. any cloud) Key principle: “open interface” APIs that work with any existing ML library, app, deployment tool, etc
  • 9. MLflow Components 9 Tracking Record and query experiments: code, params, results, etc Projects Code packaging for reproducible runs on any platform Models Model packaging and deployment to diverse environments
  • 10. Learning pip install mlflow to get started in Python (APIs also available in Java and R) Docs and tutorials at mlflow.org • Hyperparameter tuning, REST serving, batch scoring, etc
  • 11. Outline MLflow overview Feedback so far Databricks’ development themes for 2019 Demos of upcoming features
  • 12. Running a user survey at mlflow.org (fill it in if you haven’t!)
  • 13. Users are using all components (but Tracking most popular)
  • 14. What users want to see next
  • 15. Outline MLflow overview Feedback so far Databricks’ development themes for 2019 Demos of upcoming features
  • 16. High-Level Themes 1) Update existing components based on feedback 2) Stabilize the APIs and dev process (MLflow 1.0) 3) Add new features for more of the ML lifecycle
  • 17. Rough Development Timeline MLflow 0.9, 0.10, etc: in the next few months MLflow 1.0 and API stabilization: end of April (stabilize core APIs and mark others as experimental) After 1.0: continue releasing regularly to get features out
  • 18. Updating Existing Components MLflow Tracking • SQL database backend for scaling the tracking server (0.9) •UI scalability improvements (0.8, 0.9, etc) •X-coordinate logging for metrics & batched logging (1.0) •Fluent API for Java and Scala (1.0)
  • 19. Updating Existing Components MLflow Projects •Docker-based project environment specification (0.9) •X-coordinate logging for metrics & batched logging (1.0) •Packaging projects with build steps (1.0+)
  • 20. Updating Existing Components MLflow Models •Custom model logging in Python, R and Java (0.8, 0.9, 1.0) •Better environment isolation when loading models (1.0) •Logging schema of models (1.0+)
  • 21. New Components in Discussion Model registry •A way to name and manage models, track deployments, etc •Could be new abstraction or tags on existing runs (need feedback!) Multi-step workflow GUI •UI to view or even edit multi-step workflows (do you want this?) MLflow telemetry component •Standard API for deployed models to log metrics wherever they run •Data collection and analytics tools downstream (need feedback!)
  • 22. Outline MLflow overview Feedback so far Databricks’ development themes for 2019 Demos of upcoming features
  • 23. Demo: Model Customization Motivating example: MLflow flower classification f(petal_attribs) -> classification f(petal_attribs) -> probabilities 23
  • 24. Demo: Model Customization Motivation: ML teams want to capture mathematical models and business logic in a single MLflow model. 24 mlflow.sklearn.save_model, mlflow.pytorch.log_model, ….
  • 25. Demo: Model Customization MLflow 0.9: Users can easily customize models, introducing inference logic and data dependencies 25
  • 26. class PythonModel: def load_context(self, context): # The context object contains paths to # files (artifacts) that can be loaded here def predict(self, context, input_df): # Inference logic goes here 26
  • 27. class ToyModel(mlflow.pyfunc.PythonModel): def __init__(self, return_value): self.return_value = return_value def predict(self, context, input_df): return self.return_value mlflow.pyfunc.save_model( python_model=ToyModel(pd.DataFrame([42])), dst_path="toy_model") 27
  • 28. class ProbaModel(mlflow.pyfunc.PythonModel): def predict(self, context, input_df): sk_model = mlflow.sklearn.load_model( context.artifacts["sk_model"]) return sk_model.predict_proba(input_df) mlflow.pyfunc.save_model( dst_path="proba_model", python_model=ProbaModel(), artifacts={"sk_model": "s3://model/path"}) 28
  • 29. Demo: Model Customization We will fit a model that identifies iris flowers based on their petals, emitting a probability distribution f(pwidth, plength) -> probabilities 29 across 3 flower types
  • 31. Project Spec Code DataConfig Local Execution Remote Execution MLflow Projects mlflow run git://...
  • 32. Demo: Docker-based Projects MLflow 0.9: run projects in docker containers (@marcusrehm) Package code with arbitrary dependencies (Java etc) Run, share, track code with same MLflow APIs 32
  • 33. Demo: Docker-based Projects Docker handles the dependencies docker_env: image: continuumio/anaconda MLflow provides unified interface for running code $ mlflow run git://<my_project> 33
  • 34. Project Structure 34 my_project/ ├── MLproject │ │ │ │ │ ├── train.py └── utils.py ... docker_env: image: continuumio/anaconda entry_points: main: parameters: training_data: path lambda: {type: float, default: 0.1} command: python train.py {training_data} {lambda} $ mlflow run git://<my_project>
  • 35. Demo: Docker-based Projects See example project at github.com/mlflow/mlflow/tree/master/examples/docker 35
  • 37. What’s next: Docker-based Projects Remote execution (Kubernetes, Databricks) for horizontal, vertical scaleout Ease-of-use improvements add custom Docker build steps, log to remote artifact stores 37
  • 38. Thank You! Get started with MLflow at mlflow.org • Fill out our survey and join our Slack! Spark AI Summit 15% discount: MLflowMeetup