Penyiapan Analisis Model Tensorflow

Konfigurasi

TFMA menyimpan konfigurasinya dalam proto yang diserialkan ke JSON. Proto ini menggabungkan konfigurasi yang diperlukan untuk data masukan, data keluaran, spesifikasi model, spesifikasi metrik, dan spesifikasi pemotongan.

Semua pipeline TFMA dikaitkan dengan model dasar (primer) dan tidak ada atau lebih kandidat model (sekunder). Model dasar dan kandidat ditentukan oleh pengguna di awal alur dan masing-masing memerlukan nama unik. Berikut ini adalah contoh pengaturan konfigurasi umum yang mungkin digunakan pengguna:

  • Evaluasi model tunggal:
    • T/A (yaitu tanpa nama)
  • Evaluasi berbasis validasi:
    • baseline
    • candidate
  • Evaluasi perbandingan model:
    • my_model_a
    • my_model_b

Spesifikasi Model

Spesifikasi model bertipe tfma.ModelSpec dan digunakan untuk menentukan lokasi model serta parameter spesifik model lainnya. Misalnya, berikut ini adalah pengaturan umum yang perlu dikonfigurasi sebelum menjalankan evaluasi:

  • name - nama model (jika beberapa model digunakan)
  • signature_name - nama tanda tangan yang digunakan untuk prediksi (defaultnya adalah serving_default ). Gunakan eval jika menggunakan EvalSavedModel.
  • label_key - nama fitur yang terkait dengan label.
  • example_weight_key - nama fitur yang dikaitkan dengan bobot contoh.

Spesifikasi Metrik

Spesifikasi metrik bertipe tfma.MetricsSpec dan digunakan untuk mengonfigurasi metrik yang akan dihitung sebagai bagian dari evaluasi. Masalah pembelajaran mesin yang berbeda menggunakan jenis metrik yang berbeda dan TFMA menawarkan banyak opsi untuk mengonfigurasi dan menyesuaikan metrik yang dihitung. Karena metrik adalah bagian yang sangat besar dari TFMA, metrik tersebut dibahas secara rinci secara terpisah di metrik .

Spesifikasi Pengirisan

Spesifikasi pemotongan bertipe tfma.SlicingSpec dan digunakan untuk mengonfigurasi kriteria irisan yang akan digunakan selama evaluasi. Pengirisan dapat dilakukan dengan feature_keys , feature_values ​​, atau keduanya. Beberapa contoh spesifikasi slicing adalah sebagai berikut:

  • {}
    • Irisan yang terdiri dari data keseluruhan.
  • { feature_keys: ["country"] }
    • Irisan untuk semua nilai di fitur "negara". Misalnya, kita mungkin mendapatkan potongan "negara:us", "negara:jp", dll.
  • { feature_values: [{key: "country", value: "us"}] }
    • Irisan yang terdiri dari "negara: kita".
  • { feature_keys: ["country", "city"] }
    • Irisan untuk semua nilai dalam fitur "negara" disilangkan dengan semua nilai dalam fitur "kota" (perhatikan ini mungkin mahal).
  • { feature_keys: ["country"] feature_values: [{key: "age", value: "20"}] }
    • Irisan untuk semua nilai dalam fitur "negara" disilangkan dengan nilai "usia:20"

Perhatikan bahwa kunci fitur dapat berupa fitur yang diubah atau fitur masukan mentah. Lihat tfma.SlicingSpec untuk informasi lebih lanjut.

EvalSharedModel

Selain pengaturan konfigurasi, TFMA juga mengharuskan instance tfma.EvalSharedModel dibuat untuk berbagi model antara beberapa thread dalam proses yang sama. Contoh model bersama mencakup informasi tentang jenis model (keras, dll) dan cara memuat serta mengonfigurasi model dari lokasi tersimpannya di disk (misalnya tag, dll). API tfma.default_eval_shared_model dapat digunakan untuk membuat instance default dengan jalur dan kumpulan tag.