Alur kerja machine learning (ML) mencakup langkah-langkah untuk menyiapkan dan menganalisis data, melatih dan mengevaluasi model, men-deploy model terlatih ke produksi, melacak artefak ML dan memahami dependensinya, dll. Mengelola langkah-langkah ini secara ad-hoc bisa jadi sulit dan menghabiskan waktu.
MLOps adalah praktik penerapan praktik DevOps untuk membantu mengotomatiskan, mengelola, dan mengaudit alur kerja ML. Pipeline AI Platform membantu Anda mengimplementasikan MLOps dengan menyediakan platform tempat Anda dapat mengorkestrasi langkah-langkah dalam alur kerja Anda sebagai pipeline. Pipeline ML merupakan definisi alur kerja ML yang portabel dan dapat direproduksi.
AI Platform Pipelines memudahkan Anda memulai MLOps dengan menghemat kesulitan dalam menyiapkan Kubeflow Pipelines dengan TensorFlow Extended (TFX). Kubeflow Pipelines adalah platform open source untuk menjalankan, memantau, mengaudit, dan mengelola pipeline ML di Kubernetes. TFX adalah project open source untuk membangun pipeline ML yang mengorkestrasi alur kerja ML end-to-end.
Tentang Kubeflow dan platform Kubeflow Pipelines
Kubeflow adalah toolkit open source untuk menjalankan workload ML di Kubernetes. Kubeflow Pipelines adalah komponen Kubeflow yang menyediakan platform untuk membangun dan men-deploy alur kerja ML, yang disebut pipeline.
Tentang TensorFlow Extended
TFX adalah project open source yang dapat Anda gunakan untuk menentukan alur kerja ML berbasis TensorFlow sebagai pipeline. TFX menyediakan komponen yang dapat Anda gunakan kembali untuk menyerap dan mengubah data, melatih dan mengevaluasi model, men-deploy model terlatih untuk inferensi, dll. Dengan menggunakan kembali komponen TFX, Anda dapat mengorkestrasi proses ML tanpa perlu membuat komponen kustom untuk setiap langkah.
Tentang Pipeline AI Platform
AI Platform Pipelines menghemat kesulitan:
- Menyiapkan cluster Google Kubernetes Engine
- Membuat bucket Cloud Storage
- Menginstal Kubeflow Pipeline
Dengan AI Platform Pipelines, Anda dapat menyiapkan cluster Kubeflow Pipelines dalam waktu 15 menit, sehingga Anda dapat mulai menggunakan pipeline ML dengan cepat. AI Platform Pipelines juga membuat bucket Cloud Storage, untuk mempermudah dalam menjalankan tutorial pipeline dan mulai menggunakan template pipeline TFX.
Memahami pipeline ML
Pipeline ML adalah alur kerja ML portabel dan skalabel, berdasarkan container. Pipeline ML terdiri dari satu set parameter input dan daftar tugas. Setiap tugas adalah instance komponen pipeline.
Anda dapat menggunakan pipeline ML untuk:
- Menerapkan strategi MLOps untuk mengotomatiskan proses yang berulang.
- Bereksperimen dengan menjalankan alur kerja ML dengan kumpulan hyperparameter, jumlah langkah, atau iterasi pelatihan yang berbeda, dll.
- Menggunakan kembali alur kerja pipeline untuk melatih model baru.
Anda dapat menggunakan template pipeline TensorFlow Extended atau Kubeflow Pipelines SDK untuk mem-build pipeline.
- Ikuti tutorial untuk mempelajari cara membuat pipeline dari template pipeline TFX.
- Pelajari lebih lanjut cara membangun pipeline Kubeflow.
Memahami komponen pipeline
Komponen pipeline adalah kumpulan kode mandiri yang melakukan satu langkah dalam alur kerja pipeline, seperti pra-pemrosesan data, transformasi data, pelatihan model, dll.
Komponen terdiri dari sekumpulan parameter input, serangkaian output, dan lokasi image container. Image container komponen adalah paket yang menyertakan kode yang dapat dieksekusi komponen dan definisi lingkungan tempat kode dijalankan.
Memahami alur kerja pipeline
Setiap tugas dalam pipeline melakukan satu langkah dalam alur kerja pipeline. Karena tugas adalah instance komponen pipeline, tugas memiliki parameter input, output, dan image container. Parameter input tugas dapat ditetapkan dari parameter input pipeline atau ditetapkan untuk bergantung pada output tugas lain dalam pipeline ini. Kubeflow Pipelines menggunakan dependensi ini untuk menentukan alur kerja pipeline sebagai grafik asiklik terarah.
Misalnya, pertimbangkan pipeline dengan tugas-tugas berikut:
- Praproses: Tugas ini menyiapkan data pelatihan.
- Train: Tugas ini menggunakan data pelatihan yang telah diproses sebelumnya untuk melatih model.
- Prediksi: Tugas ini men-deploy model terlatih sebagai layanan ML dan mendapatkan prediksi untuk set data pengujian.
- Matriks konfusi: Tugas ini menggunakan output tugas prediksi untuk membuat matriks konfusi.
- ROC: Tugas ini menggunakan output tugas prediksi untuk melakukan analisis kurva karakteristik operasi penerima (ROC).
Untuk membuat grafik alur kerja, Kubeflow Pipelines SDK menganalisis dependensi tugas.
- Tugas pra-pemrosesan tidak bergantung pada tugas lain, sehingga dapat menjadi tugas pertama dalam alur kerja atau dapat berjalan bersamaan dengan tugas lainnya.
- Tugas pelatihan bergantung pada data yang dihasilkan oleh tugas pra-pemrosesan, jadi pelatihan harus dilakukan setelah pra-pemrosesan.
- Tugas prediksi bergantung pada model terlatih yang dihasilkan oleh tugas pelatihan, sehingga prediksi harus terjadi setelah pelatihan.
- Membangun matriks konfusi dan melakukan analisis KOP bergantung pada output tugas prediksi, sehingga keduanya harus terjadi setelah prediksi selesai. Membuat matriks konfusi dan melakukan analisis KOP dapat terjadi secara bersamaan karena keduanya bergantung pada output tugas prediksi.
Berdasarkan analisis ini, sistem Kubeflow Pipelines menjalankan tugas pra-pemrosesan, pelatihan, dan prediksi secara berurutan, lalu menjalankan tugas matriks konfusi dan KOP secara bersamaan.
Langkah selanjutnya
- Ikuti panduan memulai cepat Pipeline AI Platform untuk mempelajari cara menginstal Kubeflow Pipelines dan menjalankan pipeline ML pertama Anda.