Hauptinhalt

Die Übersetzung dieser Seite ist veraltet. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Quantisierung, Projektion und Pruning

Komprimieren eines tiefen neuronalen Netzes durch Quantisierung, Projektion oder Pruning

Verwenden Sie die Deep Learning Toolbox™ zusammen mit dem Support-Paket für die Model Quantization Library der Deep Learning Toolbox, um den Speicherbedarf und die Rechenanforderungen eines tiefen neuronalen Netzes zu reduzieren durch:

  • Pruning von Filtern aus Faltungsschichten durch Taylor-Approximation erster Ordnung. Sie können dann C/C++ oder CUDA®-Code aus diesem beschnittenen Netz generieren.

  • Projektion von Schichten durch Durchführung einer Hauptkomponentenanalyse (PCA) auf die Schichtaktivierungen unter Verwendung eines für die Trainingsdaten repräsentativen Datensatzes und Anwendung linearer Projektionen auf die lernbaren Schichtparameter. Vorwärtsdurchläufe eines projizierten tiefen neuronalen Netzes sind in der Regel schneller, wenn Sie das Netz mit bibliotheksfreier C/C++ Codegenerierung auf eingebetteter Hardware bereitstellen.

  • Quantisierung der Gewichte, Verzerrungen und Aktivierungen von Schichten auf skalierte Ganzzahl-Datentypen mit reduzierter Genauigkeit. Aus diesem quantisierten Netz können Sie daraufhin C/C++, CUDA- oder HDL-Code zur Bereitstellung auf GPU, FPGA oder CPU generieren.

Einen detaillierten Überblick über die in der Deep Learning Toolbox Model Quantization Library verfügbaren Komprimierungstechniken finden Sie unter Reduce Memory Footprint of Deep Neural Networks.

Funktionen

alle erweitern

taylorPrunableNetworkNeural network suitable for compression using Taylor pruning (Seit R2022a)
forwardCompute deep learning network output for training
predictCompute deep learning network output for inference
updatePrunablesRemove filters from prunable layers based on importance scores (Seit R2022a)
updateScoreCompute and accumulate Taylor-based importance scores for pruning (Seit R2022a)
dlnetworkDeep learning neural network
compressNetworkUsingProjectionCompress neural network using projection (Seit R2022b)
neuronPCAPrincipal component analysis of neuron activations (Seit R2022b)
unpackProjectedLayersUnpack projected layers of neural network (Seit R2023b)
ProjectedLayerCompressed neural network layer using projection (Seit R2023b)
gruProjectedLayerGated recurrent unit (GRU) projected layer for recurrent neural network (RNN) (Seit R2023b)
lstmProjectedLayerLong short-term memory (LSTM) projected layer for recurrent neural network (RNN) (Seit R2022b)
dlquantizerQuantize a deep neural network to 8-bit scaled integer data types
dlquantizationOptionsOptions for quantizing a trained deep neural network
prepareNetworkPrepare deep neural network for quantization (Seit R2024b)
calibrateSimulate and collect ranges of a deep neural network
quantizeQuantize deep neural network (Seit R2022a)
validateQuantize and validate a deep neural network
quantizationDetailsDisplay quantization details for a neural network (Seit R2022a)
estimateNetworkMetricsEstimate network metrics for specific layers of a neural network (Seit R2022a)
equalizeLayersEqualize layer parameters of deep neural network (Seit R2022b)
exportNetworkToSimulinkGenerate Simulink model that contains deep learning layer blocks and subsystems that correspond to deep learning layer objects (Seit R2024b)

Apps

Deep Network QuantizerQuantize deep neural network to 8-bit scaled integer data types

Themen

Überblick

Pruning

Projektion und Wissensdestillation

Quantisierung

Quantisierung für GPU-Ziel

Quantisierung für FPGA-Ziel

Quantisierung für CPU-Ziel

Enthaltene Beispiele