Articulo de referencia

Kubeflow

- [[AWS]], [[Bloomberg L.P.|Bloomberg]], Google, [[IBM]], [[Nvidia]], [[Nutanix]], [[Red Hat]], Arrikto, and others"},"released":{"wt":"{{Start date and age|2018|04|05}} "},"lat...

Kubeflow es una plataforma de código abierto para aprendizaje automático y MLOps en Kubernetes introducida por Google . Las diferentes etapas en un ciclo de vida típico de aprendizaje automático están representadas con diferentes componentes de software en Kubeflow, incluido el desarrollo de modelos ( Kubeflow Notebooks [ 4 ] ) , entrenamiento de modelos ( Kubeflow Pipelines , [ 5 ] Kubeflow Training Operator [ 6 ] ) , servicio de modelos ( KServe [ a ] [ 7 ] ) y aprendizaje automático automatizado ( Katib [ 8 ] ) .

Cada componente de Kubeflow se puede implementar por separado, y no es un requisito implementar todos los componentes. [ 9 ]

Historia

El proyecto Kubeflow fue anunciado por primera vez en KubeCon + CloudNativeCon North America 2017 por los ingenieros de Google David Aronchick, Jeremy Lewi y Vishnu Kannan [ 10 ] para abordar una supuesta falta de opciones flexibles para construir sistemas de aprendizaje automático listos para producción. [ 11 ] El proyecto también ha declarado que comenzó como una forma para que Google liberara el código fuente de cómo ejecutaban TensorFlow internamente. [ 12 ]

La primera versión de Kubeflow (Kubeflow 0.1) se anunció en KubeCon + CloudNativeCon Europe 2018. [ 13 ] [ 14 ] Kubeflow 1.0 se lanzó en marzo de 2020 a través de una publicación de blog pública que anunciaba que muchos componentes de Kubeflow estaban pasando a un "estado estable", lo que indicaba que ahora estaban listos para su uso en producción. [ 15 ]

En octubre de 2022, Google anunció que el proyecto Kubeflow había solicitado unirse a la Cloud Native Computing Foundation . [ 16 ] [ 17 ] En julio de 2023, la fundación votó a favor de aceptar a Kubeflow como un proyecto en etapa de incubación. [ 18 ] [ 19 ]

Componentes

Cuadernos de Kubeflow para el desarrollo de modelos

Los modelos de aprendizaje automático se desarrollan en el componente de cuadernos llamado Kubeflow Notebooks . Este componente ejecuta entornos de desarrollo basados ​​en la web dentro de un clúster de Kubernetes, con soporte nativo para Jupyter Notebook , Visual Studio Code y RStudio . [ 20 ]

Pipelines de Kubeflow para el entrenamiento de modelos

Una vez desarrollados, los modelos se entrenan en el componente Kubeflow Pipelines . Este componente actúa como una plataforma para crear e implementar flujos de trabajo de aprendizaje automático portátiles y escalables basados ​​en contenedores Docker. [ 21 ] Google Cloud Platform ha adoptado el DSL de Kubeflow Pipelines dentro de su producto Vertex AI Pipelines . [ 22 ]

Operador de entrenamiento de Kubeflow para entrenamiento de modelos

Para ciertos modelos y bibliotecas de aprendizaje automático, el componente Kubeflow Training Operator proporciona soporte para recursos personalizados de Kubernetes . El componente ejecuta trabajos de entrenamiento distribuidos o no distribuidos de TensorFlow , PyTorch , Apache MXNet , XGBoost y MPI en Kubernetes. [ 6 ]

KServe para el servicio de modelos

El componente KServe (anteriormente llamado KFServing [ 23 ] ) proporciona recursos personalizados de Kubernetes para servir modelos de aprendizaje automático en marcos arbitrarios, incluidos TensorFlow , XGBoost , scikit-learn , PyTorch y ONNX . [ 24 ] KServe fue desarrollado en colaboración por Google , IBM , Bloomberg , NVIDIA y Seldon . [ 23 ] Entre los usuarios de KServe que han sido divulgados públicamente se incluyen Bloomberg , [ 25 ] Gojek , [ 26 ] la Fundación Wikimedia , [ 27 ] y otros. [ 28 ]

Katib para el aprendizaje automático automatizado

Por último, Kubeflow incluye un componente para el entrenamiento y desarrollo automatizado de modelos de aprendizaje automático , el componente Katib . Se describe como un proyecto nativo de Kubernetes y cuenta con ajuste de hiperparámetros , parada temprana y búsqueda de arquitectura neuronal . [ 29 ]

