Dataflow ML dalam alur kerja ML

Untuk mengorkestrasi alur kerja machine learning yang kompleks, Anda dapat membuat framework yang mencakup langkah-langkah pra-pemrosesan dan pasca-pemrosesan data. Anda mungkin perlu melakukan pra-pemrosesan data sebelum dapat menggunakannya untuk melatih model atau untuk melakukan pascapemrosesan data guna mengubah output model Anda.

Alur kerja ML sering kali berisi banyak langkah yang bersama-sama membentuk pipeline. Untuk mem-build pipeline machine learning, Anda dapat menggunakan salah satu metode berikut.

  • Gunakan framework orkestrasi yang memiliki integrasi bawaan dengan Apache Beam dan runner Dataflow, seperti TensorFlow Extended (TFX) atau Kubeflow Pipelines (KFP). Opsi ini adalah yang paling tidak rumit.
  • Buat komponen kustom di template Dataflow, lalu panggil template dari pipeline ML Anda. Panggilan tersebut berisi kode Apache Beam Anda.
  • Buat komponen kustom untuk digunakan di pipeline ML Anda dan tempatkan kode Python langsung di komponen. Anda menentukan pipeline Apache Beam kustom dan menggunakan runner Dataflow dalam komponen kustom. Opsi ini paling kompleks dan mengharuskan Anda mengelola dependensi pipeline.

Setelah membuat pipeline machine learning, Anda dapat menggunakan orchestrator untuk menggabungkan komponen guna membuat alur kerja machine learning yang menyeluruh. Untuk mengorkestrasi komponen, Anda dapat menggunakan layanan terkelola, seperti Vertex AI Pipelines.

Kasus penggunaan orkestrasi alur kerja dijelaskan di bagian berikut.

TFX dan Kubeflow Pipeline (KFP) menggunakan komponen Apache Beam.

Saya ingin menggunakan Dataflow dengan Vertex AI Pipelines

Vertex AI Pipelines membantu Anda dalam mengotomatiskan, memantau, dan mengatur sistem ML dengan mengorkestrasi alur kerja ML Anda tanpa server. Anda dapat menggunakan Vertex AI Pipelines untuk mengorkestrasi alur kerja directed acyclic graph (DAG) yang ditentukan oleh TFX atau KFP dan untuk otomatis melacak artefak ML menggunakan Vertex ML Metadata. Untuk mempelajari cara menggabungkan Dataflow dengan TFX dan KFP, gunakan informasi di bagian berikut.

Saya ingin menggunakan Dataflow dengan Kubeflow Pipelines

Kubeflow adalah toolkit ML yang dikhususkan untuk membuat deployment alur kerja ML di Kubernetes menjadi sederhana, portabel, dan skalabel. Kubeflow Pipelines adalah alur kerja ML menyeluruh yang dapat digunakan kembali dan dibangun menggunakan Kubeflow Pipelines SDK.

Layanan Kubeflow Pipelines bertujuan untuk menyediakan orkestrasi end-to-end serta memfasilitasi eksperimen dan penggunaan ulang. Dengan KFP, Anda dapat bereksperimen dengan teknik orkestrasi dan mengelola pengujian, serta dapat menggunakan kembali komponen dan pipeline untuk membuat beberapa solusi menyeluruh tanpa harus memulai dari awal setiap waktu.

Saat menggunakan Dataflow dengan KFP, Anda dapat menggunakan operator DataflowPythonJobOP atau operator DataflowFlexTemplateJobOp. Anda juga dapat membuat komponen yang sepenuhnya kustom. Sebaiknya gunakan operator DataflowPythonJobOP.

Jika Anda ingin mem-build komponen yang sepenuhnya kustom, lihat halaman Komponen Dataflow dalam dokumentasi Vertex AI.

Saya ingin menggunakan Dataflow dengan TFX

Komponen pipeline TFX dibangun di library TFX, dan library pemrosesan data menggunakan Apache Beam secara langsung. Misalnya, TensorFlow Transform menerjemahkan panggilan pengguna ke Apache Beam. Oleh karena itu, Anda dapat menggunakan Apache Beam dan Dataflow dengan pipeline TFX tanpa perlu melakukan pekerjaan konfigurasi tambahan. Untuk menggunakan TFX dengan Dataflow, saat Anda membangun pipeline TFX, gunakan runner Dataflow. Untuk informasi selengkapnya, lihat resource berikut: