Pangkas bobot yang tidak signifikan

Dokumen ini memberikan ikhtisar tentang pemangkasan model untuk membantu Anda menentukan kesesuaiannya dengan kasus penggunaan Anda.

Ringkasan

Pemangkasan bobot berdasarkan besaran secara bertahap meniadakan bobot model selama proses pelatihan untuk mencapai sparity model. Model yang jarang lebih mudah dikompres, dan kita dapat melewati angka nol selama inferensi untuk peningkatan latensi.

Teknik ini membawa perbaikan melalui kompresi model. Di masa mendatang, dukungan kerangka kerja untuk teknik ini akan memberikan peningkatan latensi. Kami telah melihat peningkatan hingga 6x dalam kompresi model dengan kehilangan akurasi yang minimal.

Teknik ini sedang dievaluasi dalam berbagai aplikasi ucapan, seperti pengenalan ucapan dan text-to-speech, dan telah dicoba di berbagai model visi dan terjemahan.

Matriks Kompatibilitas API

Pengguna dapat menerapkan pemangkasan dengan API berikut:

  • Pembuatan model: tf.keras hanya dengan model Sequential dan Functional
  • Versi TensorFlow: TF 1.x untuk versi 1.14+ dan 2.x.
    • tf.compat.v1 dengan paket TF 2.X dan tf.compat.v2 dengan paket TF 1.X tidak didukung.
  • Mode eksekusi TensorFlow: grafik dan bersemangat
  • Pelatihan terdistribusi: tf.distribute hanya dengan eksekusi grafik

Ada di peta jalan kami untuk menambahkan dukungan di bidang-bidang berikut:

Hasil

Klasifikasi Gambar

Model Akurasi Top-1 yang Tidak Jarang Akurasi Jarang Acak Keterpisahan Acak Akurasi Jarang Terstruktur Keterbatasan Terstruktur
AwalV3 78,1% 78,0% 50% 75,8% 2 kali 4
76,1% 75%
74,6% 87,5%
MobilenetV1 224 71,04% 70,84% 50% 67,35% 2 kali 4
MobilenetV2 224 71,77% 69,64% 50% 66,75% 2 kali 4

Model diuji pada Imagenet.

Terjemahan

Model BLEU yang tidak jarang BLEU jarang Keterbatasan
GNMT EN-DE 26.77 26.86 80%
26.52 85%
26.19 90%
GNMT DE-EN 29.47 29.50 80%
29.24 85%
28.81 90%

Model menggunakan dataset Jerman dan Inggris WMT16 dengan news-test2013 sebagai dev set dan news-test2015 sebagai test set.

Model pencarian kata kunci

DS-CNN-L adalah model pencarian kata kunci yang dibuat untuk perangkat edge. Itu dapat ditemukan di repositori contoh perangkat lunak ARM.

Model Akurasi tidak jarang Akurasi Jarang Terstruktur (pola 2 kali 4) Akurasi Jarang Acak (target sparsity 50%)
DS-CNN-L 95.23 94.33 94,84

Contoh

Selain tutorial Prune dengan Keras , lihat contoh berikut:

  • Latih model CNN pada tugas klasifikasi digit tulisan tangan MNIST dengan pemangkasan: kode
  • Latih LSTM pada tugas klasifikasi sentimen IMDB dengan pemangkasan: kode

Untuk latar belakang, lihat Memangkas, atau tidak memangkas: mengeksplorasi kemanjuran pemangkasan untuk kompresi model [ kertas ].