Publicado:
2025-06-25Número:
Vol. 19 Núm. 1 (2025)Sección:
Visión de Ingeniería AplicadaPruning distribution module compatible with FlexiPrune library
Módulo de distribución de poda compatible con la librería FlexiPrune
Palabras clave:
Convolutional Neural Network (CNN), FlexiPrune, Global Pruning Rate (GPR), Pruning, Pruning Distribution (PD), Pruning Rate (PR) (en).Palabras clave:
FlexiPrune, distribución de poda, poda, redes neuronales convolucionales, tasa de poda, tasa de poda global, poda (es).Descargas
Resumen (en)
FlexiPrune is a free library (available on GitHub) written in Python - PyTorch that allows to compress image classification models based on CNNs by pruning networks. It consists of three main modules: training, pruning and model evaluation. In the pruning module, users can select different pruning methods and pruning distribution types (e.g., homogeneous, bottomup, top-down, among others); however, users must manually enter the pruning rates (PRs) for each network layer, depending on the type of distribution they want to evaluate. Therefore, this project proposes a module written in Python compatible with FlexiPrune, which automatically calculates the PRs by layer based on a global pruning rate (GPR) and a pruning distribution (PD) type (e.g., PD1 - homogeneous, up to PD5 - top-up/top-down) for a specific network. In addition, users can know the FLOPs and parameter savings of the compressed model for the selected GPR and PD values, and thus choose the one that best suits their needs (e.g. best FLOPs vs. parameters pair, for the same GPR).
Resumen (es)
FlexiPrune es una librería gratuita (disponible en GitHub) escrita en Python - PyTorch que permite comprimir modelos de clasificación de imágenes basados en CNNs mediante la poda de redes. Consta de tres módulos principales: entrenamiento, poda y evaluación del modelo. En el módulo de poda, los usuarios pueden seleccionar diferentes métodos de poda y tipos de distribución de poda (por ejemplo, homogénea, ascendente, descendente, entre otros); sin embargo, los usuarios deben introducir manualmente las tasas de poda (PRs) para cada capa de la red, dependiendo del tipo de distribución que quieran evaluar. Por lo tanto, este proyecto propone un módulo escrito en Python compatible con FlexiPrune, que calcula automáticamente los PRs (porcentaje de poda) por capa, en función de una tasa de poda global (GPR) y un tipo de distribución de poda (PD) (por ejemplo, PD1 - homogénea, hasta PD5 -ascendente/descendente), para una red específica. Además, los usuarios pueden conocer el ahorro de FLOPs y de parámetros del modelo comprimido para los valores de GPR y PD seleccionados, y de esta forma escoger el que más se ajuste a sus necesidades (ej. mejor pareja FLOPs vs parámetros, para un mismo GPR).
Referencias
C.G. Pachon, J.O. Pinzon-Arenas, and D. Ballesteros, “FlexiPrune: A Pytorch tool for flexible
CNN pruning policy selection”, Software X, September 2024, 101858.
https://doi.org/10.1016/j.softx.2024.101858
C.G. Pachon, J.O. Pinzon-Arenas, and D. Ballesteros. “FlexiPrune”, 2024 [Online].
Available at: https://github.com/DEEP-CGPS/FlexiPrune/
S. Moon, Y. Byun, J. Park, S. Lee and Y. Lee, "Memory-Reduced Network Stacking for
Edge-Level CNN Architecture with Structured Weight Pruning," IEEE Journal on Emerging and Selected Topics in Circuits and Systems, vol. 9, no. 4, pp. 735-746, Dec. 2019. https://ieeexplore.ieee.org/document/8894142
S. Vadera and S. Ameen, "Methods for Pruning Deep Neural Networks," IEEE Access, vol.
, pp. 63280-63300, 2022. https://ieeexplore.ieee.org/document/9795013
C.G. Pachon, D. Ballesteros, and D. Renza, “Senpis: Sequential network pruning by class-
wise importance score” Applied Soft Computing, 129, 109558, 2022.
https://www.sciencedirect.com/science/article/pii/S1568494622006238
C. Pachón, C. Pedraza, and D. Ballesteros, “Impact of Pruning Distribution in Compressed
CNN Models: A Case Study”, Workshop on Engineering Applications (pp. 80-91), Oct. 2023.
Cham: Springer Nature Switzerland. https://link.springer.com/chapter/10.1007/978-3-03146739-4_8
M. Mondal, et al. “Adaptive CNN filter pruning using global importance metric”. Comput. Vis.
Image Underst. 2022, 222, 103511.
https://www.sciencedirect.com/science/article/pii/S1077314222001035
C. Yang, H. Liu, “Channel pruning based on convolutional neural network sensitivity”,
Neurocomputing 2022, 507, 97–106.
https://www.sciencedirect.com/science/article/pii/S0925231222009110
Z. Chen, C. et al., “Latency-aware automated pruning with dynamic-based filter selection”,
Neural Netw. 2022, 152, 407–418.
https://www.sciencedirect.com/science/article/pii/S0893608022001745
C.G. Pachon, J.O. Pinzon-Arenas, and D. Ballesteros, “Pruning Policy for Image
Classification Problems Based on Deep Learning”. Informatics (Vol. 11, No. 3, p. 67),
September 2024. https://www.mdpi.com/2227-9709/11/3/67
Cómo citar
APA
ACM
ACS
ABNT
Chicago
Harvard
IEEE
MLA
Turabian
Vancouver
Descargar cita
Visitas
Descargas
Licencia

Esta obra está bajo una licencia internacional Creative Commons Atribución-NoComercial 4.0.
atribución- no comercial 4.0 International