Kubeflow
| Kubeflow | |
|---|---|
| Логотип программы Kubeflow | |
| Тип | Платформа для машинного обучения |
| Автор | |
| Разработчик | Kubeflow Contributors[1] - AWS, Bloomberg, Google (компания), IBM, NVIDIA, Nutanix, Red Hat, Arrikto, and others |
| Написана на | Go, Python |
| Первый выпуск | 5 апреля 2018[2] |
| Аппаратная платформа | Kubernetes |
| Последняя версия | 1.6[3] (7 сентября 2022) |
| Лицензия | Apache License 2.0 |
| Сайт | kubeflow.org |
Kubeflow — построенная на Kubernetes и представленная Google платформа с открытым кодом, предназначенная для машинного обучения и MLOps практик. Различные этапы в типичном жизненном цикле машинного обучения представлены разными компонентами программного обеспечения в Kubeflow, включая разработку модели (Kubeflow Notebooks[4]), тренировку модели (Kubeflow Pipelines,[5] Kubeflow Training Operator[6]), использование модели (KServe[a][7]), и автоматическое машинное обучение (Katib[8]).
Каждый компонент Kubeflow может быть развернут отдельно, также нет требования развертывать каждый компонент.[9]
История
Проект Kubeflow был впервые анонсирован на конференции KubeCon + CloudNativeCon North America 2017 инженерами Google Дэвидом Арончиком, Джереми Леви и Вишну Каннаном[10] для устранения предполагаемой нехватки гибких возможностей для построения систем машинного обучения готовых к запуску на производстве.[11] Было также заявлено, что проект начался как способ компании Google сделать открытым код, с помощью которого в компании используется TensorFlow.[12]
Первый выпуск Kubeflow (Kubeflow 0.1) был анонсирован на конференции KubeCon + CloudNativeCon Europe 2018[13] с утверждениями, что он уже стал одним из верхних 2 % проектов на GitHub за всё время существования сервиса.[14] Kubeflow 1.0 был выпущен в марте 2020 года в публичном посте анонсирующим перевод множества компонентов Kubeflow в «стабильный статус», обозначая, что они стали готовы для производственного использования.[15]
Компоненты
Kubeflow Notebooks для разработки модели
Модели машинного обучения разрабатываются в компоненте записной книжки называемым Kubeflow Notebooks. Компонент использует web среды разработки внутри Kubernetes кластера, с родной поддержкой Jupyter Notebook, Visual Studio Code, и RStudio.[16]
Kubeflow Pipelines для обучения модели
После разработки модели обучаются в компоненте Kubeflow Pipelines. Компонент служит платформой для построения и развертывания портируемого, масштабируемого рабочего процесса машинного обучения, основанного на контейнерах Docker.[17] Облачная платформа Google адаптировала Kubeflow Pipelines DSL для использования внутри своего продукта Vertex AI Pipelines.[18]
Kubeflow Training Operator для обучения модели
Для некоторых моделей машинного обучения и библиотек, компонент Kubeflow Training Operator предоставляет поддержку пользовательских ресурсов Kubernetes. Компонент позволяет запускать как распределенные, так и не распределенные работы для обучения с использованием TensorFlow, PyTorch, Apache MXNet, XGBoost, и MPI на Kubernetes.[6]
KServe для использования модели
Компонент KServe (ранее называемый KFServing[19]) предоставляет пользовательские ресурсы Kubernetes для использования моделей машинного обучения с помощью различных фреймворков включая TensorFlow, XGBoost, scikit-learn, PyTorch, и ONNX.[20] KServe был разработан совместно Google, IBM, Bloomberg, NVIDIA, и Seldon.[19] Публично раскрытые пользователи KServe включают Bloomberg,[21] Gojek,[22] и прочих.[23]
Katib для автоматического машинного обучения
Наконец, Kubeflow включает компонент для автоматического обучения и разработки моделей машинного обучения — Katib компонент. Он описывается как родной проект Kubernetes и позволяет производить настройку гиперпараметров, раннюю остановку и поиск нейронной архитектуры.[24]
Хронология выпусков
Дополнение
Примечания
- ↑ Kubeflow Website - Working Groups (англ.).
- ↑ 2,0 2,1 Kubeflow 0.1 - Release Tag (англ.).
- ↑ 3,0 3,1 Kubeflow 1.6 - Release Information (англ.).
- ↑ Kubeflow Website - Kubeflow Notebooks (англ.).
- ↑ Kubeflow Website - Kubeflow Pipelines (англ.).
- ↑ 6,0 6,1 Kubeflow GitHub - Kubeflow Training Operator (англ.).
- ↑ Kubeflow Website - KServe (англ.).
- ↑ Kubeflow Website - Katib (англ.).
- ↑ Kubeflow Website - Installing Kubeflow (англ.).
- ↑ "Hot Dogs or Not" - At Scale with Kubernetes [I - Vish Kannan & David Aronchick, Google] (англ.).
- ↑ Introducing Kubeflow - A Composable, Portable, Scalable ML Stack Built for Kubernetes (англ.).
- ↑ Kubeflow Website - History (англ.).
- ↑ Google-led Kubeflow, machine learning for Kubernetes, begins to take shape (англ.).
- ↑ Announcing Kubeflow 0.1 (англ.).
- ↑ Kubeflow 1.0: Cloud-Native ML for Everyone (англ.).
- ↑ Kubeflow Website - Kubeflow Notebooks Overview (англ.).
- ↑ Kubeflow Website - Kubeflow Pipelines Introduction (англ.).
- ↑ Vertex AI - Building a pipeline (англ.).
- ↑ 19,0 19,1 19,2 KServe: The next generation of KFServing (англ.).
- ↑ KServe GitHub (англ.).
- ↑ The journey to build Bloomberg’s ML Inference Platform Using KServe (formerly KFServing) (англ.).
- ↑ Merlin: Making ML Model Deployments Magical (англ.).
- ↑ KServe Website - Adopters of KServe (англ.).
- ↑ Kubeflow GitHub - Katib (англ.).
- ↑ Kubeflow 0.2 - Release Tag (англ.).
- ↑ Kubeflow 0.3 - Release Tag (англ.).
- ↑ Kubeflow 0.4 - Release Tag (англ.).
- ↑ Kubeflow 0.5 - Release Tag (англ.).
- ↑ Kubeflow 0.6 - Release Information (англ.).
- ↑ Kubeflow 0.7 - Release Information (англ.).
- ↑ Kubeflow 1.0 - Release Information (англ.).
- ↑ Kubeflow 1.1 - Release Information (англ.).
- ↑ Kubeflow 1.2 - Release Information (англ.).
- ↑ Kubeflow 1.3 - Release Information (англ.).
- ↑ Kubeflow 1.4 - Release Information (англ.).
- ↑ Kubeflow 1.5 - Release Information (англ.).
Ссылки
- kubeflow.org — официальный сайт Kubeflow
- Проект Kubeflow на сайте GitHub
На эту статью не ссылаются другие статьи Руниверсалис. |