Kuantisasi pasca pelatihan

Kuantisasi pasca pelatihan mencakup teknik umum untuk mengurangi latensi CPU dan akselerator perangkat keras, pemrosesan, daya, dan ukuran model dengan sedikit penurunan akurasi model. Teknik ini dapat dilakukan pada model TensorFlow float yang sudah terlatih dan diterapkan selama konversi TensorFlow Lite. Teknik ini diaktifkan sebagai opsi di konverter TensorFlow Lite .

Untuk melompat langsung ke contoh ujung ke ujung, lihat tutorial berikut:

Menghitung bobot

Bobot dapat diubah menjadi jenis dengan presisi yang dikurangi, seperti float 16 bit atau bilangan bulat 8 bit. Kami biasanya merekomendasikan float 16-bit untuk akselerasi GPU dan integer 8-bit untuk eksekusi CPU.

Sebagai contoh, berikut adalah cara menentukan kuantisasi bobot integer 8 bit:

import tensorflow as tf
converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
tflite_quant_model = converter.convert()

Pada kesimpulan, bagian yang paling intensif dihitung dengan 8 bit, bukan floating point. Ada beberapa overhead kinerja waktu-inferensi, relatif terhadap penghitungan bobot dan aktivasi di bawah ini.

Untuk informasi lebih lanjut, lihat panduan kuantisasi pasca pelatihan TensorFlow Lite.

Kuantisasi bobot dan aktivasi integer penuh

Tingkatkan latensi, pemrosesan, dan penggunaan daya, serta dapatkan akses ke akselerator perangkat keras khusus bilangan bulat dengan memastikan bobot dan aktivasi terkuantisasi. Ini membutuhkan kumpulan data perwakilan kecil.

import tensorflow as tf

def representative_dataset_gen():
  for _ in range(num_calibration_steps):
    # Get sample input data as a numpy array in a method of your choosing.
    yield [input]

converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
converter.representative_dataset = representative_dataset_gen
tflite_quant_model = converter.convert()

Model yang dihasilkan masih akan mengambil input dan output float untuk kenyamanan.

Untuk informasi lebih lanjut, lihat panduan kuantisasi pasca pelatihan TensorFlow Lite.