Memahami TFX Pipelines

Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

MLOps adalah praktik penerapan praktik DevOps untuk membantu mengotomatisasi, mengelola, dan mengaudit alur kerja machine learning (ML). Alur kerja ML mencakup langkah-langkah untuk:

  • Mempersiapkan, menganalisis, dan mengubah data.
  • Melatih dan mengevaluasi model.
  • Terapkan model terlatih ke produksi.
  • Lacak artefak ML dan pahami dependensinya.

Mengelola langkah-langkah ini secara ad-hoc bisa jadi sulit dan memakan waktu.

TFX mempermudah penerapan MLOps dengan menyediakan toolkit yang membantu Anda mengatur proses ML Anda di berbagai orkestra, seperti: Apache Airflow, Apache Beam, dan Kubeflow Pipelines. Dengan menerapkan alur kerja Anda sebagai saluran TFX, Anda dapat:

  • Otomatiskan proses ML Anda, yang memungkinkan Anda melatih ulang, mengevaluasi, dan menerapkan model Anda secara teratur.
  • Memanfaatkan sumber daya komputasi terdistribusi untuk memproses kumpulan data dan beban kerja yang besar.
  • Tingkatkan kecepatan eksperimen dengan menjalankan pipeline dengan set hyperparameter yang berbeda.

Panduan ini menjelaskan konsep inti yang diperlukan untuk memahami saluran pipa TFX.

Artefak

Output dari langkah-langkah dalam pipa TFX disebut artefak . Langkah selanjutnya dalam alur kerja Anda mungkin menggunakan artefak ini sebagai input. Dengan cara ini, TFX memungkinkan Anda mentransfer data di antara langkah-langkah alur kerja.

Misalnya, komponen standar ExampleGen memancarkan contoh serial, yang komponennya seperti komponen standar StatisticsGen digunakan sebagai input.

Artefak harus diketik dengan kuat dengan jenis artefak yang terdaftar di penyimpanan Metadata ML . Pelajari lebih lanjut tentang konsep yang digunakan dalam Metadata ML .

Jenis artefak memiliki nama dan mendefinisikan skema propertinya. Nama jenis artefak harus unik di penyimpanan Metadata ML Anda. TFX menyediakan beberapa tipe artefak standar yang menggambarkan tipe data kompleks dan tipe nilai, seperti: string, integer, dan float. Anda dapat menggunakan kembali jenis artefak ini atau menentukan jenis artefak khusus yang berasal dari Artifact .

Parameter

Parameter adalah input ke pipeline yang diketahui sebelum pipeline Anda dieksekusi. Parameter memungkinkan Anda mengubah perilaku pipeline, atau bagian dari pipeline, melalui konfigurasi alih-alih kode.

Misalnya, Anda dapat menggunakan parameter untuk menjalankan pipeline dengan kumpulan hyperparameter yang berbeda tanpa mengubah kode pipeline.

Menggunakan parameter memungkinkan Anda meningkatkan kecepatan eksperimen dengan mempermudah menjalankan pipeline Anda dengan set parameter yang berbeda.

Pelajari lebih lanjut tentang kelas RuntimeParameter .

Komponen

Komponen adalah implementasi tugas ML yang dapat Anda gunakan sebagai langkah dalam alur TFX Anda. Komponen terdiri dari:

  • Spesifikasi komponen, yang mendefinisikan artefak input dan output komponen, dan parameter yang diperlukan komponen.
  • Eksekutor, yang mengimplementasikan kode untuk melakukan langkah dalam alur kerja ML Anda, seperti menyerap dan mengubah data atau pelatihan dan mengevaluasi model.
  • Antarmuka komponen, yang mengemas spesifikasi komponen dan pelaksana untuk digunakan dalam pipa.

TFX menyediakan beberapa komponen standar yang dapat Anda gunakan dalam pipeline Anda. Jika komponen ini tidak memenuhi kebutuhan Anda, Anda dapat membuat komponen khusus. Pelajari lebih lanjut tentang komponen khusus .

saluran pipa

