CommencerCommencez gratuitement

Appliquer la taille à une couche linéaire

Nous avons formé un modèle de classification d'images à l'aide d'une couche entièrement connectée (linéaire). À présent, nous devons appliquer un élagage non structuré à cette couche afin de réduire la taille du modèle sans affecter de manière significative les performances. Nous utiliserons la méthode d'l1_unstructured de PyTorch pour cette tâche.

Le modèle est préchargé dans la variable model.

Cet exercice fait partie du cours

<cours>Modèles d'IA évolutifs avec PyTorch Lightning</cours>
Voir le cours

Instructions de l’exercice

  • Veuillez importer le module de taille à partir de l'adresse suivante : torch.nn.utils.
  • Appliquez la taille « l1_unstructured » à « model[3] », la dernière couche, et réduisez les poids de 30 %.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Import pruning module
import torch.nn.utils.prune as ____
# Before pruning
print(model)
# Apply L1 unstructured pruning to model[3]
prune.____(model[3], name="____", amount=____)
# After pruning
print(model)
Modifier et exécuter le code