Dataflow ML en flujos de trabajo del AA

Para organizar flujos de trabajo complejos de aprendizaje automático, puedes crear frameworks que incluyan pasos de procesamiento previo y posterior de los datos. Es posible que debas procesar los datos con anterioridad para poder usarlos a fin de entrenar tu modelo o hacer un procesamiento posterior de los datos a fin de transformar el resultado de tu modelo.

Los flujos de trabajo del AA a menudo contienen muchos pasos que juntos forman una canalización. Para compilar tu canalización de aprendizaje automático, puedes usar uno de los siguientes métodos.

  • Usa un framework de organización que tenga una integración incorporada con Apache Beam y el ejecutor de Dataflow, como TensorFlow Extended (TFX) o Kubeflow Pipelines (KFP). Esta opción es la menos compleja.
  • Crea un componente personalizado en una plantilla de Dataflow y, luego, llama a la plantilla desde la canalización de AA. La llamada contiene tu código de Apache Beam.
  • Compila un componente personalizado para usar en la canalización de AA y coloca el código de Python directamente en el componente. Debes definir una canalización personalizada de Apache Beam y usar el ejecutor de Dataflow dentro del componente personalizado. Esta opción es la más compleja y requiere que administres las dependencias de canalización.

Después de crear la canalización de aprendizaje automático, puedes usar un organizador para encadenar los componentes a fin de crear un flujo de trabajo de aprendizaje automático de extremo a extremo. Para organizar los componentes, puedes usar un servicio administrado, como Vertex AI Pipelines.

Los casos de uso de organización de flujos de trabajo se describen en las siguientes secciones.

TFX y Kubeflow Pipelines (KFP) usan componentes de Apache Beam.

Quiero usar Dataflow con Vertex AI Pipelines

Vertex AI Pipelines te permite automatizar, supervisar y administrar tus sistemas de AA mediante la organización de tu flujo de trabajo sin servidores. Puedes usar Vertex AI Pipelines para organizar grafos acíclicos dirigidos (DAG) definidos por TFX o KFP y realizar un seguimiento de forma automática de tus artefactos de AA mediante Vertex ML Metadata. Para aprender a incorporar Dataflow con TFX y KFP, usa la información de las siguientes secciones.

Quiero usar Dataflow con Kubeflow Pipelines

Kubeflow es un kit de herramientas de AA dedicado a hacer que las implementaciones de flujos de trabajo de AA en Kubernetes sean simples, portátiles y escalables. Kubeflow Pipelines son flujos de trabajo de AA de extremo a extremo reutilizables compilados con el SDK de Kubeflow Pipelines.

El servicio de Kubeflow Pipelines tiene como objetivo proporcionar una organización de extremo a extremo y facilitar la experimentación y reutilización. Con KFP, puedes experimentar con técnicas de organización y administrar las pruebas, y puedes volver a usar componentes y canalizaciones para crear varias soluciones de extremo a extremo sin tener que comenzar cada vez.

Cuando usas Dataflow con KFP, puedes usar el operador DataflowPythonJobOP o el operador DataflowFlexTemplateJobOp. También puedes compilar un componente totalmente personalizado. Recomendamos usar el operador DataflowPythonJobOP.

Si deseas compilar un componente completamente personalizado, consulta la página Componentes de Dataflow en la documentación de Vertex AI.

Quiero usar Dataflow con TFX

Los componentes de canalización de TFX se compilan en bibliotecas de TFX y las bibliotecas de procesamiento de datos usan Apache Beam directamente. Por ejemplo, TensorFlow Transform traduce las llamadas del usuario a Apache Beam. Por lo tanto, puedes usar Apache Beam y Dataflow con canalizaciones de TFX sin necesidad de realizar tareas de configuración adicionales. Para usar TFX con Dataflow, cuando compiles la canalización de TFX, usa el ejecutor de Dataflow. Para obtener más información, consulta los siguientes recursos: