Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Trim insignificant weights

Mantenuto da TensorFlow Model Optimization

Questo documento fornisce una panoramica sull'eliminazione del modello per aiutarti a determinare come si adatta al tuo caso d'uso.

Panoramica

La potatura del peso basata sulla magnitudine azzera gradualmente i pesi del modello durante il processo di addestramento per ottenere la scarsità del modello. I modelli sparsi sono più facili da comprimere e possiamo saltare gli zeri durante l'inferenza per migliorare la latenza.

Questa tecnica apporta miglioramenti tramite la compressione del modello. In futuro, il supporto del framework per questa tecnica fornirà miglioramenti della latenza. Abbiamo riscontrato miglioramenti fino a 6 volte nella compressione del modello con una perdita di precisione minima.

La tecnica è in fase di valutazione in varie applicazioni vocali, come il riconoscimento vocale e la sintesi vocale, ed è stata sperimentata in vari modelli di visione e traduzione.

Matrice di compatibilità API

Gli utenti possono applicare l'eliminazione con le seguenti API:

  • Modellismo: tf.keras con solo modelli sequenziali e funzionali
  • Versioni di TensorFlow: TF 1.x per le versioni 1.14+ e 2.x.
    • tf.compat.v1 con un pacchetto TF 2.X e tf.compat.v2 con un pacchetto TF 1.X non sono supportati.
  • Modalità di esecuzione di TensorFlow: sia grafico che desideroso
  • Formazione distribuita: tf.distribute con la sola esecuzione del grafico

È nella nostra tabella di marcia aggiungere supporto nelle seguenti aree:

Risultati

Classificazione delle immagini

Modello Precisione Top-1 non rada Precisione scarsa Scarsità
InceptionV3 78,1% 78,0% 50%
76,1% 75%
74,6% 87,5%
MobilenetV1 224 71,04% 70,84% 50%

I modelli sono stati testati su Imagenet.

Traduzione

Modello BLEU non rada BLEU sparse Scarsità
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%

I modelli utilizzano il set di dati tedesco e inglese WMT16 con news-test2013 come set di sviluppo e news-test2015 come set di test.

Esempi

Oltre al tutorial Sfoltisci con Keras , guarda i seguenti esempi:

  • Addestra un modello CNN sull'attività di classificazione delle cifre scritte a mano MNIST con potatura: codice
  • Addestra un LSTM sull'attività di classificazione del sentimento IMDB con eliminazione: codice

Per informazioni generali, vedere Potare o non potare: esplorare l'efficacia della potatura per la compressione del modello [ carta ].