Pipeline TFX adalah implementasi portabel dari alur kerja ML yang dapat dijalankan di berbagai orkestra, seperti: Apache Airflow, Apache Beam, dan Kubeflow Pipelines. Pipeline terdiri dari instance komponen dan parameter input.

Instans komponen menghasilkan artefak sebagai output dan biasanya bergantung pada artefak yang dihasilkan oleh instans komponen hulu sebagai input. Urutan eksekusi untuk instance komponen ditentukan dengan membuat grafik asiklik terarah dari dependensi artefak.

Misalnya, pertimbangkan jalur pipa yang melakukan hal berikut:

  • Menyerap data langsung dari sistem berpemilik menggunakan komponen khusus.
  • Menghitung statistik untuk data pelatihan menggunakan komponen standar StatisticsGen.
  • Membuat skema data menggunakan komponen standar SchemaGen.
  • Memeriksa data pelatihan untuk anomali menggunakan komponen standar ExampleValidator.
  • Melakukan rekayasa fitur pada dataset menggunakan komponen standar Transform.
  • Melatih model menggunakan komponen standar Pelatih.
  • Mengevaluasi model yang dilatih menggunakan komponen Evaluator.
  • Jika model lolos evaluasinya, pipeline mengantrekan model terlatih ke sistem penerapan berpemilik menggunakan komponen khusus.

Untuk menentukan urutan eksekusi untuk instans komponen, TFX menganalisis dependensi artefak.

  • Komponen penyerapan data tidak memiliki dependensi artefak, sehingga dapat menjadi simpul pertama dalam grafik.
  • StatisticsGen bergantung pada contoh yang dihasilkan oleh penyerapan data, sehingga harus dijalankan setelah penyerapan data.
  • SchemaGen bergantung pada statistik yang dibuat oleh StatisticsGen, sehingga harus dijalankan setelah StatisticsGen.
  • ExampleValidator bergantung pada statistik yang dibuat oleh StatisticsGen dan skema yang dibuat oleh SchemaGen, sehingga harus dijalankan setelah StatisticsGen dan SchemaGen.
  • Transform bergantung pada contoh yang dihasilkan oleh penyerapan data dan skema yang dibuat oleh SchemaGen, sehingga harus dijalankan setelah penyerapan data dan SchemaGen.
  • Pelatih bergantung pada contoh yang dihasilkan oleh penyerapan data, skema yang dibuat oleh SchemaGen, dan model tersimpan yang dihasilkan oleh Transform. Pelatih hanya dapat dijalankan setelah penyerapan data, SchemaGen, dan Transform.
  • Evaluator bergantung pada contoh yang dihasilkan oleh penyerapan data dan model tersimpan yang dihasilkan oleh Pelatih, sehingga harus dijalankan setelah penyerapan data dan Pelatih.
  • Penyebar kustom bergantung pada model tersimpan yang dihasilkan oleh Pelatih dan hasil analisis yang dibuat oleh Penilai, sehingga penyebar harus dijalankan setelah Pelatih dan Penilai.

Berdasarkan analisis ini, seorang orkestra menjalankan:

  • Penyerapan data, StatisticsGen, komponen SchemaGen dilakukan secara berurutan.
  • Komponen ExampleValidator dan Transform dapat berjalan secara paralel karena mereka berbagi dependensi artefak input dan tidak bergantung pada output satu sama lain.
  • Setelah komponen Transform selesai, instance komponen Trainer, Evaluator, dan custom deployer akan berjalan secara berurutan.

Pelajari lebih lanjut tentang membangun saluran TFX .

Template Pipa TFX

TFX Pipeline Templates memudahkan untuk memulai pengembangan pipeline dengan menyediakan pipeline bawaan yang dapat Anda sesuaikan untuk kasus penggunaan Anda.

Pelajari lebih lanjut tentang menyesuaikan template saluran TFX .

Jalur Pipa

Run adalah eksekusi tunggal dari sebuah pipeline.

Pemimpin orkestra

Orchestrator adalah sistem di mana Anda dapat menjalankan jalur pipa. TFX mendukung orkestra seperti: Apache Airflow , Apache Beam , dan Kubeflow Pipelines . TFX juga menggunakan istilah DagRunner untuk merujuk pada implementasi yang mendukung orkestra.