Bergabunglah dengan kami di DevFest untuk Ukraina 14-15 Juni Daftar Online sekarang

Memahami TFX Pipelines

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.
  • Deploy 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 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 besar dan beban kerja.
  • 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 dapat menggunakan artefak ini sebagai input. Dengan cara ini, TFX memungkinkan Anda mentransfer data di antara langkah-langkah alur kerja.

Misalnya, ExampleGen standar memancarkan komponen serial contoh, yang komponen seperti StatisticsGen penggunaan komponen standar sebagai masukan.

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

Jenis artefak memiliki nama dan mendefinisikan skema propertinya. Nama jenis artefak harus unik di penyimpanan Metadata ML Anda. TFX menyediakan beberapa jenis artefak standar yang menggambarkan tipe data yang kompleks dan jenis nilai, seperti: string, integer, dan float. Anda dapat menggunakan kembali jenis artefak ini atau menentukan jenis kustom artefak 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

Sebuah komponen merupakan implementasi dari tugas ML yang dapat Anda gunakan sebagai langkah dalam pipa 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 pipa Anda. Jika komponen ini tidak memenuhi kebutuhan Anda, Anda dapat membuat komponen khusus. Pelajari lebih lanjut tentang komponen kustom .

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 instans 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 kustom.

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

  • Komponen penyerapan data tidak memiliki dependensi artefak apa pun, sehingga dapat menjadi simpul pertama dalam grafik.
  • StatisticsGen tergantung pada contoh-contoh yang dihasilkan oleh konsumsi data, sehingga harus dijalankan setelah konsumsi data.
  • SchemaGen tergantung pada statistik yang dibuat oleh StatisticsGen, sehingga harus dijalankan setelah StatisticsGen.
  • ExampleValidator tergantung pada statistik yang dibuat oleh StatisticsGen dan skema yang dibuat oleh SchemaGen, sehingga harus dijalankan setelah StatisticsGen dan SchemaGen.
  • Transform tergantung pada contoh-contoh yang dihasilkan oleh konsumsi data dan skema yang dibuat oleh SchemaGen, sehingga harus dijalankan setelah konsumsi data dan SchemaGen.
  • Trainer tergantung pada contoh-contoh yang dihasilkan oleh konsumsi data, skema yang dibuat oleh SchemaGen, dan model yang disimpan diproduksi oleh Transform. Pelatih hanya dapat dijalankan setelah penyerapan data, SchemaGen, dan Transform.
  • Evaluator tergantung pada contoh-contoh yang dihasilkan oleh konsumsi data dan model disimpan dihasilkan oleh Trainer, sehingga harus dijalankan setelah konsumsi data dan Trainer.
  • The deployer kustom tergantung pada model disimpan dihasilkan oleh Trainer dan hasil analisis yang dibuat oleh Evaluator, sehingga deployer yang harus dijalankan setelah Trainer dan Evaluator.

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, Instans komponen Trainer, Evaluator, dan penyebar kustom berjalan secara berurutan.

Pelajari lebih lanjut tentang membangun pipa 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 pipa 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 aliran udara , Apache Beam , dan Kubeflow Pipa . TFX juga menggunakan DagRunner istilah untuk menyebut sebuah implementasi yang mendukung orkestra.