Cronograma de lanzamiento

Notas

  1. KServe era conocido anteriormente como KFServing [ 23 ]

Referencias

  1. "Sitio web de Kubeflow - Grupos de trabajo" .
  2. 1 2 "Kubeflow 0.1 - Release Tag" . GitHub .
  3. 1 2 "Kubeflow 1.10 - Información de lanzamiento" .
  4. "Sitio web de Kubeflow - Cuadernos de Kubeflow" .
  5. "Sitio web de Kubeflow - Pipelines de Kubeflow" .
  6. 1 2 "Kubeflow GitHub - Kubeflow Training Operator" . GitHub .
  7. "Sitio web de Kubeflow - KServe" .
  8. ^ "Sitio web de Kubeflow - Katib" .
  9. "Sitio web de Kubeflow - Instalación de Kubeflow" .
  10. ""Hot Dogs or Not" - A escala con Kubernetes [ I ] - Vish Kannan y David Aronchick, Google" . YouTube . 15 de diciembre de 2017.
  11. "Presentamos Kubeflow: una pila de aprendizaje automático componible, portátil y escalable diseñada para Kubernetes" . 21 de diciembre de 2017.
  12. "Sitio web de Kubeflow - Historia" .
  13. "Kubeflow, la plataforma de aprendizaje automático para Kubernetes liderada por Google, comienza a tomar forma" . 4 de mayo de 2018.
  14. "Anuncio de Kubeflow 0.1" . 4 de mayo de 2018.
  15. "Kubeflow 1.0: Aprendizaje automático nativo en la nube para todos" . 2 de marzo de 2020.
  16. Lamkin, Thea (24-10-2022). "Kubeflow ha solicitado convertirse en un proyecto incubado por la CNCF" . Kubeflow . Recuperado el 02-11-2023 .
  17. "Kubeflow solicita convertirse en un proyecto incubado por la CNCF" . Blog de código abierto de Google . 24 de octubre de 2022. Consultado el 2 de noviembre de 2023 .
  18. "Kubeflow lleva MLOps a la incubadora de la CNCF" . Cloud Native Computing Foundation . 25 de julio de 2023. Consultado el 2 de noviembre de 2023 .
  19. "Kubeflow se une a la familia CNCF" . Blog de código abierto de Google . 25 de julio de 2023. Consultado el 2 de noviembre de 2023 .
  20. "Sitio web de Kubeflow - Descripción general de los cuadernos de Kubeflow" .
  21. "Sitio web de Kubeflow - Introducción a las canalizaciones de Kubeflow" .
  22. "Vertex AI - Construyendo una canalización" .
  23. 1 2 "KServe: La próxima generación de KFServing" . 27 de septiembre de 2021.
  24. "KServe GitHub" . GitHub .
  25. "El proceso de creación de la plataforma de inferencia de aprendizaje automático de Bloomberg utilizando KServe (anteriormente KFServing)" . Bloomberg Lp . 12 de octubre de 2021.
  26. "Merlin: Haciendo que las implementaciones de modelos de aprendizaje automático sean mágicas" .
  27. "Aprendizaje automático/LiftWing" .
  28. "Sitio web de KServe - Usuarios de KServe" .
  29. «Kubeflow GitHub - Katib» . GitHub .
  30. "Kubeflow 0.2 - Etiqueta de lanzamiento" . GitHub .
  31. "Kubeflow 0.3 - Etiqueta de lanzamiento" . GitHub .
  32. "Kubeflow 0.4 - Etiqueta de lanzamiento" . GitHub .
  33. "Kubeflow 0.5 - Etiqueta de lanzamiento" . GitHub .
  34. "Kubeflow 0.6 - Información de la versión" .
  35. "Kubeflow 0.7 - Información de lanzamiento" .
  36. "Kubeflow 1.0 - Información de lanzamiento" .
  37. "Kubeflow 1.1 - Información de lanzamiento" .
  38. "Kubeflow 1.2 - Información de lanzamiento" .
  39. "Kubeflow 1.3 - Información de lanzamiento" .
  40. "Kubeflow 1.4 - Información de lanzamiento" .
  41. "Kubeflow 1.5 - Información de lanzamiento" .
  42. "Kubeflow 1.6 - Información de lanzamiento" .
  43. "Kubeflow 1.7 - Información de lanzamiento" .
  44. "Kubeflow 1.8 - Información de lanzamiento" .
  45. "Kubeflow 1.9 - Información de lanzamiento" .
  • Sitio web oficialEdita esto en Wikidata
  • Kubeflow en GitHub