Aplicar la poda a una capa lineal
Hemos entrenado un modelo de clasificación de imágenes utilizando una capa totalmente conectada (lineal). Ahora, tenemos la tarea de aplicar la poda no estructurada a esta capa para reducir el tamaño del modelo sin afectar significativamente el rendimiento. Para esta tarea, utilizaremos el método « l1_unstructured
» de PyTorch.
El modelo está precargado como en la variable model
.
Este ejercicio forma parte del curso
Modelos de IA escalables con PyTorch Lightning
Instrucciones del ejercicio
- Importa el módulo de poda desde
torch.nn.utils
. - Aplica una poda «
l1_unstructured
» amodel[3]
, la capa final, y poda el 30 % de los pesos.
Ejercicio interactivo práctico
Prueba este ejercicio completando el código de muestra.
# 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)