Untuk mengatur alur kerja machine learning yang kompleks, Anda dapat membuat framework yang menyertakan langkah pra- dan pasca-pemrosesan data. Anda mungkin perlu memproses data terlebih dahulu sebelum dapat menggunakannya untuk melatih model atau memproses data secara pasca untuk mengubah output model.
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 sederhana.
- Build komponen kustom di template Dataflow, lalu panggil template dari pipeline ML Anda. Panggilan ini berisi kode Apache Beam Anda.
- Build 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 adalah yang paling kompleks dan mengharuskan Anda mengelola dependensi pipeline.
Setelah membuat pipeline machine learning, Anda dapat menggunakan orkestrator untuk mengaitkan komponen guna membuat alur kerja machine learning menyeluruh. Untuk mengatur komponen, Anda dapat menggunakan layanan terkelola, seperti Vertex AI Pipelines.
Kasus penggunaan orkestrasi alur kerja dijelaskan di bagian berikut.
- Saya ingin menggunakan Dataflow dengan Vertex AI Pipelines
- Saya ingin menggunakan Dataflow dengan KFP
- Saya ingin menggunakan Dataflow dengan TFX
TFX dan Kubeflow Pipelines (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 mengatur grafik acyclic terarah (DAG) alur kerja yang ditentukan oleh TFX atau KFP dan untuk melacak artefak ML secara otomatis 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 didedikasikan 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 dibuat menggunakan Kubeflow Pipelines SDK.
Layanan Kubeflow Pipelines bertujuan untuk menyediakan orkestrasi menyeluruh dan untuk memfasilitasi eksperimen dan penggunaan kembali. Dengan KFP, Anda dapat bereksperimen dengan teknik orkestrasi dan mengelola pengujian, serta dapat menggunakan kembali komponen dan pipeline untuk membuat beberapa solusi menyeluruh tanpa memulai dari awal setiap kali.
Saat menggunakan Dataflow dengan KFP, Anda dapat menggunakan operator DataflowPythonJobOP
atau operator DataflowFlexTemplateJobOp
. Anda juga dapat mem-build komponen yang sepenuhnya kustom. Sebaiknya gunakan
operator DataflowPythonJobOP
.
Jika Anda ingin mem-build komponen kustom sepenuhnya, lihat halaman Komponen dataflow dalam dokumentasi Vertex AI.
Saya ingin menggunakan Dataflow dengan TFX
Komponen pipeline TFX dibuat 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 mem-build pipeline TFX, gunakan runner Dataflow. Untuk informasi selengkapnya, lihat referensi berikut:
- Apache Beam dan TFX
- TensorFlow Extended (TFX): Menggunakan Apache Beam untuk pemrosesan data skala besar