Kubeflow

Kubeflow is a free and open-source machine learning platform co-founded by David Aronchick, Jeremy Lewi and Vishnu Kannan, built by developers at Google, Arrikto, Cisco, IBM, Red Hat, CoreOS and CaiCloud, and first released at Kubecon North America in 2017.[2] Kubeflow is designed to enable using machine learning pipelines to orchestrate complicated workflows running on Kubernetes (e.g. doing data processing then using TensorFlow or PyTorch to train a model, and deploying to TensorFlow Serving). Kubeflow was based on Google's internal method to deploy TensorFlow models to Kubernetes called TensorFlow Extended.[3]

Kubeflow
Developer(s)Google
Initial releaseMarch 28, 2018 (2018-03-28)
Stable release
0.7[1] / May 7, 2019 (2019-05-07)
Repositorygithub.com/kubeflow/kubeflow
PlatformLinux, Windows, MacOS
LicenseApache License 2.0
Websitewww.kubeflow.org

Kubeflow Overview

Kubeflow is a free and open-sourced project designed to make running Machine Learning workflows on Kubernetes clusters simpler and more coordinated. This is a Cloud-Native framework for employing Machine Learning in containerized environments in Kubernetes. Kubernetes has become the deployment platform of choice for organizations implementing machine learning.[4] Kubeflow’s integration with and extension of Kubernetes has become seamless and Kubeflow has been designed to run everywhere Kubernetes runs:[5] on-prem, GCP, AWS, Azure, etc.

Kubeflow began as an internal Google project[6] as a simpler & easier way to run TensorFlow jobs on Kubernetes, based specifically on the TensorFlow Extended pipeline. The Google open-source engineers David Aronchick, Jeremy Lewi and Vishnu Kannan co-founded the Kubeflow project and after its initial release a vast number of top software companies began publicly contributing to the GitHub issue board. Kubeflow is currently in a stable release version 0.7 released on November 4, 2019. Version 0.7 has some beta capabilities[7] and Kubeflow version 1.0 is expected to be released Q1 2020.[8]

What is Kubeflow?

At its core, Kubeflow offers an end-to-end ML stack orchestration toolkit to build on Kubernetes as a way to deploy, scale and manage complex systems. Features such as running JupyterHub servers allowing multiple users to contribute to a project simultaneously has become an invaluable asset of Kubeflow. Detailed management of a project and in depth monitoring/analyzing of said project are paramount attributes in Kubeflow.

Data scientists and engineers are now able to develop a complete pipeline composed of segmented steps. These segmented steps in Kubeflow are loosely coupled components of an ML pipeline, a feature not core to other frameworks, allowing pipelines to become easily reusable and modifiable for other jobs. This added flexibility has the potential to save an incalculable amount of labor necessary to develop a new data pipeline for each specific use case. Through this process, Kubeflow aims to simplify Kubernetes deployments while also accounting for future needs of portability and scalability.

Kubeflow 1.0 User Testimonials

“The Kubeflow 1.0 release is a significant milestone as it positions Kubeflow to be a viable ML Enterprise platform. Kubeflow 1.0 delivers material productivity enhancements for ML researchers.” — Jeff Fogarty, AVP ML / Cloud Engineer, US Bank

“Kubeflow’s data and model storage allows for smooth integration into CI/CD processes, allowing for a much faster and more agile delivery of machine learning models into applications.” — Laura Schornack, Shared Services Architect, Chase Commercial Bank

“With the launch of Kubeflow 1.0 we now have a feature complete end-to-end open source machine learning platform, allowing everyone from small teams to large unicorns like Gojek to run ML at scale.” — Willem Pienaar, Engineering Lead, Data Science Platform, GoJek

“Kubeflow provides a seamless interface to a great set of tools that together manages the complexity of ML workflows and encourages best practices. The Data Science and Machine Learning teams at Volvo Cars are able to iterate and deliver reproducible, production grade services with ease.”— Leonard Aukea, Volvo Cars

“With Kubeflow at the heart of our ML platform, our small company has been able to stack models in production to improve CR, find new customers, and present the right product to the right customer at the right time.” — Senior Director, One Technologies

“Kubeflow is helping GroupBy in standardizing ML workflows and simplifying very complicated deployments!” — Mohamed Elsaied, Machine Learning Team Lead, GroupBy

Kubeflow Roadmap

Kubeflow 1.0 was announced to the public on February 26th, 2020 via the Kubeflow blog post. The 1.0 release is available through the public github repository. The Kubeflow 1.0 release is the culmination of the stabilization efforts of the community and recognized as a significant maturation point of the Kubeflow platform. Through four separate 1.0 release candidates, the Kubeflow team was able to gather valuable feedback from enterprise level users to single cluster users. Specifically, Kubeflow 1.0 signifies the solidification of the following core Kubeflow components: Kubeflow’s UI - the central dashboard, Jupyter notebook controller and web app, Tensorflow Operator (TFJob) and PyTorch Operator for distributed training, kfctl for deployment and upgrades, Profile Controller and UI for multiuser management.

The following table includes the issues in the Kubeflow 1.1 Roadmap project board on github. Currently there are 27 issues being prioritized for 1.1. Traditionally Kubeflow deploys new builds quarterly and is currently targeting the 1.1 release for June 2020.

References

  1. GitHub - kubeflow/kubeflow: Machine Learning Toolkit for Kubernetes., Kubeflow, 2019-06-18, retrieved 2019-06-18
  2. Hot Dogs or Not" - At Scale with Kubernetes [I] - Vish Kannan & David Aronchick, Google, retrieved 2019-12-20
  3. "Kubeflow". Kubeflow. Retrieved 2019-06-18.
  4. Vaughan-Nichols, Steven J. "Just how popular is Kubernetes?". ZDNet. Retrieved 2020-01-09.
  5. "Introducing Kubeflow - A Composable, Portable, Scalable ML Stack Built for Kubernetes". kubernetes.io. Retrieved 2020-01-09.
  6. "Kubeflow". Kubeflow. Retrieved 2020-01-09.
  7. Bottum, Josh (2019-11-21). "Kubeflow v0.7 delivers beta functionality in the leadup to v1.0". Medium. Retrieved 2020-01-09.
  8. GitHub - kubeflow/kubeflow: Machine Learning Toolkit for Kubernetes., Kubeflow, 2020-01-09, retrieved 2020-01-09
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.