PermLLM: Learnable Channel Permutation for N:M Sparse Large Language Models
Zou, Yin, Pei et al.
Channel permutation is a powerful technique for enhancing the accuracy of N:M sparse models by reordering the channels of weight matrices to prioritize the retention of important weights. However, traditional channel permutation methods rely on handcrafted quality metrics, which often fail to accurately capture the true impact of pruning on model performance. To address this limitation, we propose PermLLM, a novel post-training pruning framework that introduces learnable channel permutation (LCP) for N:M sparsity. LCP leverages Sinkhorn normalization to transform discrete permutation matrices into differentiable soft permutation matrices, enabling end-to-end optimization. Additionally, PermLLM incorporates an efficient block-wise channel permutation strategy, which significantly reduces the number of learnable parameters and computational complexity. PermLLM seamlessly integrates with existing one-shot pruning methods to adaptively optimize channel permutations, effectively mitigating pruning-induced errors. Extensive experiments on the LLaMA series, Qwen, and OPT models demonstrate that PermLLM achieves superior performance in optimizing N:M sparse models. The code is available at https://github.com/lanchengzou/PermLLM.
academic
PermLLM: Permutación de Canales Aprendible para Modelos de Lenguaje Grande Dispersos N:M
La permutación de canales es una técnica poderosa que mejora la precisión de modelos dispersos N:M mediante la reordenación de canales de matrices de pesos para preservar preferentemente pesos importantes. Sin embargo, los métodos tradicionales de permutación de canales dependen de métricas de calidad diseñadas manualmente, que a menudo no capturan con precisión el impacto real de la poda en el rendimiento del modelo. Para abordar esta limitación, este artículo propone PermLLM, un marco de poda posterior al entrenamiento de dispersidad N:M que introduce permutación de canales aprendible (LCP). LCP aprovecha la normalización de Sinkhorn para convertir matrices de permutación discretas en matrices de permutación suave diferenciables, permitiendo optimización de extremo a extremo. Además, PermLLM adopta una estrategia eficiente de permutación de canales por bloques, reduciendo significativamente la cantidad de parámetros aprendibles y la complejidad computacional. PermLLM se integra sin problemas con métodos de poda de una sola pasada existentes, optimizando adaptativamente la permutación de canales para mitigar efectivamente los errores inducidos por la poda.
Problema Central: Los métodos tradicionales de permutación de canales utilizan métricas de calidad diseñadas manualmente (como la suma de importancia de pesos retenidos) para evaluar esquemas de permutación, pero existe una brecha entre estas métricas y el error de poda real.
Importancia: Con el rápido crecimiento del tamaño de los modelos de lenguaje grande, las técnicas de compresión de modelos (como la poda) son cruciales para el despliegue eficiente. La dispersidad N:M ha atraído considerable atención por su compatibilidad con hardware (soportada por NVIDIA Sparse Tensor Core).
Limitaciones Existentes:
Las métricas de calidad diseñadas manualmente no pueden reflejar con precisión el impacto real de la poda en el rendimiento del modelo
Los métodos tradicionales no pueden capturar completamente las interacciones complejas entre capas
El espacio de optimización es enorme (para Cin canales de entrada, hay Cin! permutaciones posibles)
El artículo demuestra el problema mediante un ejemplo concreto (Figura 1): la permutación de canales que maximiza las puntuaciones de importancia puede resultar en un error de salida mayor, indicando una diferencia fundamental entre las métricas diseñadas manualmente y el rendimiento real.
Primera Propuesta de Permutación de Canales Aprendible (LCP): Transforma el problema discreto de permutación de canales en un problema de optimización diferenciable, permitiendo aprendizaje de extremo a extremo.
Técnica de Normalización de Sinkhorn: Utiliza la normalización de Sinkhorn para relajar matrices de permutación discretas en matrices de permutación suave, resolviendo el problema de no diferenciabilidad de las matrices de permutación.
Estrategia de Permutación de Canales por Bloques: Reduce significativamente la complejidad de parámetros de O(C²ᵢₙ) a O(Cᵢₙ×B) y la complejidad computacional de O(C³ᵢₙ) a O(Cᵢₙ×B²).
Diseño de Marco Universal: Se integra sin problemas con métodos de poda de una sola pasada existentes (Wanda, RIA, etc.).
Rendimiento Experimental Excelente: Verifica la efectividad del método en múltiples modelos incluyendo series LLaMA, Qwen, OPT, etc.
Dada una matriz de pesos preentrenada W ∈ R^(Cout×Cin), el objetivo es encontrar la matriz de permutación óptima P tal que la matriz de pesos reordenada Ŵ = WP, después de aplicar dispersidad N:M, minimice la diferencia de salida con respecto al modelo denso original.
donde Tr y Tc representan respectivamente operaciones de normalización por filas y columnas, y τ es un parámetro de temperatura que controla la dureza de la matriz de permutación suave.
Para reducir la complejidad computacional, los canales se dividen en múltiples bloques de tamaño B, con permutación independiente dentro de cada bloque:
PB = diag(P₁, P₂, ..., PNB)
ŴB = WPB
La cantidad de parámetros se reduce de C²ᵢₙ a Cᵢₙ×B, y la complejidad computacional se reduce de O(C³ᵢₙ) a O(Cᵢₙ×B²).
PermLLM puede integrarse con cualquier método de poda de una sola pasada basado en métricas de importancia. Para una matriz de importancia dada S, la matriz de importancia permutada es Ŝ = SPB, y la máscara se obtiene mediante:
argmax M ∑∑ (M⊙Ŝ)i,kM:(k+1)M
Se utiliza STE para manejar la no diferenciabilidad del argmax.
Utilizando núcleos CUDA personalizados, la operación de permutación de canales logra una aceleración de 84× en comparación con la implementación de PyTorch, con una mejora de velocidad de inferencia general de aproximadamente 1.67×.
El artículo proporciona visualizaciones de máscaras (Figura 3), mostrando que la permutación aprendida por PermLLM produce patrones de retención de pesos diferentes a los métodos tradicionales, verificando la efectividad de la optimización de extremo a extremo.
Costo Computacional: Aunque la estrategia de bloques reduce significativamente la complejidad, aún requiere más recursos computacionales que los métodos tradicionales
Rango de Aplicación: El método está específicamente diseñado para poda semiestructurada, y la aplicación en otras tareas de compresión (como cuantización) requiere exploración adicional
Convergencia: Los tamaños de bloque grandes requieren más iteraciones para converger
Innovación Técnica Fuerte: Primera transformación del problema de permutación de canales en un problema aprendible de extremo a extremo, con una ruta técnica novedosa
Fundamentos Teóricos Sólidos: El uso combinado de normalización de Sinkhorn y STE es teóricamente razonable
Experimentos Exhaustivos: Evaluación integral en múltiples modelos, conjuntos de datos y tareas
Implementación de Ingeniería Completa: Proporciona núcleos CUDA personalizados, considerando necesidades de despliegue práctico
Escritura Clara: Estructura del artículo clara, descripción técnica precisa
El artículo cita 66 referencias relacionadas, cubriendo principalmente:
Trabajos fundamentales de modelos de lenguaje grande (GPT, LLaMA, etc.)
Métodos clásicos de poda de redes (Magnitude Pruning, SparseGPT, etc.)
Investigación relacionada con dispersidad N:M (RIA, SR-STE, etc.)
Fundamentos de teoría de optimización (Normalización de Sinkhorn, Algoritmo Húngaro, etc.)
Evaluación General: Este es un artículo de alta calidad con fuerte innovación técnica, experimentos exhaustivos e implementación de ingeniería completa. Al transformar problemas de optimización discreta en problemas de optimización continua, aporta un avance revolucionario a la tecnología de permutación de canales. Aunque existen limitaciones en costo computacional y rango de aplicación, su contribución al campo de la compresión de modelos de lenguaje grande es significativa, con importante valor académico y práctico.