Bu belge, kullanım durumunuza nasıl uyduğunu belirlemenize yardımcı olmak için model budama hakkında bir genel bakış sağlar.
- Uçtan uca bir örneğe dalmak için Keras ile Budama örneğine bakın.
- Kullanım durumunuz için ihtiyaç duyduğunuz API'leri hızlı bir şekilde bulmak için kapsamlı budama kılavuzuna bakın.
- Cihaz üzerinde çıkarıma yönelik budama uygulamasını keşfetmek için XNNPACK ile cihaz üzerinde çıkarıma yönelik budama konusuna bakın.
- Yapısal budamanın bir örneğini görmek için 2'ye 4 seyreklik ile Yapısal budama eğitimini çalıştırın.
Genel Bakış
Büyüklüğe dayalı ağırlık budama, model seyrekliğini sağlamak için eğitim süreci sırasında model ağırlıklarını kademeli olarak sıfırlar. Seyrek modellerin sıkıştırılması daha kolaydır ve gecikme iyileştirmeleri için çıkarım sırasında sıfırları atlayabiliriz.
Bu teknik, model sıkıştırma yoluyla iyileştirmeler sağlar. Gelecekte bu tekniğe yönelik çerçeve desteği gecikme iyileştirmeleri sağlayacaktır. Minimum doğruluk kaybıyla model sıkıştırmada 6 kata kadar iyileştirme gördük.
Teknik, konuşma tanıma ve metinden konuşmaya gibi çeşitli konuşma uygulamalarında değerlendiriliyor ve çeşitli görüş ve çeviri modellerinde deneniyor.
API Uyumluluk Matrisi
Kullanıcılar budamayı aşağıdaki API'lerle uygulayabilir:
- Model oluşturma: yalnızca Sıralı ve İşlevsel modellere sahip
keras
- TensorFlow sürümleri: 1.14+ ve 2.x sürümleri için TF 1.x.
- TF 2.X paketine sahip
tf.compat.v1
ve TF 1.X paketine sahiptf.compat.v2
desteklenmez.
- TF 2.X paketine sahip
- TensorFlow yürütme modu: hem grafik hem de istekli
- Dağıtılmış eğitim: yalnızca grafik yürütmeyle
tf.distribute
Aşağıdaki alanlarda destek eklemek yol haritamızda yer almaktadır:
Sonuçlar
Görüntü Sınıflandırması
Modeli | Seyrek Olmayan İlk 1 Doğruluk | Rastgele Seyrek Doğruluk | Rastgele Seyreklik | Yapılandırılmış Seyrek Doğruluk | Yapılandırılmış Seyreklik |
---|---|---|---|---|---|
BaşlangıçV3 | %78,1 | %78,0 | %50 | %75,8 | 2'ye 4 |
%76,1 | %75 | ||||
%74,6 | %87,5 | ||||
MobilenetV1 224 | %71,04 | %70,84 | %50 | %67,35 | 2'ye 4 |
MobilenetV2 224 | %71,77 | %69,64 | %50 | %66,75 | 2'ye 4 |
Modeller Imagenet'te test edildi.
Tercüme
Modeli | Seyrek olmayan BLEU | Seyrek BLEU | Kıtlık |
---|---|---|---|
GNMT TR-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 |
Modeller, geliştirme seti olarak news-test2013 ve test seti olarak news-test2015 ile WMT16 Almanca ve İngilizce veri setini kullanıyor.
Anahtar kelime tespit modeli
DS-CNN-L, uç cihazlar için oluşturulmuş bir anahtar kelime tespit modelidir. ARM yazılımının örnek deposunda bulunabilir.
Modeli | Seyrek Olmayan Doğruluk | Yapılandırılmış Seyrek Doğruluk (2'ye 4 desen) | Rastgele Seyrek Doğruluk (hedef seyrekliği %50) |
---|---|---|---|
DS-CNN-L | 95.23 | 94.33 | 94.84 |
Örnekler
Keras ile Prune öğreticisine ek olarak aşağıdaki örneklere bakın:
- Budama ile MNIST el yazısı rakam sınıflandırma görevinde bir CNN modelini eğitin: kod
- Budama ile IMDB duyarlılık sınıflandırması görevi üzerine bir LSTM eğitin: kod
Arka plan için bkz. Budamak veya budamamak: model sıkıştırma için budamanın etkinliğinin araştırılması [ kağıt ].