Format model TF Hub
TF Hub menawarkan potongan model yang dapat digunakan kembali yang dapat dimuat kembali, dibuat, dan mungkin dilatih ulang dalam program TensorFlow. Ini datang dalam dua format berbeda:
- Format TF1 Hub khusus . Penggunaan utamanya adalah dalam TF1 (atau mode kompatibilitas TF1 di TF2) melalui hub.Module API -nya. Detail kompatibilitas lengkap di bawah ini .
- Format TF2 SavedModel asli. Tujuan penggunaan utamanya adalah di TF2 melalui hub.load dan hub.KerasLayer API. Detail kompatibilitas lengkap di bawah ini .
Format model dapat ditemukan di halaman model di l10n-hub.tensorflow.google.cn l10n . Pemuatan/inferensi model, penyempurnaan , atau pembuatan mungkin tidak didukung di TF1/2 berdasarkan format model.
Kompatibilitas format TF1 Hub
Operasi | Mode kompatibilitas TF1/ TF1 di TF2 [1] | TF2 |
Memuat / Inferensi | Didukung penuh ( panduan pemuatan format TF1 Hub lengkap ) m = hub.Module(handle)
outputs = m(inputs) | Disarankan untuk menggunakan hub.load l10n m = hub.load(handle)
outputs = m.signatures["sig"](inputs) atau hub.KerasLayer l10n m = hub.KerasLayer(handle, signature="sig")
outputs = m(inputs) |
Mencari setelan | Didukung penuh ( panduan fine-tuning format TF1 Hub lengkap ) m = hub.Module(handle,
trainable=True,
tags=["train"]*is_training)
outputs = m(inputs) Catatan: modul yang tidak memerlukan grafik kereta terpisah tidak memiliki tag kereta. | Tidak didukung |
Penciptaan | Didukung penuh (lihat panduan pembuatan format TF1 Hub lengkap ) Catatan: Format TF1 Hub ditujukan untuk TF1 dan hanya didukung sebagian di TF2. Pertimbangkan untuk membuat TF2 SavedModel. | Tidak didukung |
Kompatibilitas TF2 SavedModel
Tidak didukung sebelum TF1.15.
Operasi | Mode kompatibilitas TF1.15/ TF1 di TF2 [1] | TF2 |
Memuat / Inferensi | Gunakan hub.load l10n m = hub.load(handle)
outputs = m(inputs) atau hub.KerasLayer l10n m = hub.KerasLayer(handle)
outputs = m(inputs) | Didukung penuh ( panduan pemuatan TF2 SavedModel lengkap ). Gunakan hub.load l10n m = hub.load(handle)
outputs = m(inputs) atau hub.KerasLayer l10n m = hub.KerasLayer(handle)
outputs = m(inputs) |
Mencari setelan | Didukung untuk hub.KerasLayer yang digunakan di tf.keras.Model saat dilatih dengan Model.fit() atau dilatih di Penaksir yang model_fn membungkus Model per panduan model_fn kustom . Catatan: hub.KerasLayer tidak mengisi koleksi grafik seperti tf.compat.v1.layers atau hub.Module API lama. | Didukung penuh ( panduan fine-tuning TF2 SavedModel lengkap ). Gunakan hub.load: l10n m = hub.load(handle)
outputs = m(inputs, training=is_training) atau hub.KerasLayer: l10n m = hub.KerasLayer(handle, trainable=True)
outputs = m(inputs) |
Penciptaan | TF2 API tf.saved_model.save() dapat dipanggil dari dalam mode compat. | Didukung penuh (lihat panduan pembuatan TF2 SavedModel lengkap ) |
[1] "Mode kompatibilitas TF1 di TF2" mengacu pada efek gabungan dari mengimpor TF2 dengan import tensorflow.compat.v1 as tf
dan menjalankan tf.disable_v2_behavior()
seperti yang dijelaskan dalam panduan Migrasi TensorFlow .